Why not to stop coding
Hard drives are interesting dumping place, they hold traces of all your life in vairous ways. This is true even about my own Hard disk. Today I was going through my hard disk and found some really interesting files there. And it reminded about my situation few years back. To be honest I have 11 years of IT experience. For first 2 years of my career I was an active developer, then I diversified, not because I hated coding but because the stress of first 2 years working for a Japanese client has burnt me off. Next 1–2 Years I did a reverse engineering project which tough taught me lot of tools but also diluted my expertise as a hard code developer. I was developing tools and scirpts in VB Script, Javascript, C#, Fortran and Excel macros, though it made me a jack of all trades it also made me master of none.
Now this was one side of the story, the other side was a travesty with Indian Service Industry, we are trying to fit in a manufacturing mind set to a software development shop. This has subsided now in many places and people are understanding the importance of nurturing interest but still this is one of the most prevelant problems in Indian IT industry. Here they through people at a problem and expect them to learn and fix the issue as most of the projects that Indian IT companies work on are maintenance projects. Development projects are few and far between, at least that was the case during my early career. Now one would ask why blame Indian IT Industry for my woes, yes this is true, you have to do trade offs if you really want to persue one passion. Coding has been and will be one of my life long passions but I had also to do some trade offs, and I chose money over coding, where I got a very good chance to learn how to do project management, stake holder management, project delivery, learnt how IT processes in a Bank’s Back office works. But ultimately I diluted my coding skills. In the process I learnt new skills, like SQL, Software Architecture and also a lot about documentation but in Job where you do coding you do only what is required for the job nothing beyond that.
All of these had its imapct on me career wise, while I was jack of many trades and also fancied calling myself a generalist, I diluted my coding skills and to be honest if you are not a coder, how big vision you have you are handicapped. In India if you really want to create a software product of value either you need to be super rich to throw money at all the problems or you need to learn coding.
And realising this problem and having an unending dream of starting up I chose the hard part and rekindled my desire for coding. First I started learning Ruby, that helped me get my 3rd job but unfortunately like all the trappings of Indian Software industry I was again stuck with a role where there was no use of my skills and again I was stuck with Excel, SQL and tools which are very good for job but not good for you either career or even personally. Again here my desire to learn made me to explore new technologies and thanks to my current employer I learnt many new technologies and to some extent I use many of these technologies as part of my day job or I use then to show case my skills via my blogs. Today again I am again enabled — Cloud, Containerization , DevOps, Big Data, Machine Learning, IOT and now Cryptocurrencies/Blockchain this is what I learned in last 2 years, I know again I am a generalist not a master of all these but I am building expertise in few of these technologies. End of the day I realise all these technologies may come and grow and but to build them all you need coding.
Coding unlike what many of us think is a way of expression and though it has been industrialised by refactoring, rapid application development, linters and industrial best practices, auto generation but still is like writing you need to write everyday to gain experience and share your knowledge. And one of the best languages that I found to express myself and write code has been Python. I know I may fork to new languages and technologies but what I have learnt from Python and how it has helped me grow as a person and an a thinker has been immence.
Finally
Now I know that even if I do any job or any place I go there will be two things I will be doing constantly and they are my greatest passions of my life — Writing & Coding. Hope you also embrace coding as a passion and help develop some good skills and ways of experessions and develop some awesome code to help the world.
P.S. If you feel Python is not your flair, I suggest you look at some great alternate languages like Node JS (For Javascript Lovers), Scala/Kotlin (For JVM lovers),Golang (A good statically Typed language and a very good community and products behind it) and finally Rust ( This is someting I found recently and will be exploring soon).