The programming stack of 2015
Another year and new good things have come to the surface. So what is the stack of the year 2015.
IO.js
The main contributors of node.js grew tired of the slow progress of node.js and forked it, and it does not seem that Joyent is going to do anything about it. From the community standpoint, it seems that it is IO.js that is going to win, but the breakup is still in the works and it can be brutal later.
IO.js is also superior in many ways, it is faster, easier to do SSL and just has the natural improvement coming from the community. The maintainers do also seem to ensure a more healthy process of improving, so really looking forward to being the year of IO.js
React.js
The popularity of React.js has gone through the roof. Building a javascript app in the year 2015 without React can be seen as ridiculous. All developers has now tried building a small Angular app and many has felt the pain of building a big single page applications, where things starts to crumble under the weight of a framework that does too much! It needs to be simple and easy to debug, and that is where React comes to the rescue, it is just javascript and together with the Flux methodology, you have a safe and scaleable codebase.
The problems with Single Page Application has also been that you would either put the rendering of templates at either the client or server, and both would have benefits and downsides, but that is no longer a problem. With React you can compile your application on the server and then continue the application rendering on the client, all very seamless.
And now that Facebook published React Native, a way to build native apps with React.js, why would you ever write a javascript app in Angular or Ember, if you can write it in React and port many of the components to build a fast mobile application with Push Notifications? There is others that tried to reuse javascript for mobile applications, but it is a crumble experience, with debugging and error handling being a lukewarm soup.
Docker — Containers
The 2015 is also the year of containers, every applications is going to be put in a container, because the benefits of running the exact same environment locally and in production is a tremendous value and that you can start a container in seconds compared to virtual machines in minutes, is a benefit out of dimension!
But there is still a task to make it easier to deploy containers, right now you need to know a lot about cluster management, load balancing and fault-tolerance, but that will change in 2015. It should be possible to push a container to a Platform-as-a-Service, that then take care of everything else and you just get a url back where your application is load balanced and all.
Docker does however seems to have a strategy that is hard to figure out, at one point the want to make Docker open and that it should be a community project, but at the other they buy out projects and put the Docker name on it, only because they want to make themselves indispensable. CoreOS initiative with Rocket, an open container runtime is promising, we will see!
What database is the 2015?
Mongodb is still a popular choice of a database that is easy to start with, and people has also choose it in the MEAN stack. There is so many databases available now and all have their different benefits, so the 2015 tech stack database is running multiple database at the same time, because with the ease of containers, why not utilize on the benefits of the different databases. With Graph database like Neo4j you can make JOINS, which is finding relations between data, and with little overhead even though you are doing large queries. With SQL database you can easily sum and sort large datasets with high performance and with in-memory databases like Redis and Riak you get a high throughput. Different problems, different database choice!
Only pay for resources you use
Amazon Web Services launched in late November a service called Lambda, where you can run your programs, but with the huge difference that you only pay for what you use, down to as little as 100 milliseconds! They do all the scaling and provision of hardware, you only has to provide the code and they will run it for you. This is a huge breakthrough and throughout the year when Amazon makes the Lambda service more customizable, the impact will be tremendous. All the hard work of computing big data has basically been taking out of the equation and all there is left is you and what ideas you to make!
Finalizing
A lot of things is coming out and it can be difficult to get your head around it all and learn those new things, but I think the technologies that will survive is those that let the developers pick it really easy and start using quickly, and I think that applies to all the items above! Looking forward to a good tech year!