Dan Mall
The Hot Potato Process
Building Momentum
An Article by Dan MallFight the Waterfall
Start all of the pieces of work a little bit earlier. The key to starting work early is not succumbing to the pressure of having to finish the work. Don’t worry about finishing. If you’re a developer, you can start doing things while your design or information architect are working because a lot of your work actually isn’t dependent on their work. Some of it is, so you probably won’t be able to finish, but that shouldn’t stop you from starting.
Share Work-in-Progress Early and Often
When you share work-in-progress, share it with the caveat that no feedback is needed at this point. You’re simply sharing it to let people know where you are. For example, if you have to make 12 wireframes, share it when you finish 2 or 3. Rather than spending a whole week to drop 12 wireframes, share 2 – 3 wireframes every 2 days. The more often you do this, you start to build rhythm, and rhythm builds momentum.
On the "Building" of Software and Websites
I’m beginning to suspect that software, and more conspicuously the Web, is fundamentally the wrong shape for the archetype of the construction project.
You are agreeing to make a Thing
When you sign the contract for the construction project, you are agreeing to make a Thing—app, website, whatever. And you will have agreed to deliver this Thing on a certain date, also known as a deadline. From this point forward, the goals of shipping the Thing on time and actually solving the client’s problem will be in competition with each other.
The Thing-deadline calculus
Now, I understand deadlines. I understand that the plane will take off whether or not I’m on it, or the importance of beating the holiday retail rush, or that "the show must go on". It is perfectly clear to me how people use timekeeping technology to coordinate social activity. It’s actually quite remarkable when you step back and look at it. But, over the years, I have observed that there is a difference between those examples and the ones around the delivery of Things, which tend to be completely arbitrary. When you wrap an arbitrarily complex endeavor up in a neat launch date, the goal seems to be more about coercing the people beneath you to absorb the overhead of all the details you left out—that or sweating it yourself. As a tool for coordinating human activity, I have come to believe that the Thing-deadline calculus is, considering more sophisticated alternatives, unnecessarily crude.
Trees and graphs
A tree is a kind of graph, but a graph can be considerably more complex than a tree.
I have reason to believe, which for brevity’s sake I will treat elsewhere, that the most complex class of processes and structures we humans can consciously prescribe, reduces mathematically to a tree. A tree has a top, bottom, left and right. Its branches fan out from the trunk and they don’t intersect with one another. They are discrete, contiguous, identifiable objects which persist across time. Trees are Things.
Software and websites, however, reduce to arbitrarily more complex structures: they are graphs. A graph has no meaningful orientation whatsoever. No sequence, no obvious start or end—at least none that we can intuit. It is better considered not as one Thing, but as a federation of Things, like the brain or a fungus network, or perhaps a composite artifact left behind from an ongoing process, like an ant colony or human city.
Content as value
The most important consideration for any software or web excursion is content: the content of the text and other communicative media, as well as the content of the code that executes the business processes. The ability to tick off a page or piece of functionality as being done only produces a nominal successful result; the careful crafting of what one of these objects says produces a real one.