A few days ago, I got an interesting phone call from my friend. He asked a question – “Has PHP
lost its importance in today’s programming world? – I was taken aback and asked him as to why he is thinking about this all of a sudden. The answer to that came in the form of a graph, as shown below:
Our conversation lasted for at least an hour. We spoke about the current trends in the industry and how he could upgrade his skill set to that of a professional developer. This blog is basically intended to share my thoughts as to how a PHP developer can make inroads into the programming world and stay ahead of the competition.
I advised him to spend a minimum of two hours, outside of working hours and on a daily basis, to learn and understand the latest developments in the field. Personally, I think it’s best to take time early in the morning to get this habit going. Worried about your jogging routine? Well, you can always find time for that after work.
For starters, let’s look at two main talking points in the industry to further your growth – The NODE JS and NPM.
Node JS and NPM
Clearly, node is a tool to write java scripts on the server side and NPM (Node Package Manager) is the package manager for node, more like a composer in the PHP domain. I am listing below a few of the advantages in the nodejs platform:
- Asynchronous – (More fast)
- Tools (great tools like NPM, Mongo DB, Sails JS , Meteor JS )
It is advisable to familiarize yourself, in detail, the advantages of using nodejs by doing a quick Google search. Most PHP developers are familiar with frameworks like Codeignitor, Laravel, Cake php and ZF to name a few. Similarly the nodejs platform has a few frameworks to work with. They are:
Express.js is a very simple and easy to use a framework, but personally I prefer sails.js as it functions in a similar manner to like Codeignitor and Laravel. I would not like to comment on koa.js as I am not familiar with the framework, but is something that I’ll look into soon.
Even if you have a good understanding of the MySql platform, one needs to understand that the database concept has undergone a sea change in its operational capacity to accommodate high volume file structures. Earlier, majority of the database generated were based on the sql concept, but there are other contenders like Mongo DB, Couch DB and Hadoop. I strongly suggest that you let go of your sql comfort zone and star learning new database handlers right away. Don’t forget, MySql can still be used for small-medium scale projects and can be made to work in tandem with Mongo DB.
ES2015 (know as ES6)
Front End Frame Works
One can find a lot of front end frameworks, but the point is that all cannot be learned in a jiffy. However, I would like to point out a few options which I think, going forward, would be the trend in the industry.
Reactjs is a front end library developed by Facebook. It follows an awesome component method for front end development. I believe that React has a great future and it’s very easy to learn. I can assure you that if you familiarize well with React, then you can easily adopt React Native for Hybrid Application development while the aframe-react can be used for development of virtual reality applications. Know more by clicking the links below:
Angular is currently the buzz word in the industry. If you have not had a chance to learn Angular 1, then I suggest moving straight to Angular 2 as it utilizes the same operational components. It is one of the most comprehensive and full-fledged MV* frameworks currently available and is developed by Google.
Even though Angular and React are the key trends in the industry, it would be wise to invest your time in learning Emberjs and Vuejs as well.
The options to learn are basically endless. That’s why it would be an injustice if I fail to Mention, and also request you all, to look into Gulp, Grunt and Yomen front ends tools to make the leap towards being a full stack developer.
Hybrid App Development
Hybrid App Development holds the key to the future and it is imperative that you learn it right now. There are three major tools to develop Hybrid Applications – Iconic, Meteor Js and React Native. More information on the three can be found by accessing the links below:
- IONIC - http://ionicframework.com/ - Angular
- Meteor JS - https://www.meteor.com/ - ES 2015 or React JS
- React Native - https://facebook.github.io/react-native/ - React JS
I also suggest going through a blog that I had written a few months back on the importance of Hybrid App Development - http://www.webduratech.com/blog/what-are-hybrid-apps-how-it-can-be-helpful-for-small-business-owners/
Virtual Reality Apps
Virtual Reality is fast gaining momentum as one of the most important concepts in the programming world. Microsoft and Facebook have already introduced their VR products for the masses. As it is a new concept, efficient learning of associated tools in the VR domain will go a long way in making you a top notch developed with awesome pay.
More on VR can be found here - https://github.com/ngokevin/aframe-react
There is no end to learning, especially for us programmers. We have to stay constantly updated with all the latest trends in the industry to further our chances of making a difference in the field.
Keep an open mind and embrace the changes in the industry. Always keep in mind that self-learning is the only way to ensure that you do not get lost amongst the crowd.
Follow me at https://twitter.com/shemeermali for all the latest from the world of programming. Happy Coding Everyone!