This definitely sounds promising; I'm going to keep my eye on it.

Must Read


Jeremy Miller has an excellent read on writing orthogonal code. Do not pass go, do not collect $200 until you have read this post. If you have even more time (read: an hour at a minimum) I highly recommend reading Big Ball of Mud which dissolves the forces behind what cause software architectures to fail and discusses solutions to address them. Finally, Jason Yip hit the nail on the head when discusses what it takes for last minute changes to be safe. Several years ago I worked on a team that produced a calculation engine for...

HDC Presentation


Tim and I just finished out presentation on Model View Presenter in ASP.NET 2.0 this afternoon which we followed up by doing a podcast for with Jeff Julian and Dru Sellers. Overall I was very pleased with the presentation, we had one issue with a live demo, but since when do demos work in front of 150 people? For anyone interested, the code is available on svn here.

Heartland Developers Conference


The 3rd annual Heartland Developers Conference will be October 26th and 27th in Omaha, NE. HDC has just sold out with over 500 attendees expected! Tim Gifford and I will be presenting on the Model View Presenter pattern within ASP.NET 2.0. It appears that Kent Tegels is presenting at the same time. He is covering the new Entity Data Framework which sounds intriguing. For those that are curious, we will be using NHibernate for our data persistence tool during the presentation. :-) Let me know if you'll be out there the night before...

Mock Object Discussion


Scott Hanselman has a great discussion on mock objects on Hanselminutes. They go over the basics of how mocks fit into the development environement and how it helps in a test driven development environment. Scott mentions how the Expect API of many mock object frameworks read like an english sentence, this is a great example of a fluent interface. Scott points out one of the most apparent reasons why Rhino Mocks is a great mock library, it doesn't rely on string-based method names, you actually use the method in your expectations. This is great because it...

A Good Feeling


Our team adopted a continuous integration server a little over a month ago and we have been very happy with the results since. We were using Visual Source Safe as our source repository and CC.NET for a continuous integration server. A special "builder" account was created in VSS for CC.NET to pull down the source for each project it had registered. Our projects are set to trigger within CC.NET every 15 minutes. Over time, as we added more projects, CC.NET would report a failed build sporadically. The build error alluded to a VSS user specific...

Bored During Build Time?


It's very important to keep your build time as short as possible, but everyone has to deal with it one way or another. If you enjoy anagrams, try next time you are waiting for your build process to complete. On a serious note, if your build time is extremely long (can you eat lunch during your build?) then the next step is to shorten your build time to increase the feedback loop within your development team. The longer your feedback loop is among the development team, the longer it will take to fix bugs when they...

Asynchronous File I/O with NAnt


I recently needed to recursively iterate over a directory and change the content of files based on a search term. While there are certain NAnt tasks that have been defined to perform similar operations such as the foreach task used in conjunction with a loadfile and its associated filterchain and replacestring, I didn't see an easy way to recursively navigate the directory and perform my changes. A potential solution might have been nesting several foreach tasks and assigned the child directories to a property and subsequently call a different task to pull that directory out of the property, it didn't...

Ruby on Rails and .NET


There has been a lot of hype out in the development community over the past year regarding Ruby on Rails, even with Ruby alone. For those that are unaware, Ruby on Rails is a full stack web framework written in Ruby. While I've only read the first 100 pages of Agile Web Development with Rails, I can say that RoR is very intriguing. At a high level, RoR relies on a MVC architecture, using the ActiveRecord design pattern for data persistence. I've found radrails to be an excellent IDE for RoR if you're developing on a Windows machine. If...

ROI for Agile Methodologies


A common question I have heard regarding the use of agile methodologies is how can I determine the ROI of our new found practices. ThoughtWorks, an IT consulting company heavily involved with the agile movement has commissioned Forrester Research to perform an assessment of their processes; here you can read about their results.

Scrum Plug-in for VSTS


Conchango has developed a Scrum plugin for Visual Studio Team System. This is definitely worth checking out and just goes to show how extensible the new Visual Studio environment is.

Sneak Attack


I just came across a post by Neal Ford, a developer at ThoughtWorks describing his successful attempt at implementing an agile, test driven development approach to solving a problem for their customer. Sneak attack was the best way I could put it, but well worth the read.

Agile Development at Microsoft for CMMI


This article, which was presented at the Agile Conference in 2005, and came across the scrum development mailing list recently. It discusses how Microsoft followed the teachings of W. Edward Deming in reworking the MSF for CMMI, in particular Deming's 14 points of management which align with several agile thought processes. An interesting read, but I am curious, how many of you are going through the CMMI process?

Automated Build


Do you have an automated build system in place for your development? This morning I came in, ran my NAnt script which cleaned my Build directory out, built every project within my solution, copied over the .exe's, .dll's, .config's, .xml's and .manifest files, then it subsequently invoked my WiX script that built a complete MSI installer package, including the web service deployment. Wow, all this and I haven't even had my coffee for the day.