Embedded Muse 155 Copyright 2008 TGG February 12, 2008

You may redistribute this newsletter for noncommercial purposes. For commercial use contact jack@ganssle.com. Subscribe and unsubscribe info is at the end of this email.

EDITOR: Jack Ganssle, jack@ganssle.com

- Editor’s Notes
- Survey
- War Stories
- Tools and Tips
- Free Stuff
- Jobs!
- Joke for the Week
- About The Embedded Muse

Editor’s Notes

Did you know it IS possible to create accurate schedules? Or that most projects consume 50% of the development time in debug and test, and that it’s not hard to slash that number drastically? Or that we know how to manage the quantitative relationship between complexity and bugs? Learn this and far more at my Better Firmware Faster class, presented at YOUR facility. See https://www.ganssle.com/onsite.htm .

For the first time, I’ll be conducting a public version of this class in Denmark in April. For more information see http://www.ganssleindk.dk/ .

Are you in the Chicago or Denver area? I’ll present a public version of the Better Firmware Faster class in Chicago and Denver, on April 23rd and 25th. Sign up before March 23 and receive a $50.00 discount. Registration and other info here: https://www.ganssle.com/classes.htm . You’ll earn 0.7 Continuing Education Units, learn a lot, and have more than a little fun.

And I’ll be teaching a public version of this class in London, UK, May 19. See https://www.ganssle.com/classes.htm .

Interviewing for a job is something many of us dread and do poorly. For a quick list of good tips check out the April 25 entry in this blog: http://embeddedincork.net/ .

I stumbled across what initially looked like a great article about multitasking (that is, talking on the cell, eating a sandwich, shaving and reading the paper while driving, not preemptive task switching). But it turned out to be somewhat superficial and at times rude. But I liked a quote from first century BCE Publilius Syrus: “To do two things at once is to do neither.”

Andre Cambron sent in this good intro for newbies to PIC programming: http://highered.mcgraw-hill.com/sites/dl/free/0072402415/55328/alc_ch07.pdf .


I try to do a salary survey every year or two, but was saved from the work this year by VDC. VDC will sell reports derived from the survey results to corporate clients, but my interest is in passing along key highlights of the state of engineering to Muse readers. A future Muse will highlight the results once they are ingested, digested, inspected and accepted. Here’s their pitch and an offer for free goodies:

Do you want to know how your pay compares with other embedded engineers both nationally and internationally? Are you interested in learning how your project team compares with others in the embedded market?
VDC, an independent technology research firm, is conducting its annual survey of embedded engineers, and is working with the Ganssle Group to gather market information about global salaries and employment opportunities. By combining salary related questions within VDC’s larger survey on embedded development teams, technologies, and trends, The Ganssle Group will be able to present up to date data on compensation across various engineering populations in its upcoming report.

Why should I take this survey?
In addition to helping the Ganssle Group gather relevant salary and engineering employment data for the 2008 Salary Survey report, your participation will also help shape the decisions of key market participants looking to VDC for information about embedded market trends. As thanks for your time, VDC will provide all respondents who complete the survey with:

- Immediate access to a summary of VDC’s 2007 survey of embedded developers offering over 50 key exhibits on the composition of embedded development teams, the industry-wide use of embedded software and hardware, opinions on embedded trends and use of relevant methodologies and standards.
- A summary of the 2008 survey findings once the research is complete,
- A chance to win one of five (5) $100 Amazon.com gift certificates (drawing to be held April 25th).

Many thanks to all who participate.

War Stories

A couple of readers liked my look back at a career in embedded systems, and responded with their own war stories. For Steve Litt’s see: http://www.troubleshooters.com/tpromag/200504/200504.htm#_It_Only_Crashes_Twice_a_Day

John Visosky sent a story that will be familiar to all of us geeks: “I read your Twenty Years On article, and chuckled at many familiar-sounding incidents. I believe I'm just a bit younger than you (1960) [Editor’s note: alas, he’s right], because I started building computers in the early 70's in my basement "lab" out of whatever I could scrounge up. I went to junk stores and bought old appliance relays and used them to build logic circuits, though I didn't know that's what they were. At the time, I had invented a 2-state 'algebra' using the symbols X and Y for the 2 states, and implemented various functions of X and Y in hardware. I actually built a binary half-adder because it was called-for by my algebra, and when I found a diagram of a 'real' one in a book one day I was flabbergasted that it was identical to mine (except of course the symbols for the gates were different than what I'd developed). I found out that 'my' algebra was called Boolean logic, just with 0 and 1, not X and Y. (Probably just as well I wasn't the first to discover it - Visoskean logic would have been a mouthful! ;o)

“One day while at Radio Shack I spotted an 8080 'computer on a chip' on the rack. I went nuts and nagged my mom to buy it. I forget what it cost, but I'm sure it wasn't cheap. I then went on to sink lots more of my allowance into a project to actually get it to do anything - the 'computer on a chip' description was just slightly(!) misleading...

“I spent months building my computer (I still have it), with nothing more than a multimeter and a couple of LED 'logic probes' I had made. It had a whopping 256 bytes of RAM - and no ROM (I didn't know ROM existed, but even if I had, the programmers of the day would have been prohibitively expensive). I had a big bank of switches, and I would hold the processor in reset while hand-loading a small hand-compiled program in byte by byte. When I'd release the processor, all the little LED's would blink for a moment or two, and if I was lucky it would hit the HALT instruction with the right 'answer' on the output port LED's. You can imagine the euphoria the day when it actually did! (And the difficulty of explaining to anyone else what I had accomplished...)

“Perhaps that experience with the lengthy hardware-development cycle is what steered me towards software, which is what I've been doing for the past 30 years. I've done everything from firmware and device drivers, through operating systems and middleware, shrink-wrapped products and online services, on up to full-blown 'big-iron' mainframe applications.

“I built a career on what I taught myself 'way back when' in my basement lab. I did attend some university, but what you could do in the 'real world' was so much beyond what they were teaching in university at that time (COBOL - yawn!) that I never bothered finishing. It hasn't hurt my career much.

“I still enjoy dabbling in electronics, and doing embedded programming for fun. When you spend your days programming at a high level of abstraction, it's nice sometimes to just have a whole processor all to yourself, and know what every single line of code is doing!”

Tools and Tips

Thomas Fors wrote: “As a fellow embedded engineer, I wanted to mention a bit of news you might find useful for your Embedded Muse newsletter.

“I'm sure there are plenty of other engineers like me out there with the handy new iPhone. To say the least, I was very disappointed with the included four-function calculator, and found myself really wishing it had a decent scientific calculator.

“After some thought, I realized that in practice, I never really use the graphing capability of modern day calculators which appear to be targeted toward students, and I really miss my old HP-15C which would be (in my opinion) the ideal calculator for the iPhone form factor.

“As luck would have it, I found that someone wrote an open-source HP-15C emulator that I was able to port to the iPhone.

“The details as well as source code can be found on the site:


“In fact, the 15c, 11c, 16c, and 12c are all available, and they work on the iPod Touch as well.

“I've had a lot of positive feedback on this project so far, and I thought I'd like to share this with others that may find it useful.

“I do intend to make it an officially available app once Apple releases the SDK so for those who haven't enabled 3rd party apps yet on their iPhone, it will be available soon.”

Free Stuff

Well, not free. But once again Newnes is offering Muse readers a 20% discount on a book: Embedded Systems, World Class Designs, edited by yours truly. These are compendiums of chapters from other well-known books on the subject. Sample chapters are at https://www.ganssle.com/misc/wcdbook.pdf . Details on getting the discount are at the bottom of the first page.


Joke for the Week

An engineer is a person who passes as an exacting expert on the basis of being able to turn out with prolific fortitude infinite strings of incomprehensible formulas calculated with micrometric precision from vague assumptions which are based on debatable figures taken from inconclusive experiments carried out with instruments of problematical accuracy by persons of questionable mentality and doubtful reliability for the avowed purpose of annoying and confusing a hopelessly chimerical group of esoteric fanatics referred to altogether too frequently as technicians.