Since January 2015 I’ve been trying to investigate what new libraries, frameworks, languages, etc. are popular these days.
Last year learned a lot MV* frameworks, in particular, about Ember.js, Backbone.js, Chaplin.js and Marionette.js.
I also learned a lot about JavaScript in the MEAP Stack (MongoDB, Express, Angular.js, and Node.js) and about modern web development productivity tools. I mainly worked with Grunt.js and Yeoman.
2014 was a very productive year in knowledge terms. Let’s take a look to the tools, technologies and frameworks that I plan to learn in 2015.
Browserify & Gulp
I’m planing to migrate the automated builds from Grunt.js to Gulp.js during 2015. There are not huge difference between these two tools but I find the Gulp.js configuration files more clean and easy to follow. Grunt.js is a great tool but it looks like Gulp.js will dominate the throne of the tasks runners for now.
This year I’m going to stop using Require.js to start using Browserify. Mainly because the CommonJS modules are used by ES6 and Node.js so I don’t really see the point of continue using AMD modules. Also the popularity of Browserify is growing at an incredible pace.
Material Design
The material design style guidelines published by Google are becoming more popular day after day.
There are implementations of material design UI components for Bootstrap, React, Angular and more:
- Material UI
- Materialize
- Angular Material
- Bootstrap Material
Some guys are even developing an AWESOME linux distribution that follows the material design principles. We can say that material design is “the new flat design” and is for sure something that we will need to learn about in 2015.
React.js & Flux
These days, everybody seems to be really excited about React.js. I investigated about it and seems cool but I probably won’t be using it this year because I prefer to wait until it becomes more mature and stable.
Another interesting topic is the new Flux application architecture.
Flux eschews MVC in favor of a unidirectional data flow. When a user interacts with a React view, the view propagates an action through a central dispatcher, to the various stores that hold the application’s data and business logic, which updates all of the views that are affected. This works especially well with React’s declarative programming style, which allows the store to send updates without specifying how to transition views between states.
I think this year I will try to learn about the architecture design ideas and principles behind React.js and Flux. I will try to learn how to implement an unidirectional data flow and get used to the declarative programming style. I already have two books about it on my Amazon wish list.
- Flow-Based Programming: A New Approach to Application Development
- Dataflow and Reactive Programming Systems: A Practical Guide
I will try to create something with React.js and Flux but this will be probably in late 2015 / early 2016.
TypeScript
Techcrunch.com recently announced that “Microsoft And Google Collaborate On Angular 2 Framework, TypeScript Language”. I think it is a good idea to try keep an eye on the TypeScript backlog to be ready for the release of Angular.js 2.0.
Join the conversation
I have created a Github repository for learning purposes. I’m experimenting with Gulp +TypeScript + Sass + Browserify + Karma + BroserSync. Please feel free to take a look/ collaborate in this learning project.
Would you like me to add another tool / technology / framework to this list? please let me know at @OweR_ReLoaDeD.