For novel ideas about building embedded systems (both hardware and firmware), join the 27,000+ engineers who subscribe to The Embedded Muse, a free biweekly newsletter. The Muse has no hype and no vendor PR. It takes just a few seconds (just enter your email, which is shared with absolutely no one) to subscribe.
By Jack Ganssle
The Two Things
Glen Whitman, Assistant Professor of Economics at UC Northridge, has been playing a game called "Two Things." Ask your pals what the two most important things are about their profession. The answers will vary widely, but the results are interesting. He documents his sometimes serious, sometimes amusing results at http://www.csun.edu/~dgw61315/thetwothings.html.
Under computers, his first entry is: The Two Things about Binary Systems:
So what are the two things about firmware? Here's a stab:
One: It's the most expensive thing in the universe
Two: It's becoming the most ubiquitous thing in the universe
What are the two things about embedded systems?
One: They're everywhere
Two: They all have limited resources, unless they don't
How about engineering? Glen gives us:
One: It's all about tradeoffs.
Two: The tradeoffs are all about money, time, and quality.
The Two Things about Civil Engineering:
One: Dirt + Water = Mud.
Two: You can't push a rope.
My suggestion for The Two Things about digital engineering:
One: If it's not a one or a zero, call an analog engineer
Two: Digitize everything as soon as possible
Here's another attempt at The Two Things about digital engineering:
One: It's always a software problem
Two: If it's not a software problem, it can be fixed by changing the code
Two Things for analog engineering:
One: Digital is really analog in disguise
Two: You can do anything with enough op amps and 10k resistors
Computer Engineering is a relatively new college major spawned entirely by the microprocessor revolution of the 70s. These folks bridge the hardware, analog and firmware worlds. With each of their three feet in very different camps they experience the best of computers, with perhaps the highest frustration levels. Two Things about computer engineering:
One: Nothing beats making lights flash and motors whirl.
Two: Fuse everything
The Two Things about programs:
One: They all start out with bugs
Two: After they're fixed, they all have bugs
Glen addresses managing PCs. The Two Things about Computer Maintenance:
One: Disk scan, defrag, virus scan, update drivers, wait 30 days, repeat.
Two: Never download Kazaa.
And that's pretty good advice.
Obviously it's načve to condense complex subjects down to a mere pair of attributes. But it sure can be a lot of fun. What are the 10 Things about people?
01: Those who know binary
10: Those who don't
What do you think? What are The Two Things about our profession?