Mission Statement?
I don't like the phrase "Mission
Statement" anymore than anyone else
who has spent hours reading
Dilbert
and looking at the long, inane
statements of the usual corporation.
All the same, I sincerely value the
focused direction of a "mission". A
rallying cry is a powerful thing.
This last April, after months of
work and the usual frantic rush to
meet a deadline, my friend (and
SWDev development partner) Cotten
Blackwell began to ask the "who are
we" questions that every company
should have an answer to. The other
developers in our group were
struggling with where they fit and
how they should conceive of
themselves going forward. He handed
me the book "Fire Up Your Business"
and challenged to me dig deep and
determine what that authentic mission
truly was.
Many false starts later, I touched
on two facts about my life in
software development that were the
passion driving everything else.
Excellence
Most software sucks! Ask any
developer maintaining someone else's
code. The great majority of
software in use today was never
designed, let alone designed well.
I've taught good software
methodology and process to many
groups of developers in many
companies over the years. Working
through those classes and
discussions and designing a lot of
software has taught me that
excellence IS possible. It
also taught me that it can be quite
difficult and time consuming.
This drive for building the best
software is so much more than
just an artist's perfectionism. The
best software is
maintainable, bad code isn't.
That in itself can determine whether
an application delivers value to a
corporation. It's estimated that
well over 80% of the lifetime cost
of a software development effort is
spent after the release of
the application. Maintenance
Matters!
Part of the effect of that drive to
make only the best software
comes out in my tool choices and
recommendations. I push for the use
of object oriented methodologies and
tools that can leverage that
investment in thought when it comes
time to turn thought into code.
Time to Market
The second passion that I've served
in my development career is
Speed! The best software,
delivered too late, can lose it's
value completely. Talking to the
entrepreneur or the marketing person
hoping to bring a product to market,
they will nearly unanimously tell
you that "so-so now beats
perfect later ever time!"
The challenge is to balance the
"need for speed" against the
long term importance of building
"the best software". How do
I accomplish this trade off? In
short, using
XP
to shorten development cycles,
deliver value faster and reduce or
eliminate the "artifact arthritis"
that calcifies around so many formal
software development methodologies.
The Last Word
I want to say this one more time,
for those who've taken the time to
read this entire essay, this
Mission is real to me. This
is not merely a group-think,
conference-room, offend-no-one
mission statement from some seminar.
This is the mission that I
passionately pursue in business. If
the best software, the fastest
way has value in your project,
I'll have value to contribute.