It's every programmers' worst nightmare to have a giant company take what you worked so hard on and steal it from you, but it looks like that's exactly what IBM appears to have done to Thanassis Tsiodras - even going so far as to patent the coder's work.
Back in 2001, Tsiodras wrote a library for Windows called HeapCheck, designed to detect invalid access attempts on heap allocations during a program's runtime - greatly simplifying the process of debugging heap-related issues.
While the work wasn't original, having been based on the ElectricFence system developed by Bruce Perens, it was a neat implementation - and its release under the GNU General Public Licence meant that the community was free to use it as they see fit.
"I published it on my site, and got a few users who were kind enough to thank me," Tsiodras explains, "a Serbian programmer even sent me $250 as a thank you."
The application proved so useful, however, that Microsoft took notice - and added the same functionality directly into its Windows operating system under the name PageHeap. As the code was freely available, Tsiodras didn't take the issue any further - and a move to UNIX/Linux programming meant that he no longer used HeapCheck or PageHeap himself, either.
However, while vanity-Googling, Tsiodras discovered something somewhat shocking: IBM had not just taken his work and the work of Perens and used it for their own purposes like Microsoft, but had actually taken out a patent on the technology - citing Tsiodras' work in the patent references.
Tsiodras was, naturally, dumbfounded at his discovery: "I am not an American citizen, but the 'inventors' of this technology [as named in the patent] have apparently succeeded in passing this ludicrous patent in the States. If my code doesn't count as prior art, Bruce Perens's Efence, which I clearly state my code was inspired from, is at least 12 years prior!"
The patent, 'Dynamic and real-time management of memory,' was filed in 2005 and granted in 2009 - several years after the development of HeapCheck. It lists Robert O. Dryfoos, Jason A. Keenaghan, Michael J. Shershin III, and Kenneth H. Warner as the 'inventors' of the technology, while relegating Tsiodras to the status of 'reference' via an Archive.org link to an old copy of his website.
Tsiodras is now looking for advice on how to proceed with getting the patent invalidated on the basis of prior art. Hindered by his status as a non-US citizen and without the deep pockets for legal advice of IBM, however, he could face an uphill struggle.