I was destined to major in computer science the day I was born into this world… okay, not really.
I made the decision to major in CS my freshman year of college. At the time I was not declared to any major. I was still unsure of what I wanted to do and where I wanted to go with my education. I enjoyed problem solving and tinkering with mechanical objects, which led me into engineering. I was interested in either mechanical or electrical engineering but my university did not offer any programs in these areas. When filtering through the lists of possible programs to join, computer science kept catching my eye. I began researching what one could do with a computer science degree. The possibilities seemed endless. I could become a web developer, mobile app developer, game designer, data researcher, PCB designer or something completely different.
It was also around this time that I got my hands on my very first Arduino beginner kit. The kit included an Arduino Uno and about thirty sensors and modules to interact with. My first project, like many others, was making an LED blink on and off. There was something that clicked in my brain when I uploaded my program to the Arduino and I saw that LED blinking for the first time. I experienced a small adrenaline rush and my mind filled up with many ideas for what to do next. I could make the LED blink faster, slower, upon the press of a button. This was a very exciting experience for me. Keep in mind that I had absolutely no programming experience prior to this point.
After tinkering with most of the sensors that came included with my beginner kit, I became bored and needed something more to satisfy my need to tinker. I began researching different development boards that were similar to the Arduino. After making a list of the most promising candidates, I decided upon the Raspberry Pi. I decided on the Raspberry Pi because it could run a live operating system, connect to the internet and I could write programs in many different programming languages. To complement the Raspberry Pi, I also purchased a book on the Python programming language. The book was titled Python Crash Course: A Hands-On, Project-Based Introduction to Programming. By working through Python Crash Course, I learned many fundamental programming concepts and by the end of the book, I had built a space invaders game from scratch. By the time I began my first programming course, I was plenty prepared and well ahead of the class.
By this time in my college career, I had already fallen in love with the code writing process. For me, writing code was akin to solving a complex puzzle that I could take in any direction I wanted. I have the freedom of expression that one experiences with creative writing but the functionality and practicality that come with engineering. It was a perfect match for me.
Since I started my journey into the world of programming, I have created over eight projects covering areas such as computer vision, web development, autonomous rovers, robotic arms and computer games. As of writing this post, I have to say that I find myself most passionate about projects that tie together robotics and computer vision. I am very grateful to have found computer science and programming at a time in my life when I was searching for a meaningful area of study.