Saturday, August 23, 2003

The Circle of (Software) Life

So, I've recently made a conscious decision to not install Visual Studio.NET
on my new machine. I'm running Cygwin and Emacs,
building with NAnt, and doing source control
with CVS. Basically, I want to see how far I
can take it. Right now, I'm loving it, despite the fact that I've already found a
few bugs.

The thing is, I know eventually, when there's a new version of Visual Studio.NET,
or the version after that, or the version after that, I'll love that just as much.

It's a pattern I've seen in myself over and over again, and which I've observed particularly
in bright, technical people: “new” is way more interesting than “current”
or “old” . The phases go something like this:

1)      What
I'm using right now sucks! This bug and that bug are killing me.

2)      Hey,
here are about twelve other things that do something similar.

3)      Wow,
these eleven suck even worse.

4)      Hey,
this one is pretty cool…

5)      Wow!
This feature is awesome! How could I live without it?! (repeat several times).

6)      Period
of quiet contentment.

7)      D'oh!
First major/minor bug!

8)      OK,
I'm used to working around that.

9)      D'oh!
Another major/minor bug! (repeat serveral times).

10)  Eventually, goto 1. :)

In other words:

·        Features
that work escape our notice after we're used to them

·        Bugs
jump right out at us

·        Even
subtle bugs jump out after continued usage

·        Therefore,
over time, most software becomes annoying

Also note:

·        Most
software sucks so bad it doesn't even make it into the above loop.

I don't expect that my move to a more Unix-like environment will ultimately prove
to be better overall than my MSFT-only existence has. However, changing the
set of issues I run into is what keeps my brain engaged.

No comments:

Post a Comment