A Desert Story (or: "We don't do OO")



  • My first WTF comes to you from the wild and wooly world of the military contractor.

    Back in 1999, I was a living in a smallish desert town and a little desperate for work, and I found my way to a walled compound 10 miles out of town where a small military contract firm needed a lead developer.  

    The first WTF should really be that their first offer was less than $30K a year...I actually got up and walked out of that interview.  Subsequent phone calls from them had them go all the way up to $42K a year...and they weren't happy about it.   I wasn't either -- it was a 20K drop for me -- but it was a small town and there weren't necessarily a lot of jobs nearby, and they were working on some interesting problems, so I signed on.

    The staff there was made up of an interesting cross-section: foreign national grad students from the local university, ex-military men, a transsexual astronomer who didn't shave often enough, and a few others who had found themselves trapped in the desert down without much of a tech industry.

    We all were hunkered down, under the desert sun, on the site of an old church (rumored to have been occupied by a cult of some sort during the 70s), surrounded by high adobe walls and chain-link fence, some of us housed in old trailers.  Outside the temp regularly hit 110+F, tarantulas made their way across the gravel road.  Inside the trailers it was a more modest 90F. 

    Ok, scene set, my first job was to figure out what was going wrong with a project to build a digital mapping system.  They had made 3 attempts to build it so far without success...without really getting far at all.  18 months, some $500K down the drain, and still nothing.

    My investigation started with requirements.  And, astoundingly, they had some.  Good ones.  If nothing else, the military knows how to specify things in astonishing detail, and this was no exception.  The MilSpec for "Weapon Systems Mapping Services" filled a 3 inch binder.  It described a number of subsystems, the functions they had to provide, the communications between the units.   It was written in a language-neutral way (there are only so many programming languages they'll let you use, but this made no attempt to lock the developer in).  It was just a good, well defined, object-oriented design.   I couldn't figure out why we would have had so much trouble implementing it.

    So I started looking at some of the work done on previous attempts.  Ok, here we had some trouble.  To start with, the programming language was Pascal, which wasn't on the list of approved languages (I think it was just C, Ada, and C++ which had just been added to the list).  Second, they had completely ignored the fact that the design as stated quite clearly revolved around 'objects', and were just trying to build it as a set of functions in a couple different modules (not even the modules identified in the spec). 

    I went to speak with the guy who headed up that group to find out what the thinking was on this.  He was a crusty old gunnery sergeant who didn't really know much about software design, I think he was just old buddies with the guys who started the company, and he spent a lot of time sleeping on his couch (particularly after he had a heart attack).   When I asked him the rationale for ignoring the obvious object-oriented design, his answer was quite blunt.  We didn't do OO.  It was a failed experiment -- a bad idea whose time had passed. 

    I think I just blinked a lot. I tried to argue it with him, I had been doing C++ development for 6 years at that point, I used OO design principals every day, it didn't seem very 'failed' to me.  But he wouldn't have any of it...the foot came down, and being the life long military man that he was, there wasn't much room for a new recruit like me to challenge his authority.  

    So I went over his head.  The president of the company was, as I recall, a vietnam era Lt. Col. A little less set in his ways, but he still didn't like being told what to do.  But, they had 3 failures under their belt, and I promised them that I could make this happen if he did it my way.  He agreed.  My direct manager was very very unhappy that I went around him, but he couldn't stick me on KP so there wasn't much he could do about it except get in my face every chance he could.

    Long story short, we pulled it together; 6 months later we were demoing our system at the Redstone Arsenal to good reviews. Along the way we had a couple more WTFs... we had a big deadline coming up, my team and I put in a good 36 hours straight to hit that milestone and be ready for a demo to the company president...and he never showed.  I'd have thought he'd know a bit more about the importance of keeping the morale of the troops up.

    But, he didn't, and I'll end this with one final wtf.   At a big company meeting, he said, and I quote: "I need you guys to work extra hard this quarter, because you're buying me my boat."

    Oh yeah, watch how hard I work.

    -cw



  • The Real WTF(tm) is that you had to work under such conditions in 1999, when the .com bubble hype was nearly at its top and everyone who could power-on a computer got a job as a software developer.



  • @ammoQ said:

    The Real WTF(tm) is that you had to work under such conditions in 1999, when the .com bubble hype was nearly at its top and everyone who could power-on a computer got a job as a software developer.

    The things we do for love.   My wife was a grad student at that nearby university and we couldn't move until she was done.   And even when we did, it was to another smallish town where she got her first professorship, and that was just as all the local companies started dropping like flies.  Sigh.   Oh well.   I'm ready for the next bubble. :)

    -cw



  • @CodeWhisperer said:

    @ammoQ said:

    The Real WTF(tm) is that you had to work under such conditions in 1999, when the .com bubble hype was nearly at its top and everyone who could power-on a computer got a job as a software developer.

    The things we do for love.   My wife was a grad student at that nearby university and we couldn't move until she was done.   And even when we did, it was to another smallish town where she got her first professorship, and that was just as all the local companies started dropping like flies.  Sigh.   Oh well.   I'm ready for the next bubble. :)

    -cw

     

    Wow. You just follow her around to towns with nothing to offer you?  there's the WTF



  • @unklegwar said:

    Wow. You just follow her around to towns with nothing to offer you?  there's the WTF

    Yeah, man.  He should totally just get a divorce.  She can't have any influence on where they live!  Screw his wife's life plans or needs.

     FTR, I'm in the exact same situation.  My wife is a grad student and I'm working in this city until she finishes her Ph.D, at which point we'll end up moving wherever she can get a professorship, most likely, especially given that the tech job options in any given city are drastically greater than the number of professorship positions, quite obviously.  Nothing wrong with that.  It's called compromise.



  • @Saladin said:

      It's called compromise.

    And it comes around.   She decided the small-town professorial life wasn't for her right about the same time I got my (first) offer from Microsoft, so we came out to Redmond.  She takes small jobs covering classes for other profs now, not really what she wants to do, but it was my turn. :)   In the mean time she's starting to do some writing.    In a couple years, we'll probably go somewhere else.

    And, it's not like I've never found work in those places.  Any college town with even just 40,000 people is going to have some software work somewhere and I get snapped up right away.  Besides, it's lead to some great WTF stories.  Next time I'll tell the story of the network security company who had people writing software to interpret router logs but didn't know that there were TCP and UDP packets to consider.   (Won't even get into ICMP...)

    -cw



  • Nice one. I've run into people like this. These are the people who apply all the ancient principles of procedural programming to an OO-ish language, and when the result turns out to suck, they conclude that they "did OO" and it failed miserably.



  • @unklegwar said:

    @CodeWhisperer said:

    @ammoQ said:

    The Real WTF(tm) is that you had to work under such conditions in 1999, when the .com bubble hype was nearly at its top and everyone who could power-on a computer got a job as a software developer.

    The things we do for love.   My wife was a grad student at that nearby university and we couldn't move until she was done.   And even when we did, it was to another smallish town where she got her first professorship, and that was just as all the local companies started dropping like flies.  Sigh.   Oh well.   I'm ready for the next bubble. :)

    -cw

     

    Wow. You just follow her around to towns with nothing to offer you?  there's the WTF

    I'm assuming your not married.  If you are, you might want to get a ask for a divorce, because you obviously have never been in love before. 



  • I guess the other extreme is to stay in town instead of hunting down opportunities, just to chase a girl you're in love with but you'll never have.



  • that's another story.



  • >  in 1999, when the .com bubble hype was nearly at its top

    Y2K, bay-bee! I've never been so glad to know COBOL.

     



  • @CDarklock said:

    >  in 1999, when the .com bubble hype was nearly at its top

    Y2K, bay-bee! I've never been so glad to know COBOL.

    At least in my country and some other European Countries, the Euro-Conversion frenzy was even hotter than the Y2K frenzy.

    (In those countries that switched from their local currencies to EUR, accounting, prices etc. had to be done in BOTH currencies concurrently for some time...)
     



  • >  the Euro-Conversion frenzy was even hotter than the Y2K frenzy

    Had to be.

    Y2K: "You might have a problem that might cause a problem."

    Euro conversion: "You do have a problem that will cause a problem."

    Although, if you were unethical, I expect the Y2K thing offered many more opportunities to cheat people. If you checked the code and found no problems, you could continue collecting fees for an arbitrary length of time before producing a final report.

    I tended to argue the point that someone else might have been unethical. "It's already checked, is it? Are you SURE? Can you REALLY trust the person who said so?" It's amazing how little faith the world has in our industry.

     


Log in to reply