Friday, February 26, 2010

My Application Owns the Computer!

pc_trouble[1] A pervasive attitude among programmers is that the only reason people own a computer is to run their application. Symptoms include:
  • Usurping shared resources like the desktop, system folders, task bar, registry, ... ("The whole machine is for my use.")
  • Can't turn off the app ("The only reason the machine would be on is to run my app, so I'll install an auto-startup service, a startup app, an Explorer plug-in, ...").
  • Resource hogging ("I can just grab exclusive access to files, database, or network connections when I launch and keep everything open.")
  • Interrupts workflow with pop-up messages, tooltips, alert balloons, taskbar messages, status messages, sound effects, ... ("Look at me! I'm working! Do you see me? I'm doing something!!")
  • Collateral damage ("I don't use that so I'll delete it.")
  • Race conditions ("Anything I do will stay that way forever until I change it.")
  • Security breaches ("I can expose everything on the machine, since I am the only one that will ever access it.")
  • Lack of interoperability ("My app has everything it needs so I don't need to support file export or cut and paste.")
  • No deployment ("I will never have to update or uninstall my app; they'll just get a new machine.")

No comments:

Post a Comment