While browsers play catchup with ES6 support and we wait for older browsers without ES6 support to fizzle out and die, we can actually start using ES6 today thanks to the work of Google’s Traceur or BabelJS.
Whichever you choose for whatever reason, as long as the resulting code is ES5 compatible and your needs have been met, then really there is no competition between any transpiler except for perhaps the resulting code and various parts of the specification that are supported.
Things just got real in the front-end framework space. Durandal developer Rob Eisenberg and once upon a time short-term core Angular 2.0 developer has announced a new framework called Aurelia. A beautifully designed full-stack SPA framework with support for ECMAScript 6 syntax right out of the box and some clever design decisions.
Not only does it allow you to build applications using ES6, but it supports all forms of alternative abstraction syntax out of the box like TypeScript, AtScript and even CoffeeScript. Rob has plans to put out migration documentations detailing how to migrate from Angular 1.x, Angular 2.x and of course: Durandal. They are not currently available, but are on the roadmap as can be seen here.
Something I have been meaning to do for a while is create a skeleton project setup to work with Gulp for the task runner along with some basic tasks, AngularJS for the front-end framework and Browserify so we can include files the CommonJS way (like we can in Node.js).
The repository can be found here. It isn’t perfect, there are definitely flaws, but in the coming weeks, I will be documenting and making this skeleton project the perfect starter for newbies and seasoned Angular veterans alike.
It is no secret that Gulp.js is one of the best task runners on the front-end block. Old man Grunt is still out and about, but it is only a matter of time before Gulp takes its place.
If you are new to Gulp or are not sure what plugins to use, this post highlights ten of the most useful plugins for streamlining your front-end development workflow like a nazi killing spy.
For some, confusion stems around package managers for the front-end, all vying for developer love. In the field there are three well-known package managers that stand; Bower, Component and NPM (Node Package Manager).
Bower and Component are package managers strictly for the front-end, although Node modules exist to bring them in and use them as Node modules.
The third, NPM, started out as Node only modules, but through the community started going in all kinds of directions (including front-end tooling)
I’ve officially gone to the dark side and bought a MacBook Pro 13" Retina Display model (the late 2014 variant). I will be travelling a bit in the next year or so and I needed a laptop that is easy to carry around, use on a flight and has the power for development.
This is my first Mac, I primarily use PC’s and Windows because I love to game occasionally and well, it’s what I grew up using.
When it comes to front-end development, it is a relatively new job title. The advent of responsive web design or as the hipsters call it RWD, meant more emphasis was placed on making coherent front-end user experiences across different devices and mediums.
Even though web development has been a thing since the nineties, you once upon a time called yourself a web developer and it was rare you specialise in just the front-end aspect.
* …And adapting existing sites to conform to the new screen sizes and resolutions.*
The latest version of the Apple hypePhone has been announced, which means developers need to prepare new sites and existing sites to work with the new screen sizes and pixel densities.
Mobile First The iPhone 6 further highlights developers should be developing their sites mobile first. A mobile first strategy will all but ensure your site functions on any mobile or handheld device, regardless of how big it is.
The web industry is rife with job titles. Front End Ninja, Front End Overlord, Front End Engineer, Front End Developer, I could go on. The two I am focusing on are Front End Engineer and Front End Developer.
Is there are a difference between the two, and if so, what is the difference?
The definition of “engineer” according to Wikipedia is:
An engineer is a professional practitioner of engineering, concerned with applying scientific knowledge, mathematics, and ingenuity to develop solutions for technical, societal and commercial problems. Engineers design materials, structures, and systems while considering the limitations imposed by practicality, regulation, safety, and cost.
Once upon a time Compass was an invaluable value add to any SASS project. Rather than looking up vendor prefixes all of the time or understanding the priority order, you could just include a Compass mixin and away you went. It was a great timesaving tool, but now the time has come to move on.
The one tool that I use nowadays is Autoprefixer. Basically what it will do is go through your CSS and add in vendor prefixes where required. This means you can write standard prefix-free CSS and not have to worry about finding fallback vendor prefixes or different syntax (I’m lookin at you Internet Explorer and Flexbox).