On a coding streak
The last few months I’ve been working on a couple of projects that have required me to write a lot of code. I’m coming to the end of the projects and came to the realization that I haven’t written this much code since I left my job at SUNY Cortland more than 6 years ago.
Much of that is that my job as the Head of Web Services at the University of Houston required a completely different skill set. While I did write some code during that time, it wasn’t anything like the years I spent within SUNY. One of the reasons I left UH was I wanted to get back to coding and coders. My first year at OCLC I wrote quite a bit of demo code which was extremely gratifying but none of that was quite like the projects I’m just finishing up.
The irony of it all is that even without doing lots of coding for the last 6 years, I feel like I’m a better coder now than I was then. Some of it has to do with maturity and how I think about and plan out projects. A lot of it has to do with confidence. I’ve worked on lots of little projects during the last 6 years and been part of planning much larger projects. I’ve worked with people I consider more skilled developers and been able to hold my own. I’ve also taught workshops on coding and development to others. That has given me a confidence that I didn’t have early on. In the early days, I’d spend a lot of time questioning myself and trying to find the “right” way to write the code.
Now I realize that there is just the “right” for right now. Not every project needs to be perfect and striving to get it just right sometimes means that it just doesn’t every get done. I’d love to go back and spend another day pulling part all the code I’ve written for these projects and optimize it a bit more. Do I need to do that? Not really. It sure would be advantageous if I want to share it with others. For the original purpose of the project its not a requirement though and I have to prioritize where optimization and clean up falls on my larger list of To Dos.
Another trap I’d often find myself paralyzed by early on was hitting a problem that I couldn’t solve and getting swallowed by it. I have the confidence now to know that everyone has to Google or ask for help sometimes. The result is I’m much more willing to ask for help. I’ve also learned when “enough is enough”. Sometimes you get to the point with working on something that you need to take a break because you’re never going to get enough perspective from the problem to solve it unless you back away from the wall you’re banging your head against.
Probably the biggest thing I’ve taken away from working on these projects though is that I truly enjoy coding. Its probably because the idea of making something, really appeals to me and I like to see tangible results. It certainly makes the days go quickly.