Learning More on Software Engineering

04 Sep 2020

I started learning coding while I was a Junior in high school, when I used HTML and CSS to create my first web page I felt like a genius. When I learned basic JavaScript, I started to think more about how websites worked. I pictured what the code of the unit converter on Google looked like, and how I could easily create something better. However, the more I learned about web development, the more I realize that what I know was only the tip of the iceberg. While I knew that I was just a beginner, I never realized how little I really knew.

In the two years that I have spent in UH, I learned 3 more languages and typed thousands lines of codes, yet the feeling of ignorant and insecure never left my sides. While I knew much more then before, I also learn that programming is much harder at a professional level. The amount of dedication and manpower to create something like Google, Facebook and Amazon is mind blowing to me. While at first glance those website and software might not seem so impressive since they are just a bunch of buttons and functions. I realized that the code of those website and software are written by thousands of peoples, and yet they work so seamlessly together. I personally cannot imagine working with more then five persons because of the different ways we would think and code.

This led me to believe that the core of software engineering is to manage different resources and to create and maintain something that would be used by hundreds and thousands of people of peoples. The idea of object orientated programming is what led to the birth of large programming firms like Google, it allowed a ridiculous amount of people to work together to and to create something that no single man could create. We have successfully modulated programming, and we are at the industrial revolution of programming. Codes could be exchanged and combined with different pieces of codes to create something more useful.

ICS 314 has already showed me the power of easily shareable codes, this page is a great example. I simply forked the template files from GitHub, and changed a couple file and the site just became my profile, The template files was organized in a way that is self-explanatory, and it also contained example file that is helpful for new users. This is exactly what I what to learn from software engineering, the ability to work with more people, and the ability to make my codes useful to other programmers. One persons can only do so much, but if I am able to work with others effectively I could maybe create something as big as Amazon or Google.