Keeping software from being broken and distributed via BitTorrent isn't the only kind of piracy about which developers need to worry.
For developers using languages such as Sun Microsystems' Java and Microsoft's .Net, there is the vulnerability of their applications to copycat coders, according to Kenji Obata, CEO of Xenocode.
.Net programs contain rich metadata that make them easy to de-compile into human-readable source code using free, off-the-shelf tools, for which "the only thing missing are the comments," Obata said.
Obata's firm sells an app, Postbuild, that "obfuscates" .Net code to protect it against prying eyes, doing things such as renaming metadata into meaningless characters and watermarking the .Net code to protect it against prying eyes.
The latest version, Postbuild 2008, is compatible with the .Net 3 and 3.5 runtimes, Visual Studio 2008, and closely-associated Microsoft technologies such as Windows Presentation Foundation (WPF) and LINQ.
Postbuild is used by about 100,000 developers, Obata said. While protecting .Net source code was Postbuild's original key capability, a newer feature -- the ability to create lightweight, virtualized .Net application packages -- is also gaining fans, he said.
.Net apps only run when the corresponding version of the .Net framework is installed on a PC. Despite Microsoft's exhortations, not all enterprises are eager to upgrade to the latest .Net 3.5 framework. For one, it takes up almost 200 MB of storage and requires plenty of CPU power to run.
Most companies are still on .Net 2.0, released almost 3 years ago and about one-tenth the size, according to Obata, with many having PCs still running .Net 1.1, which was released more than 5 years ago.
Postbuild enables developers or IT managers to create .Net packages that contain both the app and the right version of the runtime, along with any code libraries or dependencies. This sidesteps the .Net runtime compatibility problem. The packages are also compressed on average by half, too, Obata said.
Postbuild is basically offering a form of application virtualization. It differs from better-known products such as Microsoft Application Virtualization (formerly SoftGrid) or Altiris SVS, according to Obata, by being able to work with multiple vendors, not requiring the installation of any device drivers, and not being linked to any server software.
It differs from full hardware virtualization such as VMWare Inc.'s ESX or Microsoft's Hyper-V, which virtualize the hardware and operating system layer, creating packages that are slower to run, bigger to store, and more costly (since more software such as the OS may need to be licensed).
Xenocode has also made this application virtualization capability available for all types of applications, not just .Net ones, in a separate product called Virtual Application Studio.
Obata says demand is coming from companies discovering their enterprise apps breaking when upgrading from XP to Windows Vista, due to new features such as User Account Control (UAC).