November 04, 2015
This month marks three years since I started programming; I’d like to take a minute and reflect on this milestone.
Learning to program changed my life. I love what I do.
All day long I solve tough problems with brilliant people. I have a network of colleagues who are also my friends. They challenge and inspire me every day.
Programming is hard.
If you are a curious or competitive person, programming can be insanely frustrating. I’ve stayed up late banging my head against a computer screen many, many nights.
One thing I learned from Zed Shaw: in programming there is no ‘easy way’ to become great.
Finding an answer online, written by somebody else who faced the same problem, is a tempting and sometimes necessary technique. But it’s also an inferior knockoff of a solution. Yes, your immediate problem will be solved, and you might get to walk away. But the creativity and stupid optimism required to get there yourself is the real prize.
Programming is hard because you must force yourself into the uncomfortable position of looking dumb. As someone who was a total beginner recently, I remember encountering that discomfort for the first time and not liking it. Nobody likes to feel dumb.
That feeling hasn’t gone away. I don’t think it ever does. You have to use it as fuel. It’s a signal that you’re on the right track.
Building an application is a rush.
It’s fun to be hours into a tough problem with my pair, writing tests, ping-ponging through the implementation, taking breaks to discuss and whiteboard, and then producing something we both think is smart. Emerging from the fog with an elegant solution is amazing.
I can’t think of a career more inherently gamified the programming. I seek improvement just because it’s more fun to be good.
There has never been more ways to learn, and more distractions. —Unknown
If you are interested in being a programmer, go for it. Don’t wait.
There is no programmer type. I don’t have a degree in computer science. It doesn’t matter if you have humility and will do the work.
There is no right technology to start with. I remember stressing over which language, framework, methodology, text editor, and operating system to choose when starting my programming journey. Luckily bootcamps weren’t a big deal in 2012, or I probably would have been paralyzed with indecision. Just pick something; you’ll likely change your mind later.
There is no ideal time to start. There are new programmers minted ever year. None of the platforms we write for are going anywhere.
Just get started. For me, joining this profession has been an honor.