

progasm: the feeling you get when your code works the first time


Abandon all hope, ye who press ENTER here.


All programmers are optimists.  Perhaps this modern sorcery especially
attracts those who believe in happy endings and fairy godmothers. 
Perhaps the hundreds of nitty frustrations drive away all but those who
habitually focus on the end goal.  Perhaps it is merely that computers
are young, programmers are younger, and the young are always optimists. 
But however the selection process works, the result is indisputable: 
"This time it will surely run," or "I just found the last bug."
   Frederick Brooks, Jr., The Mythical Man Month


Any given program, when running correctly, is obsolete.


"A complex system that works is invariably found to have evolved from a
simple system that worked."
   John Gall, _Systemantics_


"A conclusion is the place where you got tired of thinking."
   anon


"A slower system is better than an incorrect one."
   Mark Diekhans (markd@grizzly.com)


"And remember, rebooting your brain can be tricky."
   Eric Townsend (erict@flatline)


"As a rule software systems do not work well until they have been used,
and have failed repeatedly, in real applications."
   Dave Parnas, Communications of the ACM (33, 6 June 1990 p.636)


"...one of the main causes of the fall of the Roman Empire was that,
lacking zero, they had no way to indicate successful termination of
their C programs."
   Robert Firth


Any sufficiently advanced technology is indistinguishable from a rigged
demo.
   Andy Finkel, computer guy


Bradley's Bromide:
If computers get too powerful, we can organize them into a committee...
that will do them in.


By doing just a little every day, I can gradually let the task
completely overwhelm me.
   Ashleigh Brilliant


"Beware of programmers carrying screwdrivers."
   Chip Salzenberg


Calm down -- it's only ones and zeros.


Computers are the most fun you can have with anything that isn't
breathing.
   Bruce Walker, CACM Forum


"Computers are like Old Testament gods; lots of rules and no mercy."
   Joseph Campbell


"Debugging is anticipated with distaste, performed with reluctance, and
bragged about forever."
   button at the Boston Computer Museum


Don't ever take a fence down until you know the reason it was put up.
   G.K. Chesterton


Don't hit the keys so hard, it hurts.


First learn computer science and all the theory. Next develop a
programming style. Then forget all that and just hack.
   George Carrette [1990]


For every problem there is one solution which is simple, neat, and
wrong.
   H. L. Mencken


"How's YOUR Endless Project coming?"
   Mark Diekhans


HOFSTADTER'S LAW:
     Everything takes longer and costs more than expected, even when
     taking into account Hofstadter's Law.


"...and it's finished!  It only has to be written."
   Karl Lehenbauer


How does a project get to be a year late? ... One day at a time.
   Frederick Brooks, Jr., The Mythical Man Month


  How many programmers does it take to change a light bulb?
  One, but you can never change it back again.


  I really hate this damn machine,
  I wish that they would sell it.
  It never does just what I want,
  But only what I tell it.


"I do not fear computers... I fear the lack of them."
   Isaac Asimov


"I think there's a world market for about 5 computers."
   Thomas J. Watson, Chairman of the Board, IBM (around 1948)


"If a machine can be made so that an idiot can use it, then only an
idiot will use it."
   Tadao Ichikawa


"If the code and the comments disagree, then both are probably wrong."
   Norm Schryer


"If you don't make money off of it, it had better be either a religious
experience or a hobby."
   Lance Cooper


"If you want to eat hippopatomus, you've got to pay the freight."
  attributed to an IBM guy, about why IBM software uses so much memory


"If your computer doesn't multitask, it ain't shit."
   Cal Keegan


"Ignorance simplifies ANY problem."
   R. Lucke


"Little else matters than to write good code."
   Karl Lehenbauer


"Never put off until run time what you can do at compile time."
   David Gries, in "Compiler Construction for Digital Computers"


"Nuclear war can ruin your whole compile."
   Karl Lehenbauer


"Oh boy, virtual memory! Now I'm gonna make myself a REALLY BIG ram disk!"
   lennox@shire.hw.stratus.com


"Reliable software must kill people reliably."
   Andy Mickel


"Software suppliers are trying to make their software packages more
'user-friendly'.... Their best approach, so far, has been to take all
the old brochures, and stamp the words, 'user-friendly' on the cover."
   Bill Gates, Pres., Microsoft, Inc.


"That's not a bug, that's merely an idiosyncracy."
   mattb (formerly of sco)


"The biggest growth industry in UNIX is promoting standards."
   Rikki Kirzner, Dataquest.


Real Programmers always confuse Christmas and Halloween because
  OCT 31 == DEC 25 !
   Andrew Rutherford (andrewr@ucs.adelaide.edu.au)


"The most effective debugging tool is still careful thought, coupled
with judiciously placed print statements."
   Brian Kernighan [1978]


"The most important question when any new computer architecture is
introduced is `So what?'"
   someone in comp.arch


"The three most dangerous things in the world are a programmer with a
soldering iron, a hardware type with a program patch and a user with an
idea."
   _The Wizardry Compiled_ by Rick Cook


"Though a program be but three lines long,
 someday it will have to be maintained."
   The Tao of Programming


"To program is to understand."
   Kristen Nygaard


Unix: it's a nice place to live, but you wouldn't want to visit there.


"Using an IBM PC is like juggling straight razors.
 Using a Mac is like shaving with a bowling pin."
   Ted Nelson, _Computer Lib_



Laws of Computer Programming
(1) Any given program, when running, is obsolete.
(2) Any given program costs more and takes longer.
(3) If a program is useful, it will have to be changed.
(4) If a program is useless, it will have to be documented.
(5) Any given program will expand to fill all available memory.
(6) The value of a program is proportional to the weight of its output.
(7) Program complexity grows until it exceeds the capability of the
    programmer who must maintain it.
(8) Make it possible for programmers to write programs in English, and
    you will find that programmers cannot write in English.

  SIGPLAN Notices, Vol 2 No 2



Trying to shoot yourself in the foot in:
ASSEMBLY LANGUAGE: For those who like to load their own rounds before
                   shooting themselves in the foot.



Trying to shoot yourself in the foot in:
CLIPPER:  You grab a bullet, get ready to insert it in the gun so that
          you can shoot yourself in the foot, and discover that the gun
          that the bullet fits has not yet been built, but should be
          arriving in the mail _REAL_SOON_NOW_.



Trying to shoot yourself in the foot in:
DBase IV version 1.0: You pull the trigger but it turns out that the gun
         was a poorly-designed grenade and the whole building blows up



Trying to shoot yourself in the foot in:
DBase:  You squeeze the trigger, but the bullet moves so slowingly that
        by the time your foot feels the pain you've forgotten why you
        shot yourself anyway.



Trying to shoot yourself in the foot in:
Forth:  yourself foot shoot.



Trying to shoot yourself in the foot in:
Prolog: You attempt to shoot yourself in the foot, but the bullet,
        failing to find its mark, backtracks into the gun which then
        explodes in your face.



Trying to shoot yourself in the foot in:
SQL:    You cut your foot off, send it out to a service bureau and when
        it returns, it has a hole in it, but will no longer fit the
        attachment at the end of your leg.



Look at it this way: MSDOS is an overgrown program loader; the MacOS is
an overgrown user interface.  Neither is an operating system, but the
second is better for running applications.
   Paul Placeway


My computer can beat up your computer.
   Karl Lehenbauer


On a clear disk you can seek forever.


PROGRAMMER:  (n)  Red-eyed, mumbling mammal capable of conversing with
             inanimate objects.


That's the thing about people who think they hate computers.  What they
really hate is lousy programmers.
   Larry Niven and Jerry Pournelle in "Oath of Fealty"


The last thing one knows in constructing a work is what to put first.
   Blaise Pascal


The only way to learn a new programming language is by writing programs
in it.
   Brian Kernighan


The rule on staying alive as a program manager is to give 'em a number
or give 'em a date, but never give 'em both at once.


There are bugs and then there are bugs.  And then there are bugs.
   Karl Lehenbauer


There are no bugs, only unrecognized features.


UNIX was never designed to keep people from doing stupid things, because
that policy would also keep them from doing clever things.
   Doug Gwyn (1 Aug 90)


Weekends were made for programming.
   Karl Lehenbauer

