The 7th Position

Bryan Housel is not impressed...

If You Knew Then What You Know Now, Would You Have Started Programming?

Yes! In fact, I majored in Electrical and Computer Engineering in college. This involved lots of circuit design, robotics, electronics, power systems, etc. I got a minor in Computer Science almost as an afterthought. But if I knew then what I know now, I would have majored in Computer Science instead.

Today's hardware is complicated stuff, and I realized about halfway through getting my degree that engineers today are pretty much limited to working on tiny pieces of big projects. Sure, there was time when a few engineers could launch a hardware company from their garage, but those days are long gone. The barrier to entry in the hardware business has increased so much that you now need to be a big international company, like Sony or Apple, to begin to think about bringing new hardware to market.

Software has gotten complex too - but creating software is still accessible to anyone with an idea, a computer, and an internet connection. The tools that we use to create software are, themselves, other pieces of software that have evolved to match the demands of this business that we’re in. We have frameworks and toolkits and libraries (often free!) to handle all those complicated details for us. Developing software still feels creative and personal. Once it’s complete, you can show it to people and say, "I did that."