Wednesday, December 17, 2014

9500AU in VA?

Lately, I've really been frustrated by flaky software and broken systems.  Yes, we can do MUCH better when designing and testing system (mine included).  However, at 2AM....

<RANT>My 2 year old phone keeps rebooting which is really fun at 2AM.  First I hear the AT&T sound, then it beeps when it is up, then it reboots yet again.  Modern phones should stay up for weeks or months, provided there is power.  If there is a hardware problem, it should have some indications like "Get a new phone".  </RANT>  (No, I will not try a Windows Phone or iPhone.)

A few days ago I visited a web site which shows locations near a search.  It had two bugs.  I'm in VA, but it listed MA and NJ as locations near my search?  That's quite a drive! It also has a column showing distances, however they don't seem to fit reality.  It listed the distance between two locations in Virginia as 879760200429 miles which is about 9500 times the distance from the earth to the sun (1 astronomical unit or AU) or about 1/7 of a light year.  I figured it out -- it is a fractal distance like the coastline paradox limited by the Planck length!  Note that these are for distances ON THE EARTH, not in space -- it would make for a really, really long commute and could be quite expensive (about 250,000,000,000 gallons of gas in my Camry).

When I design systems and software, a primary goal is stability.  My systems must run for months or years without rebooting and without restarting my daemons.  To meet this goal, I typically create these daemons in C, much like the Linux kernel and the Apache HTTPD server.  I am very, very careful when designing, building, and testing these programs.  Tools like Valgrind really help!

Designing and building these reliable systems can be far more challenging than creating a web page, writing a script, or creating something that runs for a few seconds then exits.  It requires a different mindset and set of technologies, requiring lower-level languages and often older or more conservative techniques.  However, when they run on good hardware, they will assure your operations stay up!

That's my rant for the day!

No comments:

Post a Comment