let’s talk turkey – the nature of life "out loud"

โ€”

by

in

let’s talk turkey – the nature of life "out loud"

If you’ve followed the
saga
from a while ago, you know that dotPublishing had a tough time with
a project. Obviously, it isn’t good for anyone when something happens like that.
As a person, you do what you can to make good, and as a professional you also
work to do the right thing. I think we did that.

Unfortunately, not everyone agrees. I got a phone message that went into some
detail about me being a bad person from someone close to the client in the above
mentioned saga. At first I was personally insulted, then I was really pissed
off… then I thought about it some more and decided that neither of those reactions
is really helpful.

Fortunately, I got in contact with the client and we discussed the situation.
All seems to be well. The topic was interesting though so I thought it worth
a mention here…

Why do people mistrust consultants and programmers?

Computer consultants have a bad reputation. It is somewhere between lawyers
and automobile mechanics. I am not surprised. In fact, I have been aware of
it as have most of my colleagues for all the time I have been in the development
game. For the purposes of this discussion "consultant" and "programmer"
are usually interchangeable
, they will generically refer to that guy with
the pony tail you usually pay to make the lights blink.

Some of the public relations hurdles of programmers:

  • We are usually expensive
  • We do a job few outside the field understand
  • We often have to estimate in situations where accurate estimation is difficult
    or impossible
  • When we are done, your left with something that doesn’t look like much physically
  • Our results are often similar to what you were using before on the surface
  • Some really are rip off artists, and take advantage of the above

I have been pretty careful during my professional career to make sure the clients
understood what and why, and to avoid the common syndrome of having to say "We
have to throw all this out and start over". I can often clean up the problems
left behind by another consultant or by the client themselves if they have tried
to put it all together without really knowing what’s going on – and I don’t
blame clients for trying. I have an outstanding professional reputation with
all but one of my clients.

Unfortunately, especially when developing something from scratch the specifications
are not completely finished. That’s fine by me, part of what I get paid for
is helping the client finish up their thought process… but it means there
are loose ends and unknowns involved. That can breed trouble if everyone isn’t
prepared for it.

Let’s take a system I almost took a contract to build (ultimately I decided
not to do it). The end user was a Pizza place. They wanted some software to
help them manage their drivers and deliveries. They had 30 features or so…
and buried in there was something that seemed so simply to them…

"When an order is entered, the total should be calculated and reflect
current sales and specials
"

Now… doesn’t that sound easy? They already have a menu – so the price shouldn’t
be hard. That is, until those last 5 words. When I started sketching it out
in pseudo-code though to give them an estimate… here were some issues:

  • A complete interface to key in updates every time a new sale/special was
    run
  • A complete system to allow the computer to match those specials with the
    order (the specials are not just "10% off" but rather the "by
    any three items with two toppings and get a free soda if you also order a
    kids meal" type)
  • A complete mechanism for the manager to override the pricing system to allow
    competitors coupons
  • Complete add-ins to the system to allow coupons to be tallied in the accounting
    with the cash

See the problem? Those five words were and afterthought scribbled on late in
the game. It is an obvious feature of course and a good idea – but added another
40% to the cost and from experience I can tell you it would not have been perceived
as the massive change it really was. It could have been worse – often a feature
like that is put in after a contract has already been signed… and all too
often then the client wants to try and stick with the original estimate.

Software is chaotic in the mathematical sense. Small changes
can sometimes have incredibly large effects.

So, estimates are sometimes wrong, things sometimes cost more than they seem
they should and people get angry and frustrated. When all is said and done there
are only a few options when you are pissed at your consultant:

  • He was out to screw you
  • He is well meaning, but incompetent
  • He knew enough to help you through this complex process and it’s a good
    thing he can revise his estimates or suggest another course of action

For clients: the important thing is to make your choice and act accordingly.
I guess the person who called me thinks I am the first one and that’s really
too bad.

For consultants: it is crucial you act in a way that will keep your conscience
happy. You know what is right and wrong, and you know what happened better than
anyone else. Decide on what you think is a fair remedy and do it. When you have
done that don’t continue to be pressured and forced and pushed.

I follow those rules as a person as well as professionally – I am more than
willing to take appropriate responsibility when I was wrong and
make the amends that are needed to try and make it right. What I won’t do is
be held arbitrarily responsible for things I have already paid dues for indefinitely.

On another interesting note – the phone call was prompted by the events mentioned
in this blog. It is part of living your life on the web that people will react
to what you put out there – people who are actually involved with the events
mentioned. I suppose one response would be to lie or edit this log to make sure
no one finds out anything about my life – but that would be pointless.

I will continue to write the truth as far as I know it here – along with my
thoughts and feelings. The consequences will come as they will… but I refuse
to be afraid of them. There are a lot of interesting things that happen when
you have a website/weblog (at least they happen to me).

  • Clients/employers use it to see how/what you are doing
  • Relatives use it to see how/what you are doing
  • Friends use it to see how/what you are doing
  • Your S.O.(s) use it to see how/what you are doing and thinking and feeling,
    and who you think is hot and where you have been surfing and you get the idea.
  • Strangers use it to see how/what you are doing

It is a trip. And I >like< that those people read this log. It is communications
in a interesting form – I can keep everyone informed and they can decide how
much of what they know they wish to react to/discuss with me in person. There
might be bad things like:

  • A prospective employer not liking your politics
  • A client deciding you are slacking off
  • Some stranger sending you hate mail (oh, wait, that’s a good thing…)
  • A client sending you hate mail

In other words, our society works in part because people don’t really know
much about each other. The girl in the next cubicle doesn’t know that
you like Hentai rape porn, for example. It makes it a little tougher when the
people who are around you do know this sort of thing. But there are really good
things as well:

  • Your website/log can be much more informative than a resume. Your possible
    employer may well like what he sees of your ethics
  • You can present a lot more of your work and creativity… it is an ever
    evolving portfolio
  • You make new friends, or deepen your relationship with old ones sometimes
  • Strangers send you nude photos of themselves (I
    wish
    !)

I have gotten much more out of my website that was good than bad, besides I
don’t have any desire to hide my life even if it would be possible given my
goals. I don’t intent to push it in anyone’s face either. I put it here, on
my site. You know me for a short time you will probably hear my URL. You can
go or not go. Read a little or read all about me. Never come back of come check
in every day. Use it against me or use it to get closer to me, but remember
– I am using it too ๐Ÿ™‚

My choice to share, your choice to read/see or not, sounds fair to me. This
is my reality and I have my own reasons for putting it up here.

Enjoy it.