Context and problems with “Best Practice”

I sometimes have to suppress a shudder when people use the term “best practice”. Despite a positive sounding name, the idea of “best practice” is almost always used in a way that is restrictive rather than enabling. Declaring one approach or solution as “best practice” by implication shuts out other answers. I will admit that …

Continue reading ‘Context and problems with “Best Practice”’ »

ChromeWatir release 1.0.0

Every now and then we discuss ways of better automating the manual tests which accompany our web applications. This is especially poignant right now as both the development and test teams have been recently reduced in size. We have had some success with Watir in the past, but it was always dependent on Internet Explorer …

Continue reading ‘ChromeWatir release 1.0.0’ »

Options for developing mobile apps: PhoneGap, Palm Pre, etc.

Mobile application development is certainly a hot topic at the moment. People seem to be climbing over one another to produce iPhone apps, and Google’s Android is never far from the tech news. But there are also other players, and several want to enable a more familiar web development experience on mobile devices. SitePen Blog …

Continue reading ‘Options for developing mobile apps: PhoneGap, Palm Pre, etc.’ »

Test-Driven Development of HTTP and REST interfaces with Mojasef

Test-Driven Development (TDD) of HTTP and REST interfaces can be tricky. This post contains some examples of how to do it using the open source Mojasef toolkit. I was prompted to write this post after recently finding and fixing an irritating bug using just this technique. First, let’s set the scene. In TDD the rules …

Continue reading ‘Test-Driven Development of HTTP and REST interfaces with Mojasef’ »

Smart = Agile++ ?

Despite some concerns for the direction of the term, I consider myself an “agile” software developer. Recently Ivar Jacobson presented a conference session during which he discussed the idea of “smart” as some sort of successor to agile. Smart = Agile++ by Ivar Jacobson From the above summary there seem to have been some good …

Continue reading ‘Smart = Agile++ ?’ »

TDD: Does it make you slower?

I use Test-driven Development (TDD) all the time. Although my immediate work colleagues have “bought in” to the idea, I sometimes find my self explaining about it to other people in other situations. A common question is whether the extra effort of writing all those tests slows down the overall development process. Mark Needham has …

Continue reading ‘TDD: Does it make you slower?’ »

The Defect Black Market

Every now and then we have a discussion about bugs, whether and how they should be fixed, and the relative importance of each bug compared with key missing features. Solutions range from the naive to the overcomplicated, but at least nobody yet has suggested something like the following… The Defect Black Market – The Daily …

Continue reading ‘The Defect Black Market’ »

Clearing my backlog, a mix of links

My browser is full of tabs, each representing something I intend to blog about. I need to clear some space, so here’s a few interesting links without comments. Reaching Hyper-Productivity with Outsourced Development Teams Pressure and Performance – The CTO’s Dilemma Agile Usability Web 2.0 Storytelling: Emergence of a New Genre

Who plays the role of technial producer on Agile teams?

Looking at the the way collaborative, creative, teams work in fields other than software development can be very useful. There’s an argument that creating a software release is a lot like creating a music album, for example. Chris Johnston has followed this train of thought and asks if we need an analogue to the “producer”. …

Continue reading ‘Who plays the role of technial producer on Agile teams?’ »

Sharing Project Development Knowledge

To make software development work, everyone involved needs a good working knowledge of the product, the domain, the solution and so on. Communicating enough, but not too much, information can be tricky, especially in an agile environment where anything can change at any time. Tarek Abdelmaguid has an interesting list of ways to communicate while …

Continue reading ‘Sharing Project Development Knowledge’ »

Iterating To Acquire Knowledge, Not Just ‘Business Value’

Planning what order to do stuff in is a vital, yet very difficult, part of software development. Agile wisdom usually stresses the need to do things in order of “business value”, but this can sometimes be extremely tricky to evaluate. Another approach is to do things in an order intended to decrease risk, such as …

Continue reading ‘Iterating To Acquire Knowledge, Not Just ‘Business Value’’ »