Believe it or not, I haven't always been as passionate about programming and software engineering as I am today. I've enjoyed working with computers since a young age, but I didn't have much formal computer science education prior to my college years at Northwestern University.
While pursuing my bachelor's degree at NU, I often found it difficult to keep up with the coursework; not only did I need to learn the material for the class, but I also felt like I had to play catch-up with my peers who were much more comfortable working with a variety of programming languages, tools, etc. This was challenging to say the least, and by getting thrown into the deep end I often found myself struggling to stay afloat.
I stuck it out and earned my degree, and soon after started my career in software engineering. Over the years, I've worked on some amazing projects and have collaborated with developers who taught me how to be both a programmer and a professional. With this experience came renewed passion, and with that passion came a desire to learn even more. I've often found myself wondering what it would be like to revisit an academic environment with an actual understanding of how to read compiler errors (and how to properly use StackOverflow).
These thoughts are the primary reason I've decided to enroll in Georgia Tech's Online Master of Science in Computer Science (OMSCS) program. I spent some time weighing different options and alternatively considered just continuing with unstructured learning, but ultimately I chose Georgia Tech's offering for a few reasons:
At the end of the day, I'm mostly pursuing this degree to learn and not just to get a credential. There's a very real chance I might not make it out; from what I've seen most students who start the OMSCS program don't finish it. However, I don't have much to lose by trying, and at the very least I will hopefully grow both as an engineer and a person from the experience.
~ MAD