March book review: Agile Principles, Patterns, and Practices in C#

Once again, it is time for our monthly book review.

Robert C. Martin and Micah Martin
Agile Principles, Patterns, and Practices in C#

A well written book on the subject of software design. The authors describe fundamental object-oriented principles, dig into a few design patterns, and even touch on agile methods while providing easy-to-follow examples in C#. Reading this book is like spending a day working together with a team of software developers where you can observe their development practices first hand.

While this book is not likely to become one of the classical books on object-oriented design, it is very practical and I recommend it to every .NET developer. For advanced readers, I highly recommend Robert Martin's original articles on OOP from 1990's. They are as valuable today as they were at the time when they were written.

Happy reading!

Twin Cities Code Camp - Spring 2008

Twin Cities Code Camp Spring 2008 is a one-day technology event to be held on Sat, April 5, 2008 from 8:45 am to 5:30 pm at the New Horizons offices in Edina MN. 

The event is free but requires a registration. To learn more about the event and to register, visit

See you there!

February book review: Domain Driven Design

Eric Evans
Domain Driven Design

I met Eric Evans in August of 2004, when his book had just came out and he was in Twin Cities at the Object Technology User Group (OTUG) talking about Ubiquitous Language, a language used by all team members to describe the domain model. I was very impressed with Eric's presentation. In very simple terms, he was able to find and explain the essence of what is often missing in domain implementations focused too much on technology.

You will not be disappointed with Eric's book. It describes patterns on how to explore a complex business domain and express it with a comprehensible software model. These patterns help me focus on central business problems while keeping the overall design of the systems understandable and manageable.

This is a must-read book for a business application designer and developer. Happy reading!

Is it possible to load an swf movie in FireFox without a page refresh?

We are building an Ajax web application, where a user could click on a link to play a flash swf file. In its simplest form, a web page consists of a set of links and a <div/> container where flash videos are played. The important requirement is to avoid a page refresh after the user makes her/his selection.

In IE, this is achieved by setting the movie property of the flash <object/> element. For the same purpose in FireFox, you have the src property of the <embed/> element and the data property of the flash <object/> element. However, they do not seem to do the trick...

Do you have any ideas why? Thank you in advance for your help.

January book review: Waltzing with Bears

Tom DeMarco and Tim Lister
Waltzing with Bears: Managing Risk on Software Projects

A very good, enjoyable book on the subject of risk management in software development.  The authors did an excellent job introducing the concepts of risk and uncertainty and will help you and your team lay a good foundation for discovering, assessing, and planning risks on your software projects.

The book comes with the Riskology Simulator available for download from The simulator is pre-filled with five core risks using industry-wide data and allows you to quickly create an uncertainty diagram showing the impact of risks on your project. The simulator can be customized to meet your specific needs by adding your own risk factors or by overriding the core risks with your company's data.

I recommend this book to anybody interested in software project management. Happy reading!

Monthly book reviews

As an information technology practitioner and avid reader of technical and management books, I am often asked to suggest a book or two on a particular subject of interest. So, I decided to start this monthly column to organize my recommendations, share them with a wider audience, and solicit feedback from my fellow blog readers.

Stay tuned for the first book review tonight.

Could building a coalition result in leadership by committee?

Innovation was the theme of the Code Freeze 2008 conference last week. Mark Striebeck talked about innovation strategy at Google, Jon Spence explained how Agile methods were introduced at Medtronic, Jamie Thingelstad touched on innovation in product development at Dow Jones. Then after lunch, we had the pleasure to listen to Stuart Halloway, Nate Schutta, and David Hussman.

Most of the ideas discussed are common sense, but one point is interesting to think about. Jamie said that leadership by committee does not work. I tend to agree with this statement. I also trust Jamie's judgement - his organization managed to keep its innovative culture and efficient development environment through a number of merges and acquisitions. But I just keep wondering...

One of the responsibilities of a strong leader is to build a strong coalition to support her or his ideas and lead this coalition as a team to make the change and innovation happen. Could that result in leadership by committee?

Do you horribolize rumours at the time of change?

At the OTUG meeting last week, Esther Derby was going over the change model, originally introduced by Virginia Satir to help families deal with change. The model consists of 5 stages: Late Status Quo, Resistance, Chaos, Integration, and New Status Quo and describes change patterns and early indicators that occur at each stage. The model also works well for the organizations.

One of the most interesting and somewhat underestimated stages of the model is Chaos. Old behaviors do not work, old relationships are not possible, the organization is filled with rumours and uncertainty, performance decreases, the changes are at their highest risk of being reverted back... and the leadership is tested. Do you recognize these symptoms?

If you are not familiar with the work of Virginia Satir, take a look at this book: Satir Model: Family Therapy and Beyond.

Esther Derby speaks at OTUG in January 2008

Who: Esther Derby
What: Why Middle Management Matters: Managers' Role in Agile Adoption
When: Tuesday January 15, 2008, 5 pm
Where: 3M Auditorium at the University of St. Thomas, St. Paul, MN

You can find more information about the event at

I attended simulations on Dynamics of Distributed Teams and Crossing Cultures by Esther Derby at the AYE 2007 conference last month. I am very excited that she is giving a talk at the Object Technology User Group in January. This is a must-attend event. Do not miss it!

Code Freeze 2008 is just around the corner

Code Freeze 2008 is a one-day Software Symposium to be held on Thu, January 17, 2008 from 8 am to 5 pm at the University of Minnesota's McNamara Alumni Center. Speakers include David Hussman, Jamie Thingelstad, Nate Schutta, Jon Spence, and others.

Cost for the general public is $90. Registration deadline is Friday, January 11, 2008. Check out more information at

I attended Code Freeze in 2006 and looking forward to the presentations this year. Hope to see you there!

Welcome to ModelBlog

Thank you for visiting ModelBlog. We hope the time you spend with us will be both entertaining and worth your while. Have fun!