← Projects

Code Coalition

A software consultancy I founded to build dynamic browser software — which promptly turned into an eBay search app, an instant-message chat-bot, and an MRI imaging platform.

consultancyajaxjavascriptjavaocamlmedical imaging

I launched Code Coalition in Sherman Oaks to develop dynamic browser-based software with AJAX and JavaScript. In 2007 that was a genuine market position: the browser had just become capable of behaving like an application, most software was not written that way yet, and someone had to bridge the two.

In practice, a consultancy takes the work in front of it. Three projects made up most of it, and they had almost nothing in common.

A dynamic eBay search application

nadabid.com, now long defunct — a search experience over eBay's inventory built the way I had founded the company to build things: everything happening in the page, nothing waiting on a full reload. Auction data is a good fit for that, because the thing you are looking at is changing while you look at it.

A configuration-driven chat-bot

A Java-based AOL Instant Messenger chat-bot, built and then supported. The design decision worth noting is the one in the name: it was configuration driven, so that changing what the bot did was editing a configuration rather than shipping new code. Instant messaging was the ambient interface of the era, and a bot sitting on a buddy list was, in hindsight, a conversational agent — the same shape of problem I work on now, with almost none of the same tools.

A medical imaging platform

The odd one out, and the most interesting: a platform for testing experimental algorithmic transformations on MRI images, with an OCaml back end and a Java front end.

The split is the point. The transformations were the research — the thing being changed and re-run and compared — and OCaml is very good at expressing that kind of code correctly. The front end was the part a researcher had to sit in front of, which needed to be conventional and unsurprising. Having just spent a year writing OCaml daemons at CSUN, I could put each language where it earned its place.

Winding it down

I shut Code Coalition down when I joined staff with Jews for Jesus, because of the nature of my work agreement with the organization. It was a clean end rather than a failure — and the beginning of most of a decade doing something else entirely.