Tuesday, August 21, 2018
8:01:55 PM
Users online: 0   You are here >> Home > Programming

Forums | Programming Forums search
Forum FAQ
  1 | 2 Next Page 
Electrical Engineering vs. Software Engineering
2/11/04 10:15:46 PM

Once upon a time, in a kingdom not far from here, a king summoned two of his
advisors for a test. He showed them both a shiny metal box with two slots in
the top, a control knob, and a lever. "What do you think this is?"

One advisor, an electrical engineer, answered first. "It is a toaster," he said. The
king asked, "How would you design an embedded computer for it?" The engineer
replied, "Using a four-bit microcontroller, I would write a simple program
that reads the darkness knob and quantizes its position to one of 16 shades
of darkness, from snow white to coal black. The program would use that
darkness level as the index to a 16-element table of initial timer values.
Then it would turn on the heating elements and start the timer with the
initial value selected from the table. At the end of the time delay, it
would turn off the heat and pop up the toast. Come back next week, and I'll
show you a working prototype."

The second advisor, a software engineer, immediately recognized the danger
of such short-sighted thinking. He said, "Toasters don't just turn bread
into toast, they are also used to warm frozen waffles. What you see before
you is really a breakfast food cooker. As the subjects of your kingdom
become more sophisticated, they will demand more capabilities. They will
need a breakfast food cooker that can also cook sausage, fry bacon, and make
scrambled eggs. A toaster that only makes toast will soon be obsolete. If we
don't look to the future, we will have to completely redesign the toaster in
just a few years."

"With this in mind, we can formulate a more intelligent solution to the
problem. First, create a class of breakfast foods. Specialize this class
into subclasses: grains, pork, and poultry. The specialization process
should be repeated with grains divided into toast, muffins, pancakes, and
waffles; pork divided into sausage, links, and bacon; and poultry divided
into scrambled eggs, hard- boiled eggs, poached eggs, fried eggs, and
various omelet classes."

"The ham and cheese omelet class is worth special attention because it must
inherit characteristics from the pork, dairy, and poultry classes. Thus, we
see that the problem cannot be properly solved without multiple inheritance.
At run time, the program must create the proper object and send a message to
the object that says, 'Cook yourself.' The semantics of this message depend,
of course, on the kind of object, so they have a different meaning to a
piece of toast than to scrambled eggs."

"Reviewing the process so far, we see that the analysis phase has revealed
that the primary requirement is to cook any kind of breakfast food. In the
design phase, we have discovered some derived requirements. Specifically, we
need an object-oriented language with multiple inheritance. Of course, users
don't want the eggs to get cold while the bacon is frying, so concurrent
processing is required, too."

"We must not forget the user interface. The lever that lowers the food lacks
versatility, and the darkness knob is confusing. Users won't buy the product
unless it has a user-friendly, graphical interface. When the breakfast
cooker is plugged in, users should see a cowboy boot on the screen. Users
click on it, and the message 'Booting UNIX v.8.3' appears on the screen.
(UNIX 8.3 should be out by the time the product gets to the market.) Users
can pull down a menu and click on the foods they want to cook."

"Having made the wise decision of specifying the software first in the
design phase, all that remains is to pick an adequate hardware platform for
the implementation phase. An Intel 80386 with 8MB of memory, a 30MB hard
disk, and a VGA monitor should be sufficient. If you select a multitasking,
object oriented language that supports multiple inheritance and has a
built-in GUI, writing the program will be a snap. (Imagine the difficulty we
would have had if we had foolishly allowed a hardware-first design strategy
to lock us into a four-bit microcontroller!)."

The king wisely had the software engineer beheaded, and they all lived
happily ever after.

By perseverance the snail reached the ark.


f reespace!

2/11/04 11:02:34 PM


Go Software!!!!!

Good one though...

"The formulation of a problem is often more important than its solution"
-- A. Einstein

3/11/04 6:16:28 AM

Yeah, that sounds about right :)
Reminds me of this. People have probably seen it but here goes anyway...

Engineers Explained
People who work in the fields of science and technology are not like other people. This can be frustrating to the non-technical people who have to deal with them. The secret to coping with technology-oriented people is to understand their motivations. This chapter will teach you everything you need to know. I learned their customs and mannerisms by observing them, much the way Jane Goodall learned about the great apes, but without the hassle of grooming.

Engineering is so trendy these days that everybody wants to be one. The word "engineer" is greatly overused. If there's somebody in your life who you think is trying to pass as an engineer, give him this test to discern the truth.


You walk into a room and notice that a picture is hanging crooked.

1. Straighten it.
2. Ignore it.
3. Buy a CAD system and spend the next six months designing a solar-powered, self-adjusting picture frame while often stating aloud your belief that the inventor of the nail was a total moron.

The correct answer is "C" but partial credit can be given to anybody who writes "It depends" in the margin of the test or simply blames the whole stupid thing on "Marketing."


Engineers have different objectives when it comes to social interaction. "Normal" people expect to accomplish several unrealistic things from social interaction:
1. Stimulating and thought-provoking conversation
2. Important social contacts
3. A feeling of connectedness with other humans
In contrast to "normal" people, engineers have rational objectives for social interactions:
4. Get it over with as soon as possible
5. Avoid getting invited to something unpleasant.
6. Demonstrate mental superiority and mastery of all subjects.

To the engineer, all matter in the universe can be placed into one of two categories: (1) things that need to be fixed, and (2) things that will need to be fixed after you've had a few minutes to play with them.
Engineers like to solve problems. If there are no problems handily available, they will create their own problems. Normal people don't understand this concept; they believe that if it ain't broke, don't fix it.
Engineers believe that if it ain't broke, it doesn't have enough features yet.

No engineer looks at a television remote control without wondering what it would take to turn it into a stun gun.

No engineer can take a shower without wondering if some sort of Teflon coating would make showering unnecessary.feature-poor toys.


Clothes are the lowest priority for an engineer, assuming the basic thresholds for temperature and decency have been satisfied. If no appendages are freezing or sticking together, and if no genitalia or mammary glands are swinging around in plain view, then the objective of clothing has been met. Anything else is a waste.


Engineers love all of the "Star Trek" television shows and movies. It's a small wonder, since the engineers on the starship Enterprise are portrayed as heroes, occasionally even having sex with aliens. This is much more glamorous than the real life of an engineer, which consists of hiding from the universe and having sex without the participation of other life forms.


Dating is never easy for engineers. A normal person will employ various indirect and duplicitous methods to create a false impression of attractiveness. Engineers are incapable of placing appearance above function.

Fortunately, engineers have an ace in the hole. They are widely recognized as superior marriage material: intelligent, dependable, employed, honest, and handy around the house. While it's true that many normal people would prefer not to date an engineer, most normal people harbor an intense desire to mate with them, thus producing engineer-like children who will have high-paying jobs long before losing their virginity.

Male engineers reach their peak of sexual attractiveness later than normal men, becoming irresistible erotic dynamos in their mid thirties to late forties. Just look at these examples of sexually irresistible men in technical professions:
1. Bill Gates.
2. MacGyver.
3. Damien Harding
4. Nick Welsh
5. Matt Nicol (even though he is not an engineer - Matt shares the interest in Star Trek . . . and the age/attraction matrix)
Female engineers become irresistible at the age of consent and remain that way until about thirty minutes after their clinical death. Longer if it's a warm day.


Engineers are always honest in matters of technology and human relationships. That's why it's a good idea to keep engineers away from customers, romantic interests, and other people who can't handle the truth.

Engineers sometimes bend the truth to avoid work. They say things that sound like lies but technically are not because nobody could be expected to believe them. The complete list of engineer lies is listed below.
• "I won't change anything without asking you first."
• "I'll return your hard-to-find cable tomorrow."
• "I have to have new equipment to do my job."
• "I'm not jealous of your new computer."

Engineers are notoriously frugal. This is not because of cheapness or mean spirit; it is simply because every spending situation is simply a problem in optimization, that is, "How can I escape this situation while retaining the greatest amount of cash?"


If there is one trait that best defines an engineer it is the ability to concentrate on one subject to the complete exclusion of everything else in the environment. This sometimes causes engineers to be pronounced dead prematurely. Some funeral homes in high-tech areas have started checking resumes before processing the bodies. Anybody with a degree in electrical engineering or experience in computer programming is propped up in the lounge for a few days just to see if he or she snaps out of it.


Engineers hate risk. They try to eliminate it whenever they can. This is understandable, given that when an engineer makes one little mistake, the media will treat it like it's a big deal or something.

1. Hindenberg.
2. Space Shuttle Challenger.
3. SPANet(tm)
4. Hubble space telescope.
5. Apollo 13.
6. Titanic.
7. Ford Pinto.
8. Corvair.
9. Jeff Kennett's hair style
The risk/reward calculation for engineers looks something like this:

RISK: Public humiliation and the death of thousands of innocent people.

REWARD: A certificate of appreciation in a handsome plastic frame.

Being practical people, engineers evaluate this balance of risks and rewards and decide that risk is not a good thing. The best way to avoid risk is by advising that any activity is technically impossible for reasons that are far too complicated to explain.

If that approach is not sufficient to halt a project, then the engineer will fall back to a second line of defense: "It's technically possible but it will cost too much."


Ego-wise, two things are important to engineers:
1. How smart they are.
2. How many cool devices they own.
The fastest way to get an engineer to solve a problem is to declare that the problem is unsolvable. No engineer can walk away from an unsolvable problem until it's solved. No illness or distraction is sufficient to get the engineer off the case. These types of challenges quickly become personal -- a battle between the engineer and the laws of nature.

Engineers will go without food and hygiene for days to solve a problem. (Other times just because they forgot.) And when they succeed in solving the problem they will experience an ego rush that is better than sex - and I'm including the kind of sex where other people are involved.

Nothing is more threatening to the engineer than the suggestion that somebody has more technical skill. Normal people sometimes use that knowledge as a lever to extract more work from the engineer. When an engineer says that something can't be done (a code phrase that means it's not fun to do), some clever normal people have learned to glance at the engineer with a look of compassion and pity and say something along these lines: "I'll ask Bob to figure it out. He knows how to solve difficult technical problems."

At that point it is a good idea for the normal person to not stand between the engineer and the problem. The engineer will set upon the problem like a starved Chihuahua on a pork chop.

If in doubt accelerate. It may not help you avoid the problem, but it'll end the suspense.

Need Bulk? http://www.atomicmpc.com.au/forums.asp?s=1&c=1&t=45720

3/11/04 7:49:35 AM

kikz: LMAO! I love it :D so true...think i'll put it on my wall

freespace: believe it or not that helped clarify the differences between the streams to pick for next year better than anything the faculty or other official people have told me :)

Sometimes a majority just means that all the stupid people are on the same side.

3/11/04 10:18:00 PM

Edit: I can't be bothered thinking tonight. Contents of post have been deleted due to potential bullshit :P

Well, the thread was amusing in any case :D

Edited by hetman: 3/11/2004 10:22:21 PM

Spadaj na drzewo! ... Tu es stultior quam asinus.

3/11/04 11:04:27 PM

Oh come on hetman, don't hold out on us... :P

By perseverance the snail reached the ark.


f reespace!

3/11/04 11:59:38 PM

hahah freespace, that story is great. Got to love it.
Maybe I like it cos Im an electrical eng student :P

My Hovercraft is full of Eels

4/11/04 9:44:51 AM

@andywn, so am I, and -M- is too :D

By perseverance the snail reached the ark.


f reespace!

4/11/04 12:16:49 PM

yeah lateral thinking, not an elect. engineers strong point :p

/me is software engineer ;)

If in doubt accelerate. It may not help you avoid the problem, but it'll end the suspense.

Need Bulk? http://www.atomicmpc.com.au/forums.asp?s=1&c=1&t=45720

5/11/04 9:39:00 AM

I think that demonstrates simply that EEs lack imagination. It's possibly also why there are now more jobs for software engineers than Electrical engineers, they all did themselves out of jobs :)

Actually I know a few Electrical engineers that put softies to shame when it comes to feature creep and over engineering.

I should also winge that the king was a crappy customer giving such vague and open requirements that you could drive a truck through.

...so brilliant in fact, that by simply harnessing the power of one live frog, it.. it.. uhh.<poke> <poke>
World domination has encountered a momentary setback. Talk amongst yourselves.

Waffles, Lots of Waffles... And Chips...

6/11/04 9:42:22 PM
Reminds me of "real ultimate electrical engineers" http://www.rpi.edu/~harmsj/RUPEE/

"Do you know what nemesis means? A righteous infliction of retribution manifested by an appropriate agent - in this case, an 'orrible cunt .... me!"
- Brick Top (Snatch)

6/11/04 10:13:43 PM


Thanks for sharing that bladwin :D

By perseverance the snail reached the ark.


f reespace!

6/11/04 10:22:16 PM

Quote by freespace

Thanks for sharing that bladwin :D

please, freespace, don't flip out and write matlab code at me! :P

"It is better to be silent, and be thought a fool, than to speak and remove all doubt." (Confuscius)

7/11/04 5:36:43 PM

Oh no zephy, I'll do one better, I'l totally FLIP OUT and differentiate you! :P

Unless your e^x... :P

By perseverance the snail reached the ark.


f reespace!

7/11/04 6:08:06 PM

Pull your self together freespace! You're not some pure mathematician! *scoff*

If zeph pulls out something cheap like an e^x^2 on you just approximate! Remember, the Bessel function is your friend :P

Spadaj na drzewo! ... Tu es stultior quam asinus.

15/11/04 8:24:23 PM

Q: Why is everyone so obsessed about EEs?

A: EEs are the ultimate paradox. On the one hand they know about complex variables, but on the other hand, they can't talk to girls.

gold :D

Quote by trev99
You showed a girl 9Gb of Porn and Bum fights and she still invited you to her formal?

OpenBSD - Like wearing suspenders plus a belt

15/11/04 11:22:48 PM

I can talk to girls just fine... :P

By perseverance the snail reached the ark.


its f reespace damn it!

16/11/04 8:55:19 PM

mmmm... all this reminds me of something...

Comprehending Engineers - Take One

Two engineering students were walking across campus when one said, "Where did you get such a great bike?"

The second engineer replied, "Well, I was walking along yesterday minding my own business when a Beautiful woman rode up on this bike. She threw the bike to the ground, took off all her clothes and said, "Take what you want."

The second engineer nodded approvingly, "Good choice; the clothes wouldn't have fit anyway."

Lesson: Don't bother to drop even the most obvious hint, they can't catch anyway.

Comprehending Engineers - Take Two

To the optimist, the glass is half full. To the pessimist, the glass half empty. To the engineer, the glass is twice as big as it needs to be.

Lesson: There is no philosophy to talk abt but calculations and calculations...

Comprehending Engineers -Take Three

A pastor, a doctor, and an engineer were waiting one morning for a particularly slow group of golfers.

The engineer fumed, "What's with these guys? We must have been waiting for 15 minutes!"

The doctor chimed in, "I don't know, but I've never seen such ineptitude".

The pastor said, "Hey, here comes the greens keeper. Let's have a word with him."

"Hi John. Say, what's with that group ahead of us? They're rather slow, aren't they?"

The greens keeper replied, "Oh, yes, that's a group of blind firefighters. They lost their sight saving our clubhouse from a fire last year, so we always let them play for free anytime."

The group was silent for a moment.

Then the pastor said, "That's so sad I think I will say a special prayer for them tonight."

The doctor said, "Good idea. And I'm going to contact my ophthalmologist buddy and see if there's anything he can do for them."

The engineer, after much thought said, "Why can't these guys play at night?"

Lesson: No emotions please, only practicality works here.

Comprehending Engineers -Take Four

What is the difference between Mechanical Engineers and Civil Engineers?

Mechanical Engineers build weapons; Civil Engineers build targets.

Lesson: They build and build and build and build and... to compliment one another.

Comprehending Engineers -Take Five

Three engineering students were gathered together discussing the possible designers of the human body. One said, "It was a mechanical engineer. Just look at all the joints."

Another said, "No, it was an electrical engineer.

The nervous system has many thousands of electrical connections."

The last said, "Actually it was a civil engineer. Who else would run a toxic waste pipeline through a recreational area?"

Lesson: All of them have their own theories. None for believing!

Comprehending Engineers -Take Six

"Normal people believe that if it ain't broke, don't fix it. Engineers believe that if it ain't broke, it doesn't have enough features yet."

Lesson: They are complicated and twisted.

Comprehending Engineers -Take Seven

An architect, an artist, and an engineer were discussing whether it was better to spend time with a wife or a mistress.

The architect said he enjoyed time with his wife, building a solid foundation for an enduring relationship.

The artist said he enjoyed time with his mistress, because of the passion and mystery he found there.

The engineer said, "I like both."


"Yeah," replied the engineer. "If you have a wife and a mistress, they will each assume you are spending time with the other woman, and you can go to the lab and get some work done."

Lesson: Gals, NEVER fall for an engineer!!!

Comprehending Engineers - Take Eight

An engineer was crossing a road one day when a frog called out to him and said, "If you kiss me, I'll turn into a beautiful princess."

He bent over, picked up the frog and put it in his pocket.

The frog spoke up again and said, "If you kiss me and turn me back into a beautiful princess, I will stay with you for one week."

The engineer took the frog out of his pocket, smiled at it and returned it to the pocket.

The frog then cried out, "If you kiss me and turn me back into a beautiful princess I'll stay with you and do ANYTHING you want."

Again the engineer took the frog out, smiled at it and put it back into his pocket.

Finally, the frog asked, "What is the matter? I've told you I'm a beautiful princess, that I'll stay with you for a week and do anything you want. Why won't you kiss me?"

The engineer said, "Look I'm an engineer. I don't have time for a girlfriend, but a TALKING frog, now that's cool!"

Lesson: Once again, gals, NEVER fall for an engineer!!!!!

-can't find where i found it.. =(

Design something idiot-proof... and someone will create a better idiot

16/11/04 9:29:21 PM

Quote by Valimont
gals, NEVER fall for an engineer!!!!!

what about female engineers? o.O

Sometimes a majority just means that all the stupid people are on the same side.

16/11/04 9:53:32 PM

ok then, engineering bent on an old joke.

A Chemical Engineer, A Mechanical Enginineer and a Software engineer were sitting around discussing which form of engineering came first.

The chemical engineer claimed it was chemical engineering, as it described the formation of the amino acids and complex chemical structures that were precursors to life.

The Mechanical engineer claimed that Mechanical Engineering was older, as it defined the movement of the planets, stars and galaxies, and the creation of order from chaos.

The software engineer just sat back smirked, and whispered "and who do you think created the chaos?"

...so brilliant in fact, that by simply harnessing the power of one live frog, it.. it.. uhh.<poke> <poke>
World domination has encountered a momentary setback. Talk amongst yourselves.

Waffles, Lots of Waffles... And Chips...

  1 | 2  | Next Page 
Forums | Programming