Thoughts from the trench - by Prakash Muralidharan

August 25, 2008

Nederlands/Dutch Français/French ???????/Russian Deutsch/German Italiano/Italian Português/Portuguese Español/Spanish ????????/Greek 日本語/Japanese 한국어/Korean 中文(简体)/Chinese Simplified 中文(简体)/Chinese Traditional

Rounding errors and WW-III

Filed under: Software Services, programming — Prakash Muralidharan @ 1:47 pm

Amit Ranjan at Webyantra points to the enormous leverage that software has on our day to day lives. The consequences of bugs are usually thought of in terms of customer dissatisfaction, schedule slippages and maybe at worst a bunch of pink slips. Next time someone trivializes testing or defect fixing, make them read this:

Explosion of Ariane 5, 1996 due to “…conversion of a 64 bit integer into a 16 bit signed integer lead to an overflow…”

Loss of Mars Climate Orbiter, 1999 due to “…mix-up between pounds and kilogram….”

Mars Polar Lander, 1998 due to “…software error that mistakenly identified the vibration caused by the deployment of the lander’s legs as being caused by the vehicle touching down on the Martian surface….”

Loss of Mariner 1, 1962 due to “..period instead of comma in FORTRAN DO-Loop…”

Breakdown of AT&T’s long-distance telephone network, 1990 due to “…a single line of buggy code in a complex software upgrade implemented to speed up calling caused a ripple effect that shut down the network….”

USS Yorktown dead in the water, 1998 due to “….input and Division by ‘0’. „ X / 0 = undefined…”

MIM-104 Patriot Missile Failure, 1991 due to “…rounding error”

Shutdown of 5 nuclear reactors, 1985 due to “..use of arithmetic sum of variables instead of the square root of the sum of the squares of the variables….”

Denver International Airport, 1994 due to “…baggage handling system broke down because of numerous bugs….”

Reading this definitely made me more reverent about my own beginnings- doing Y2K fixes. I used to resent the work and thought it as 'dumb' and spent a lot of time writing automation tools instead. :-)


Linking and Sharing

If you found this page useful, consider linking to it.
Simply copy and paste the code below into your web site (Ctrl+C to copy)
It will look like this: Rounding errors and WW-III

del.icio.us:Rounding errors and WW-III  digg:Rounding errors and WW-III  fark:Rounding errors and WW-III
Trackback

Trackback URI for this entry:

http://www.prakashonsoftware.org/blog/index.php/2008/08/25/rounding-errors-and-ww-iii/trackback/

June 5, 2007

Nederlands/Dutch Français/French ???????/Russian Deutsch/German Italiano/Italian Português/Portuguese Español/Spanish ????????/Greek 日本語/Japanese 한국어/Korean 中文(简体)/Chinese Simplified 中文(简体)/Chinese Traditional

JAX India -2007

Filed under: Technology, Web2.0, programming — Prakash Muralidharan @ 4:51 pm

I recently attended the JAX India seminar which covered topics like SOA and enterprise architecture. The organizers have put up some presentations online. I particularly liked the presentations by Tobias Israel, Ramesh Loganathan and Thilo Frotscher. Thilo is a top quality web services trainer/ architect and I richly recommend him for any web services related corporate training requirements. You can contact him at contact@frotscher.com. Note : I have no business relationship or personal friendship with Thilo. Just loved his sessions !  

 


Linking and Sharing

If you found this page useful, consider linking to it.
Simply copy and paste the code below into your web site (Ctrl+C to copy)
It will look like this: JAX India -2007

del.icio.us:JAX India -2007  digg:JAX India -2007  fark:JAX India -2007
Trackback

Trackback URI for this entry:

http://www.prakashonsoftware.org/blog/index.php/2007/06/05/jax-india-2007/trackback/

April 12, 2007

Nederlands/Dutch Français/French ???????/Russian Deutsch/German Italiano/Italian Português/Portuguese Español/Spanish ????????/Greek 日本語/Japanese 한국어/Korean 中文(简体)/Chinese Simplified 中文(简体)/Chinese Traditional

The mashup API roll call.

Filed under: Technology, Web2.0, programming, Consumer Internet — Prakash Muralidharan @ 7:11 pm

The McKinsey report on Web 2.0 and the relative lack of corporate interest in mashups made me dig a little deeper. I pulled out some data from the programmable web and did a run of MsExcel and this is what the top ten mashup API categories look like.

Mashup API

Here are some quick thoughts:
All the categories are consumer internet based.

Mapping and search predominate thanks to Google and Yahoo

The enterprise potential of mashups is largely untapped at least as far as these stats go.


Linking and Sharing

If you found this page useful, consider linking to it.
Simply copy and paste the code below into your web site (Ctrl+C to copy)
It will look like this: The mashup API roll call.

del.icio.us:The mashup API roll call.  digg:The mashup API roll call.  fark:The mashup API roll call.
Trackback

Trackback URI for this entry:

http://www.prakashonsoftware.org/blog/index.php/2007/04/12/the-mashup-api-roll-call/trackback/

January 14, 2007

Nederlands/Dutch Français/French ???????/Russian Deutsch/German Italiano/Italian Português/Portuguese Español/Spanish ????????/Greek 日本語/Japanese 한국어/Korean 中文(简体)/Chinese Simplified 中文(简体)/Chinese Traditional

UI design choices.

Filed under: Technology, programming — Prakash Muralidharan @ 5:17 pm

UI design is something that receives less importance compared to the holy grail of coding. But we all hate websites with crappy layouts and cumbersome navigation structures. I came across this really neat tradeoff matrix on UI design by Mike Padilla.

DesignBenefitCost
Shallow information architectureFewer clicks to find infoMore clutter
Deep information architectureClean, reduced clutterMore clicks to find info
Small fontMore information per screenMore difficult to read for some users
Large fontEasier to readLess information per screen
Drop-down boxSelection amongst many choices using limited spaceHidden choices
Radio buttonsSee all selections at all timesAdditional space required, clutter
IconsQuick recognition once learned, aesthetically pleasingMust be learned
Text linksAlways understoodMust be read, do not stand out as actionable items as much from other text
AbbreviationsSave spaceMust learn or recognize
Full textEasily understoodRequires additional space
Keyboard shortcutsHigh speed of data entryMust be learned
Point and clickIntuitiveAdditional time required for interaction due to increase motor skills required

Mike goes on to suggest the following factors to judge a UI:

  • Ease of learning and memorability
  • Efficiency of use
  • Error frequency, severity, and recovery
  • Subjective satisfaction

  • Linking and Sharing

    If you found this page useful, consider linking to it.
    Simply copy and paste the code below into your web site (Ctrl+C to copy)
    It will look like this: UI design choices.

    del.icio.us:UI design choices.  digg:UI design choices.  fark:UI design choices.
    Trackback

    Trackback URI for this entry:

    http://www.prakashonsoftware.org/blog/index.php/2007/01/14/ui-design-choices/trackback/

    Creative Commons LicenseDisclaimer : This blog site is published by and reflects the personal views of Prakash Muralidharan,in his individual capacity. It does not necessarily represent the views of any of his employers, past or present, and is not sponsored or endorsed by any of them. No representation is made about the accuracy of the information contained in this blog.