Saturday, April 01, 2006

Finishing things up

A week ago I finished a software project I had worked on for the last 18 months. In my project I think the biggest things I learned were (in order):
  • Using database triggers/functions in PostgreSQL
  • Finding what I need in Microsoft documentation
  • The proper use of transactions
I know for some people these things are all pretty basic or assumed. They are for me now. The really fun part for me is that I can now say I have completed a full software project all by myself.

I consider this to be somewhat of a professional milestone. Back when I was at century software I knew a little bit about writing code, but I wasn't nearly as good as the others I worked with. I pretty much learned how much of a programmer I wasn't. A couple of years later I was writing an internet filtering program for someone. I was able to get good portions of the code done, but ran into a problem when feature creep headed in the direction of advanced windows programming. I still have the DNS proxy/packet mangling code I wrote for that.

Now I stand at the end of a project for the first time. I can look back and enjoy seeing what I have made. What's even better is that I have developed into the kind of programmer that can just sit down and hack a utility together. If used properly that could be a pretty good metric for capability. What can you throw together with only a moments notice? Isn't that what coding contests are about?

Lets hope I can do more of these in the future. Though, I think working on a team would be nice. The later portions of my project really benefited from what I learned in the earlier parts. Being in a team would have helped me have access to people who could suggest different ways of doing things. In some cases I didn't figure out how to use some features until I stumbled across them in the docs while looking for something else. Using collections and lists comes to mind...

So what's the point? Coding is fun, realizing you're good enough to finish things is even better.


1 comment:

Tom said...

Nice work. The satisfaction of a job well done is sweet.