This, like most things I’ll ever learn, I learned the hard way. It is difficult to admit, but for a long time, I thought I was doing programming wrongâ„¢ because I kept getting so many error messages. I thought that if I were a real programmer, I wouldn’t get any error messages because I would write it correctly the first time. I didn’t realize that success in programming looks like a succession of error messages, each a little further into the problem you are diagnosing than you were before. This. Is. Huge.
I wish someone could have told me years ago, but I think for anyone who is comfortable programming it would feel like telling me to remember to breathe. Luckily I had the chance to pair program with some great developers and I learned by watching them go through the process – watching them deal with the ego bruising frustration and eventual elation of solving a problem, one error message at a time. Without them, I never would have felt the rush of “Wahoooo! Different error message than before!” It is amazing. One minute you think you will never, ever, ever solve the problem… and the next, zomg, I’m king of the world! Rinse, repeat.
It is beautiful to experience such joy (and pain) in solving problems, and it helps me remember that I’m neither the king of the world nor the developer who will never, ever solve the problem, but a bit of both, and a lot in between. In CSS, after 13 years writing the language, I can often just look at a bug and say “this has to be x, y, or z.” If I hadn’t gotten out of my comfort zone, I never could have had so much fun. :)
4 thoughts on “Error messages are my friends, pair programming buddies are my best friends”
The number one skill in all of development is troubleshooting. Good developers do it very well, and realize that barely a day goes by without encountering an error and asking “Why did it just do that?” and “How can I get it to work the way I intended it to?”
Heh! I’m just starting to learn Ruby on Rails too. As a perfectionist I didn’t want to see errors either, but they’re actually fun…and fun to fix. My face goes from confusion to silly grins everytime I figure one out :)
I remember my second programming class in college had a big focus on errors and troubleshooting. When I got the job offer I left my last job for, I said, “I should give that import application another go and see if I can figure out that monster problem.” I had cumulatively spent at least a month trying to figure out that problem.
Within a week, I had gotten a completely different error message, one I realized meant a significant amount of progress. Oh, to relive the joy of that moment. Unfortunately, finishing meant talking with programmers at another company that weren’t too responsive. My last day came and went without me being able to finish my work. Bummer…
Late to the party! Just found your site.
This is what I love about programming. This process of ‘what the hell am I doing?’, ‘when are they gonna figure out I’m a fraud’, ‘hey, this might make sense’ to ‘Ha! Ha! I knew I could do it. it’s like I’m a real programmer!’.
Hard to explain to people who don’t do tis kind of work.
Comments are closed.