- Views: 4
- Report Article
- Articles
- Business & Careers
- Business Opportunities
ECommerce Web development: get the right fit from So many choices
Posted: Jul 11, 2019
It is an interesting time to be a web developer. On one hand, the web today provides a wealth of information, giving developers easy access to a number of resources useful when running into a problem or wanting to update their skills. Additionally, there are so many advancements being made to programming languages and technologies that web development provides a rich ecosystem for developers to build powerful solutions.
"The horizon for web developers has really widened in the last couple of years where we are able to choose literally what type of app we want to build and what type of experience we want to have," said Sam Basu, developer advocate for app development solution provider Progress.
Luckily, these problems are not going unsolved and there are currently a number of trends and solutions underway aimed at making web developers’ lives easier.
Progressive Web Applications
You may be a web developer, but your web development strategy can no longer just be the web, according to Jason Wong, the VP analyst at the research firm Gartner. Users are accessing solutions on so many different form factors that organizations are now expected to provide a mobile experience.
Emerging trend developers and organizations are turning to is progressive web apps (PWAs), which have been on the rise for the past couple of years now, with 2018 being reported as their breakout year. When Apple announced support for service workers at the beginning of last year, it paved the way for PWAs. Now that we are in 2019, Wong explained we are now entering Gartner’s trough of disillusionment on the hype cycle. "It is just a matter of time, maturity and formation of standards across browsers and operating systems that are going to ultimately drive the entry into mainstream and slope of enlightenment," he said.
Another strategy for PWAs is to retain users, added Max Lynch, CEO, and co-founder for the web development solution provider Ionic. For instance, a website like Pinterest also has a mobile application available, but since they have a strong search engine presence, it doesn’t make sense to require users to download their app. "You don’t want to risk sending users to an app store when they can get the information right away in a quality way with a PWA," Lynch said.
Programming languages
JavaScript is currently the de facto language for the web, according to Ionic’s Lynch. "JavaScript is going to continue to dominate the web for a number of reasons. A majority of developers know it. It is easy to use, and there is a bunch of momentum and inertia around it," he said
Angular developer advocate Stephen Fluin of Google added that JavaScript just provides the ability to be everywhere. "You can run JavaScript on the web, on the server, and on mobile devices. That pervasiveness of a single technology makes it very attractive for developers," he said.
According to Progress’ Basu, while JavaScript will pretty much do everything other languages can do, picking a programming language is still a matter of choice and convenience for developers and they may be more comfortable using other languages for the web. As a result, WebAssembly is gaining more interest. WebAssembly is an open web standard that enables higher level languages like C, C++, and Rust to run natively in the browser. "So far, for web applications to run natively in the browser, the only option has been JavaScript," said Basu. "WebAssembly for the first time is opening up some other choice. It is essentially a low-level assembly language for the web."
WebAssembly is currently supported by four major browser engines: WebKit, Firefox, Chrome, and Edge. According to the WebAssembly team, WebAssembly will not replace JavaScript; it is designed to complement it. "While WebAssembly will, over time, allow many languages to be compiled to the Web, JavaScript has an incredible amount of momentum and will remain the single, privileged dynamic language of the web," the team stated on its website. "WebAssembly modules will be able to call into and out of the JavaScript context and access browser functionality through the same web APIs accessible from JavaScript."
Open-source language automation
Bart Copeland, CEO of open-source languages company ActiveState, argues web development teams shouldn’t rely on using a single programming language. "There are so many different languages to work with today, it really depends on your specific use case, what you want to accomplish and the role of the organization," he said.
"As developers are working on new applications, they want to use the latest and greatest technology, but organizations are saying we can’t have more disparate technology stacks so there is often a push to build your web app with a set of technology stacks that the organization has already invested in," said Copeland.
A way around this is through open-source language automation, according to Copeland. Open-source language automation has four phases:
- Defining policies to ensure compliance across the entire organization;
- Centralizing open-source language dependencies to track languages and packages and access usage;
- Automating language builds to reduce vulnerabilities and increase app quality;
- Deploying and managing open-source language artifacts so your test, staging and production servers get automatically updated with the latest language builds.
"We believe you should be able to track when and where your applications were vulnerable and respond with automatic enforcement of your open source language policies. Management should gain security and stability and your development teams should attain greater velocity," said Copeland.
Performance
By now, the framework development area has matured with popular frameworks like Angular, React and Vue giving developers the ability to develop powerful solutions, according to Ionic’s Lynch.
Google created the Accelerated Mobile Pages (AMP) Project, an open-source initiative that aims to speed up web pages and improve user experiences across all devices and platforms. "Today, the expectation is that content should load super fast and be easy to explore. The reality is that content can take several seconds to load, or, because the user abandons the slow page, never fully loads at all. Accelerated Mobile Pages are web pages designed to load near instantaneously — they are a step towards a better mobile web for all," according to the project’s website.
Ionic’s open-source project Stencil combats performance issues by generating reusable web components with a small code footprint. If a company is using a variety of frameworks, they no longer have to build different components for each one, Lynch explained. "Web development has yet to pick a framework winner. React is very popular, but if you call it a winner then you are missing most of what is happening in the enterprise where Angular is king. Then there are a whole bunch of people using things like jQuery," said Lynch. "We aren’t achieving our mission, which is to empower every single web developer to build awesome mobile, desktop and web apps with our components if we only work with one framework."
In addition to Google’s AMP and Ionic’s Stencil, Salesforce recently released its open-source solution, Lightning Web Components, for creating web components across a variety of platforms. "The benefits are significant: you only need to learn a single framework and you can share code between apps," Christophe Coenraets, principal developer evangelist at Salesforce, wrote in a post.
Another problem with web performance today is there are just too many versions of a language available. For example, Google’s Fluin explained older versions of JavaScript like ECMAScript 5 are required for older browsers while more modern browsers take advantage of modern versions of JavaScript. That becomes problematic because older versions of JavaScript don’t have all the same features so as part of the transpilation developers end up creating more code. "You would express a really simple concept like there is a class and then what would happen is that class would get translated into a language that didn’t have classes, which ends up adding a lot of burden size and performance impacts," said Fluin. As a result, Angular created differential loading, a process that enables browsers to choose between modern or legacy JavaScript depending on the capabilities it supports.
Top web frameworks
- jQuery
- js
- Angular/Angular.js
- NET
- Express
- Spring
- js
- Django
- Flask
- Laravel
This is according to Stack Overflow’s annual developer survey, which looks at responses from nearly 90,000 developers worldwide. While a broad number of developers are using jQuery, this year more and more developers are switching to React.js and Angular, the report revealed.
Additionally, the report looked at the most loved, dreaded and wanted web frameworks. The top loved frameworks included React, Vue, Express, and Spring, while the most dreaded frameworks included Drupal, jQuery, and Ruby on Rails. When it comes to the most wanted web frameworks for developers, the top frameworks including React, Vue, and Angular.
VynZ Research is a market research firm offering research, analytics, and consulting services on business strategies. The company focuses on providing valuable insights on various technology verticals.