Story Mapping Gives Context to User Stories

We are currently trying to come to some conclusions about the “shape” of a new software product, and facing a whole lot of problems. Stakeholders are happy to argue for hours about relative priorities of individual features, but so far these exist in a vacuum without an overall vision of a product. With that in …

Continue reading ‘Story Mapping Gives Context to User Stories’ »

Throw Away Your Bug Tracking System?

This afternoon, or team had an interesting discussion about our bug tracking system. For some time we have not been happy with the existing bugzilla installation, and the task of finding a replacement has floated on the to-do list. We started to discuss replacements again today, but this time it was different. For about a …

Continue reading ‘Throw Away Your Bug Tracking System?’ »

Pair programming with multiple mouse pointers and keyboard foci

On the one hand this looks like a neat technology. On the other hand it could be more “extreme”. Cuberick: Pair programming with multiple mouse pointers and keyboard foci Sure. It removes the bottleneck of fighting for control of a single keyboard and mouse, but there is still only a single screen. So why not …

Continue reading ‘Pair programming with multiple mouse pointers and keyboard foci’ »

Distributed Source Control as a tool for Set-Based Design

I’m currently spending a fair amount of time on evaluating distributed version control systems (DVCS) such as git, bazaar and mercurial. Some things which were easy using a centralized version control system such as subversion or cvs seem more complicated, but I am now starting to find ways of using DVCS to do things which …

Continue reading ‘Distributed Source Control as a tool for Set-Based Design’ »

The keyword in “premature optimization is evil” is “premature”

Agile development relies for its speed and productivity on making only that which is really needed. Sometimes it can be easy to forget that performance and scalability can be needed too. Alex Verkhovsky has an incisive post about how to deal with the notion of “premature optimization”. Thread.current.to_s: The keyword in “premature optimization is evil” …

Continue reading ‘The keyword in “premature optimization is evil” is “premature”’ »

Build and deployment scripts using “real” programming languages

Like many teams, I’m sure, we are trying to squeeze every drop of effectiveness out of our time. Manual build and deployment not only takes up valuable time, but also acts as a drag on the development process. Anything which pulls developers out of “the zone” is a bad thing for productivity. We usually use …

Continue reading ‘Build and deployment scripts using “real” programming languages’ »

Steve Freeman compares Test-Driven Development to rock climbing

I love this kind of analogy. Thinking and learning about one area by considering another is a very powerful technique for boosting overall understanding and wisdom. In this case, Steve Freeman has scraped off the climbing terminology from a snippet of an article and replaced it with jargon from software development. Thought-provoking. Tips on Test-Driven …

Continue reading ‘Steve Freeman compares Test-Driven Development to rock climbing’ »

Why aren’t software architects held accountable?

An interesting question from Simon Brown, and some interesting responses. Why aren’t software architects held accountable? – Coding the Architecture. Personally I don’t believe in the idea of an architect contributing during only part of a project. If architecture is important (and on some work it is obviously not) then whoever is responsible for architecture …

Continue reading ‘Why aren’t software architects held accountable?’ »

How FriendFeed uses MySQL to store schema-less data – Bret Taylor’s blog

Several projects I have been woreking on have moved away from standard relational models to a more fluid, attribute-based, approach. One of my biggest worries in all thee cases is scalability and efficiency. It would be tough to find out that a working installation becomes unusable as data sizes and/or loads grow. Bret Taylor has …

Continue reading ‘How FriendFeed uses MySQL to store schema-less data – Bret Taylor’s blog’ »