Dragons in the Algorithm
Adventures in Programming
by Michael Chermside

Category: Programming

Story Points

If you have complete and accurate requirements for your project which won't change, and your development team is spot-on in estimating and highly consistent in their development pace. and there are no surprises, then you can produce highly accurate project timeline estimates up front. Such accurate estimates are (or, more …

Read more

Posted Wed 28 September 2011 by mcherm in Programming

When to Wrap a Library

I find that this comes up fairly frequently. You find some useful library: perhaps it does logging, or enforces design-by-contract, or it provides an API for calling web services. But someone on the team suggests that instead of using the library directly, we should create a wrapper: "that way, if …

Read more

Posted Sun 03 July 2011 by mcherm in Programming

Wrong SAAJ Version - a Spring bug

A few notes on a bug I had so next time I won't make the same mistake.

In spring-ws, in the class org.springframework.ws.soap.saaj.SaajSoapMessage, in the method getImplementation(), it uses SaajUtils.getSaajVersion(SOAPMessage) to determine the SAAJ version of this message. Unfortunately, that has a bug …

Read more

Posted Sun 08 May 2011 by mcherm in Programming

Eric Lippert Tree Challenge

In his blog, Eric Lippert issued an interesting programming challenge. (Follow the link for details of the requirements.) Here is my solution.

#
# Programming challenge from
#  http://blogs.msdn.com/b/ericlippert/archive/2010/09/09/old-school-tree-display.aspx
#
# Done in Python, by Michael Chermside
#

import unittest
import itertools

# ============== Provided Problem ==============
class …

Read more

Posted Thu 09 September 2010 by mcherm in Programming