homeGeek CultureWebstoreeCards!Forums!Joy of Tech!AY2K!webcam

The Geek Culture Forums


Post New Topic  New Poll  Post A Reply
my profile | directory login | | search | faq | forum home
  next oldest topic   next newest topic
» The Geek Culture Forums   » News, Reviews, Views!   » Rants, Raves, Rumors!   » Laws of Software (Page 1)

 - UBBFriend: Email this page to someone!  
This topic comprises 2 pages: 1  2 
 
Author Topic: Laws of Software
spungo
BlabberMouth, a Blabber Odyssey
Member # 1089

Member Rated:
4
Icon 1 posted April 27, 2005 05:44      Profile for spungo     Send New Private Message       Edit/Delete Post   Reply With Quote 
For my own pathetic amusement I've been trying to compile a Dilbertish real-world summary of what coding is all about...

1. No genuinely clever and effective solution you propose will ever be understood by your superiors.

2. Truly obscure, intermittant bugs will bide their time until, for once, you neglect to completely re-test the package (because that edit you made was entirely trivial).

3. Never trust a scientist with a program.

4. Never trust a programmer with a screwdriver.

5. Nature abhors a properly-functioning system: she will try her damndest to get one of her minions (usually in the guise of a colleague) to quietly introduce a new 'feature' without your knowledge.

6. All bugs are equal. Some bugs are more equal than others. The most evil variety are always the most obvious ones - the 'woods and trees' type - and these will only occur while your employer is physically on your shoulder, demanding to know why the thing doesn't work.

7. Your superior will always demand roughly ten times more commenting from you than he/she ever writes.

8. All comments your superior includes in the code will be irrelevant.

9. The task of documenting a project will always be allocated to someone who knows nothing about it and had no hand in writing it. During the busiest spells at work, this will be you.

10. Your documentation will always be criticised by someone who is barely literate.

11. Failed back-ups only occur when there's been a major disk crash the same day.

12. There is no such thing as platform independence.

edit: 13. The client is always the last person to know what it is they want.


... care to add any more? [Wink]

--------------------
Shameless plug. (Please forgive me.)

Posts: 6529 | From: Noba Scoba | Registered: Jan 2002  |  IP: Logged
Koboldskind
Geek-in-Training
Member # 3849

Member Rated:
5
Icon 2 posted April 27, 2005 06:24      Profile for Koboldskind     Send New Private Message       Edit/Delete Post   Reply With Quote 
13. Whenever you manage to include all requirements into a beautiful, efficient solution, a new requirement will be added that makes your work collapse like a card-house

14. Only when you have spent 3 weeks coding a solution you will notice the requirements you were given contradict themselves in a very subtle way and you will have to spend hours in pointless meeting trying to make them not contradict

15. What hardware is 'appropriately fast' for the job is always determined by some jerk who NEVER has to work with it.

... adding more as I experience them

--------------------
In the Beginning, there was nothing, which exploded ...

Posts: 36 | From: Germany | Registered: Apr 2005  |  IP: Logged
spungo
BlabberMouth, a Blabber Odyssey
Member # 1089

Member Rated:
4
Icon 1 posted April 27, 2005 06:28      Profile for spungo     Send New Private Message       Edit/Delete Post   Reply With Quote 
quote:
Originally posted by Koboldskind:
15. What hardware is 'appropriately fast' for the job is always determined by some jerk who NEVER has to work with it.

I like this one! [Big Grin] There's a variation of this: everyone involved with administration will have better hardware than you.

16. The most critical part of any project you inherit will also be the most badly written.

--------------------
Shameless plug. (Please forgive me.)

Posts: 6529 | From: Noba Scoba | Registered: Jan 2002  |  IP: Logged
Koboldskind
Geek-in-Training
Member # 3849

Member Rated:
5
Icon 1 posted April 27, 2005 06:32      Profile for Koboldskind     Send New Private Message       Edit/Delete Post   Reply With Quote 
[QUOTE There's a variation of this: everyone involved with administration will have better hardware than you. [/QB][/QUOTE]
Are you working at my office???
Another variation is "Why do you say it's slow, it's running word without problems" ... and this is an actual quote ... well, translated, but still actual [ohwell]

--------------------
In the Beginning, there was nothing, which exploded ...

Posts: 36 | From: Germany | Registered: Apr 2005  |  IP: Logged
spungo
BlabberMouth, a Blabber Odyssey
Member # 1089

Member Rated:
4
Icon 1 posted April 27, 2005 06:39      Profile for spungo     Send New Private Message       Edit/Delete Post   Reply With Quote 
quote:
Originally posted by Koboldskind:
[QUOTE There's a variation of this: everyone involved with administration will have better hardware than you.

Are you working at my office???
Another variation is "Why do you say it's slow, it's running word without problems" ... and this is an actual quote ... well, translated, but still actual [ohwell] [/QB][/QUOTE]

I had a discussion with my line manager in my last job:

asshole: "Why can't you edit the Java part on your Sun machine?"
me: "'Cos it's a Sparc 20."
asshole: "But Sun make Java."
me: "It has 64mb of RAM."
asshole: "It's running Solaris 8, isn't it?."
me: "I tried compiling it three days ago."
asshole: "Does it look the same?"
me: "Come back next month and I might have an answer."

--------------------
Shameless plug. (Please forgive me.)

Posts: 6529 | From: Noba Scoba | Registered: Jan 2002  |  IP: Logged
Koboldskind
Geek-in-Training
Member # 3849

Member Rated:
5
Icon 1 posted April 27, 2005 06:43      Profile for Koboldskind     Send New Private Message       Edit/Delete Post   Reply With Quote 
Yep, sounds like we're working in the same place
"A P-90 is sufficient to run CVS for a project with 40 developers" ... yeah, if we all check in/out after one another

--------------------
In the Beginning, there was nothing, which exploded ...

Posts: 36 | From: Germany | Registered: Apr 2005  |  IP: Logged
spungo
BlabberMouth, a Blabber Odyssey
Member # 1089

Member Rated:
4
Icon 1 posted April 27, 2005 06:56      Profile for spungo     Send New Private Message       Edit/Delete Post   Reply With Quote 
17. Nobody understands sendmail config files. Keep away from anyone who says they do: they are not the sort of people to be trusted with sharp objects.

18. Anyone who prefers awk to perl is clinically insane.

19. People who insert tabs into their source files (excluding Makefiles) are agents of Satan.

--------------------
Shameless plug. (Please forgive me.)

Posts: 6529 | From: Noba Scoba | Registered: Jan 2002  |  IP: Logged
Koboldskind
Geek-in-Training
Member # 3849

Member Rated:
5
Icon 1 posted April 27, 2005 07:01      Profile for Koboldskind     Send New Private Message       Edit/Delete Post   Reply With Quote 
19. Never trust anyone who writes software using only RegExp
20. Everyone who describes an SQL script of more that 200 lines with subquerys, connect bys and suchlike as 'easy and straightforward' should immediately be sent to see a doctor

--------------------
In the Beginning, there was nothing, which exploded ...

Posts: 36 | From: Germany | Registered: Apr 2005  |  IP: Logged
csk

Member # 1941

Member Rated:
5
Icon 1 posted April 27, 2005 07:04      Profile for csk     Send New Private Message       Edit/Delete Post   Reply With Quote 
quote:
Originally posted by spungo:
19. People who insert tabs into their source files (excluding Makefiles) are agents of Satan.

Dem's fighting words! Tabs enable different developers to use different tab sizes in their editors and everyone to still all get along.

--------------------
6 weeks to go!

Posts: 4455 | From: Sydney, Australia | Registered: Jan 2003  |  IP: Logged
The Famous Druid

Gold Hearted SuperFan!
Member # 1769

Member Rated:
4
Icon 1 posted April 27, 2005 07:07      Profile for The Famous Druid     Send New Private Message       Edit/Delete Post   Reply With Quote 
quote:
Originally posted by spungo:

18. Anyone who prefers awk to perl is clinically insane.

That would be me then [Wink]

quote:
Originally posted by Koboldskind:

15. What hardware is 'appropriately fast' for the job is always determined by some jerk who NEVER has to work with it.

True story:

me: we need to get some more disks, the ones we've got are nearly full.

phb: (looks at page of disk usage stats) We've got 50 disk packs, and they're all about 90-95% full, so that means we've got 4 or 5 disks worth of empty space, we don't need to buy any more.

--------------------
If you watch 'The History Of NASA' backwards, it's about a space agency that has no manned spaceflight capability, then does low-orbit flights, then lands on the Moon.

Posts: 10680 | From: Melbourne, Australia | Registered: Oct 2002  |  IP: Logged
Alephcat
Alpha Geek
Member # 2617

Member Rated:
3
Icon 1 posted April 27, 2005 07:19      Profile for Alephcat   Author's Homepage     Send New Private Message       Edit/Delete Post   Reply With Quote 
quote:
Originally posted by spungo:
1. No genuinely clever and effective solution you propose will ever be understood by your superiors.

and, if you manage to get it implemented (despite their lack of understanding) they will get someone else who does not undrstand it to implement it badly and with half the required resources

--------------------
"You have the right to search in silence. If you give up the right to search in silence, anything you say can and will be modded down in a court of public opinion."

Posts: 300 | From: Chester | Registered: Mar 2004  |  IP: Logged
spungo
BlabberMouth, a Blabber Odyssey
Member # 1089

Member Rated:
4
Icon 1 posted April 27, 2005 07:20      Profile for spungo     Send New Private Message       Edit/Delete Post   Reply With Quote 
21. With any sensible macro definition you may come up with, there will always be some git complaining that you're trying to 're-write the language.'

22. No element of advice you give to someone will ever go uncriticised.

23. The webserver tweak that would help you the most will be the one your sysadmin will irrationally fear the most.

edit:

24. Every critical pattern-matching construct you write in perl will have an unforeseen limitation. (Initially, at least.)

--------------------
Shameless plug. (Please forgive me.)

Posts: 6529 | From: Noba Scoba | Registered: Jan 2002  |  IP: Logged
spungo
BlabberMouth, a Blabber Odyssey
Member # 1089

Member Rated:
4
Icon 1 posted April 27, 2005 07:31      Profile for spungo     Send New Private Message       Edit/Delete Post   Reply With Quote 
quote:
Originally posted by csk:
quote:
Originally posted by spungo:
19. People who insert tabs into their source files (excluding Makefiles) are agents of Satan.

Dem's fighting words! Tabs enable different developers to use different tab sizes in their editors and everyone to still all get along.
Fair enough. I guess that's just taste. I was trained on a two-space indenting strategy - ain't got no time fer them pesky tabs.

--------------------
Shameless plug. (Please forgive me.)

Posts: 6529 | From: Noba Scoba | Registered: Jan 2002  |  IP: Logged
CommanderShroom
BlabberMouth, a Blabber Odyssey
Member # 2097

Member Rated:
4
Icon 1 posted April 27, 2005 08:11      Profile for CommanderShroom     Send New Private Message       Edit/Delete Post   Reply With Quote 
This is just a general observation. Be it hardware, software, network, etc.

25. The biggest change to the written requirements will happen after the system goes into production.

--------------------
Does he know our big secret?
Has one of us confessed?
'Bout the wires circuits and motors
Buried in our chest

Posts: 2465 | From: Utarrrrggggghhh!!!!!!!! | Registered: Mar 2003  |  IP: Logged
GameMaster
BlabberMouth, a Blabber Odyssey
Member # 1173

Member Rated:
4
Icon 1 posted April 27, 2005 08:27      Profile for GameMaster   Author's Homepage     Send New Private Message       Edit/Delete Post   Reply With Quote 
26. Dispite what you tell them is a reasonable ETA, marketing will always say "It'll be out in time for next christmas."

--------------------
My Site

Posts: 3038 | From: State of insanity | Registered: Mar 2002  |  IP: Logged
Koboldskind
Geek-in-Training
Member # 3849

Member Rated:
5
Icon 2 posted April 27, 2005 10:27      Profile for Koboldskind     Send New Private Message       Edit/Delete Post   Reply With Quote 
27. If a potential customer asks a sales drone if your software can summon demons/cure cancer/compute the last digit of pi/... the answer will always be "We're implementing that for the next version, which is due in two weeks"

--------------------
In the Beginning, there was nothing, which exploded ...

Posts: 36 | From: Germany | Registered: Apr 2005  |  IP: Logged
quantumfluff
BlabberMouth, a Blabber Odyssey
Member # 450

Member Rated:
5
Icon 1 posted April 27, 2005 13:38      Profile for quantumfluff     Send New Private Message       Edit/Delete Post   Reply With Quote 
Two points: Some rules refer to "your superior". Those can't be right. They may be higher ranking, but are rarely my superior.

re: #17. I used to *really* understand sendmail configuration files, so the first part is untrue by example. The second part of the rule still holds - I probably should not be trusted with sharp objects.

#28: At least one person on your team will never write checkin comments. You'll only find this out after they have made thousands of changes.

Posts: 2902 | From: 5 to 15 meters above sea level | Registered: Jun 2000  |  IP: Logged
Koboldskind
Geek-in-Training
Member # 3849

Member Rated:
5
Icon 1 posted April 27, 2005 14:05      Profile for Koboldskind     Send New Private Message       Edit/Delete Post   Reply With Quote 
#29: At least one developer on your team will not use your agreed-upon code style and will go to any length to fool the automativ formatting tools

For example, putting weird comments in the middle of the line so the formatter gets confused and leaves it alone.
Or repeating the same if statement multiple times with ONE command in each body, so he doesn't have to put curly braces, since curly braces enforce a linebreak ...
I swear he must spend more time formatting his code than actually writing it

--------------------
In the Beginning, there was nothing, which exploded ...

Posts: 36 | From: Germany | Registered: Apr 2005  |  IP: Logged
magefile
Highlie
Member # 2918

Member Rated:
5
Icon 1 posted April 27, 2005 14:41      Profile for magefile     Send New Private Message       Edit/Delete Post   Reply With Quote 
This has happened to me.

30. Any attempt to make the website even remotely (heh, heh) secure will trigger a response of, "we're not the government, dangit, why do we need to be secure?"

31. Any time the creative people put a new video on the site, causing a near-DOS, they will forget to tell you - and you will stay after work for at least 6 hours before you figure it out. They will then say, "but we have a T-1 line!" as if that makes bandwidth infinite.

Posts: 743 | From: Massachusetts | Registered: Aug 2004  |  IP: Logged
Xanthine

Solid Nitrozanium SuperFan!
Member # 736

Member Rated:
5
Icon 1 posted April 27, 2005 21:36      Profile for Xanthine     Send New Private Message       Edit/Delete Post   Reply With Quote 
quote:
Originally posted by spungo:

16. The most critical part of any project you inherit will also be the most badly written.

That can be extended beyond programming...

--------------------
And it's one, two, three / On the wrong side of the lee / What were you meant for? / What were you meant for?
- The Decemberists

Posts: 7670 | From: the lab | Registered: Mar 2001  |  IP: Logged
Rimaraf
Newbie Larva
Member # 2954

Rate Member
Icon 1 posted April 28, 2005 04:07      Profile for Rimaraf   Author's Homepage     Send New Private Message       Edit/Delete Post   Reply With Quote 
A couple that spring to mind based on experience:

32. 99.9% of software is never finished.

33. The amount of general PHB chat associated with a code change is inversely proportional to the size of the code change.

34. If any single optimisation makes a routine run two or more times faster, then you've broken the code.

--------------------
blog

Posts: 9 | From: UK | Registered: Sep 2004  |  IP: Logged
The Famous Druid

Gold Hearted SuperFan!
Member # 1769

Member Rated:
4
Icon 1 posted April 28, 2005 05:36      Profile for The Famous Druid     Send New Private Message       Edit/Delete Post   Reply With Quote 
35. 'Optimisations' to databases almost invariably make them run slower.

--------------------
If you watch 'The History Of NASA' backwards, it's about a space agency that has no manned spaceflight capability, then does low-orbit flights, then lands on the Moon.

Posts: 10680 | From: Melbourne, Australia | Registered: Oct 2002  |  IP: Logged
drunkennewfiemidget
BlabberMouth, a Blabber Odyssey
Member # 2814

Member Rated:
4
Icon 1 posted April 28, 2005 06:09      Profile for drunkennewfiemidget     Send New Private Message       Edit/Delete Post   Reply With Quote 
quote:
Originally posted by spungo:
quote:
Originally posted by csk:
quote:
Originally posted by spungo:
19. People who insert tabs into their source files (excluding Makefiles) are agents of Satan.

Dem's fighting words! Tabs enable different developers to use different tab sizes in their editors and everyone to still all get along.
Fair enough. I guess that's just taste. I was trained on a two-space indenting strategy - ain't got no time fer them pesky tabs.
Every time I inherit code with two space tabs instead of proper tabs, I want to find and gut the writer. It's so UGLY and so impossibly to read and make sense of. You use tabs, and like csk says, anyone can make their tabs as many spaces as they like. I prefer my tabs to be EIGHT characters so indentation is nice and blatant.
Posts: 4897 | From: Cambridge, ON, Canada | Registered: Jun 2004  |  IP: Logged
spungo
BlabberMouth, a Blabber Odyssey
Member # 1089

Member Rated:
4
Icon 1 posted April 28, 2005 06:45      Profile for spungo     Send New Private Message       Edit/Delete Post   Reply With Quote 
Potato, patahto. Next you'll be telling me which end of the egg to crack. But on the positive side - I'm right and you're wrong. [Razz]

--------------------
Shameless plug. (Please forgive me.)

Posts: 6529 | From: Noba Scoba | Registered: Jan 2002  |  IP: Logged
NOP
Geek Apprentice
Member # 3842

Rate Member
Icon 1 posted April 28, 2005 07:36      Profile for NOP     Send New Private Message       Edit/Delete Post   Reply With Quote 
quote:
Originally posted by spungo:
Next you'll be telling me which end of the egg to crack.

_Always_ the big end. Big-edians rule, little-edians suck.
Posts: 46 | From: TL050227 | Registered: Apr 2005  |  IP: Logged


All times are Eastern Time
This topic comprises 2 pages: 1  2 
 
Post New Topic  New Poll  Post A Reply Close Topic    Move Topic    Delete Topic next oldest topic   next newest topic
 - Printer-friendly view of this topic
Hop To:

Contact Us | Geek Culture Home Page

2015 Geek Culture

Powered by Infopop Corporation
UBB.classicTM 6.4.0



homeGeek CultureWebstoreeCards!Forums!Joy of Tech!AY2K!webcam