| |
|
|
You Never Write, You Never Call (April 11, 2008)Source: I, Cringely . The Pulpit | PBS (http://www.pbs.org/cringely/pulpit/) If you use Microsoft's Windows or Apple's OS X and for some reason an application crashes, you know the drill. A dialog box opens automatically ready to report what just happened back to Redmond or Cupertino. It is an opt-in procedure so you can decide not to send the report, which is what I tend to do the third or fourth time the same crash happens. For an Apple or a Microsoft this capability of seeing, immediately and automatically, what went wrong is invaluable for planning that next service pack or security update. Alas, this kind of diagnostic capability hasn't been available to those developers who don't also happen to own the operating system as Apple and Microsoft do. But that fact is changing and now there is a way for many third-party developers to put this same capability into their applications.
PreEmptive Solutions is a software tools company from Ohio that is best known for its DashO and Dotfuscator products, which are used to obfuscate and to some extent optimize bytecodes for Java and .NET applications, respectively. These interpreted programming environments, where a lot of corporate development is done today, are especially vulnerable because the program code is exposed and can easily be copied or messed with. Obfuscation makes such code theft harder to accomplish by changing the appearance of the code, though not its operation. It's hard to track program logic when every variable -- no matter what the actual value -- is called "a" for example.
PreEmptive has added to its latest version of Dotfuscator what it calls "Runtime Intelligence" -- that ability to send data or to call for help when there is trouble with an obfuscated application.
But wait, there's more! Application failure is only one of many possible triggering events for Runtime Intelligence. It can be triggered by a crash but also by a user exit: why did you choose to close the application? This makes it faster and more reliable to gather data from beta releases and make product improvements, for example.... |
|
|