Chuck Lewis wrote:
date: Fri, 21 Dec 2007 10:43:16 -0500
from: "Chuck Lewis"
LOL - GREAT story Tom !
It was fun, though not intended as anything but a simple comment...
until his aura starting turning purple. (I.e., I couldn't actually _see_
his "aura"; but there's some kind of subconscious cue that tells you
when someone is at the boiling point inside.)
It did lead into what could have been interpreted as a possible revenge
move by him, though it didn't occur to me until now.
I was working on a contract to supply the City with a replacement
application for its LID (Local Improvement District) billing system. It
was coming to the end and getting ready for acceptance tests.
This was fairly early in my career as an independent contractor. I
learned a whole bunch about how to word that part of a contracted
agreement from this episode.
The sticking point was that my new app had to pass a 'parallel run'
test. Didn't seem like a big deal at the time the agreement was made.
One problem for me was that this app ran on a monthly cycle. The first
parallel run showed significant differences in all important areas. I'd
expected a few "bugs", but not to the degree that showed up. Because of
the monthly cycle, I originally figured that a run would give me four
weeks to reconcile differences and correct any problems.
But it didn't take more than a couple days to demonstrate to myself that
my "bugs" were all trivial. I had those all taken care of in short
order. The _real_ problem with the differences was that the *OLD* LID
app was seriously wrong.
How was I supposed to get a successful parallel run when (1) the
database had serious data errors and (2) the old app wasn't always
handling even good data correctly?
So, a bunch of queries tracked down a bunch of problems. I turned things
over to their assigned employees, and they set about making corrections.
It took most of the month to get what I found cleared up. I was then a
month past getting paid, though I'd planned on it. I hadn't exactly
planned on spending so much time not doing work somewhere else.
Along comes the second month-end and second parallel run. Still major
differences in almost all areas. And this time, _every_ difference was
eventually tracked down either to the database or incorrect programming
in the old app. I even found one LID that had _never_ been billed to
residents in some ten years!
Okay, a second month is almost totally burned by doing data analysis on
an old, obsolete app that the customer (the City) knew had issues.
(That's why they contracted for a replacement, eh?) As that month got
towards the end, my cushion for general living funds was catching my
attention. I'd had a couple other programmers doing parts of the project
and I'd paid their invoices already. But, a contract is a contract.
Along comes the third month-end... still differences.
Very fortunately, I had clear evidence by then that my figures were in
fact correct. I had developed enough queries and peripheral reports
during the previous months to highlight every difference and show the
source of each. It only took a few more days of meetings to push through
the acceptance and a few days after that to get the cut-over done. They
made all remaining data corrections after the cut-over ended.
Effectively three solid months of zero income after paying out for
sub-contractors, and little time to do any work for other income. In
hind-sight, it's _possible_ that the DP manager took a harder line than
necessary. I firmed up language about acceptance tests and payments
afterwards and also worked harder to avoid the appearance of
embarrassing others in the future when they had influence over my income.
...and now you know the _rest_ of the story.
1. Commodore 64 (and System i) still loved after all these years
Wanna compare the Commodore 64 computer to the System i? This article
from CNN provides lots of material and ideas so you can write an article
on how the System I, just like the Commodore 64, is still loved after
all these years!
Puts me right next to the edge of unpacking my C64 (and my Ohio
Scientific C4P) to set up next to my Sinclair ZX-80 (_not_ ZX-81!)
I'm torn between keeping them separated from my AS/400 170 -- I
don't really want it looking like it's part of a museum.
I unintentionally alienated a DP manager back around '86 or so, a
Mac bigot who was showing off to his group how advanced his Mac was
with its icons and GUI and WYSIWYG editor stuff. I simply said
something like "Yeah, nice. It's pretty much just like my Commodore
64." (For those who weren't into C64s as much, a kind of "OS" named
GEOS was sold for C64s for $100 or so. It was kind of like Windows
2.0 which was more like the early Macs than it was like Windows 3.0
or especially Win95. Anyway, GEOS provided a desktop kind of
interface and a bunch of GUI features.)
The DP manager was immediately offended, saying there was no way a
C64 could work similarly. I then mentioned that the fancy (for the
time) invoices I submitted every month were designed and printed on
my C64 as an example.
I guess he wasn't pleased thinking that such work _could_ be done
for perhaps a 70% cut in initial investment.
I didn't mention that I wasn't restricted to a B/W monitor nor that
the sound processor blew the Mac totally away (at the time).
I had fun anyway, and the others in his department really enjoyed
seeing him boil.