How I got here


When I was 15 I was browsing YouTube when I came across a channel named 'Michael Reeves'. He made videos covering ridiculous projects he made, often mixing the technical details in with his sporadic humor. The first video he ever made, 'The Robot that Shines a Laser in Your Eye', was my first look into programming. He had used a laptop for computer vision, hosting a server written in C# which communicated with an arduino to control the servo motors on the device. I knew none of this however, all I knew was that it seemed if you learned enough about programming, you could make anything.

After ordering and receiving some arduino kits to play around with, and doing all the projects in the book that came with the kit, I decided it was time to start on my first big project. I wanted to recreate the robot which shines a laser in people's eyes from the youtube video. At this point in time, I had a very basic understanding of C++ and Python, so that's what I used. I wrote the computer vision in python (with the condescending help of Stack Overflow), and built a 2 axis control system for the laser. Then came the daunting task, getting the python code to talk to the C++ on the arduino. I, having started my informal computer science education a week ago, was very confused when every Stack Overflow post was talking about using ports. I mean the arduino is already plugged in to a USB port? So I spent the night thinking about it and came up with a solution. The 2 servo motors on the laser machine make a 2 axis system, what else is a two axis system? The position of the mouse on the screen! So I had the python script move the mouse on the laptop, and the arduino pick up the position of the mouse on the laptop, and it worked! I absolutely love telling this story because no one can ever guess how 15 year old me solved this problem, and it shows that there are so many ways to solve a problem in computer science (though, most are terrible). I also love sharing this story because it helps me remember that everyone builds their computer science knowledge from zero.

Fast forwarding a bit, and I was in college at Central Michigan University for Computer Science and Mathematics. Here, I developed my true love for Mathematics, and really started to dig into real Software Engineering. I learned the *right* way to do things, and I was constantly starting side projects to broaden my knowledge. I think that a lot of people can relate when I say that I learned a lot more in the time I spent exploring programming and computer science on my own than I did learning in a classroom. That's not to say that I didn't learn a lot from my education, but it is to say I spent a lot of my free time in college indoors doing research on things that interested me.

It was the summer between my junior and senior years at college when I landed an internship. It was at a startup company out in Detroit, Michigan called Atomic Industries. After the summer, they offered me a position as a Junior Software Engineer, where I worked remotely during my Senior year of college. After I graduated, they offered me a position as a Software Engineer, which I took. My time at Atomic Industries taught me more information than I ever could have hoped to learn on my own in the same amount of time, and has fast tracked my knowledge in the field. All my coworkers there took me under their wing and helped me learn everything I needed to know. They also let me help out with any projects I wanted to, which fostered my curiosity a ton. Even the manufacturing team would take the time to explain how the machines worked and how molds were designed.

Now, most of my free time is spent writing side projects, and exploring new programming languages (which is how I discovered my love for Zig). I also spend a lot of my time filming and editing YouTube videos, in the same style as Michael Reeves, the channel which got me into programming in the first place. If you want to see more about what I am currently learning or working on, checkout my blog. Have a great rest of your day!

p.s., the solution to your bug is probably just a good night's sleep. source: countless all nighters