About the Author

I'm the co-founder and CEO of E29 Incorporated, a service oriented software shop near Washington DC. While this is my official blog, my thoughts and opinions expressed here do not reflect those of my company, yada yada.

Finding Serenity: My Pet Project’s Journey

What started as Serenity Project Manager over two years ago is about to evolve into Web 3.5 Serenity became more than just flagship product, it became E29 itself, and over the past two years, has shifted into one of the most versatile, agile, and unbreakable application platforms on the Net. And I’m not saying that just because I wrote it all :P

It was a cold, cold day in the Winter of 2005 that I came up with a very rough idea for a bug tracker at IPS. At the time, it was to be a component for Invision Power Board called ‘Dev Center’. I actually still have the 0.9 codebase on a disk here somewhere. The design was decent, and the application more or less functioned. It had a couple of neat features like auto-posting bug fixes to the announcements forum and some member integration.

Management at IPS wasn’t too interested in Dev Center at first, so I worked on it 100% on my own time. This was partly because I knew that I wouldn’t be staying at IPS, and didn’t want them having any ownership claims over the code itself, a move which proved to be very beneficial.

I continued to add features into Dev Center, until it was pretty clear that it was outgrowing the IPB component framework, and needed to be ported to standalone.

This was a semi-big step, at least for me. On the one hand, I’ve always written stand alone apps. On the other, I wanted to make money with this thing, and breaking it out of a popular product might be a recipe for doomy doom doom.

After parting ways with IPS in 2006 and starting E29, Dev Center was sludged onto the sGen template layer from my first project, PSGamers-Online and rebranded to Serenity, after Malcolm Reynolds ship in the Firefly series. We were in dire straits at that point already, and Serenity was going to be our last hope.

I added more features, including an inline duplicate bug search, messenger, and more. Unfortunately, the core layer and sGen libraries were fundamentally flawed, and carried over quite a few annoying bugs from the early days of PHP3.

At release 1.0, Serenity was around 60 KLOC. The bulk of Serenity had been written in three months, while I was suffering from caffeine sensitivity. Thus, Serenity, through it’s first lifecycle, was coded entirely without caffeine :O

As E29 started to lift off and try out the services department, Serenity fell behind. I had a bunch of features I wanted to introduce, but unfortunately just didn’t have the time and resources yet. When I signed on with Citizant in 2007 to work on government contracts ( something I had been wanting to do for a while ), a lot of E29’s operations went into suspension.

Now, after six months of development work, mockups, design sessions, and user testing, Serenity Application Platform(tm) will see it’s first beta release tomorrow afternoon. We’ll be launching it out with a HelloWorld tutorial with the stable API’s, so that developers can get a taste of what Serenity is capable of.

“You buy this ship, treat her proper, she’ll be with you the rest of your life”. Here’s hoping.

1 Comment

  1. TehBilly on 11.04.2008 at 10:28 (Reply)

    I remember Dev Center, and even using it with Ineo. Wasn’t your fault we didn’t stick with it, although to my credit I used it longer than anything else we’d found!

    I’m interested in seeing what you’ve done with ‘er, boyo.

Leave a comment