Friday, September 29, 2006

Software engineering humor

Courtesy of Rachna. I liked the quiz best.


*Car Trouble*

A Software Engineer, a Hardware Engineer and a Departmental Manager were on their way to a meeting in Switzerland. 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?

"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."

"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."

"Well," said the Software Engineer, "Before we do anything, I think we should push the car back up the road and see if it happens again."


-------------------

*Quiz*


*1) What quality do you value most in
your partner? *

a) A sense of humor

b) Emotional maturity.

c) High bandwidth.

*2) When you get home at the end of the
day, you like to:*

a) Turn on the Silicon Valley Business report, and eat dinner.

b) Hook up to your ISP, and check out the hit count on your web page.

c) Recharge your cell phone, laptop, and wireless modem, change
batteries on
your pager, and resynchronize your Palm Pilot and home computer.


*3) Your ideal partner is:
*

a) Interesting and attractive.

b) Emotionally mature and understanding.

c) Extensible and polymorphic.

*4) In spiritually difficult times, you
often turn to: *

a) Dilbert

b) Kernighan and Ritchie

c) comp.lang.c++

*5) If go over to your partner's place
and think it's a mess, you would: *

a) Complain to him/her, and tell them to tidy up.

b) Call a maid service.

c) Make clean

*6) What kind of car would you like to
buy next, and why? *

a) A BMW, because people will see that I am rich and successful.

b) A Jeep, because it's youthful, rugged, and won't break down.

c) A Honda because the engine control computer can be hacked for
more horsepower.


*7) Name the 4 essential food groups:
*

a) Fruit, vegetables, meat, dairy.

b) Coffee, chocolate, takeout, ice cream.

c) rec.food.cooking, rec.food.veg, ba.food, alt.food.chocolate


*8) You like to travel with your partner
because: *

a) You share new experiences together.

b) You learn about each other in different situations.

c) You get more use out of your wireless modem.

*9) You think a relationship is ready
for a permanent commitment because: *

a) You've successfully struggled through several years of good and
bad times.


b) You're already living together, so you might as well tie the knot.

c) You finally got your local network configured just right.

*10) If you and your partner got married,
you would want to: *

a) Keep your last name.

b) Change your last name.

c) Combine your names with a hyphen.

d) Combine your names with an underscore.

*11) You and your partner think it's
time to have children when: *

a) Your stock options are vested.

b) You've agreed on the requirements and design.

c) You've come up with a good naming convention.

d) You really understand the use of multiple inheritance.

------------------------

*Airplane*

At a recent real-time Java conference, the participants were
given an awkward question to answer:


"If you had just boarded an airliner and discovered that
your team of programmers had been responsible for the flight
control software,
how many of you would disembark immediately?"


Among the forest of raised hands only one man sat motionless.
When asked what he would do, he replied that he would be quite content to stay
aboard. With his team's software, he said, the plane was unlikely to even taxi
as far as the runway, let alone take off.


---------------------------

*Software Upgrades*

1.0:
Also known as "one point uh-oh", or "barely out of beta". We had
to release because the lab guys had reached a point of exhaustion
and the marketing guys were in a cold sweat of terror. We're
praying that you'll find it more functional than, say, a computer
virus and that its operation has some resemblance to that
specified in the marketing copy.

1.1:
We fixed all the killer bugs ...

1.2:
Uh, we introduced a few new bugs fixing the killer bugs and so we
had to fix them, too.

2.0:
We did the product we really wanted to do to begin with. Mind you,
it's really not what the customer needs yet, but we're working on it.

2.1:
Well, not surprisingly, we broke some things in making major
changes so we had to fix them. But we did a really good job of
testing this time, so we don't think we introduced any new bugs
while we were fixing these bugs.

2.2:
Uh, sorry, one slipped through. One lousy typo error and you won't
believe how much trouble it caused!

2.3:
Some jerk found a deep-seated bug that's been there since 1.0 and
wouldn't stop nagging until we fixed it!!

3.0:
Hey, we finally think we've got it right! Most of the customers
are really happy with this.

3.1:
Of course, we did break a few little things.

4.0:
More features. It's doubled in size now, by the way, and you'll
need to get more memory and a faster processor ...

4.1:
Just one or two bugs this time... Honest!

5.0:
We really need to go on to a new product, but we have an installed
base out there to protect. We're cutting the staffing after this.

6.0:
We had to fix a few things we broke in 5.0. Not very many, but
it's been so long since we looked at this thing we might as well
call it a major upgrade. Oh, yeah, we added a few flashy cosmetic
features so we could justify the major upgrade number.

6.1:
Since I'm leaving the company and I'm the last guy left in the lab
who works on the product, I wanted to make sure that all the
changes I've made are incorporated before I go. I added some cute
demos, too, since I was getting pretty bored back here in my dark
little corner (I kept complaining about the lighting but they
wouldn't do anything). They're talking about obsolescence planning
but they'll try to keep selling it for as long as there's a buck
or two to be made. I'm leaving the bits in as good a shape as I
can in case somebody has to tweak them, but it'll be sheer luck if
no one loses them.

No comments: