<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-33883800</id><updated>2009-02-20T17:29:43.837-08:00</updated><title type='text'>Alfonso the Code Warrior</title><subtitle type='html'>A collection of coder and general computer jokes to rival the finest.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default?start-index=26&amp;max-results=25'/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>148</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-33883800.post-116657782042167998</id><published>2006-12-19T17:20:00.000-08:00</published><updated>2006-12-19T17:23:40.450-08:00</updated><title type='text'></title><content type='html'>&lt;p&gt; Q: How many MIS guys does it take to change a light bulb?&lt;/p&gt;&lt;p&gt;A: MIS has received your request concerning your hardware problem and has assigned you request service number 39,712. Please use this number for any future references to this light-bulb issue. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116657782042167998?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116657782042167998/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116657782042167998' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116657782042167998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116657782042167998'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/12/q-how-many-mis-guys-does-it-take-to.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116649321505487621</id><published>2006-12-18T17:51:00.000-08:00</published><updated>2006-12-18T17:53:35.100-08:00</updated><title type='text'></title><content type='html'>Pessimist: The glass is half-empty.&lt;br /&gt;&lt;br /&gt;Optimist: The glass is half-full.&lt;br /&gt;&lt;br /&gt;Engineer: The glass is twice as big as it needs to be.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116649321505487621?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116649321505487621/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116649321505487621' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116649321505487621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116649321505487621'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/12/pessimist-glass-is-half-empty.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116631873551623419</id><published>2006-12-16T17:14:00.000-08:00</published><updated>2006-12-16T17:25:35.546-08:00</updated><title type='text'></title><content type='html'>Coming soon: "WhoCarez", the world's first&lt;br /&gt;    Taoist programming language! See for yourself:&lt;br /&gt;         DO WHILE YOU FEEL IT'S WORTHWHILE&lt;br /&gt;                ADD X TO Y&lt;br /&gt;                        OR&lt;br /&gt;                SUBTRACT X FROM Y&lt;br /&gt;                        OR&lt;br /&gt;                WHATEVER&lt;br /&gt;                CALL DisregardResults&lt;br /&gt;                CALL ItIsn'tImportantAnyway&lt;br /&gt;                CALL PonderUniversalTruths&lt;br /&gt;                ASSIGN CosmicBalance = YES&lt;br /&gt;                        OR&lt;br /&gt;                PERHAPS NOT&lt;br /&gt;        END DO (UNLESS YOU DON'T WANT TO)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(&lt;a href="http://www.thecoffeeplace.com/jokes/aaaaaarl.html"&gt;originally from here&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116631873551623419?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116631873551623419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116631873551623419' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116631873551623419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116631873551623419'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/12/coming-soon-whocarez-worlds-first.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116614784563289700</id><published>2006-12-14T17:53:00.000-08:00</published><updated>2006-12-14T17:57:25.650-08:00</updated><title type='text'></title><content type='html'>If you had a Klingon coder working on your team (but wait, there's more...):&lt;br /&gt;&lt;ol&gt;&lt;li&gt; "This code is a piece of crap!  You have no honor!"   &lt;/li&gt;&lt;li&gt; "A TRUE Klingon warrior does not comment his code!"   &lt;/li&gt;&lt;li&gt; "By filing this bug you have questioned my family     honor. Prepare to die!"   &lt;/li&gt;&lt;li&gt; "You question the worthiness of my Code?!  I should     kill you where you stand!"   &lt;/li&gt;&lt;li&gt; "Our competitors are without honor!"   &lt;/li&gt;&lt;li&gt; "Specs are for the weak and timid!"   &lt;/li&gt;&lt;li&gt; "This machine is a piece of GAGH! I need dual     Pentium processors if I am to do battle with     this code!"   &lt;/li&gt;&lt;li&gt; "Perhaps it IS a good day to Die!  I say           we ship it!"   &lt;/li&gt;&lt;li&gt; "My program has just dumped Stova Core!"   &lt;/li&gt;&lt;li&gt; "Behold, the keyboard of Kalis!  The greatest           Klingon code warrior that ever lived!" &lt;/li&gt;&lt;/ol&gt;But I disagree. Klingons prefer hand-to-hand combat to Phasers. You just &lt;b&gt;know&lt;/b&gt; that they'd want to use a Z80 for real-time image processing. &lt;p&gt; So here is &lt;b&gt;my&lt;/b&gt; list of things you might hear from the Klingon in the cube next to yours. (&lt;a href="http://www.sjbaker.org/humor/klingon_programmer.html"&gt;see original page&lt;/a&gt;).&lt;br /&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt; "I have challenged the entire ISO-9000 review       team to a round of Bat-Leth practice on the       holodeck. They will not concern us again."   &lt;/li&gt;&lt;li&gt; "C++? That is for children. A Klingon Warrior       uses only machine code, keyed in on the front       panel switches in raw binary."   &lt;/li&gt;&lt;li&gt; "Debugging? Klingons do not debug. Bugs are good       for building character in the user."   &lt;/li&gt;&lt;li&gt; "Defensive programming? Never! Klingon programs       are always on the offense. Yes, Offensive programming       is what we do best."   &lt;/li&gt;&lt;li&gt; "Klingon programs don't &lt;b&gt;do&lt;/b&gt; accountancy. For that,       you need a Farengi programmer."   &lt;/li&gt;&lt;li&gt; "Klingon multitasking systems do not support "time-sharing".       When a Klingon program wants to run, it challenges the       scheduler in hand-to-hand combat and owns the machine."   &lt;/li&gt;&lt;li&gt; "Klingon function calls do not have 'parameters' - they have       'arguments' - and they ALWAYS WIN THEM."   &lt;/li&gt;&lt;li&gt; "You humans call this thing a 'cursor' and you       move it with 'mouse'! Bah!  A Klingon would not use such       a device. We have a Karaghht-Gnot - which is best       translated as "An Aiming Daggar of 16x16 pixels" and       we move it using a Gshnarrrf which is a creature from       the Klingon homeworld which posesses just one,       (disproportionately large) testicle...which it rubs along       the ground.....uh do we really need to talk about this?"   &lt;/li&gt;&lt;li&gt; "I am without honor...my children are without honor...       My father coded at the Battle of Kittimer...and...and...he...      &lt;br /&gt;HE ALLOWED HIMSELF TO BE MICROMANAGED." &lt;shudder&gt;   &lt;/li&gt;&lt;li&gt; "Klingons do not make software 'releases'. Our software       'escapes'. Typically leaving a trail of wounded programmers       in it's wake."   &lt;/li&gt;&lt;li&gt; "Microsoft is actually a secret Farengi-Klingon alliance       designed to cripple the Federation. The Farengi are doing       the marketing and the Klingons are writing the code."   &lt;/li&gt;&lt;li&gt; "Klingons do not believe in indentation - except perhaps in       the skulls of their program managers."   &lt;/li&gt;&lt;li&gt; "You can't truly appreciate Dilbert unless you read it       in the original Klingon."  &lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116614784563289700?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116614784563289700/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116614784563289700' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116614784563289700'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116614784563289700'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/12/if-you-had-klingon-coder-working-on.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116606089378093363</id><published>2006-12-13T17:48:00.000-08:00</published><updated>2006-12-13T17:48:13.780-08:00</updated><title type='text'></title><content type='html'>All programmers are playwrights and all computers are lousy actors.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116606089378093363?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116606089378093363/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116606089378093363' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116606089378093363'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116606089378093363'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/12/all-programmers-are-playwrights-and.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116606087287622582</id><published>2006-12-13T17:47:00.000-08:00</published><updated>2006-12-13T17:47:52.876-08:00</updated><title type='text'></title><content type='html'>Unix is user friendly. It's just very particular about who it's friends are.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116606087287622582?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116606087287622582/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116606087287622582' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116606087287622582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116606087287622582'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/12/unix-is-user-friendly.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116606075533761386</id><published>2006-12-13T17:45:00.000-08:00</published><updated>2006-12-13T17:45:55.350-08:00</updated><title type='text'></title><content type='html'>&lt;p&gt;  The boy is smoking and leaving smoke rings into the air.&lt;br /&gt;The girl gets irritated with the smoke and says to her lover: "Can't you see the warning written on the cigarettes packet, smoking is injurious to  health!"&lt;/p&gt;&lt;p&gt;  The boy replies back: "Darling, I am a programmer. We don't worry about  warnings, we only worry about errors."&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116606075533761386?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116606075533761386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116606075533761386' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116606075533761386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116606075533761386'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/12/boy-is-smoking-and-leaving-smoke-rings.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116588632173402372</id><published>2006-12-11T17:17:00.000-08:00</published><updated>2006-12-11T17:18:41.746-08:00</updated><title type='text'>How To Identify Where A Driver Is From</title><content type='html'>&lt;p&gt;One hand on wheel, one hand on horn: Chicago&lt;/p&gt; &lt;p&gt;One hand on wheel, one finger out window: New York&lt;/p&gt; &lt;p&gt;One hand on wheel, one hand on newspaper, foot solidly on accelerator: Boston&lt;/p&gt; &lt;p&gt;One hand on wheel, cradling cell phone, brick on accelerator: California. With gun in lap: L.A.&lt;/p&gt; &lt;p&gt;With joint in mouth/brushing dreadlocks out of eyes: San Francisco/Humbolt.&lt;/p&gt; &lt;p&gt;Both hands on wheel, eyes shut, both feet on brake, quivering in terror: Ohio, but driving in New York.&lt;/p&gt; &lt;p&gt;Both hands in air, gesturing, both feet on accelerator, head turned to talk to someone in back seat: Italy&lt;/p&gt; &lt;p&gt;One hand on latte, one knee on wheel, cradling cell phone, foot on brake, mind on game: Seattle&lt;/p&gt; &lt;p&gt;One hand on wheel, one hand on hunting rifle, alternating between both feet being on the accelerator and both on the brake, throwing a McDonalds bag out the window: Texas city male&lt;/p&gt; &lt;p&gt;One hand on wheel, one hand hanging out the window, keeping speed steadily at 70mph, driving down the center of the road unless coming around a blind curve, in which case they are on the left side of the road: Texas country male&lt;/p&gt; &lt;p&gt;One hand constantly refocusing the rear-view mirror to show different angles of the BIG hair, one hand going between mousse, brush, and rat-tail to keep the helmet hair going, both feet on the accelerator, poodle steering the car, chrome .38 revolver with mother of pearl inlaid handle in the glove compartment: Texas female&lt;/p&gt; &lt;p&gt;Four wheel drive pickup truck, shotgun mounted in rear window, beer cans on floor, squirrel tails attached to antenna: West Virginia&lt;/p&gt; &lt;p&gt;Two hands gripping wheel, blue hair barely visible above window level, driving 35 on the interstate in the left lane with the left blinker on: Florida &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116588632173402372?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116588632173402372/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116588632173402372' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116588632173402372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116588632173402372'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/12/how-to-identify-where-driver-is-from.html' title='How To Identify Where A Driver Is From'/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116582396118300706</id><published>2006-12-10T23:55:00.000-08:00</published><updated>2006-12-10T23:59:21.206-08:00</updated><title type='text'>Why did the multi-threaded chicken cross the road?</title><content type='html'>&lt;b&gt;Why did the multi-threaded chicken cross the road?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;to To other side. get the&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116582396118300706?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116582396118300706/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116582396118300706' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116582396118300706'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116582396118300706'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/12/why-did-multi-threaded-chicken-cross.html' title='Why did the multi-threaded chicken cross the road?'/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116536724718226451</id><published>2006-12-05T17:06:00.000-08:00</published><updated>2006-12-05T17:07:27.200-08:00</updated><title type='text'></title><content type='html'>Rule for software developers. Never stand over the shoulder of a beta tester. Once, I was watching Jane test the latest version of our software. When a message appeared on the screen, "Press any key to continue", Jane pressed the letter 'j'.&lt;br /&gt;         I thought I was going to have heart failure.&lt;br /&gt;&lt;br /&gt;        "JANE!" I screamed, "Why did you press J?!!?"&lt;br /&gt;&lt;br /&gt;        "It said any key."&lt;br /&gt;&lt;br /&gt;        "Yeah, but....when programmers say any key, they mean the space bar!"&lt;br /&gt;&lt;br /&gt;        At which point my fellow programmer looked at me and said, "We do?  I thought we meant enter."&lt;br /&gt;&lt;br /&gt; Originally From: BEN BUTLER&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116536724718226451?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116536724718226451/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116536724718226451' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116536724718226451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116536724718226451'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/12/rule-for-software-developers.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116485010145657785</id><published>2006-11-29T17:28:00.000-08:00</published><updated>2006-11-29T17:28:21.473-08:00</updated><title type='text'></title><content type='html'>&lt;h3&gt;Proper Diskette Care and Usage&lt;/h3&gt; &lt;p&gt;  (1) Never leave diskettes in the drive, as the data can leak out of the disk and corrode the inner mechanics of the drive. Diskettes should be rolled up and stored in pencil holders. &lt;/p&gt;&lt;p&gt;  (2) Diskettes should be cleaned and waxed once a week. Microscopic metal particles may be removed by waving a powerful magnet over the surface of the disk.  Any stubborn metal shavings can be removed with scouring powder and steel wool.  When waxing a diskette, make sure the surface is even.  This will allow the diskette to spin faster, resulting in better access time. &lt;/p&gt;&lt;p&gt;  (3) Do not fold diskettes unless they do not fit into the drive.  "Big" Diskettes may be folded and used in "Little" drives. &lt;/p&gt;&lt;p&gt;  (4) Never insert a diskette into the drive upside down.  The data can fall off the surface of the disk and jam the intricate mechanics of the drive. &lt;/p&gt;&lt;p&gt;  (5) Diskettes cannot be backed up by running them through a photo copy machine.  If your data is going to need to be backed up, simply insert TWO diskettes into your drive. Whenever you update a document, the data will be written onto both disks.  A handy tip for more legible backup copies: Keep a container of iron filings at your desk. When you need to make two copies, sprinkle iron filings liberally between the diskettes before inserting them into the drive. &lt;/p&gt;&lt;p&gt;  (6) Diskettes should not be removed or inserted from the drive while the red light is on or flashing.  Doing so could result in smeared or possibly unreadable text. Occasionally, the red light remains flashing in what is known as a "hung" or "hooked" state.  If your system is hooking, you will probably need to insert a few coins before being allowed to access the slot. &lt;/p&gt;&lt;p&gt; (7) If your diskette is full and needs more storage space, remove the disk from the drive and shake vigourously for two minutes.  This will pack the data enough (data compression) to allow for more storage.  Be sure to cover all openings with scotch tape to prevent loss of data. &lt;/p&gt;&lt;p&gt;  (8) Data access time may be greatly improved by cutting more holes in the diskette jacket.  This will provide more simultaneous access points to the disk. &lt;/p&gt;&lt;p&gt;  (9) Periodically spray diskettes with insecticide to prevent system bugs from spreading..... &lt;/p&gt;&lt;p&gt;  (10) You can keep your data fresh by storing disks in the vegetable compartment of your refrigerator.  Disks may be frozen, but remember to un thaw by microwaving or briefly immersing in boiling water. &lt;/p&gt;&lt;p&gt;  (11) "Little" diskettes must be removed from their box prior to use. These containers are childproof to prevent tampering by unknowledgeable youngsters. &lt;/p&gt;&lt;p&gt;  (12) You can recover data from a damaged disk by using the DOS command: FORMAT /U or alternatively by scratching new sector marks on the disk with a nail file. &lt;/p&gt;&lt;p&gt;  (13) Diskettes become "hard" with age.  It's important to back up your "hard" disks before they become too brittle to use. &lt;/p&gt;&lt;p&gt;  (14) Make sure you label your data.  Staples are a good way to permanently affix labels to your disks. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116485010145657785?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116485010145657785/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116485010145657785' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116485010145657785'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116485010145657785'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/11/proper-diskette-care-and-usage-1-never.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116476311184334948</id><published>2006-11-28T17:16:00.000-08:00</published><updated>2006-11-28T17:18:31.866-08:00</updated><title type='text'>Theory and Practice</title><content type='html'>Theory is when you think you know something but it doesn't work.&lt;br /&gt;Practice is when something works but you don't know why.&lt;br /&gt;Usually we combine theory and practice: nothing works and we don't know why.&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;In theory, theory and practice are the same.&lt;br /&gt;But that's in theory, not in practice.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116476311184334948?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116476311184334948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116476311184334948' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116476311184334948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116476311184334948'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/11/theory-and-practice.html' title='Theory and Practice'/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116355388828925441</id><published>2006-11-14T17:22:00.000-08:00</published><updated>2006-11-14T17:24:48.323-08:00</updated><title type='text'></title><content type='html'>The graduate with a Science degree asks, "Why does it work?"&lt;br /&gt;The graduate with an Engineering degree asks, "How does it work?"&lt;br /&gt;The graduate with an Accounting degree asks, "How much will it cost?"&lt;br /&gt;The graduate with an Computer Science degree asks, "How is it that it works at all?"&lt;br /&gt; The graduate with a Liberal Arts degree asks, "Do you want fries with that?"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116355388828925441?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116355388828925441/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116355388828925441' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116355388828925441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116355388828925441'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/11/graduate-with-science-degree-asks-why.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116338154056104603</id><published>2006-11-12T17:31:00.000-08:00</published><updated>2006-11-12T17:32:20.600-08:00</updated><title type='text'>Writing Unmaintainable Code</title><content type='html'>&lt;h2&gt;Introduction&lt;/h2&gt;    &lt;blockquote&gt;&lt;i&gt;       &lt;/i&gt;&lt;p&gt; &lt;i&gt;      Never ascribe to malice, that which can be explained by incompetence.&lt;br /&gt;  &lt;/i&gt;- Napoleon&lt;/p&gt;&lt;/blockquote&gt;    &lt;p&gt;       &lt;/p&gt;&lt;p&gt;    In the interests of creating employment opportunities in the Java programming    field, I am passing on these tips from the masters on how to write code that is    so difficult to maintain, that the people who come after you will take years to    make even the simplest changes. Further, if you follow all these rules    religiously, you will even guarantee &lt;b&gt;yourself&lt;/b&gt; a lifetime of employment,    since no one but you has a hope in hell of maintaining the code. Then again, if    you followed &lt;b&gt;all&lt;/b&gt; these rules religiously, even you wouldn't be able to    maintain the code!     &lt;/p&gt;&lt;p&gt;You don't want to overdo this.  Your code should not &lt;b&gt;look&lt;/b&gt; hopelessly    unmaintainable, just &lt;b&gt;be&lt;/b&gt; that way.  Otherwise it stands the risk of being    rewritten or &lt;!--&lt;a href="http://not-a-real-namespace/jglossr.html#REFACTORING"&gt;--&gt;refactored&lt;!--/a--&gt;.     &lt;/p&gt;&lt;h2&gt;General Principles&lt;/h2&gt;    &lt;blockquote&gt;&lt;i&gt;       &lt;/i&gt;&lt;p&gt; &lt;i&gt;      Quidquid latine dictum sit, altum sonatur.     &lt;br /&gt;  &lt;/i&gt;- Whatever is said in Latin sounds profound.&lt;/p&gt;&lt;/blockquote&gt;    To foil the maintenance programmer, you have to understand how he thinks.  He    has your giant program.  He has no time to read it all, much less understand it.    He wants to rapidly find the place to make his change, make it and get out and    have no unexpected side effects from the change.     &lt;p&gt;     He views your code through a toilet paper tube.  He can only see a tiny piece of    your program at a time.  You want to make sure he can never get at the big    picture from doing that. You want to make it as hard as possible for him to find    the code he is looking for.  But even more important, you want to make it as    awkward as possible for him to safely &lt;b&gt;ignore&lt;/b&gt; anything.     &lt;/p&gt;&lt;p&gt;     Programmers are lulled into complacency by conventions.  By every once in a    while, by subtly violating convention, you force him to read every line of your    code with a magnifying glass.     &lt;/p&gt;&lt;p&gt;     You might get the idea that every language feature makes code unmaintainable --    not so, only if properly misused.     &lt;/p&gt;&lt;h2&gt;Naming&lt;/h2&gt;     &lt;blockquote&gt;&lt;i&gt;        &lt;/i&gt;&lt;p&gt;  &lt;i&gt;      "When I use a word," Humpty Dumpty said, in a rather scornful tone, "it       means just what I choose it to mean - neither more nor less."    &lt;/i&gt;&lt;br /&gt;- Lewis Carroll -- Through the Looking Glass, Chapter 6&lt;/p&gt;&lt;/blockquote&gt;     Much of the skill in writing unmaintainable code is the art of naming variables    and methods. They don't matter at all to the compiler.  That gives you huge    latitude to use them to befuddle the maintenance programmer.    &lt;ol&gt;&lt;h4&gt;New Uses For &lt;cite&gt;Names For Baby&lt;/cite&gt;&lt;/h4&gt;          Buy a copy of a baby naming book and you'll never be at a loss for variable          names. Fred is a wonderful name, and easy to type.  If you're looking for easy-to-type          variable names, try &lt;span class="code"&gt;adsf&lt;/span&gt; or &lt;span class="code"&gt;aoeu&lt;/span&gt;          if you type with a &lt;!--a href="dsk.html"--&gt;DSK keyboard&lt;!--/a--&gt;.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Single Letter Variable Names&lt;/h4&gt; If you call your variables a, b, c, then it will be impossible to search for          instances of them using a simple text editor. Further, nobody will be able to          guess what they are for. If anyone even hints at breaking the tradition honoured          since FØRTRAN of using i, j, and k for indexing variables, namely          replacing them with ii, jj and kk, warn them about what the Spanish Inquisition          did to heretics.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Creative Miss-spelling&lt;/h4&gt;           If you must use descriptive variable and function names, misspell them. By          misspelling in some function and variable names, and spelling it correctly in          others (such as SetPintleOpening SetPintalClosing) we effectively negate the use          of grep or IDE search techniques.  It works amazingly well.  Add an          international flavor by spelling &lt;i&gt;tory&lt;/i&gt; or &lt;i&gt;tori&lt;/i&gt; in different          theatres/theaters.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Be Abstract&lt;/h4&gt;           In naming functions and variables, make heavy use of abstract words like &lt;i&gt;it&lt;/i&gt;,          &lt;i&gt;everything&lt;/i&gt;, &lt;i&gt;data&lt;/i&gt;, &lt;i&gt;handle&lt;/i&gt;, &lt;i&gt;stuff&lt;/i&gt;, &lt;i&gt;do&lt;/i&gt;, &lt;i&gt;routine&lt;/i&gt;,          &lt;i&gt;perform&lt;/i&gt; and the digits e.g. &lt;span class="code"&gt;routineX48&lt;/span&gt;, &lt;span class="code"&gt;PerformDataFunction&lt;/span&gt;,          &lt;span class="code"&gt;DoIt&lt;/span&gt;, &lt;span class="code"&gt;HandleStuff&lt;/span&gt; and &lt;span class="code"&gt;do_args_method&lt;/span&gt;.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;A.C.R.O.N.Y.M.S.&lt;/h4&gt;           Use acronyms to keep the code terse. Real men never define acronyms; they          understand them genetically.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Thesaurus Surrogatisation&lt;/h4&gt;           To break the boredom, use a thesaurus to look up as much alternate vocabulary          as possible to refer to the same action, e.g. &lt;i&gt;display&lt;/i&gt;, &lt;i&gt;show&lt;/i&gt;, &lt;i&gt;present&lt;/i&gt;.          Vaguely hint there is some subtle difference, where none exists. However, if          there are two similar functions that have a crucial difference, always use the          same word in describing both functions (e.g. &lt;i&gt;print&lt;/i&gt; to mean "write to          a file",  "put ink on paper" and "display on the screen").          Under no circumstances, succumb to demands to write a glossary with the special          purpose project vocabulary unambiguously defined. Doing so would be an          unprofessional breach of the structured design principle of &lt;i&gt;information          hiding&lt;/i&gt;.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Use Plural Forms From Other Languages&lt;/h4&gt;           A VMS script kept track of the "statii" returned from various "Vaxen".          &lt;!--a href="esperanto.html"--&gt;Esperanto&lt;!--/a--&gt;          , &lt;a href="http://www.kli.org/" target="_blank"&gt;Klingon&lt;/a&gt; and &lt;a href="http://www.chriswetherell.com/hobbit/default.asp%20target=" _blank=""&gt;Hobbitese&lt;/a&gt;          qualify as languages for these purposes. For pseudo-Esperanto pluraloj, add oj.          You will be doing your part toward world peace.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;CapiTaliSaTion&lt;/h4&gt;           Randomly capitalize the first letter of a syllable in the middle of a word. For          example &lt;span class="code"&gt;ComputeRasterHistoGram()&lt;/span&gt;.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Reuse Names&lt;/h4&gt;           Wherever the rules of the language permit, give classes, constructors, methods,          member variables, parameters and local variables the same names. For extra          points, reuse local variable names inside {} blocks. The goal is to force the          maintenance programmer to carefully examine the &lt;!--a href="jglosss.html#SCOPE"--&gt;scope&lt;!--/a--&gt;          of every instance. In particular, in Java, make ordinary methods masquerade as          constructors.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Åccented Letters&lt;/h4&gt;           Use accented characters on variable names.  E.g.           &lt;ul class="code"&gt;             typedef struct { int i; } ínt;           &lt;/ul&gt;           where the second ínt's í is actually i-acute.   With only a simple          text editor, it's nearly impossible to distinguish the slant of the accent mark.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Exploit Compiler Name Length Limits&lt;/h4&gt;           If the compiler will only distinguish the first, say, 8 characters of names,          then vary the endings e.g. &lt;i&gt;var_unit_update()&lt;/i&gt; in one case and &lt;i&gt;var_unit_setup()&lt;/i&gt;          in another. The compiler will treat both as &lt;i&gt;var_unit&lt;/i&gt;.   &lt;p&gt;          &lt;/p&gt;&lt;h4&gt;Underscore, a Friend Indeed&lt;/h4&gt;           Use _ and __ as identifiers.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Mix Languages&lt;/h4&gt;           Randomly intersperse two languages (human or computer). If your boss insists          you use his language, tell him you can organise your thoughts better in your own          language, or, if that does not work, allege linguistic discrimination and          threaten to sue your employers for a vast sum.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Extended ASCII&lt;/h4&gt;           Extended ASCII characters are perfectly valid as variable names, including ß,          Ð, and ñ characters. They are almost impossible to type without          copying/pasting in a simple text editor.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Names From Other Languages&lt;/h4&gt;           Use foreign language dictionaries as a source for variable names. For example,          use the German  &lt;i&gt;punkt&lt;/i&gt; for &lt;i&gt;point&lt;/i&gt;.  Maintenance coders, without your          firm grasp of German, will enjoy the multicultural experience of deciphering the          meaning.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Names From Mathematics&lt;/h4&gt;           Choose variable names that masquerade as mathematical operators, e.g.:           &lt;ul class="code"&gt;             openParen &lt;span style="color: rgb(0, 0, 153);"&gt;&lt;b&gt;=&lt;/b&gt;&lt;/span&gt; (slash &lt;span style="color: rgb(0, 0, 153);"&gt;             &lt;b&gt;+&lt;/b&gt;&lt;/span&gt; asterix) &lt;span style="color: rgb(0, 0, 153);"&gt;&lt;b&gt;/&lt;/b&gt;&lt;/span&gt;             equals;           &lt;/ul&gt;&lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Bedazzling Names&lt;/h4&gt;           Choose variable names with irrelevant emotional connotation. e.g.:           &lt;ul class="code"&gt;             marypoppins &lt;span style="color: rgb(0, 0, 153);"&gt;&lt;b&gt;=&lt;/b&gt;&lt;/span&gt; (superman             &lt;span style="color: rgb(0, 0, 153);"&gt;&lt;b&gt;+&lt;/b&gt;&lt;/span&gt; starship) &lt;span style="color: rgb(0, 0, 153);"&gt;             &lt;b&gt;/&lt;/b&gt;&lt;/span&gt; god;           &lt;/ul&gt;           This confuses the reader because they have difficulty disassociating the          emotional connotations of the words from the logic they're trying to think about.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;Rename and Reuse&lt;/h4&gt;           This trick works especially well in Ada, a language immune to many of the          standard obfuscation techniques. The people who originally named all the objects          and packages you use were morons. Rather than try to convince them to change,          just use renames and subtypes to rename everything to names of your own devising.          Make sure to leave a few references to the old names in, as a trap for the          unwary.   &lt;p&gt;           &lt;/p&gt;&lt;h4&gt;When To Use i&lt;/h4&gt;           Never use &lt;span class="code"&gt;i&lt;/span&gt; for the innermost loop variable. Use          anything but. Use &lt;span class="code"&gt;i&lt;/span&gt; liberally for any other purpose          especially for non-int variables. Similarly use &lt;span class="code"&gt;n&lt;/span&gt; as a          loop index.   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;Conventions Schmentions&lt;/h4&gt;           Ignore the &lt;a href="http://java.sun.com/docs/codeconv/" target="_blank"&gt;Sun Java Coding          Conventions&lt;/a&gt;, after all, &lt;!--a href="gotchas.html#INCONSISTENCIES"--&gt;Sun does&lt;!--/a--&gt;.          Fortunately,  the compiler won't tattle when you violate them.           The goal is to come up with names that differ subtlely only in case. If you are          forced to use the capitalisation conventions, you can still subvert wherever the          choice is ambigous, e.g. use &lt;b&gt;both&lt;/b&gt;&lt;i&gt;input&lt;b&gt;F&lt;/b&gt;ile&lt;b&gt;n&lt;/b&gt;ame&lt;/i&gt; and           &lt;i&gt;input&lt;b&gt;f&lt;/b&gt;ile&lt;b&gt;N&lt;/b&gt;ame&lt;/i&gt;.           Invent your own hopelessly complex naming conventions, then berate everyone else          for not following them.   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;Lower Case l Looks a Lot Like the Digit 1&lt;/h4&gt;           Use lower case l to indicate long constants. e.g. 10l is more likely to be          mistaken for 101 that 10L is. Ban any fonts that &lt;!--a href="projects.html#PROOFREADERFONT"--&gt;clearly          disambiguate&lt;!--/a--&gt; uvw wW gq9 2z 5s il17|!j oO08  `'" ;,.  m nn rn {[()]}.          Be creative.   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;Reuse of Global Names as Private&lt;/h4&gt;           Declare a global array in module A, and a private one of the same name in the          header file for module B, so that it appears that it's the global array you are          using in module B, but it isn't. Make no reference in the comments to this          duplication.   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;Recycling Revisited&lt;/h4&gt;           Use scoping as confusingly as possible by recycling variable names in          contradictory ways. For example, suppose you have global variables A and B, and          functions foo and bar. If you know that variable A will be regularly passed to          foo and B to bar, make sure to define the functions as function foo(B) and          function bar(A) so that inside the functions A will always be referred to as B          and vice versa. With more functions and globals, you can create vast confusing          webs of mutually contradictory uses of the same names.   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;Recycle Your Variables&lt;/h4&gt;           Wherever scope rules permit, reuse existing unrelated variable names.          Similarly, use the same temporary variable for two unrelated purposes (purporting          to save stack slots). For a fiendish variant, morph the variable, for example,          assign a value to a variable at the top of a very long method, and then          somewhere in the middle, change the meaning of the variable in a subtle way,          such as converting it from a 0-based coordinate to a 1-based coordinate. Be          certain not to document this change in meaning.   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;Cd wrttn wtht vwls s mch trsr&lt;/h4&gt;           When using abbreviations inside variable or method names, break the boredom          with several variants for the same word, and even spell it out longhand once in          while. This helps defeat those lazy bums who use text search to understand only          some aspect of your program. Consider variant spellings as a variant on the ploy,          e.g. mixing International &lt;i&gt;colour&lt;/i&gt;, with American &lt;i&gt;color&lt;/i&gt; and dude-speak          &lt;i&gt;kulerz&lt;/i&gt;. If you spell out names in full, there is only one possible way to          spell each name. These are too easy for the maintenance programmer to remember.          Because there are so many different ways to abbreviate a word, with          abbreviations, you can have several different variables that all have the same          apparent purpose. As an added bonus, the maintenance programmer might not even          notice they are separate variables.   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;Misleading names&lt;/h4&gt;           Make sure that every method does a little bit more (or less) than its name          suggests. As a simple example, a method named &lt;span class="code"&gt;isValid(x)&lt;/span&gt;          should as a side effect convert x to binary and store the result in a database.   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;m_&lt;/h4&gt;           a naming convention from the world of C++ is the use of "m_" in          front of members.  This is supposed to help you tell them apart from methods, so          long as you forget that "method" also starts with the letter "m".   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;o_apple obj_apple&lt;/h4&gt;           Use an "o" or "obj" prefix for each instance of the class          to show that you're thinking of the big, polymorphic picture.   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;Hungarian Notation&lt;/h4&gt;           Hungarian Notation is the tactical nuclear weapon of source code obfuscation          techniques; use it! Due to the sheer volume of source code contaminated by this          idiom nothing can kill a maintenance engineer faster than a well planned          Hungarian Notation attack. The following tips will help you corrupt the original          intent of Hungarian Notation: &lt;p&gt;          &lt;/p&gt;&lt;ul&gt;                Insist on using "c" for const in C++ and other languages that directly                enforce the const-ness of a variable.   &lt;p&gt;               Seek out and use Hungarian warts that have meaning in languages other than your                current language. For example insist on the PowerBuilder "l_" and "a_                " {local and argument} scoping prefixes and always use the VB-esque style                of having a Hungarian wart for every control type when coding to C++. Try to                stay ignorant of the fact that megs of plainly visible MFC source code does not                use Hungarian warts for control types.   &lt;/p&gt;&lt;p&gt;               Always violate the Hungarian principle that the most commonly used variables                should carry the least extra information around with them. Achieve this end                through the techniques outlined above and by insisting that each class type have                a custom wart prefix. Never allow anyone to remind you that &lt;b&gt;no&lt;/b&gt; wart tells                you that something &lt;b&gt;is&lt;/b&gt; a class. The importance of this rule cannot be                overstated if you fail to adhere to its principles the source code may become                flooded with shorter variable names that have a higher vowel/consonant ratio. In                the worst case scenario this can lead to a full collapse of obfuscation and the                spontaneous reappearance of English Notation in code!   &lt;/p&gt;&lt;p&gt;               Flagrantly violate the Hungarian-esque concept that function parameters and                other high visibility symbols must be given meaningful names, but that Hungarian                type warts all by themselves make excellent temporary variable names.   &lt;/p&gt;&lt;p&gt;               Insist on carrying outright orthogonal information in your Hungarian warts.                Consider this real world example "a_crszkvc30LastNameCol". It took a                team of maintenance engineers nearly 3 days to figure out that this whopper                variable name described a const, reference, function argument that was holding                information from a database column of type Varchar[30] named "LastName"                which was part of the table's primary key. When properly combined with the                principle that "all variables should be public" this technique has the                power to render thousands of lines of source code obsolete instantly!   &lt;/p&gt;&lt;p&gt;               Use to your advantage the principle that the human brain can only hold 7 pieces                of information concurrently. For example code written to the above standard has                the following properties:                 &lt;/p&gt;&lt;ul&gt;&lt;li&gt;                      a single assignment statement carries 14 pieces of type and name information.                   &lt;/li&gt;&lt;li&gt;                      a single function call that passes three parameters and assigns a result carries                      29 pieces of type and name information.                   &lt;/li&gt;&lt;li&gt;                      Seek to improve this excellent, but far too concise, standard. Impress                      management and coworkers by recommending a 5 letter day of the week prefix to                      help isolate code written on 'Monam' and 'FriPM'.                   &lt;/li&gt;&lt;li&gt;                      It is easy to overwhelm the short term memory with even a moderately complex                      nesting structure, &lt;b&gt;especially&lt;/b&gt; when the maintenance programmer can't see                      the start and end of each block on screen simultaneously.                   &lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;p&gt;         &lt;/p&gt;&lt;h4&gt;Hungarian Notation Revisited&lt;/h4&gt;           One followon trick in the Hungarian notation is "change the type of a          variable but leave the variable name unchanged". This is almost invariably          done in windows apps with the migration from Win16 :- WndProc(HWND hW, WORD wMsg,          WORD wParam, LONG lParam) to Win32 WndProc(HWND hW, UINT wMsg, WPARAM wParam,          LPARAM lParam) where the w values hint that they are words, but they really          refer to longs. The real value of this approach comes clear with the Win64          migration, when the parameters will be 64 bits wide, but the old "w"          and "l" prefixes will remain forever.   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;Reduce, Reuse, Recycle &lt;/h4&gt;           If you have to define a structure to hold data for callbacks, always call the          structure PRIVDATA.  Every module can define it's own PRIVDATA.  In VC++, this          has the advantage of confusing the debugger so that if you have a PRIVDATA          variable and try to expand it in the watch window, it doesn't know which          PRIVDATA you mean, so it just picks one.   &lt;p&gt;         &lt;/p&gt;&lt;h4&gt;Obscure film references &lt;/h4&gt;           Use constant names like &lt;span class="code"&gt;LancelotsFavouriteColour&lt;/span&gt;          instead of &lt;span class="code"&gt;blue&lt;/span&gt; and assign it hex value of $0204FB.  The          color looks identical to pure blue on the screen, and a maintenance programmer          would have to work out 0204FB (or use some graphic tool) to know what it looks          like. Only someone intimately familiar with Monty Python and the Holy Grail          would know that Lancelot's favorite color was blue.  If a maintenance programmer          can't quote entire Monty Python movies from memory, he or she has &lt;b&gt;no&lt;/b&gt;          business being a programmer.&lt;br /&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;a href="http://thc.org/root/phun/unmaintain.html"&gt;read more&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116338154056104603?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116338154056104603/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116338154056104603' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116338154056104603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116338154056104603'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/11/writing-unmaintainable-code.html' title='Writing Unmaintainable Code'/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116303649859923457</id><published>2006-11-08T17:32:00.000-08:00</published><updated>2006-11-08T17:41:38.640-08:00</updated><title type='text'>Lightbulb Jokes - Computers</title><content type='html'>&lt;dl&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Pentium designers does it take to screw in   a light bulb?   &lt;/dt&gt;&lt;dd&gt;1.99904274017, but that's close enough for non-technical   people.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many IBM CPU's does it take to turn on a light   bulb?   &lt;/dt&gt;&lt;dd&gt;33 - 1 to process the instruction and 32 to process the interrupt.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many electrical engineers does it take to change   a light bulb?   &lt;/dt&gt;&lt;dd&gt;We don't know yet. They're still waiting on a part.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many hardware engineers does it take to change   a light bulb?   &lt;/dt&gt;&lt;dd&gt;None. "We'll fix it in software."   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many software engineers does it take to change   a light bulb?   &lt;ol&gt;&lt;li&gt;None. "We'll document it in the manual."     &lt;/li&gt;&lt;li&gt;None. It's a hardware problem.     &lt;/li&gt;&lt;li&gt;One, but if he changes it, the whole building will probably     fall down.     &lt;/li&gt;&lt;li&gt;Two. One always leaves in the middle of the project.     &lt;/li&gt;&lt;li&gt;Four. One to design the change, one to implement it, one     to document it, and one to maintain it afterwards.     &lt;/li&gt;&lt;li&gt;Four, plus one senior analyst to manage the project, one     technical writer to correct the spelling and grammar of the one     who documented it, one light bulb librarian, a sales-force of     at least five to drum up enough users who want to turn the light     on, 274 users to burn out the new bulb, at which point we go     to tender for another light bulb change,...     &lt;/li&gt;&lt;li&gt;Five. Two to write the specification program, one to screw     it in, and two to explain why the project was late.     &lt;/li&gt;&lt;li&gt;Wait! Maybe the bulb isn't broken. Let's try it again.     &lt;/li&gt;&lt;li&gt;It's hard to say. Each time we separate the bulb into its     modules to do unit testing, it stops working.     &lt;/li&gt;&lt;li&gt;The change is 90% complete.     &lt;/li&gt;&lt;li&gt;We looked at the light fixture and decided there's no point     trying to maintain it. We're going to rewrite it from scratch.     Could you wait two months?     &lt;/li&gt;&lt;li&gt;Only one, but she's not available. She's the only programmer     we have who can get the &lt;insert&gt; software ready     to ship to customers, and that's higher priority, you know.     &lt;/insert&gt;&lt;/li&gt;&lt;li&gt;Of course, as everyone knows, just five years ago all it     took was a bunch of kids in a garage in Palo Alto to change a     light bulb.   &lt;/li&gt;&lt;/ol&gt;   &lt;/dt&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many &lt;em&gt;real&lt;/em&gt; programmers does it take to   change a light bulb?   &lt;/dt&gt;&lt;dd&gt;None. Real programmers prefer LEDs.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many C programmers does it take to change a light   bulb?   &lt;/dt&gt;&lt;dd&gt;None, they forgot to declare it first   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; long does it take a C programmer to screw in a   light bulb?   &lt;/dt&gt;&lt;dd&gt;24 hours - 3 minutes to put in the bulb, the rest of the   time to compile all the libraries.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many C++ programmers does it take to change a   light bulb?   &lt;/dt&gt;&lt;dd&gt;You're still thinking procedurally. A properly designed light   bulb object would inherit a change method from a generic light   bulb class, so all you'd have to do is send a light bulb change   message.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many people does it take to change an object-oriented   light bulb?   &lt;/dt&gt;&lt;dd&gt;Change it? Aw shucks, I was going to reuse it.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many FORTRAN programs does it take to change a   light bulb?   &lt;/dt&gt;&lt;dd&gt;1.00000000001   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many BASIC programmers does it take to screw in   a light bulb?   &lt;/dt&gt;&lt;dd&gt;10 push bulb upwards:twist bulb clockwise 20 goto 10   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many games machine programmers does it take to   screw in a light-bulb?   &lt;/dt&gt;&lt;dd&gt;One, but he needs the seal of approval from Nintendo before   he can put his light-bulb in &lt;em&gt;their&lt;/em&gt; socket.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Prolog programmers does it take to change   a light bulb?   &lt;/dt&gt;&lt;dd&gt;False.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Lisp programmers does it take to change a   light bulb?   &lt;ol&gt;&lt;li&gt;Hmmm, I'm not sure, better find out....&lt;br /&gt;   Hmmm, I'm not sure, better find out....&lt;br /&gt;   &lt;b&gt;Notes:&lt;/b&gt; LISP is a recursive programming language. One problem     LISP programmers have to contend with is infinite recursion.     (cf computer dictionary entry: &lt;b&gt;recursion&lt;/b&gt; - see recursion)     These lisp heads are usually research AI types and their standard     answer is as in the punchline. It could be improved:     &lt;/li&gt;&lt;li&gt;(((H)mmm,) (I'm ((not) sure, better))) (find (out))...   &lt;/li&gt;&lt;/ol&gt;   &lt;/dt&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many data base people does it take to change a   light bulb?   &lt;/dt&gt;&lt;dd&gt;Three: One to write the light bulb removal program, one to   write the light bulb insertion program, and one to act as a light   bulb administrator to make sure nobody else tries to change the   light bulb at the same time.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many tech writers does it take to change a light   bulb?   &lt;/dt&gt;&lt;dd&gt;None. "The user can work it out."   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many developers does it take to change a light   bulb?   &lt;/dt&gt;&lt;dd&gt;The light bulb works fine on the system in my office . .   .   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many field service engineers does it take to replace   a dead light bulb?   &lt;ol&gt;&lt;li&gt;Who can tell. FSE's are always in the dark.     &lt;/li&gt;&lt;li&gt;Two. One to hold the bulb and one to pound it in (etc)     &lt;/li&gt;&lt;li&gt;Well, the diagnostics all check out fine, so it's a software     problem.   &lt;/li&gt;&lt;/ol&gt;   &lt;/dt&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; long will it take?   &lt;/dt&gt;&lt;dd&gt;That's indeterminate. It depends on how many dead bulbs they've   brought with them.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;What&lt;/b&gt; if you have &lt;em&gt;two&lt;/em&gt; dead bulbs?   &lt;/dt&gt;&lt;dd&gt;They replace your fuse box.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many system administrators does it take to change   a light bulb?   &lt;/dt&gt;&lt;dd&gt;None, they just keep everyone out of the room.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many IBM engineers does it take to screw in a   light bulb?   &lt;/dt&gt;&lt;dd&gt;None. They just let Marketing explain that "Dead Bulb"   is a feature.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many IBM PC owners does it take to screw in a   light bulb?   &lt;ol&gt;&lt;li&gt;Only one, but he'll have to go out and buy the light bulb     adaptor card first, which is extra.     &lt;/li&gt;&lt;li&gt;Two. One to do it, but one to check the new bulb for viruses     first.   &lt;/li&gt;&lt;/ol&gt;   &lt;/dt&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many IBM tech writers does it take to screw in   a light bulb?   &lt;ol&gt;&lt;li&gt;100. Ten to do it, and 90 to write document number GC7500439-0001,     Multitasking Incandescent Source System Facility, of which 10%     of the pages state only "This page intentionally left blank",     and 20% of the definitions are of the form "A ...... consists     of sequences of non-blank characters separated by blanks".     &lt;/li&gt;&lt;li&gt;Just one, provided there's an engineer around to explain     how to do it.   &lt;/li&gt;&lt;/ol&gt;   &lt;/dt&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Microsoft engineers does it take to screw   in a light bulb?   &lt;/dt&gt;&lt;dd&gt;None. They just define darkness as an industry standard.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Microsoft employees does it take to change   a light bulb?   &lt;ol&gt;&lt;li&gt;One - but Bill Gates must inspect every single bulb and socket     before the operation is started.     &lt;/li&gt;&lt;li&gt;Eight: one to work the bulb and seven to make sure Microsoft     gets $2 for every light bulb ever changed anywhere in the world.   &lt;/li&gt;&lt;/ol&gt;   &lt;/dt&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many MS tech supports does it take to change a   light bulb?   &lt;/dt&gt;&lt;dd&gt;"The light bulb doesn't work? You must be using a non-standard   socket."   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many operating systems are required to screw in   a light bulb?   &lt;/dt&gt;&lt;dd&gt;Just one-Microsoft is making a special version of Windows   for it.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Windows programmers does it take to change   a light bulb?   &lt;/dt&gt;&lt;dd&gt;472. One to write WinGetLight BulbHandle, one to write WinQueryStatusLight   Bulb, one to write WinGetLightSwitchHandle...   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Windows users does it take to change a light   bulb?   &lt;/dt&gt;&lt;dd&gt;One, but she/he'll swear up and down that it was JUST as   easy for him as it would be for a Macintosh user.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Macintosh engineers does it take to screw   in a light bulb?   &lt;/dt&gt;&lt;dd&gt;None - it has to be done by a local authorized dealer.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Apple employees does it take to screw in   a light bulb?   &lt;/dt&gt;&lt;dd&gt;Seven. One to screw it in and six to design the tee-shirts.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Apple programmers does it take to change   a light bulb?   &lt;/dt&gt;&lt;dd&gt;Only one, but why bother? Your light socket will just be   obsolete in six months anyway.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Mac owners does it take to screw in a light   bulb?   &lt;ol&gt;&lt;li&gt;None - there's no documentation available, so you have to     wait until a third-party supplier comes out with a solution.     &lt;/li&gt;&lt;li&gt;Just one, but the new light bulbs aren't compatible with     the old sockets, so he has to buy a complete upgrade or a new     light.     &lt;/li&gt;&lt;li&gt;Two: One to ask the socket to eject the old bulb, and one     to insert the new one.     &lt;/li&gt;&lt;li&gt;Three: One to change the bulb, one to copyright the method     for changing the bulb, and one to call in the lawyers on anyone     who infringes on the "look and feel" of the bulb changing     method.     &lt;/li&gt;&lt;li&gt;Mac users don't screw, they just click the genital icon.   &lt;/li&gt;&lt;/ol&gt;   &lt;/dt&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Apple and IBM nuts does it take to change   a light bulb?   &lt;/dt&gt;&lt;dd&gt;An infinite number: nothing useful gets done while they're   arguing. Finally a disgusted generic computer user (who will   use any type that is in front of him) gets up and changes the   bulb, elbowing the participants aside. The size of the crowd   arguing seems to be a function of time, although whether or not   the function is exponential is not known.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Unix hacks does it take to change a light   bulb?   &lt;ol&gt;&lt;li&gt;As many as you want; they're all virtual, anyway.     &lt;/li&gt;&lt;li&gt;One, but first he has to determine the correct path.   &lt;/li&gt;&lt;/ol&gt;   &lt;/dt&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Unix programmers does it take to change a   light bulb?   &lt;/dt&gt;&lt;dd&gt;Only one, but if you forget to tell him "2&gt;"   he'll mash both the live and dead bulbs into the same socket   at once.   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Unix Support staff does it take to screw   in a light bulb?   &lt;/dt&gt;&lt;dd&gt;Read the man page!   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many Unix system vendors does it take to change   a light bulb?   &lt;/dt&gt;&lt;dd&gt;None. All of the light bulbs you have are 'standard variants'   and as such won't fit your particular implementation of the socket.   (However you do have the source code for your socket, so .....)   &lt;/dd&gt;&lt;dt&gt;&lt;b&gt;How&lt;/b&gt; many VMS heads does it take to change a light   bulb?   &lt;/dt&gt;&lt;dd&gt;All of them, and they will all scream at you in unison and   tell you that the only light bulb you can use is a 100-watt soft   white but you can use any 100-watt soft white as long as it's   manufactured by DEC. &lt;/dd&gt;&lt;/dl&gt;  &lt;p&gt;&lt;i&gt;Taken from the full collection of &lt;a href="http://www.crc.ricoh.com/%7Emarcush/lightbulb.html"&gt;Lightbulb Jokes&lt;/a&gt; of &lt;a href="http://www.crc.ricoh.com/%7Emarcush/marcush.html"&gt;marcush@crc.ricoh.com &lt;/a&gt;&lt;/i&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116303649859923457?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116303649859923457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116303649859923457' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116303649859923457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116303649859923457'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/11/lightbulb-jokes-computers.html' title='Lightbulb Jokes - Computers'/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116286386871785301</id><published>2006-11-06T17:43:00.000-08:00</published><updated>2006-11-06T17:44:28.730-08:00</updated><title type='text'>Tech Support Pricing</title><content type='html'>An excellent list of tech support pricing:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.contrib.andrew.cmu.edu/%7Emoose/sysadmin/pricelist.html"&gt;http://www.contrib.andrew.cmu.edu/~moose/sysadmin/pricelist.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116286386871785301?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116286386871785301/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116286386871785301' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116286386871785301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116286386871785301'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/11/tech-support-pricing.html' title='Tech Support Pricing'/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116269130107307173</id><published>2006-11-04T17:48:00.000-08:00</published><updated>2006-11-04T17:48:21.090-08:00</updated><title type='text'></title><content type='html'>From the MFC source:&lt;br /&gt;&lt;br /&gt;// according to the Win98 docs, this should be 1 &lt;br /&gt;&lt;br /&gt;// according to the WinNT docs, this should be 2 &lt;br /&gt;&lt;br /&gt;// they are both wrong!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116269130107307173?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116269130107307173/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116269130107307173' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116269130107307173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116269130107307173'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/11/from-mfc-source-according-to-win98.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116188713007520610</id><published>2006-10-26T11:25:00.000-07:00</published><updated>2006-10-26T11:25:30.096-07:00</updated><title type='text'>Engineers vs. Executives</title><content type='html'>&lt;h2&gt;Engineers          vs. Executives &lt;/h2&gt;     &lt;p&gt;         Theorem: Engineers and scientists will never make as much money as business          executives.&lt;br /&gt;        Proof Postulate 1: Knowledge is Power.&lt;br /&gt;        Postulate 2: Time is Money. &lt;/p&gt;       &lt;p&gt;As every engineer knows, Power = Work/Time.&lt;br /&gt;        Since Knowledge = Power, and Time = Money, we get;&lt;br /&gt;        Knowledge = Work/Money&lt;br /&gt;        Solving for money, we find &lt;/p&gt;       &lt;p&gt;Money = Work/Knowledge &lt;/p&gt;       &lt;p&gt;The greater your knowledge, the more work you have to do for your money.          Thus, as Knowledge approaches zero, Money approaches infinity regardless          of the Work done.&lt;br /&gt;       &lt;br /&gt;        Conclusion: The Less you Know, the More you Make.&lt;span class="titleale"&gt;*&lt;/span&gt;&lt;/p&gt;       &lt;p&gt; &lt;span class="titleale"&gt;*&lt;/span&gt; Thanks to various contributors for correcting          dodgy algebra that had ensured the humour of this gag tended toward zero.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116188713007520610?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116188713007520610/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116188713007520610' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116188713007520610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116188713007520610'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/10/engineers-vs-executives.html' title='Engineers vs. Executives'/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116184079142574022</id><published>2006-10-25T22:29:00.000-07:00</published><updated>2006-10-25T22:33:11.440-07:00</updated><title type='text'></title><content type='html'>Got to love mac, configurable BSODs:&lt;br /&gt;&lt;br /&gt;http://osxbook.com/book/bonus/chapter5/panic/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116184079142574022?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116184079142574022/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116184079142574022' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116184079142574022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116184079142574022'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/10/got-to-love-mac-configurable-bsods.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116174809980646744</id><published>2006-10-24T20:47:00.000-07:00</published><updated>2006-10-24T20:48:19.840-07:00</updated><title type='text'></title><content type='html'>&lt;p&gt; A Software Engineer, a Hardware Engineer and a Departmental Manager were on their way to a meeting. They were driving down a steep mountain road when suddenly the brakes on their car failed. The car careened almost out of control down the road, bouncing off the crash barriers, until it miraculously ground to a halt scraping along the mountainside. The car's occupants, shaken but unhurt, now had a problem: they were stuck halfway down a mountain in a car with no brakes. What were they to do?&lt;/p&gt;&lt;p&gt; "I know," said the Departmental Manager, "Let's have a meeting, propose a Vision, formulate a Mission Statement, define some Goals, and by a process of Continuous Improvement find a solution to the Critical Problems, and we can be on our way."&lt;/p&gt;&lt;p&gt; "No, no," said the Hardware Engineer, "That will take far too long, and besides, that method has never worked before. I've got my Swiss Army knife with me, and in no time at all I can strip down the car's braking system, isolate the fault, fix it, and we can be on our way."&lt;/p&gt; "Well," said the Software Engineer, "This thing is a freak'n maintenance nightmare - I'm going to rebuilt it from scratch - I'm TIRED of it, I don't care if the project manager says we're already late."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116174809980646744?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116174809980646744/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116174809980646744' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116174809980646744'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116174809980646744'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/10/software-engineer-hardware-engineer.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116165932845533544</id><published>2006-10-23T20:04:00.000-07:00</published><updated>2006-10-23T20:08:48.473-07:00</updated><title type='text'>Insufficient Memory</title><content type='html'>http://www.thinkgeek.com/tshirts/generic/65a0/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116165932845533544?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116165932845533544/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116165932845533544' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116165932845533544'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116165932845533544'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/10/insufficient-memory.html' title='Insufficient Memory'/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116067599454967092</id><published>2006-10-12T10:51:00.000-07:00</published><updated>2006-10-12T10:59:54.566-07:00</updated><title type='text'>Top 16 Programmer Pranks</title><content type='html'>&lt;a href="http://www.thatwasfunny.com/category/computer-humor/" title="View all posts in Computer humor" rel="category tag"&gt;&lt;/a&gt;&lt;p class="postmeta"&gt;      &lt;/p&gt;        &lt;div class="postentry"&gt;     &lt;p&gt;16 Using their e-mail address, post a request for penpals to the alt.prison.bodypiercing newsgroup.&lt;/p&gt; &lt;p&gt;15 Three words: electric mouse buzzer.&lt;/p&gt; &lt;p&gt;14 Assign them to the new “Heaven’s Gate” project.&lt;/p&gt; &lt;p&gt;13 “Look, Bill Gates!!  Ha!  Made ya look!”&lt;/p&gt; &lt;p&gt;12 Put them in the same room with a member of the opposite sex.&lt;/p&gt; &lt;p&gt;11 “Have you got Prince Albert in a LAN?”&lt;/p&gt; &lt;p&gt;10 Tell them that “everyone knows Star Trek transporter technology is bogus.”&lt;/p&gt; &lt;p&gt;9 10 GOTO 10&lt;/p&gt; &lt;p&gt;7 Swap their monitor for a large cardboard box with handpuppets. Watch the fur fly!&lt;/p&gt; &lt;p&gt;6 Announce that annual raises will be based on a subjective test of one’s ability to “schmooze the way the butt-kissers in Marketing do.”&lt;/p&gt; &lt;p&gt;8 Intercept their daily Top 10 List, then remove #8 and re-insert it between #5 and #6.&lt;/p&gt; &lt;p&gt;5 Pretend to “discover” a Fox TV Web site with a now-out-of-date win a weekend with Gillian Anderson of X-Files contest.&lt;/p&gt; &lt;p&gt;4 Every hour, on the hour, forward them a warning about the “Good Times” virus.&lt;/p&gt; &lt;p&gt;3 Call her up and ask if her program is running, and when she says “yes,” tell her “Well you better go catch it!”&lt;/p&gt; &lt;p&gt;2 Replace all the Jolt in the soda machine with Perrier and V8. and the Number 1 April Fool’s Day Prank to Pull on Programmers…&lt;/p&gt; &lt;p&gt;1 Special announcement: “Forget Java — Starting immediately, all coding will be done in COBOL.” &lt;/p&gt;       &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116067599454967092?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116067599454967092/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116067599454967092' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116067599454967092'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116067599454967092'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/10/top-16-programmer-pranks.html' title='Top 16 Programmer Pranks'/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116051743968387366</id><published>2006-10-10T14:51:00.000-07:00</published><updated>2006-10-10T14:57:19.686-07:00</updated><title type='text'>Computer Genesis</title><content type='html'>&lt;center&gt;&lt;h1&gt;Computer Genesis &lt;/h1&gt;&lt;/center&gt;&lt;p&gt;1. In the beginning GOD created the Bit and the Byte. And from those he created the Word.&lt;/p&gt;&lt;p&gt;2. And there were two Bytes in the Word; and nothing else existed. And God separated the One from the Zero; and he saw it was good.&lt;/p&gt;&lt;p&gt;3. And God said - Let the Data be; And so it happened. And God said - Let the Data go to their proper places. And he created floppy disks and hard disks and compact disks.&lt;/p&gt;&lt;p&gt;4. And God said - Let the computers be, so there would be a place to put floppy disks and hard disks and compact disks. Thus God created computers and called them hardware.&lt;/p&gt;&lt;p&gt;5. And there was no Software yet. But God created programs; small and big... And told them Go and multiply yourselves and fill all the Memory.&lt;/p&gt;&lt;p&gt;6. And God said -I will create the Programmer; And the Programmer will make new programs and govern over the computers and programs and Data.&lt;/p&gt;&lt;p&gt;7. And God created the Programmer; and put him at Data Centre; And God showed the Programmer the Catalogue Tree and said You can use all the volumes and subvolumes but DO NOT USE Windows.&lt;/p&gt;&lt;p&gt;8. And God said - It is not Good for the programmer to be alone. He took a bone from the Programmer's body and created a creature that would look up at the Programmer; and admire the Programmer; and love the things the Programmer does; And God called the creature: the User.&lt;/p&gt;&lt;p&gt;9. And the Programmer and the User were left under the naked DOS and it was Good.&lt;/p&gt;&lt;p&gt;10. But Bill was smarter than all the other creatures of God. And Bill said to the User - Did God really tell you not to run any programs ?&lt;/p&gt;&lt;p&gt;11. And the User answered - God told us that we can use every program and every piece of Data but told us not to run Windows or we will die.&lt;/p&gt;&lt;p&gt;12. And Bill said to the User - How can you talk about something you did not even try. The moment you run Windows you will become equal to God. You will be able to create anything you like by a simple click of your&lt;br /&gt;mouse.&lt;/p&gt;&lt;p&gt;13. And the User saw that the fruits of the Windows were nicer and easier to use. And the User saw that any knowledge was useless since Windows could replace it.&lt;/p&gt;&lt;p&gt;14. So the User installed the Windows on his computer; and said to the Programmer that it was good.&lt;/p&gt;&lt;p&gt;15. And the Programmer immediately started to look for new drivers. And God asked him - What are you looking for? And the Programmer answered - I am looking for new drivers because I can not find them in the DOS. And God said - Who told you that you need drivers? Did you run Windows? And the Programmer said - It was Bill who told us to !&lt;/p&gt;&lt;p&gt;16. And God said to Bill - Because of what you did you will be hated by all the creatures. And the User will always be unhappy with you. And you will always sell Windows.&lt;/p&gt;&lt;p&gt;17. And God said to the User - Because of what you did, the Windows will disappoint you and eat up all your Resources; and you will have to use lousy programs; and you will always rely on the Programmers help.&lt;/p&gt;&lt;p&gt;18. And God said to the Programmer - Because you listened to the User you will never be happy. All your programs will have errors and you will have to fix them and fix them to the end of time.&lt;/p&gt;&lt;p&gt;19. And God threw them out of the Data Centre and locked the door and secured it with a password.&lt;/p&gt;20. GENERAL PROTECTION FAULT&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116051743968387366?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116051743968387366/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116051743968387366' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116051743968387366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116051743968387366'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/10/computer-genesis.html' title='Computer Genesis'/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116046213258964825</id><published>2006-10-09T23:33:00.000-07:00</published><updated>2006-10-09T23:35:32.593-07:00</updated><title type='text'></title><content type='html'>&lt;p&gt;&lt;b&gt;&lt;span style="font-family:Courier New, Courier, mono;font-size:100%;"&gt;Why we need reviews.:-)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;       &lt;p&gt;&lt;span style="font-family:Courier New, Courier, mono;font-size:85%;"&gt;In an ancient monastery          in a far away place, a new monk arrived to join his brothers in copying          books and scrolls in the monastery's scriptorium. He was assigned as a          rubricate on copies of books that had already been copied by hand. &lt;/span&gt;&lt;/p&gt;       &lt;p&gt;&lt;span style="font-family:Courier New, Courier, mono;font-size:85%;"&gt;One day, while working          on the monks' Book of Vows, he asks old Father Florian, the Armarius of          the Scriptorium, 'Does not the copying by hand of other copies allow for          chances of error? How do we know we are not copying the mistakes of someone          else? Are they ever checked against the original?' &lt;/span&gt;&lt;/p&gt;       &lt;p&gt;&lt;span style="font-family:Courier New, Courier, mono;font-size:85%;"&gt;Fr. Florian was set          back a bit by the obvious logical observation of this youthful monk. 'A          very good point, my son. I will take one of the latest copies of the Book          of Vows down to the vault and compare it against the original.' Fr. Florian          went down to the secured vault and began his verification. &lt;/span&gt;&lt;/p&gt;       &lt;p&gt;&lt;span style="font-family:Courier New, Courier, mono;font-size:85%;"&gt;A day passed and the          monks began to worry and went down looking for the old priest. They were          sure something may have happened. As they approached the vault they heard          sobbing and wailing... they opened the door and found Fr. Florian crying          over the new copy and the original, ancient Book of Vows, both opened          before him on the table. It was obvious to all that the poor man had been          crying his old heart out for a long time. &lt;/span&gt;&lt;/p&gt;       &lt;p&gt;&lt;span style="font-family:Courier New, Courier, mono;font-size:85%;"&gt;'What is the problem,          Reverend Father???' asked one of the monks. &lt;/span&gt;&lt;/p&gt;       &lt;p&gt;&lt;span style="font-family:Courier New, Courier, mono;font-size:85%;"&gt;'Oh, my Lord,' sobbed          the priest, 'The word is 'CELEBRATE'!!!' &lt;/span&gt;&lt;/p&gt;       &lt;span style="font-family:Courier New, Courier, mono;font-size:85%;"&gt;And this is why we need          reviews.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116046213258964825?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116046213258964825/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116046213258964825' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116046213258964825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116046213258964825'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/10/why-we-need-reviews.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33883800.post-116046194405513333</id><published>2006-10-09T23:32:00.000-07:00</published><updated>2006-10-09T23:32:24.056-07:00</updated><title type='text'></title><content type='html'>&lt;p&gt;Dear Valued Employee:&lt;/p&gt;  &lt;p&gt;Re: Vacation Pay&lt;/p&gt;  &lt;p&gt;Our records indicate that you have not used any vacation&lt;br /&gt;time over the past 100 year(s). As I'm sure you are aware,&lt;br /&gt;employees are granted 3 weeks of paid leave per year or pay&lt;br /&gt;in lieu of time off. One additional week is granted for&lt;br /&gt;every 5 years of service.&lt;/p&gt;  &lt;p&gt;Please either take 9,400 days off work or notify our office&lt;br /&gt;and your next pay cheque will reflect payment of&lt;br /&gt;$8,277,432.22 which will include all pay and interest for&lt;br /&gt;the past 1,200 months.&lt;/p&gt;  &lt;p&gt;Sincerely,&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;i&gt;Automated Payroll Processing&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33883800-116046194405513333?l=alfonsothecodewarrior.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alfonsothecodewarrior.blogspot.com/feeds/116046194405513333/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=33883800&amp;postID=116046194405513333' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116046194405513333'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33883800/posts/default/116046194405513333'/><link rel='alternate' type='text/html' href='http://alfonsothecodewarrior.blogspot.com/2006/10/dear-valued-employee-re-vacation-pay.html' title=''/><author><name>Alfonso</name><uri>http://www.blogger.com/profile/14734452706379996877</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04704737040074924151'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry></feed>