I posted this on formtools.org, but thought a second post here was in order. A good day. :)


As of today, I’m returning to work on Form Tools. Woo! Exciting day! In case you’ve no idea who I am, I’m not surprised – I’ve been a bit of an absentee landlord the last couple of years. My name’s Ben Keen, I’m the lead developer. I was the guy that created Form Tools 10 years ago this summer (whoah!).

Maybe I should start with a little history.

Some history

Three years ago, thanks to my business partner Joseph Lo and a grant from the British Columbia Institute of Technology (BCIT) I was able to quit my job and work full time on Form Tools, working to commercialize the script and make it into a viable business. This gave me time to work on such features as the premium Form Builder and Data Visualization modules – both of which have greatly enriched the project. A big thanks to everyone who’s purchased them!

But the truth is, Form Tools was always very much a pet project for me, and commercializing it made me lose interest. I wasn’t able to focus on what I regarded as the most important features – error handling, performance, unit tests, code re-writes, and other such seemingly mundane stuff. Instead I had to work on things that would increase revenue. This was expected, but for a project that was formerly a hobby I found it difficult to swallow. I felt like the quality was slipping and there wasn’t anything I could do about it.

So after a great deal of thought and discussion with Joe, I decided to pass the reins over to him for a couple of years in exchange for getting full control back now. The last couple of years we’ve able to recoup our investment and justify the time and money spent on the project. A big, big thanks to everyone who’s purchased the premium modules! We really can’t thank you enough. Without your support we wouldn’t have gotten close to what we have to offer today. I really hope they’ve proven to be useful.

So that takes us to now. As of today…

Form Tools is now completely free

Yup! As of today, all modules are now free for download. The default download package now includes the Form Builder by default. All the other premium modules can be downloaded separately, like everything else.

I’m going back to relying exclusively on donations to keep this project up and running. You’ll see the old “Donate” page appear soon. Running this project isn’t cheap – server costs alone are over $250 a month, so donations are always welcome. But the donation model is something I’ve always been far more comfortable with – and I feel it frees me up to focus on whatever I want. No more worrying about sales.

Okay, so what does this mean?

This means I’ll be much more active with the project than before. People who’ve purchased premium modules are far more likely to see updates to the modules they purchased. This is good news for everyone, really. :)

I have a lot of plans for the project, some short-term, some long-term. And there is a LOT of work to be done, oh boy. But for now I just want to touch on three of the short-term goals that take the highest priority. Nothing to get your pulse racing, but all very necessary.

1. Moving the code to github

If you haven’t heard of it, github.com is a website devoted to collaborative software development. I’ve been using it extensively the last couple of years for my other projects (generatedata.com, d3pie, the pixelator and many others) and that’s where Form Tools belongs.

Pretty much the entire Form Tools codebase was written by myself. That’s insane. It’s huge! Huge! There are countless brilliant developers out there, many of whom may be interested in helping out. Github lowers the bar for entry and helps encourage contributions.

Moving to github has a number of deep implications for the formtools.org website. A lot of the functionality has close ties to the existing SVN repo, so that will all need to be refactored.

I’ve already created the Form Tools organization and put all the code up there (see https://github.com/formtools) but that’s only the first phase. The next step is…

2. Updating the website

This website is kind of a monster. As mentioned, it’s strongly tied to the old SVN repository which houses all the Form Tools code, so that all needs to be updated. Then there’s a lot of old junk that needs to be removed – premium module references, outdated content, broken links, etc. But above all, I need to revise the deployment and build process to allow me to update the site faster and easier. The current setup is a complicated mess. Occasionally formtools.org gets hacked due to WordPress or the forum software, and each time it’s a real nuisance to resolve. I want to tighten up all the nuts and bolts so formtools.org is more manageable and more secure.

Then once that’s done…

3. Back to Form Tools dev! Woot! 

The first thing to do with the FT codebase is to update it to ensure compatibility with PHP 5.5. I originally wrote Form Tools to support PHP 4.3 and I need to examine the whole thing so that it properly runs on 5.5.

And then… onto some much, much more exciting things. :) I’ll keep you posted with my progress, each step of the way.

Great to be back. There’s a lot of dust on this old script and it’s time to brush it off.

- Ben