Category Archives: Off The Board

Bad Investments

This is not your ordinary coding-related post, so bear with me.  My daughter received a monetary gift many years ago.  It was invested in a bank in Ohio and she wasn’t allowed to touch it until she turned 18.  It wasn’t a huge sum, but it wasn’t $10 either.  Here’s what happened.  Let’s use a starting point of $1000 as an example.  After 11 years in the bank, a very safe place to put your money, it was worth $1170.  That’s a tidy increase of $170.

Not so fast, though.  The S&P 500 went up around 2.7% over that time.  If the money had gone in there, she’d have $1341 now.  What about a balanced mutual fund?  The Fidelity Puritan Fund went up an average of 5.2% per year, which would have given her $1747 now.

It gets even better when you add inflation.  The cumulative rate of inflation over the same period was 34%.  If you had invested in the S&P 500 over that time (it was a rocky up and down time) you’d still be even with inflation.  In the Puritan Fund, you’d still be ahead.  In the bank, you’d actually have lost money.

So, why am I giving you this little lecture?  Because I used to work with a group of developers who were afraid of the stock market.  They kept their money in the bank in safe investments.  And they were going to lose a lot of money due to inflation, which is the hard part to detect.  Interest rates in bank savings accounts are less than 1% right now and CDs aren’t much better.  Meanwhile the stock market has been on a tear since the recession has eased.

Your best strategy for retirement is a mix of investments in stocks, bonds, commodities, etc. and thinking for the long haul.  Try investing in one of the newer “retirement date” funds that some firms have now.  You pick a year for your retirement and they adjust the mix of stocks and bonds for you.  It couldn’t be simpler.  And you might actually retire with something to live on.


Truth In Advertising – Part 2 – Toyota


Don’t forget to buy Design, Code, Test, Repeat.  It’s a fun, funny, and helpful read.


Toyota – Ad Script Meeting

Talent: At Toyota, we care about your safety.

Background Person #1: Guffaw.

Talent: That’s why we’re spending over $1 million every hour to improve your safety.

Background Person #1: Chortle.

Background Person #2: Actually we’re spending that money on the marketing and advertisements that talk about our spending money on safety.  It’s a circular reference.

Talent: I can’t read this anymore (snicker) it’s (hahaha) too freakin’ funny.  Okay, okay, I’m not going to laugh any more.  Whew!  Now seriously.

Talent: At Toyota, we care deeply about our profits.  So much so, that we’ll stall as long as possible before issuing a recall to maximize our image and profits.  That not only goes for our basic Toyota line, but also our premium Lexus vehicles.  At Toyota we do everything we can – whaa, I can’t do this anymore.

Director: Ow, my stomach hurts from laughing.  Okay everybody.  Take five.  Smoke ’em if you got ’em.  Oh, that reminds me, we’ll be shooting the next “Why our new Marlboro cigarettes are healthy for you” ad tomorrow.

How to save money by outsourcing

I can only think of one reason that the CEOs of companies don’t outsource their most expensive people.  They is them.

I’m going to make some sweeping generalizations and estimations here, so bear with me.  I’m going to stick with larger software companies because they are more likely to open overseas offices or outsource jobs.  Larger software companies tend to have higher paid CEOs and also higher pay for their software engineers.  Let’s do the math.  Average CEO pay: $10million in money and stock options.  Average software engineer pay: $70,000 to $100,000 in money and stock options.  Ratio: at least 100 to 1.

If you believe my estimates are out of whack, that’s ok.  Let’s assume that the ratio is closer to 25:1 or 50:1.  When one accounts for the entire executive staff – you know all the VPs of this, that and the other – you can add another 10 people or so whose ratios are 5:1 or 10:1 versus the average worker.  You can also add the board members, who tend to be CEOs of other companies.  They can make $100,000 for attending a dozen meetings a year.  Sometimes they get stock options, too.

It seems clear to me that a large company could very effectively save 80% of their executive compensation by moving those jobs to qualified people in India or China.  Clearly if the engineers there are capable of writing our software, they should be smart enough to run the company as well.

I’m obviously not a fan of massive outsourcing or excessive executive compensation.  I don’t believe that either of them accomplish what they’re cracked up to achieve.  I’ve seen outsourcing fail miserably due to communication problems, over-promising results, and even cultural hesitation to say, “No, we can’t do that.”  I also don’t understand how executives justify outrageous pay, bonuses, and golden parachutes, even when they don’t perform.

There’s a happy medium somewhere, but it seems to be getting lost.  The next time your CEO suggests that outsourcing will save your company tons of money, maybe you can find an anonymous way of suggesting that the CEO could outsource their own job to save even more.


I try not to lump people into buckets.  I like to think I’m open-minded enough to consider various points of view.  One thing, however, that really makes me mad is fear-mongering.  When W was running for his second term, the Republican supporters ran TV commercials warning us all that the U.S. could be headed for disasterous terrorist attacks if we voted for a Democrat who would most certainly be “soft” on terror.  More recently, there are ads urging me to call my Congressman and tell him that he should vote no on the health care plan.  The ads are full of fear-inducing messages about rationing, skyrocketing costs (aren’t they already?), etc.  Two of the messages talk about two different Congressmen, each of whom is the deciding vote.  Well, which one is it?

Politicians do it, marketing people do it, and salesmen do it.  “You don’t want the extended super warranty?  It protects your computer for 20 years and covers damage, even if you drop it in the toilet.”  Now, stories of people dropping their cell phones in the toilet are widespread, but your computer won’t fit in the toilet.

Too many decisions are based on fear.  Some decisions are valid to make on this basis.  Do you walk down the street in a neighborhood that’s known for trouble?  Do you leave your car unlocked when you know that there are people around who regularly steal cars?  Do you go skydiving without being absolutely anal about checking everything that come into play?  Of course, not.  However, most of the ads on TV and salesmen trying to sell you something are betting that you won’t do the research.  You won’t bother to find out the truth.

We all make decisions about things on the spur of the moment, often based on the fear induced by the situation or persuader at hand.  However, when you take some time to think it over in the absence of the pressure, you often come up with a clearer view of the situation.

People who resort to this are manipulating you and nothing makes me angrier than being manipulated.  When you can, take the time.  Do the research.  Make up your own mind.  Punish the fear-mongers.

Dr. Documentation


Don’t forget to buy Design, Code, Test, Repeat.  It’s a fun, funny, and helpful read.

Recently, I’ve gotten to the point in my release cycle where I’m almost ready for Beta(!) on my IDE for uCLinux uboot, kernel, and application development, Fusion MMX.  Building it has been a lot of fun and very educational as well.  I’ve been able to find so many useful open-source utilities to make development easier.

Of course, that means that some documentation is in order.  I’ve written plenty of documentation in the past, most recently for GTO, a Java application.  For that product, I chose to use JavaHelp, which wasn’t difficult to learn or use, but it was a rather manual process of taking screen shots, trimming them, labeling them, etc.  I couldn’t find a free (we’re a small company, so we like free) environment for creating this and I didn’t want to have to go through the manual process with all of the menus, dialogs, toolbars, and context menus for Fusion.  I also didn’t want to have to learn the ins and outs of Microsoft’s help compiler environment if I didn’t have to.  I just wanted to write the documentation, if possible, and let someone else take care of the busywork.

While I couldn’t find something free, I did find the next best thing: something that was so good and so inexpensive that it paid for itself – Dr. Explain.  What I found there was an application that was simple to use, handled the details of the help environment, and made documentation incredibly easy.  The one feature that literally paid for itself was the UI capture tool.  Start the tool, then focus on a UI element (window, menu, toolbar, dialog) and click.  Dr. Explain takes a screen shot of the element, then labels the individual items to be documented.  Holy cow, what an easy way to do documentation.  The creation of internal and external hyperlinks made cross-referencing a breeze.

Finally, I can export it to html, chm, or rtf for maximum flexibility.  For my next revision of GTO (the java-based application), I’ll be trying to use Dr. Explain for that documentation, too.  I don’t usually write product reviews, but when I run across something that I like this much, I want to share it with my fellow developers.


My family and I have just returned from a college tour of New England.  It was grueling, fun, informative, and alternately boring and thrilling.  It’s amazing how similar each presentation is and yet you can get a feel from each college.  For those of you unfamiliar with the latest methods of college admissions presentations, they usually consist of a tour and an information session.  The order of which one comes first is random and in some places, up to you.

Tours are conducted by students and they take you to a residence hall (you usually see a dorm room), a dining hall, an academic building or two (you’ll see a classroom), the library, and a few other unique features of each college.  It’s amazing, but somehow you get a “feel” for the place on the tour by seeing the place and the students who go there.  Some places seem friendly and open, some stuffy and exclusive.

The greater variety (within a very unvarietal setting) is the information session.  For the larger schools, they are done with a combination of talking by an admissions officer and some Powerpoint slides.  Some have students do some of the talking about their personal experiences and their impressions.  These tended to be more interesting, informative, and useful in getting to know a place.  At the smaller, more exclusive schools, the presentations tended to be drier (with one notable exception).  At one Ivy League school, the admissions officer went on so long about how students would be challenged by other students and forced out of their comfort zone that it scared the crap out of my daughter.  Unfortunately, this school may lose some qualified applicants because some snooty admissions officer wants to make the place sound more intimidating than it probably is.

The whole thing made me thing that the presentations are completely lacking in creativity and any really good way of presenting a college to prospective students.  More to the blog’s topics, it also made me think about ways that I’ve presented myself and companies present themselves to the public.  There are things that large companies and smart individuals do to cultivate an image.  Mac computers are for free spirited, independent people.  All financial institutions are conservative, sensible, and reliable, and they have your best interests at heart.

Small companies – and software companies are often small – often want to present an image of being large and stable.  Web sites for them will be polished and give the impression of dozens or hundreds of people at your service, even if there are only 1 or 2 people in the whole place.

On a personal level, you have the ability to present an image of yourself at work as well.  Are you hard or easy to contact?  Are you difficult or easy to talk to?  Do you respond to requests quickly or do you sit on them for weeks?  If you work with lots of other people, do you dress like a crumpled pile of laundry or at least look neat?  Do you smile or scowl most of the time?

In addition to the code you write, you have the ability to make impressions that are far more important to your growth or survival in a company.  It all depends on the image you want to present and this is within your control.

Truth In Advertising

Please buy me.

I saw a great Toyota commercial on TV a week ago. The gist was: “At Toyota, we have six different SUVs, one that will fit every family or personal lifestyle. Come in a try one on for size – we’re sure you’ll find one that you like.”

I started laughing and thought about the real message and what Toyota really wanted to say: “Look, just two years ago all you gluttonous Americans wanted was a giant gas-guzzling SUV. Even as gas prices were climbing to $3 per gallon, you still wanted them. But, now that we’re pushing $4 a gallon, suddenly you’re having second thoughts? What’s the matter with you people. You don’t care one bit about this stuff do you? Are you really going to let a little thing like money get in the way of your true desires? You’re mortgaged up to your eyeballs, have crippling credit card debt, and probably had to finance most of your last SUV, surely you want to buy another one. Think about driving over monster rocks in your $40,000 Land Cruiser or driving through seven foot high piles of snow in your RAV-4. Just look at this cool video of our SUVs sliding sideways on the sand-covered road we built for this commercial. Or picture yourself drinking beer with your buddies and this group of great looking bathing-suit beauties and hunks in the beach parking lot or maybe right on the beach! Please don’t let Toyota go bankrupt just because you’re fickle. Buy a new Toyota SUV now!”