Making time for open source

-   Feb 02, 2009 -   Development -  

Earlier this evening, after my wife and I got the kids to bed, I fired up my laptop, opened my twitter client of the day and started my Vista Dev VM to get working on my favorite open source project. As I often do, I read some of the past tweets while waited for Vista to get ready. A number of twitter friends had just responded to question about finding time to contribute to open source which came from Sara Chipps and a blog post she had just made on the subject.  I quickly read her post and read the conversation it generated and then my wife sent me to the neighbor’s farm to get a few gallons of milk leaving me a nice chunk of time to think about the open source question which is near and dear to my heart. Can you really find the time? I think we all make choices about what we are going to make time for.  If I really want to do something, I usually find a why to get it into my schedule. It really depends on how bad I want it or feel I need it. Everyone is different though and the amount of available time always seems to be less as I get older and my family grows.  Unless, you are blessed with 50 hour days like some rock star developers seem to be, you just need to fit it in if it is important to you.  I’d bet you’d find you had a bit of filler time (TV, gaming, sleeping in, etc) that you could trim down. You’ll likely find that if you working on something you are excited about, most of the time you put into it will be as relaxing and enjoyable as some of your filler activities. Is it really worth the effort? It might seem like an incredible hassle to try to free up some of your valuable time to work on some open source project.  Why would you even bother?  There are actually a number of reasons, but one of the biggest is you grow as a developer through the process.  Most people who have read this far are likely interested in becoming a better developer.  The experience you gain working with an open source project, on your own time and at your own pace, is very rewarding.  This usually means working with existing code and learning from what someone else has done, but it can be creating something completely new and putting it out there for the world. Either way, you gain from the experience and you quickly learn better ways to do things either from feedback from others or from researching for better ways before you post your code to the world. I think it helps to have another new problem set to think about.  I have my main day job projects, but I like to have a number of different things to work on and think about. Being exposed to different ideas and other approaches to a problem will only help you improve. But... There are lots of excuses that can be thrown out at this point and how to get started is another blog post, but I encourage you to give it a try. If you don’t think your code is good enough or fits into the project, or would even be accepted, it doesn’t matter. I spent a lot of time working with open source code that never became part of the overall project, but I still gained a lot from it. Sometimes the contribution you want to make is not part of the vision of the base project and you can just make it for yourself or share it on your blog or on the forums.  Last year, I spent a number of evenings putting together a online BlogEngine theme installer.  (The type of thing where you browse available themes from inside the admin panel, download and install right from the interface.) I knew it was not likely to ever get used, but I wanted to see how I could do it and I had a great time doing it. It was one of the most fun things I’ve worked on in the BlogEngine project and other than my long suffering wife, no one has ever seen it. While it wasn’t an open source contribution, it was a great experience and I learned a bunch doing it.  (And yes, who knows, maybe someday, that code may be useful to the project, but don’t count on it.) I can honestly say that open source work is one of the most rewarding things I’ve done over the past few years in the development world. The experiences I’ve have had and the people I’ve had the chance to work with have challenged me to get better and continue to do so.

 Official BlogEngine.NET 1.0 Release

-   May 24, 2007 -   BlogEngine.NET, Software -   , ,

Today, we (the BlogEngine.NET team) finally made our first official release of BlogEngine.NET.  The first release has a whole boatload of features including: A nice variety of cool widgets A very sweet commenting system Great syndication support (RSS, Atom, and Feedburner) Support for Metaweblog API Trackbacks / Pingbacks A nice blog search Referrer stats Easy theme creation.   There is a bunch of other good stuff in there as well.  Please take a moment to check it out.  You can get it here. The team put in a lot of effort to make it come together and we are very happy to finally get this release out the door.  The feedback from the early adopters was also a huge key to getting the bugs fixed and helping us see what was most important for the first release.  Thanks to all who tried it out and gave some feedback. We'll need more help in future versions, but help would also be appreciated with updating the documentation and making new themes and widgets.  If you are interested, head on over to the BlogEngine.NET site and get started.  (I'll be working on documentation more this week as we need to get more of it filled out.  Please feel free to make a wiki account and help me.) A few cool BlogEngine.NET links to check out: Main BlogEngine.NET site (http://www.dotnetblogengine.net/) Project Road Map - A look ahead to the future releases Documentation - This is where you'll learn how to do whatever you'd like to do with BlogEngine.NET CodePlex Discussions - The place to ask and answer questions and discuss new ideas. Mads' Release Post - Mads Kristensen, the team leader and project creator, put together a nice post on the official release.  (Yes, the man can do it all.)  His post shares a little of the history of the project and the team.