<software engineering as a discipline>
The essence of software development as a discipline and my reason to pursue software development as a career can be summed up by what Steve Jobs said:
“Once you discover one simple fact, that everything around you that you call life, was made up by people that were no smarter than you. [Then] you can build your own things that other people can use. And once you learn that, you’ll never be the same again.”
I believe that if people truly understood the gravity of what Steve Jobs was saying, a lot more people would pursue it and even pick it up as a hobby. One of the reasons I didn’t study software engineering in college is that I didn’t really understand the reality of what you can accomplish when you have the ability to code. Being able to access programs, manipulating them to your liking is very powerful. And by extension, because almost everything in modern life needs to be programmed, you have the ability to manipulate and influence systems, processes and even institutions.
Think about the major tech phenomenon that has taken place in the past decade that has fundamentally changed the way we do things forever: The way we shop, eat food, watch television and interact with one another now is very different from how we used to do these things just 10 years ago. Steve Jobs believed that the people that made all this happen were just ordinary people. There isn’t any particularly special about them except the fact that they understand that they can build instruments that others can use.
During college, every computer science major I talked to always complained about how tough their classes were and how they didn’t understand what was going on in their computer science classes. Furthermore, they would always complain about their GPA being too low because of the hard classes they were taking. Combine that with what I saw in the media and in movies like The Social Network about software engineers; I always thought that very few people are blessed with the ability to code. And because of that, I, perhaps subconsciously told myself that if I pursue software engineering, I would have a hard time getting a job after graduation because I knew my GPA will suffer just like all of the computer science majors I talked to. I equated having a good GPA for having an easier time finding a job. Although it’s important to have a good GPA, it’s actually just a piece of the puzzle when you’re coming right out of college.
The fact of the matter is that, and I realize this now after learning my first programming language, coding isn’t hard, but learning to code is. But you can make that argument for anything. A gymnast doesn’t think that doing a backflip is hard but I’m sure there was a time in every gymnasts’ life where they struggled doing a back-flip when they first started their gymnastics journey.
Everything I know about software engineering and coding I learned within the past five months.Albeit a very intense five months that included 8 hours of study a day. However, five months in the grand scheme of things isn’t a very long time at all. Despite that, I feel as though I’ve grown so much. And that’s the beauty of software engineering and learning to code. You can get fairly proficient in a particular language within a relatively short period of time. You don’t have to do what I did, but even a couple of hours a day can get you very far. And once you start your own projects and see things come to fruition, you won’t want to stop creating.
Ultimately, if you can wrap your head around the essence of software engineering: the idea that you have the power to create, improve and influence things that you thought were immutable, along with the idea of how relatively quickly you can pick it up, then the sky’s the limit and the world is your oyster. Having the ability to code, is like being Neo in the Matrix. Similar to Neo, once you realize that you have to power to create, change and influence, then no one can hold you back, including yourself.
Good job!
Definitely a great read! I loved how you mentioned “coding isn’t hard, but learning to code is”. At about halfway through my undergrad, I switched my major from computer science to information systems because of my poor performance in OOP which in turn resulted in a bad grade. However, if I had a chance to redo it again, I’d have definitely stuck with computer science because the power of learning of how to code is huge!! Munaiz Ahmed Nice job and congrats on learning a new vital skill!!!