Thursday, March 18, 2010

Becoming an Open Source Developer

I have been writing computer programs for a very long time. My first experience was writing Logo programs when I was in elementary school. I have come a long way since then. In high school I began programming in PHP and was able to make functional applications. In college, as a Computer Engineering & Computer science student, I have completed a wide variety of programming projects, but only recently have I started releasing my code open source.


Right now I have 6 projects that I have started and are hosted on Google Code. A list of all my projects are listed on my website under open source projects. Three of these projects are written in C# and three of them are PHP web applications. Two of them are school projects that I worked on with other classmates.

Why do I release my code open source? There are two main reasons. The first reason is that using Google Code provides a Subversion server for storing code, a bug tracker, and wiki for documentation. The second reason is there is no benefit keeping the code closed source. Releasing the code open source maximizes the possible benefit of the code that I write. In some cases this is by simply making the application available for others to use but in other cases the actual source code could be used and extended by other individuals in the future. Additionally, I hope by making these projects open source they may live on past the time where I can focus on their development.

At this point in time in my career as a programmer, my skill set and reputation are the most important assets I can focus on improving. Any possible monetary benefit of keeping the code I write closed source is offset by the benefits involved in contributing to the open source community. One of the website I have recently discovered is Ohloh, where I promptly created a profile (https://www.ohloh.net/accounts/JaredHatfield) that includes all of my contributions to the open source projects.

Up to this point I have only contributed to open source projects that I have started. However, I want to start contributing to other projects, at least in a small way. However, the projects I am interested in use Git and I am still in the process of learning how to use Git effectively. I will admit that I am partial to Subversion and really like using Google Code. Using Git has been frustrating on Windows, but once I get the time I will start expanding my contributions.

No matter what my future holds for me, I know that developing open source code will be something I continue to do.

1 comment:

Diane said...

I remember the Logo days . . . you have come a long way baby!