The seven-year long wait for ECMAScript Harmony or ECMAScript 6.0 ended in June 2015 with an officially-completed specification.
What does ES2015 mean for developers? Prepare yourself for delights such as:
- enhanced object literals
- let and const
- arrow functions
- template strings
- weakmap and weakset
class structures for those
moaners developers migrating from other languages.
But forget about ES2015 for now — let’s move on to ES7/2016!
Hype reached fever-pitch in June with the announcement of WebAssembly; a low-level binary-packed assembly-like language for the web!
We’ve visited binary land before. Flash, Silverlight, Java and Google Native Client (NaCl) all made a similar promises but WebAssembly should have a better chance given it:
- won’t need a browser plug-in, and
- is backed by Google, Microsoft, Mozilla and Apple.
Excited? You’d better brush up on your C/C++ skills because that’s the target for the first WebAssembly compilers.
Node.js Forks Off
Node.js moved from a relatively niche runtime in 2014 to the must-have technology of 2015. Node.js is everywhere; your desktop, your server, your Raspberry Pi, your embedded devices and more. Even developers from other faiths adopt Node.js to use build tools such as Grunt and Gulp.
2015 saw the political squabbles surrounding Node end with the merging of the io.js fork. This meant Node.js v0.12 could be superseded by Node.js v4.0 in September. Yes, that’s a jump of three whole versions because io.js had reached version 3.0 and couldn’t go backward.
Of course, version numbers mean nothing … except to those who now think Node.js 4+ is more advanced than Ruby 2 and Python 3. Given v5 arrived one month later, it’s also overtaken .NET 4 and is rapidly catching PHP 7!
- AngularJS remains popular but usage may have plateaued given there’s no upgrade path to version 2.0 when it’s launched in 2016
- React has been attracting strong interest
- Vue.js reached version 1.0 and Aurelia was launched
- Ember, Knockout and Backbone.js are still going strong
- some, such as Rendr, looked as though they would become popular but weren’t.
Use a framework if you must but never presume it’s viable over the long-term. Newer and better alternatives will appear before you’re half-way through your project. Never forget frameworks are an option — you don’t have to use one. Smaller, nimbler projects with minimal dependencies are a safer bet.
Do you remember the carefree days when web development only required a browser, a text editor and an FTP client? Today you need Node.js, Gulp/Grunt, git, static HTML generators, Sass compilers, Autoprefixer, minifiers, uglifiers, linters, BrowserSync and a range of other build tools to create a basic “Hello World” page.
It’s mostly good. We are developing ever-more complex web applications and the tools allow us to automate mundane processes and concentrate on the more interesting tricky parts. 2015 has been a great year for:
- Atom 1.0 — GitHub’s Node.js-powered hackable editor, was launched in June
- PostCSS — the fast, modular CSS processor gets, gets my award for tool of the year
- a slew of new browsers including Edge and Vivaldi plus numerous developer tool enhancements.
Some companies are hoping to stop web page rot with alternatives such as Facebook Instant and Google Accelerated Mobile Pages. I’m not convinced a segregated non-standard web is the answer.
It’s official: Node.js is better than PHP! Admittedly, the article didn’t make that claim but it illustrated how far Node.js has come. Perhaps PHP would now win given the version 7 speed increases but, ultimately, use whatever you feel comfortable with. Controversially, Automattic recently converted their WordPress.com front-end from PHP to Node.js but I suspect that says more about the state of the Calypso project than the languages.
The first alpha of jQuery 3.0 was released in July. Two new versions are promised; one for modern browsers and a Compat edition which includes IE8 support. The team is anticipating few breaking changes which is a considerable achievement.
- Visual Studio Code, a new cross-platform extensible, Sublime Text/Atom-like editor
- vorlon.js, an open-source remote debugging and testing tool, and
Given the recent openness toward the web, perhaps we should refer to the company as “new Microsoft”?
The Outlook for 2016