Got some spare?



  • My first job was at a large telco equipment manufacturer, testing on their main digital switch. Fresh from school it was quite impressive, people sitting at testbenches full of phones, between racks full of blinking lights, all looking at hexdumps and patching assembly straight into memory (really!).

    After some time I got the offer to work on a kind of "black project", which basically involved moving part of the ancient embedded Pascal code out of the system on to a modern Unix server in C++ to speed up processing of this specific part. I knew C++ and had some basic knowledge of Unix, but I had to learn socket programming and threads from scratch. The upside was that being it a black project there were no firm deadlines and with two people working on it (the other guy transforming the old code, me doing the server part) I had a lot of fun figuring it all out.

    After some basic succes the interest grew, so some more modules were added and some people were called in to help. During one of the planning meetings we explained some intentions to one of the old-school embedded developers, still working on the switch. We needed some modification in the home-grown database, for which we would use two of the spare bits present in one of the fields. We were happy there were still some of these unused bit, because otherwise the datamodel had to be adapted and that would have taken three full developer weeks to get it done, which was definitely not allowed at that moment. The dev didn't share our hapiness though and kept saying we had to modify it anyway. When we asked why, he said "If you use those spare bits, we need to add new ones, because the old ones will be gone!". If we asked what for, he said you can't just use spare bits, you need to add them again!

    It took 5 people more than 1 hour to convince him that those spares were there to be used for just that kind of cases that we had. At the end he still didn't believe it, but he executed it anyway. He was one of the main developers of this flagship switch, I still wonder how they got that one running so well...



  • It sounds like you got a nice welcome into the real world. Idiots like that are everywhere. IMHO, they server as free entertainment for the rest of us.

    Your first project sounds like fun!

    ...and Welcome!



  • @lauwersw said:

    At the end he still didn't believe it, but he executed it anyway. He was one of the main developers of this flagship switch, I still wonder how they got that one running so well...

    I can tell you why it's running so well - it's because he didn't go using extra bits all willy-nilly, that's why!

    Seriously, I think I know the type of person you're talking about - I have met certain individuals who if you give them a large project to do from the ground up, it'll be expertly done, documented, exactly done to the spec, and they will come to you with all kinds of issues you didn't think of.  But, if you have an ad-hoc, yes-it's-wrong-but-we-have-no-choice, change, you'd have better luck moving a mountain.



  • @lauwersw said:

    he said "If you use those spare bits, we need to add new ones, because the old ones will be gone!"

    Obviously, a master of RAID systems.



  • @DoctorFriday said:

    Seriously, I think I know the type of person you're talking about - I have met certain individuals who if you give them a large project to do from the ground up, it'll be expertly done, documented, exactly done to the spec, and they will come to you with all kinds of issues you didn't think of.  But, if you have an ad-hoc, yes-it's-wrong-but-we-have-no-choice, change, you'd have better luck moving a mountain.

     

    I really can't see how being reluctant to mess up a good design in order to implement some ridiculous probably-will-never-be-used feature right now instead of extending the design to accommodate it has anything to do with an unwillingness to put some information into spare bits.  The guy just didn't understand what "spare" meant.

    Too often "no choice" is just a synonym for "because I said so".  Hearing phrases like that generally does get my back up, because there's always a choice.  In this case, the choice was between quickly making use of excess storage or spending several weeks to preserve said excess.  Using excess storage isn't "wrong" (unless it was clearly documented to be used for some other, highly specific purpose), and there was in fact a choice (a highly unequal trade-off).

    In this case, it was a pointless battle.  But don't harp on people in a general sense for knowing how and when to just say "no".



  • @Aaron said:

    I really can't see how being reluctant to mess up a good design in order to implement some ridiculous probably-will-never-be-used feature right now instead of extending the design to accommodate it has anything to do with an unwillingness to put some information into spare bits.  The guy just didn't understand what "spare" meant.

     

    You are definitely right about that, he just didn't know what spare meant. I heard my colleague (a very experienced guy) complain later on that this dinosaur had been responsible for messing up his complete module design and now they were stuck with it. I always wonder then how it can get that far, where actually incompetent people can stay so long on the job and get that much responsibilities. I think I know the answers by now, 10 years later. Fortunately he got retired 2 years later with some massive cost savingsafter y2k.

     


Log in to reply