I’m rebooting a decade-old software project that you’ve almost certainly never heard of. I’d like to invite everybody along on that journey.

Bicker logo

Quick Background

From around 2007 to early 2010, I used Colagioia Industries as my primary means of income—mostly selling subscriptions to web services and “appliance” servers running software I produced—though it ultimately wasn’t enough to be sustainable. A big part of the sustainability problem, at the time, was that everything was written in Ruby on Rails v2.0, which suddenly announced a rash of show-stopping security vulnerabilities. Combine that with my payment processing company discontinuing business in the United States (since apparently also later shut down by the Canadian government for not catching widespread fraud) and the frustration involved in getting my customers to re-subscribe, all while upgrading and retesting everything, and it was more economical to just get a day job.

Since then, Colagioia Industries has been an account through which I will occasionally take consulting jobs, if I find them interesting or important enough, but otherwise is just a brand I’ll occasionally use when I publish a project that doesn’t make sense to just be from me.

I’ll go into more details on what the company did and does in the near future.

Bicker the First

…encouraged well-behaved conversations…

One of my favorite products of that multi-year effort was Bicker, a kind of discussion forum that encouraged well-behaved conversations by only allowing responses to be inserted after a punctuation mark in someone else’s post. And for cases where the original post represented a document, the author could take all the feedback into account and issue a new version, archiving the previous conversation.

It looked nice, worked well—even allowing users to see live “hotspots” where other users were commenting—and had some room to add further niceties, like allowing users to send and receive replies via e-mail, like old discussion lists. I used it with a team on one project, and I think we all liked it a lot and they weren’t just trying to protect my ego. I also sold several copies to companies who wanted it for inter-office communication.

Revenge of the Bicker

Bicker seems like an excellent test case.

Since I’ve been looking for a decent project and an excuse to get re-acquainted with the modern incarnations of Ruby on Rails, Bicker seems like an excellent test case. The original version—which I still have, but would be willing to bet is too poorly designed and outdated to bother using any of it beyond (maybe) the database models—only contains around ten thousand lines of code, while also having a straightforward mental model and workflow. It’s also something that I know can be accomplished, because I’ve done it before.

In terms of the blog, my plan is to be as transparent about the development process as I can, posting updates as I make some progress, talking about what worked, what didn’t, and what resources I found. Chances are, these “developer journal” posts probably won’t appear on days when something is already scheduled, which is currently Thursday (Real Life in Star Trek), Friday (Twitter Roundup), and Saturday (Free Social Networking Showdown).

All-New, All-Different

I expect the new Bicker to be licensed under the GNU Affero General Public License v3 and will have a public repository. I also have some potential plans for modernizing the concept, so we’ll see where it goes once it works. For example, while my original goal was to encourage better conversation, other systems now exist where that’s the central concept, and I’d like to see how portable those ideas might be.


Credits: I guess I just released the old Bicker logo under the blog’s CC-BY-SA license. And Bicky the mascot will probably need a reboot, too, since it’s a safe bet I don’t have any of the original art files left from those days.