Free Newsletters
Technology & Business Daily

InfoWorld
Log-in | Register

  Wednesday, August 23, 2006 

Participatory debugging

Applications increasingly rely on components and services that can turn up in unexpected contexts. I wasn't expecting to see a Mac OS error code on my Windows box, but in a mix-and-match world that happens. Reporting the provenance of error codes would be a helpful best practice.

Enabling users to visualize configuration change would be even more helpful. The default path remembered in that dialog box is part of the application's configuration. When the problem arose, I asked myself the obvious question: "What changed?" But there was no way to compare the state of the application before and after. [Full story at InfoWorld.com]
This column zeroes in on two ideas for making it easier to help people figure out what's gone wrong with their software: provenance ("Where did the error come from?") and configuration ("What changed?").

The length limit on the print column precluded a third idea: communication. In the case described in this column, I wound up installing a specially-instrumented version of a program that captured a trace, then gathering up that log file and transmitting it to the developer. Seems a bit arcane in this day and age, doesn't it? The following scenario should be entirely doable:

  • If the trouble ticket warrants such action, the developer determines which area of the program to trace, and at what level.
  • The trace specification is loaded into a service on the vendor's site, keyed to the product's serial number.
  • Now when the application runs, the specified debugging data are (with the user's permission) collected and relayed to the site.
  • Optionally a screencast (again with permission) is captured and sent.
  • If analysis of these data yields a new hypothesis, the cycle may repeat with a new trace specification.
  • If the investigation yields a solution, the user is informed and thanked.

That last step might be the most crucial. Where's the incentive, after all, to play the current version of this game -- that is, to agree to send your core dump to the vendor? Your report just vanishes into a black hole. You never find out what use was or wasn't made of the data you contributed, and there's no ongoing involvement. If the game were instead structured according to the architecture of participation, a lot of folks would get a kick out of helping to improve their software, irrespective of whether that software is commercial or open source.

 


Recent Entries


















































Sponsored Technology Links

 
 
 HOME  NEWS  BLOGS  PODCASTS  VIDEOS  TECHNOLOGIES  TEST CENTER  EVENTS  CAREERS   About | Advertise | Awards | RSS | Contact Us 

Copyright © 2008, Reprints, Permissions, Licensing, IDG Network, Privacy Policy, Terms of Service.
All Rights reserved. InfoWorld is a leading publisher of technology information and product reviews on topics including viruses,
phishing, worms, firewalls, security, servers, storage, networking, wireless, databases, and web services.

CIO :: ComputerWorld :: CSO :: Demo :: GamePro :: Games.net :: IDG Connect :: IDG World Expo
Industry Standard :: IT World :: JavaWorld :: LinuxWorld :: MacUser :: Macworld :: Network World :: PC World :: Playlist