I was lucky enough to grow up with computers being a part of my life from a very early age. My dad was working at a company with a Mac heavy environment in the early 80s – the time before Microsoft when Apple was the brightest star in the personal computer market. It’s hard to explain how critical this early exposure to computers shaped my confidence and understanding of computers throughout the years.
My earliest memories on a computer were using it to draw. I’m guessing this might’ve been a precursor to Photoshop back in the 80s - something with minimal options. I never worried about “messing things up” on the system – it just wasn’t a concern. Instead I focused on important things like how to change the icon for a folder. Later on learning how to format and reset a system was like learning a superpower. It guaranteed that my playground would be working.
The movement of kids from computers to phones and tablets does have me concerned about the creative side of innovation in a generation of people using devices that created on a different system. But it also has me optimistic! I’m extremely curious what kind of tools, interfaces and experiences will be created by the first generation of users on these new interfaces.
Even though I started before a time on the internet, I never had a desire to build desktop software for the systems that were currently in place. It wasn’t until something came that changed things, and I was able to watch grow up and take shape that I felt a passion to be a part of it. Over the next decade the web became social networks, which defined innovation.
I wonder about what that “next thing” is for younger people currently taking shape? Is it VR? 3d printing? Communities where the users are the builders (Minecraft)? Interactive surfaces? Although I’m jumping in on these, I can’t wait to see what’ll happen!
My First Computer
We had many computers at home growing up. A Macintosh, an Apple LC II, an IBM 386, a 166 MHZ computer and more. These were computers my parents needed for work that I was able to learn and play on. Having access to both Mac (at my Dads house) and DOS (with my Mom), I had experience with both, but unfortunately never got great at the command line. That early lack of command line experience had a big impact later in life, when I switched back to a Mac and didn’t have a solid base for discovery.
Fast forward to sophomore year of high school and I finally bought my own computer – a 333mHz Compaq Laptop. With divorced parents, having a laptop made a lot of sense at the time. Like most of my friends and fellow students at our Center for Advanced Technologies Magnet, I went the Windows route. It wasn’t too long before scraping together parts to build something bigger.
The high school curriculum at CAT was amazing. I can honestly say I learned more programming in high school than I did at UCF – but that might also be because I switched majors 3 times. Over 3 years, we focused on the following languages:
Karol the Robot
This high school exposure to programming, and multiple system types was an amazing way to get an introduction to core concepts. It’s funny how simple exercises stick with you when you make breakthroughs too. Making my first tic-tac-toe program, and creating my first binary search tree are some of the most memorable experiences during high school.
Senior year in robotics class, back in 2000, we even did a crazy project. There were 2 classes during the day, and they were setup to compete with each other. In one class, they were tasked with creating a vehicle that would be gyro stabilized on a ball and move around avoiding a predator form above. In the other class (which I was in) we were tasked with creating a blimp which would need to fly around and try to dump flour on the ball vehicle. Did I mention that both of these needed to be autonomous vehicles without user control? It should be noted neither class got a working vehicle, but we did learn a ton about autonomous vehicles, blimps, movement and programming for a 486 motherboard.
Today, kids who are able to build their first Minecraft or Super Mario Maker levels while in elementary school are getting this same feeling of creation at an amazingly young age. It’s an addictive feeling, and with more time to build on it, I’m curious to see what’ll happen.
When I finally moved into a house, it was obvious that I’d need an office to really program at. It’s funny to think that just 10 years ago I was still a Windows person, not to mention a desktop.
Moving from this to a Mac laptop was the biggest change for me in the last 10 years. Being able to use it anywhere has meant that I’m always getting better at using a computer. That’s a weird thing to think about - but even just using a computer can be something you improve on.
Computers at Home Today
Now a days, I don’t typically program isolated in a room anymore. Instead, I’ll settle down on a couch, watch some Daily Show and chip away at a side project or a blog change. When I do work from home, I plug my laptop in, use a second monitor and pour some coffee.
Computers at Code School
At Code School, we all manage and maintain our own computers. This means that I use the same laptop at home on the couch, in my home office and at work. Making sure that this one computer is running perfectly and is optimized for how I work is important, but also can be a rabbit hole when I target optimization.
Whenever I hear talk about privilege, and how that shapes someone over time, this is what I think about first. Where would I be without that exposure to computers from a young age? What would have happened without a playground to experiment in? What about if I wasn’t exposed to programming in high school – would I have had the drive to focus on it in college in the same way? I can’t say for sure, but I do know if I’d never been exposed to computers until college, it’s very unlikely I would be a developer today.