The Sunny Way : Personal development to change the world

Software development, personal development, and creating the future

Posted by Megan Dietz • Follow me on Twitter
Monday, August 17, 2009

image courtesy of jurvetson

The beginning of a new software project feels like the start of a quest—you can see that something needs to be done, but there’s no clear path to the goal. You have to dive into the details and figure it out.

There are two general ways to go about this. One is to get a bunch of business analysts together and send them out to get information. They talk to the folks who will be using the software; they gather requirements. Then they write a specification, a document that lays out in minute detail how the system should work: every screen, every button. Then the programmers get to work building it, and you release it to the users at the end.

The second way to develop software is to create one tiny bit of it, release it to the end-users, gather their feedback, then correct that tiny bit and create one more. Keeping the end goal in mind, your software grows bit by bit until it provides everything the users need, or at least the most important stuff.

Why a fluid, scary process works better

The second process seems scarier at first—it requires a lot of faith in your team. Without a big master plan, you must rely on their ability to think on their feet, come up with ideas, and resolve disputes as they arise.

In action, though, it works quite well. Developers generally love working like this because it gives them lots of opportunities to think creatively and solve problems. If you have a good team, they tend to rise to the responsibility. And the users generally get what they need, because they have had input all along the way.

On the other hand, the first method typically costs more, takes longer, and produces irrelevant, clunky software. Software projects are different from, say, construction projects where you can plan out every detail in advance; it’s more abstract and full of questions. You invariably going to run into situations that aren’t addressed in the plan, and at that point, rigid adherence to it costs you time, money, and quality.

Uncertainty and responsibility

Much of the environmental debate right now focuses on certainty. How can we know that cap-and-trade will work? How do we know that any proposed solution will be better than the status quo? The truth is that, while we can make educated guesses, we are all in the unknown right now. We can’t make a detailed master plan for how to make everything all right.

Part of us really wants to, because where we are right now is scary, and it’s hard to muster the necessary faith in these kind of circumstances. We don’t just want a vision—we want to see how we’re going to get there. We want a step-by-step program.

But there isn’t one—we have to make this road by walking on it. So what we need to do is hold the end goal in mind, take tiny, well-reasoned steps, and evaluate them along the way.

This requires much from each of us. Without decisive marching orders, each of us must be more responsible and responsive. We have to hold our vision of what’s possible even as we operate within the unknown. We must be strong in our ability to act, flexible enough to use new information, and mature so that we keep going even when we don’t feel like it. We have to bring our A-game to every situation.

There’s no master plan and there’s no one in charge—there’s just us and our ideas of what’s possible and our determination to create. And that is precisely why we need to develop ourselves and our ability to work with each other. I’ll share some ideas on how to do this in Wednesday’s post.

Filed under • ConsciousnessHome & FamilyPersonal developmentThe Sunny Way
(2) Comments | Permalink
Megan DietzSee more articles by Megan Dietz.

Next entry: Calm down, you big grump! Here's how Previous entry: Sunny Friday: Biomimicry in action
(JavaScript must be enabled to view this email address)  on  08/17  at  11:09 AM

Interesting approach. And for certain applications, very right.
But not for all.
And the real question is: if you don’t build the team to support this approach and get their up-front buy in, what do you do? If you simply proceed with Plan #2 while the team thinks they ought to do #1, aren’t you making things harder and being disingenuous?
I think the team building is the essential first step.

(JavaScript must be enabled to view this email address)  on  08/19  at  10:33 AM

Couldn’t agree more with you, Sam. Gotta have a good team!! It’s been my experience that most people will rise up to the level of responsibility and care you give them but of course there are those who don’t ...

In personal development, maybe the team is made up of all the different parts of ourselves? And so then the task becomes to identify the slacker in there and give them something else to do besides bring everyone else down.

Page 1 of 1 pages

Post a comment

Commenting is not available in this weblog entry.