What most institute and programming classes won’t teach you about software development.

Nabajyoti Das
Sep 3, 2018 · 3 min read

From my years of experience in teaching as a software trainer I have seen that there are students and interested learners who join institutes and programming classes wanting to become a software developer or atleast hoping to develop a software product of their own. So with all enthusiasm and passion they come and enroll in such classes and after few days or so they gradually lose their enthusiasm and motivation this is because they think that learning a programming language will make them a software developer but sadly it is not so.

Let me tell you this secret, learning any programming language won’t make you a software developer. It is like learning English or any other such language and hoping that after learning the language, he/she will become a writer.

So am I suggesting that to be a software developer one should not learn programming language?

No I’m not suggesting that. In fact, learning a programming language is just a piece of iceberg and there are few more required ingredients that is needed to prepare you to be a software developer.

The first and foremost one is: “Patience

Just like a writer needs to think, write, erase, frame a sentence more suitably and then again continue to write without losing his patience even if it’s not coming up the way he wanted to write. The same goes for a software developer. If you can’t solve a problem at once, solve it until you make it. To be a good software developer you have to have patience to continue to sit and learn and tackle problems even if it’s not working the way you wanted it.

The second one is: “Reading, learning and understanding from the documentation of a particular software development kit and from other’s code

Just as a writer needs to read, comprehend and learn the art of writing by reading others literary work. In the same way, a software developer needs to read, learn and understand by reading documentation and also by reading other’s code.

The third one is: “Remain focused and don’t get confused with so many tools available to do similar task

Have a definite mindset and a goal in mind for what you want to develop and what you want to learn. Remember that there is more than one tool available to do a similar task. For example, if you want to develop a web application then there are so many options that will make you confused because first you have to decide what programming language you want to use, in which case there are so many programming languages available and after deciding the language of your choice you have to decide which IDE to use and again there are varieties of IDE’s available which again leads to more confusion, then after that you again have to decide what framework to use and so on. So my point is that there are so many available options to do a particular task that finally results in making a novice confused and makes him/her give up his/her dream of wanting to be a software developer or make him/her wander without getting anywhere. So it’s always better to have a definite goal and objective in mind in what you want to develop and what to learn or if there is still confusion then it’s better to google or ask some expert for advice on what will be the most suitable tools to use for to develop your particular software.

The fourth and final one is: “Google to solve your issues and problems”.

It is rightly said that Google is a software developer’s best friend. Don’t hesitate to google for finding solution to your problems no matter how basic and simple it might be.

So those were some theoretical tips and advice or whatever you would like to call it.

Thank you for your time and reading it. :-)

Nabajyoti Das

Written by

Freelance Software Developer and Trainer with specialisation in Android App development, Web development and Machine Learning.