The number of front-end tools is staggering, and I can’t help but wonder how a newcomer feels when they first use the Yeoman webapp generator to begin a project for example, and see what feels like “The Internet” being downloaded to their project’s npm_modules folder.
Not to mention how you choose this weeks “Hot Hotness” of a framework to use, each with their own slew of npm/bower dependencies.
Pushing the boundaries of what our tools can do is all well and good, so long as the tools are not creating barriers to entry for new developers. The more developers there are, the more cool web applications we will have coming out.
React exists because Facebook needed a way to make their services as good as they can possibly be in terms of performance, on the web we have today; and they have been nice enough to pay that forward to the community for use and continued development.
The way I see it at the moment, is that Google and Mozilla are pro-web – working towards making the web the place to have all your apps, and the upcoming changes to Mozilla to make Firefox compatible with Chrome extensions is a very promising sign.
Microsoft seem to be “on the fence” on this, putting some effort into web while also pushing the native universal Windows app wherever possible; although, WinJS is an odd development giving you the (technology formerly known as) Metro app look to use in your web apps. Along with contributions such as RxJS and TypeScript.
Apple, on the other hand – feel very anti-web at the moment, attempting to hurt Google’s revenue through ad-blocking in iOS9, while allowing their own ads to bypass this. But in the end, this ad-blocking will just lead to smaller outfits going belly up as a large share of their revenue generally comes from those ads you will be blocking. Granted, I don’t particularly like ads as a user, but they are a necessary evil, and we all already accept that in traditional media (e.g. TV, Film, Magazines etc.). Then there is their lack of enthusiasm for pushing ahead with new browser features; I mean, come on Apple – where are HTML Imports, Custom Elements and Shadow DOM for Safari!?
The fact is that keeping up with the pace of change is difficult, but if you are just getting started – it might be more beneficial to learn the tech of yester-year, Backbone is still very relevant even in 2015, people are still using it day-in, day-out. Many companies are invested with sites/apps that run on the web of a few years ago, and while that work may not be as exciting, or look as cool on your CV/Resume as being on a bleeding edge build of Polymer or Angular 2, it still needs support, patching, bug fixing – learning this stuff is still very useful, and it will help when moving onto the newer stuff.
— I Am Devloper (@iamdevloper) September 22, 2015
The best advice I could give any developer, is don’t try to keep up with it all just for the sake of it, I see GitHub profiles where a developer has many many repos with projects jumping from framework to framework, and while it may look super impressive to recruiters – I struggle to see how they could understand fully all of those frameworks/libraries and be able to support all that work should they need to, let alone be able to talk in any depth in interview about that framework.
By all means, keep your finger on the pulse – but until you actually need to decide on a framework/library for a project, there’s really no need to dive in head first to every new thing that hits HackerNews, just checkout this impressive list of current frameworks and if you can say honestly, “Yes, I know all of these and have created production web apps in them all.”, then, I tip my hat to you sir.