This question originally appeared on Quora: Why is programming so popular compared to other engineering disciplines? Answer by Balaji Viswanathan, PM at Black Duck Software; entrepreneur; former Microsoft engineer.
Just after we finished high school, my friends and I had this question of what engineering branch to pick. We went to the largest library in our city and picked up a whole bunch of books in different branches. We didn’t understand most of those ideas, but we understood one idea—it was computer science that was rapidly changing.
Follow the change
In the past two or three decades, computing has been changing the world far more than any other field. Electrical, civil, electronics, and mechanical engineering have changed life too, but not as much in the past 20-30 years [their big changes came more like a century ago]. Think of Uber, Google, Microsoft, Apple, and so on. How many similar revolutions have been created in other engineering branches recently?
Most people want to work in an up-and-coming field since that is where there is action, money, and a challenge. These trends change from time to time, and that is why you should not pick a branch just because your dad and his great granddaddy picked it up.
Don’t box yourself in
These trends could shift. It is already looking like things might be shifting from software to hardware. Exciting new shifts in hardware are waiting. Or it could be some other new field. At that point you shift, it is not like you are programmed to do one thing in your life. Remember, you are not married to your discipline, keep an open mind to knowledge of all kinds. Don’t just put yourself in a box and force yourself into a career path just because you picked that at seventeen.
Albert Einstein’s dad wanted him to be an Electrical Engineer while he trained to be a teacher only to become a world renowned researcher. Mahatma Gandhi’s dad wanted him to an administrator [Diwan] while he trained to be a lawyer only to become a renowned social activist. Almost all geniuses have changed paths this way. If those Geniuses themselves were not sure what they will become, what do you know? In the immortal quote of Game of Thrones I would just say, “You know nothing, Jon Snow”. Why do you kid yourself that you know something certain about your future?
Geniuses have doubts, confusions, questions, and revelations. Idiots don’t. They are too confident to question themselves. And thus they never change. My desk doesn’t care if it wants to be a desk. It is a desk and it will be a desk. Don’t be that desk. It is ok to have confusion and it is ok to change path based on the circumstances. You are not an insect that lives and dies with only skill set.
Stop stereotyping fields
Then there are fools who believe that some fields are easier than others. I talked with a guy recently who said Computer Science is easy. Oh, really? Is that why companies are running everywhere paying the highest salaries they can? Can you kindly design me a clone of Google search engine?
No field is more superior or complex than others. It all depends on the application. It is the application that is simple or complex. Not a field itself.
Once again, stop having stupid stereotypes as these are boxes you are putting over yourself. Explore and respect knowledge of all kinds. A guy who is working for Google is as much a “core engineer” as a guy working to design chips for Cisco.
Keep an open mind and think of problems you want to solve. The engineering branches are merely tools to solve them. You can pick up any tool—whichever is relevant to the problem you are solving. Focus on that problem, not on the tool.
Look to fight the greatest challenges of your day. You might be the greatest soldier in the world, but what is the point of that valor if you go to the wrong battlefield on a wrong day?