Embedded Systems Software, Computer Networking and Geeky Fun

nerd1951.com

May 7, 2008

The new dilbert.com website and other over-engineered websites

Filed under: Rants — harvey.sugar @ 7:36 am

I’m a big fan of the comic strip Dilbert.  At times the plot has hit so close to home that I could swear that Scott Adams had spies where I worked.  I’ve been reading the strip on the dilbet.com web site almost since the site first appeared since I stopped getting my news on paper several years ago.

The new Dilbert web site though, is just too annoying to even use.  Why do people insist on re-engineering working web sites?  On Sunday, it was impossible to even read the whole strip on the web page.  You had to email the strip to yourself to see it.  At work I can’t even read Dilbert (at lunch) anymore.  The firewall blocks the strip.  I see it for a few hundred milliseconds then the fancy new frame pops up and the strip never reappears.

There are a couple of other web sites that are too annoying to use anymore.  Yahoo! Is a great example.  At one time I had Yahoo! As my home page but not any more.  The page is almost all advertising and Flash.  Sometimes it’s painful to look at.  They use floating ads that block the content and hide the close button as well as they can.  It’s no wonder they are losing so bad to Google.

Another page that’s going that way is Amazon.  I’m starting to use other online book sellers as much as possible because their web pages are getting annoying.  The things that expand when you roll over a link just frustrate me.  They use to have ads for interesting new books on their home page.  I often would discover books that I would otherwise not ever know about because of these ads.  Now, half the page is taken up with an ad for their own product; Kindle.  Most of the rest of the page is filled with targeted ads.  Hey, I already know what’s in my wish list.  Tell me about something new.  Then they through in some third party advertising to fill up any remaining space.  Like I’m really going to switch auto insurance because I saw an ad on Amazon.

I believe Google gets it right.  The advertising is not intrusive.  Their home page, even the enhanced home page does not use any Flash, sounds or videos.  They just keep adding new services and let you decide whether or not to use them.  Everyone else needs to check out Jacob Nielsen’s Web Usability page.

• • •
 

May 6, 2008

Setting expectations for embedded Linux

Filed under: Rants, Programming — harvey.sugar @ 1:10 pm

Linux has become a very popular operating system for embedded systems.  I’m currently working on two projects that use embedded Linux.  Linux pops up on alls kinds of devices; routers, network-attached disk drives, and digital video recorders to name a few.

There has been a lot of discussion about the limitations of Linux as a real time operating system.  When embedded software engineers adopt Linux for a project they are usually aware of these limitations.  Either the engineers have a work-around for time critical tasks or they have decided that Linux can meet their real time requirements.

One problem that I’ve had using embedded Linux is not really a technical issue.  It’s the expectations of users, managers and clients.  When a manager or someone in marketing finds out that you are using Linux, they start dreaming up all the extra things the device should do because it “comes free” with Linux.  Suddenly features like extra layers of security and web-based user interfaces become must-haves.

People need to realize, or be educated to realize that a device running embedded Linux is still an embedded system with the limited resources that embedded systems have.  The art of embedded Linux is pairing down a standard distribution and even its kernel.  Components like OpenSSL and the Apache web server take a lot of storage space and processor time.  In addition, every extra feature that is added means more complexity, more interactions between components and more ways for a system to fail.

Embedded Linux brings many advantages to embedded developers.  Using Linux makes unit testing on a desk top computer easier.  Linux provides a rich and well understood API and the development environment is the GNU development tools.  The Linux IP stack makes it a natural choice for many network attached devices.  While these are big advantages, your customers and managers need to be reminded that you don’t get everything that “comes for free” with Linux in an embedded system.

• • •