[rescue] Mainframe on eBay

Phil Stracchino phil.stracchino at speakeasy.net
Thu Sep 22 14:27:38 CDT 2005

Wes Will wrote:
> The code the new kids write is PRETTY.  It uses all of the things you go on
> to describe as "elegant" and "ivory tower abstractions."  Notice I didn't
> say that it worked or was efficient, only that it's pretty and well-commented.
> These new kids are up to the minute with the latest tools and languages.  I
> agree with the rest of your estimation that the results of using all of
> "the latest" is nightmarish to say the least.
> Plus, they don't have any idea of the behaviour of the hardware underneath
> it, having spent all their time climbing around in the trees of
> higher-level languages, rather than grubbing around down at the roots,
> somewhere between straight machine language and assembler.

True story:
My first real job was for a Major Aerospace Contractor.  I was hired to
program in assembly language on an in-house-designed custom
microprocessor that ...  well, let's just say it went into classified
military hardware and leave it at that.  Since it only used 7-bit ASCII
and memory was tight, it was standard practice to store strings on the
machine as packed data, 8 characters in every 7 bytes.  The first thing
that happened was they handed me a book on the complete spec for the
processor, including the entire instruction set, complete with execution
times for each instruction.  Then they told me, "Study this, and write a
string packing/unpacking routine."

So I studied it, and wrote my routine.  My boss looked at it, read
through it, then showed me the standard routine they used, gave me a
slightly superior smile, and pointed out that my routine used one byte
more memory than the "standard."  So I read the "standard" code, added
up all the instruction times in my head, and pointed out that my code
consumed one more byte, for the entire program, but ran (iirc) seven
machine cycles faster ... per character.

(Followups redirected to geeks, btw)

 Phil Stracchino       phil.stracchino at speakeasy.net
    Renaissance Man, Unix generalist, Perl hacker
 Mobile: 603-216-7037         Landline: 603-886-3518

More information about the rescue mailing list