The Modern Developer’s Toolbox
Data Structures and Algorithms
We can’t get away with data structures and algorithms. If you ain’t know them, you ain’t no programmer. It’s take no time to see a million search results in google but takes google to crawl the entire web to fetch the best optimized result for you so that you don’t annoy yourself. It’s all data structures and algorithms working behind it. The algorithm is pagerank and the data structures, honestly, I don’t have any idea. Just take the example of your mobile phone contacts. Talking about android, it the ListView class that is responsible for it and some or other sorting techniques with which you are able to sort your contact list. There is no need to tell the significance of data structures. I will be posting resources to learn these fundamentals in the upcoming posts.
Git and Github
Maybe you are not well known with these terms but don’t worry these two are much the same. Git is a version control system created by Linus Torvalds, creator of Linux. What it means in a simpler term is that when a software is built, it takes many iteration of code writing. Every iteration is a better version of the previous version. Git comes handy here. It keeps track of different versions of software to make debugging, refactoring etc easy for the developers. That’s the gist of it. Github is the online version of git where the source code of a software is hosted to provide developers from all over the world to have a look on it and make it better if he/she feel like doing it. It’s an open source online repository. Anyone can host their source code on Github and invite other people to work on it. But of these technologies helps developers to a great deal and that’s why everyone should know the basics of it.
I know it’s the nightmare of every developers life but you can’t live without it. That’s the power of databases. It’s the least fancy thing among the developers but it’s one of the most critical part of any software. And that’s the reason why Database Administrators (DBA) are paid exceptionally well compared to software developers. They are hard to find because no one want’s to learn it. Every developer should have a basic knowledge of any one database. It is expected from him/her at least. You don’t need to be a master of it but a little bit of knowledge does no harm.
At least A Framework
Frameworks are new programming languages. Today, the fight is not on the syntax, but on the type of argument passed to some method of some class of an API. Yes, it has become so. There was a time when software was made by the sole knowledge of the programmer but today programmers should know how to string together different APIs. Most of the difficult parts are already implemented and put into the APIs. You just have to use the available classes, call their methods and bammm, problem is solved. Is it? Unfortunately no. It’s not that simple. Memorizing so many classes and their methods is not so simple as it seems. It’s hard to master a framework. It isn’t expected from a developer. The sole purpose of a framework is making the life of the programmers simple. So, if you want to on the wanted list of developers, go learn a framework. But…don’t learn just for the sake of learning, build a small project using that. That’s how you do it. Some of the popular frameworks at present are AngularJS, ReactJs, Node.js, Spring, Django etc.
I’m the follower of learn by teaching strategy. I thing it’s a good methodology. Blogging provides one of the best medium for that. When you share what you’ve learn, you are making the knowledge gained from it to stick permanently in your mind. Tell me one popular software developer without a blog. It’s a great experience. Everyone developer should do it. I’ve taken the free blogging course from John Sonmez, a great software developer and adviser and I’m feeling great about my decision. You can also do it. You should do it. You must do it.
So, that’s my list of top modern developer’s toolbox. Do share your list in the comments.
Originally published at theleancoder.net on October 16, 2015.