Monday, September 19, 2005

Anger and Forgiveness

I have, over the past few days, posted to my Blog in anger -- in frustration and disappointment. These posts have ruffled a few feathers, and for now, they have been taken off the site.

I will attempt, in this post, to explain myself and some of the (de)motivation for these posts.

I worked for roughly three and a half years for a company called O'Neil and Associates. I would not consider my employment with this firm to be a negative experience. I led a team of talented software engineers on a series of projects based upon a GNU GPL Perl application framework called "Sage" or "SageXS." This application, while no longer in my possession, was one of my greatest victories.

When I started at O'Neil I was given a vast amount of freedom -- O'Neil's software development practices, tools and frameworks were disorganized and in disrepair. No centralized bug tracking or revision control system was in place. I worked, some might say slaved, to add value to the organization. With the time and effort of development and management O'Neil created a more organized, more effective, -- dare I say, enterprise, development system.

During the time when O'Neil acquired a Dayton area company called AvTech, I was given the resources and time to craft a new application framework. Blending existing GNU software, servers and database applications, SageXS was born. Based on Perl, SageXS was designed to be an application factory -- an easy, rapid system for building dynamic web applications and reusable application sub-components.

The development effort, led by my co-worker Nikki Fields and I, was a success. Our first application built using SageXS, iLEARN, was for Standard Register Corporation of Dayton, Ohio. While iLEARN itself was not a resounding success, the SageXS framework showed promise and we continued to use it. Each application we built added more reusable application components and further refined the platform.

We created applications for Oshkosh Truck Corporation, Lockheed Martin, Mitsubishi Forklift of America, the US Army and the UK Ministry of Defense. The framework grew stronger with each application and I was given the authority to maintain, protect and advocate the architecture and Perl itself within the O'Neil software development organization.

Under the excellent management of Shawn Quigley, SageXS took off. With a talented development manager guiding the group, O'Neil's software development organization gained momentum, process and a much-needed structure. Where I could add only technical skill and motivation for those people around me, Shawn added experience (which I did not have) and an full understanding of the software life-cycle.

However, all was not well. Long hours and late nights began to take a toll. I would regularly work 80 hour weeks and pushed myself to the breaking point to meet deadlines that were sometimes nearly impossible. I found myself exhausted, depressed and suffering from a stress-related ulcer.

A day came when I realized I could give no more -- would give no more to O'Neil. My salary was slow to increase and bonuses were few and far between. The only indication that I was appreciated was an "Employee of the Year" award, and that came with a plaque and $200 of gift certificates. While I did, at the time appreciate the award, I came to realize that I bought it with thousands of hours of unpaid overtime, and in a way, with my health, sanity and personal life.

I came to the decision that I had to leave. I decided that no matter what happened, I had to go. I resigned. I intended to attend a University this fall, perhaps even graduate school.

A few days before my last day at O'Neil, a good friend of mine heard I was soon-to-be-jobless and told me I should consider a potential position with a local company, Standard Register Corporation. I applied, unsure of if I wanted to start working again, but did not want to appear ungrateful. I went to the interview and was completely taken won over by the professionalism, team-spirit and management expertise.

A few weeks after I started at Standard Register, I got a letter from a local law firm called "Thompson and Hine" that accused me of being in illegal possession of O'Neil trade secrets and proprietary company information. The letter also stated that O'Neil was the owner of SageXS, which, legally is a piece of GPL software. This letter, amazingly, also laid claim to source code derived from open source (GPL) solutions I acquired from CPAN. The letter claimed that O'Neil was the owner of HTML::Template, CGI::Application, DBD::MySQL and other Perl libraries.

O'Neil and Associates also attempted to take legal action against Standard Register, claiming that (now this part is just stupid!) Standard Register was using SageXS (yes, that's right, a C# / .Net development team had, in two weeks, switched to using Perl.) This, thankfully, did no damage to my position at Standard Register and O'Neil's CEO, Robert Heilman managed only to embarrass himself and O'Neil.

I took steps to put the letter and proof of O'Neil's violations of the GPL, the LGPL and other open source licenses on an international escrow account. I am now forced to retain three lawyers. I am now waiting and trying to decide if I should include MySQL AB, the Free Software Foundation and Vanguard Media in my legal struggles.

0 Comments:

Post a Comment

<< Home