C, n.: A programming language that is sort of like Pascal except more like assembly except that it isn't very much like either one, or anything else. It is either the best language available to the art today, or it isn't. — Ray Simard "If it weren't for C, we'd be writing programs in BASI, PASAL, and OBOL." \nUse lots of global variables. \nGive them cryptic names such as: X27, a_gcl, or Horace. \nPut everything in one large .h file. \nImplement the entire project at once. \nUse macros and #defines to emulate Pascal. \nAssume the compiler takes care of all the little details you didn't quite understand. \nRewrite standard functions and give them your own obscure names. \nUse obscure, proprietary, non-portable, compiled library packages so that you never have to move from the platform you love so well. \nUse very descriptive comments like /* printf("Hello world\n"); */ before each function call. REMEMBER - Carriage returns are for weenies. Tabs are for those who have not reached weenie-dom yet. Include LOTS of inline assembly code. "User Interfaces" are for morons. "Users" have no business interfacing with a professional product like yours. If you are forced to comment your code (in English), then borrow comments from somebody else's code and sprinkle them throughout yours. It's quick, easy, and fun to watch people's expressions as they try to figure it out. Remember to define as many pre-processor symbols as possible in terms of already defined symbols. This is considered 'efficient use of code'. "It's 5:50 a.m., do you know where your stack pointer is ?" How to debug a C program \nIf at all possible, don't. Let someone else do it. \nChange majors. \nInsert/remove blank lines at random spots, re-compile, and execute. Throw holy water on the terminal. Dial 911 and scream. There is rumor that "printf" is useful, but this is probably unfounded. Port everything to CP/M. If it still doesn't work, re-write it in assembler. This won't fix the bug, but it will make sure no one else finds it and makes you look bad. Since you got it to compile, the problem must be in the Other Guys Code. If it's all your code then the problem MUST be in those unreliable Standard Libraries. See '1'. Claim the bug reports are vicious lies meant to tarnish your sterling reputation as a 'C' programmer (well aren't they ?). After all, those who wrote the reports couldn't even read your code. How could they possibly know if there was a bug or not? If they could read your code, review "How to program in C", above. Claim that there wouldn't be a problem if this stingy Company/School/Wife/etc would spring for a copy of C++. "In My Egotistical Opinion, most people's C programs should be indented six feet downward and covered with dirt." — Blair P. Houghton Creators admit Unix & C hoax \nIn an announcement that has stunned the computer industry, Ken Thompson, Dennis Ritchie and Brian Kernighan admitted that the Unix operating system and C programming language created by them is an elaborate April Fools prank kept alive for over 20 years. Speaking at the recent UnixWorld Software Development Forum, Thompson revealed the following: "In 1969, AT&T had just terminated their work with the GE/Honeywell/AT&T Multics project. Brian and I had just started working with an early release of Pascal from Professor Nichlaus Wirth's ETH labs in Switzerland and we were impressed with its elegant simplicity and power. Dennis had just finished reading 'Bored of the Rings', a hilarious National Lampoon parody of the great Tolkien 'Lord of the Rings' trilogy. As a lark, we decided to do parodies of the Multics environment and Pascal. Dennis and I were responsible for the operating environment. We looked at Multics and designed the new system to be as complex and cryptic as possible to maximize casual users' frustration levels, calling it Unix as a parody of Multics, as well as other more risqué allusions. Then Dennis and Brian worked on a truly warped version of Pascal, called 'A'. When we found others were actually trying to create real programs with A, we quickly added additional cryptic features and evolved into B, BCPL and finally C. We stopped when we got a clean compile on the following syntax: \nfor(;P("\n"),R--;P("|"))for(e=C;e--;P("_"+(*u++/8)%2))P("|"+(*u/4) %2); \nTo think that modern programmers would try to use a language that allowed such a statement was beyond our comprehension! We actually thought of selling this to the Soviets to set their computer science progress back 20 or more years. Imagine our surprise when AT&T and other US corporations actually began trying to use Unix and C! It has taken them 20 years to develop enough expertise to generate even marginally useful applications using this 1960's technological parody, but we are impressed with the tenacity (if not common sense) of the general Unix and C programmer. In any event, Brian, Dennis and I have been working exclusively in Pascal on the Apple Macintosh for the past few years and feel really guilty about the chaos, confusion and truly bad programming that have resulted from our silly prank so long ago." Major Unix and C vendors and customers, including AT&T, Microsoft, Hewlett-Packard, GTE, NCR, and DEC have refused comment at this time. Borland International, a leading vendor of Pascal and C tools, including the popular Turbo Pascal, Turbo C and Turbo C++, stated they had suspected this for a number of years and would continue to enhance their Pascal products and halt further efforts to develop C. An IBM spokesman broke into uncontrolled laughter and had to postpone a hastily convened news conference concerning the fate of the RS-6000, merely stating 'VM will be available Real Soon Now'. In a cryptic statement, Professor Wirth of the ETH institute and father of the Pascal, Modula 2 and Oberon structured languages, merely stated that P. T. Barnum was correct. "Trying to outsmart a compiler defeats much of the purpose of using one." — B. Kernighan & Plauger, "The Elements of Programming Style" In a related late-breaking story, usually reliable sources are stating that a similar confession may be forthcoming from William Gates concerning the MS-DOS and Windows operating environments. And IBM spokesmen have begun denying that the Virtual Machine (VM) product is an internal prank gone awry. "A UNIX saleslady, Lenore \nLikes work, but likes the beach more. \nShe found a clever way \nTo mix work with play... \nShe sells C shells by the seashore." Write in C \nTo the tune of the Beatles' Let it Be \nWhen I find my code in tons of trouble, \nFriends and colleagues come to me, \nSpeaking words of wisdom: \n"Write in C." As the deadline fast approaches, \nAnd bugs are all that I can see, \nSomewhere, someone whispers: \n"Write in C." \nWrite in C, Write in C, \nWrite in C, oh, Write in C. \nLOGO's dead and buried, \nWrite in C. I used to write a lot of FORTRAN, \nFor science it worked flawlessly. "Computers make very fast, very accurate mistakes." Now, describe the problem accurately: \n__________________________________________ \nSpeculate wildly about the cause of the problem: \n__________________________________________ \nProblem Severity: \nMinor __ \nMinor __ \nMinor __ \nTrivial __ \nNature of the problem: \nLocked up __ \nFrozen __ \nHung __ \nShot __ \nRight: Bug solving, Utah style \nIs your computer plugged in? Yes __ No __ \nIs it turned on? Yes __ No __ \nHave you tried to fix it yourself? Yes __ No __ \nHave you made it worse? Yes __ \nHave you read the manual? Yes __ No __ \nAre you sure you've read the manual? Yes __ No __ \nAre you absolutely certain you've read the manual? No __ \nDo you think you understood it? Yes __ No __ \nIf 'Yes' then why can't you fix the problem yourself? \n__________________________________________ \nHow tall are you? Are you above this line? \n__________________ \nWhat were you doing with your computer at the time the problem occurred? \n__________________________________________ \nIf 'nothing' explain why you were logged in. \n__________________________________________ \nAre you sure you aren't imagining the problem? Yes __ No __ \nHow does this problem make you feel? \n__________________________________________ \nTell me about your childhood. \n__________________________________________ \nDo you have any independent witnesses of the problem? Yes __ No __ \nCan't you do something else, instead of bothering me? Yes __ Think of the Internet as a highway \nBy Heather Garvey on alt.sysadmin.recovery. "Come to think of it, there are already a million monkeys on a million typewriters, and Usenet is nothing like Shakespeare." — Blair Houghton. There it is again. Some clueless fool talking about the "Information Superhighway". They don't know didley about the Net. It's nothing like a superhighway. That's a rotten metaphor. \nSuppose the metaphor ran in the other direction. Suppose the highways were like the net... \nA highway hundreds of lanes wide. Most with pitfalls for potholes. Privately operated bridges and overpasses. No highway patrol. A couple of rent-a-cops on bicycles with broken whistles. 500 member vigilante posses with nuclear weapons. A minimum of 237 on ramps at every intersection. \nNo signs. Wanna get to Ensenada? Holler out the window at a passing truck to ask directions. \nAd hoc traffic laws. Some lanes would vote to make use by a single-occupant-vehicle a capital offense on Monday through Friday between 7:00 and 9:00. Other lanes would just shoot you without a trial for talking on a car phone. \nAOL would be a giant diesel-smoking bus with hundreds of ebola victims on board throwing dead wombats and rotten cabbage at the other cars, most of which have been assembled at home from kits. Some are built around 2.5 horsepower lawn mower engines with a top speed of nine miles an hour. Others burn nitroglycerin and idle at 120. \nNo license plates. World War II bomber nose art instead. Terrifying paintings of huge teeth or vampire eagles. Bumper mounted machine guns. Flip somebody the finger on this highway and get a white phosphorus grenade up your tailpipe. Flatbed trucks cruise around with anti-aircraft missile batteries to shoot down the traffic helicopter. Little kids on tricycles with squirt guns filled with hydrochloric acid switch lanes without warning. \nNO OFFRAMPS. None. \nNow that's the way to run an Interstate Highway system. Top Ten Anagrams for "Information Superhighway" \n10. Enormous, hairy pig with fan \n9. Hey, ignoramus — win profit? Ha! \n8. Oh-oh, wiring snafu: empty air \n7. When forming, utopia's hairy \n6. A rough whimper of insanity \n5. Oh, wormy infuriating phase \n4. Inspire humanity, who go far \n3. Waiting for any promise, huh? \n2. Hi-ho! Yow! I'm surfing Arpanet! \nAnd the number one anagram for "Information Superhighway": \n1. New utopia? Horrifying sham - Strange but true web searches \nThere are some really funny (or pathetic) keyword combinations used by people to arrive on my site; are the search engines on crack or what ? I didn't make those up, so culprits' IPs and search engine names have been witheld to protect the guilty, but I've kept the (mis)spelling. And since they led to my site, I consider it's the same as asking me directly, so here are a few answers... \nWhere can I buy a penguin? \nWhy don't you ask your mom to make you a little brother instead ? For a while it will be just as smelly and noisy. \nhot chick \nhairy chick \nSorry, penguins here only. Disappointed ? \npichers of pengwines \nNever heard of that wine. I'll bring you a pitcher of Chateau Pétrus 1976 instead. \nDo Penguins die when they fall over? \nNo. Do you ? \ndo people in antarctica shower? \nHmmm, are you sure you want an answer to that one ? \nHow penguin survive in the arctic \nThey didn't, there aren't any anymore... C:-( \nhow to keep a pizza warm in antarctica \nIn your stomach \nhow People help Leopard seals \nMostly by staying too close from them when they are hungry... \nscrewed a penguin \nForget it, their feet are too cold and they have fish on their breath. And seals are much more sexy. \n Computers make it easier to do a lot of things, but most of the things they make it easier to do don't need to be done. ~ Andy Rooney If computers get too powerful, we can organize them into a committee -- that will do them in. ~ Bradley's Bromide The word user is the word used by the computer professional when they mean idiot. ~ Dave Barry Before we sent kids to computer camps and told them they were having a good time, there was imagination among the human species. ~ Erma Bombeck (All I know about Animal Behavior...) To err is human, but to really foul things up requires a computer. ~ Farmers Almanac If builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization. ~ Harry Weinberger There is only one satisfying way to boot a computer. ~ J. H. Goldfuss They have computers, and they may have other weapons of mass destruction. ~ Janet Reno The sad thing about artificial intelligence is that it lacks artifice and therefore intelligence. ~ Jean Baudrillard Imagine if every Thursday your shoes exploded if you tied them the usual way. This happens to us all the time with computers, and nobody thinks of complaining. ~ Jeff Raskin Computers are like Old Testament gods; lots of rules and no mercy. ~ Joseph Campbell A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable. ~ Leslie Lamport The workers and professionals of the world will soon be divided into two distinct groups. Those who will control computers and those who will be controlled by computers. It would be best for you to be in the former group. ~ Lewis D. Eigen A computer lets you make more mistakes faster than any invention in human history -- with the possible exceptions of hand guns and tequila. ~ Mitch Ratliffe The most likely way for the world to be destroyed, most experts agree, is by accident. That's where we come in; we're computer professionals. We cause accidents. ~ Nathanie Borenstein One of the most feared expressions in modern times is ''The computer is down'' ~ Norman Augustine Computers are useless. They can only give you answers. ~ Pablo Picasso If you put tomfoolery into a computer, nothing comes out of it but tomfoolery. But this tomfoolery, having passed through a very expensive machine, is somehow enobled and no-one dares criticize it. ~ Pierre Gallois Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. ~ Rich Cook To err is human - and to blame it on a computer is even more so. ~ Robert Orben A computer won't clean up the errors in your manual of procedures. ~ Sheila M. Eby The real danger is not that computers will begin to think like men, but that men will begin to think like computers. ~ Sidney J. Harris As far as we know, our computer has never had an undetected error. ~ Weisert Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. ~ Wernher von Braun Man is a slow, sloppy and brilliant thinker; the machine is fast, accurate and stupid. ~ William M. Kelly