Posts
Please pardon the mess
WordPress has not been good to me lately. For some reason, this site loads really, really slow now, and I’m still trying to figure out why. If you know why WordPress may be misbehaving, please let me know.
Until I fix the problem: All pages on the site still load, just give them some time…
Comments: Johannes Brodwall - Apr 15, 2007 All right. I installed a new copy of WordPress exported from the old database into the new one and relinked everything together.
read morePosts
You should care about Configuration Management
There’s one question you really should be able to answer about your software project, whether you’re a project manager, a tester, an architect or a developer: “How are we going to put this safely into production and get it out again if we need to?” I think this is what Configuration Management tries to answer, but it gets bogged down in so many details that I’ve never been able to say that I’m able to understand what configuration management is.
read morePosts
Talk: Barry Schwartz on the Paradox of Choice
I have been watching videos from the Technology, Education and Design conference (TED) all afternoon. One particularly fascinating talk was Barry Schwartz talking about The Paradox of Choice. I find an almost Buddhist-like understanding of the problem of humanity in the modern world in his talk. But it was the closing words that fascinated me the most: “If you shatter the fishbowl, so that everything is possible, you don’t have freedom, you have paralysis.
read morePosts
Link: Open Source in the Enterprise
CIO JP Rangaswami at investment bank Dresder Kleinwort Wasserstein talks about why he considers open source a corporate IT asset. In this talk, Rangaswami describes how DrKW wanted to create an internal incubator environment in order to combat skill attrition in the late 90s. In the course of doing this, they acquired OpenAdaptor and discovered almost accidentally benefits of the open source development model.
The talk is a bit fleeting and unstructured (and someone’s phone keeps ringing during the presentation!
read morePosts
Twelve-Three-One: Getting There
This post is currently only a draft. Input on how to improve the structure is very welcome
“A journey of a thousand miles begins with a single step.” - Lao-Tzu
When doing architecture, we always have to content with the present state of the system. It is extremely tempting to ignore this picture of the ugly system and create your vision of how things should be in the future. It is also very easy to get people to agree on such a vision.
read morePosts
Link: Spring-MVC Cross-Site Scripting Vulnerabilities
Sverre Huseby examines some security issues with Spring-MVC. As it turns out, the Spring JSP form-taglib provide no HTML-escaping by default, making it very easy to get Cross-Site Scripting vulnerabilities included in the code. The article comes complete with a standalone application that illustrates the problem.
Comments: [Anders Furseth] - Mar 7, 2007 As interesting as this is, Sverre has yet to report the issues to the Spring-MVC team, making this premature disclosure unethical at best.
read morePosts
A Retrospective Training Workshop
Update: Added retrospective result example
I learned by favorite team building exercise on the ROOTS conference in Bergen three years ago. Alistair Cockburn conducted a great workshop that really drove home the lessons of iterative development at the same time as it showed a very useful technique for conducting retrospectives. I have later conducted the same exercise as a workshop in different situations. Maybe the most fun occasion was Oslo XP Meetup March 2006
read morePosts
A Brief Adventure with Universal Repositories and REST Web Services
Inspired by Per Mellqvist (and myself, to be fair), I wanted to explore the possibility of using a generic DAO or Repository interface for REST. Based on this simple idea, I was able to create a very cute and testable prototype of a full Web Service stack for REST based Web Services. The most interesting aspect was creating a universal test case for Repositories.
This article shows how little code is required to implement and test a REST based Web Service in Java, despite the horror of the Java HTTP client API.
read morePosts
CRUD, REST, DDD, Rails - these are a few of my favorite things
Some time back, I watched a video David Heinemeier Hansson give a talk on ActiveResource on RailsConf. The thing that struck me is how much Rails’ ideas are connected to those of Domain-Driven Design. Watching DHH is like seeing a version of Eric Evans on speed.
The video is long, but very entertaining. And it is well worth watching even if you couldn’t care less about Rails. DHH explains in real concrete terms how to think in terms of Domain-Driven Design, even though from the sound of it, I don’t think he’s heard of the term.
read morePosts
The Waterfall Process Distilled
Based on the US Department of Defense standard DOD-STD-2167A, we have a well-defined process often referred to as Waterfall. If you are not familiar with the process, here is a short introduction.
A project in the waterfall process goes through four phases before the project is completed.
The first phase is the naïvite phase. This phase should always last 12, 18 or 24 months. 18 months is recommended. There is a detailed plan showing how, at the end of the phase, the system will be done.
read more