AppJet Launches!

December 12, 2007

As of today, we’re officially launched! That means anyone can come to
the site, read about our framework, use the IDE, and create an account
to publish an app.

It’s hard to launch something to the world. How do you know when it’s
good enough? We learned at Y Combinator that the real question is,
How soon can you launch? What needs to be done that’s keeping you
from launching today? The bottom line is that any task or feature for
which you postpone launch had better be worth it; what if you launch
and discover that the people most interested in your site don’t care
about that feature?

However, the fact that we’re launching means we feel that AppJet has a
core set of functionality that makes it already very useful,
especially for quick and simple web apps, where normally setting up
the hosting would take longer than writing the app.

We’re excited to introduce AppJet to the world. We’ve got big plans
for it, so think of this as just the beginning.

A ChangeLog

December 4, 2007

To keep track of the detailed changed we make to the AppJet site and software, we have started The AppJet ChangeLog. It’s an AppJet app itself!

Proud Sponsors of MIT BattleCode

November 25, 2007

We are proud to be sponsors of MIT’s BattleCode programming competition. When David and I were undergrads, we won this competition, and it was one of the funnest things we did at MIT. (Quick synopsis: contestants write software to control virtual robots that battle each other in a videogame simulation).

AppJet Kicks Off at MIT’s Splash

November 20, 2007

This weekend was the first time we let real users play with AppJet software. MIT has an annual event called Splash, where thousands of high-school students come to MIT for a weekend to take short classes on hundreds of different topics, taught by the MIT community.

We taught a beginner course on web app programming using AppJet. The goal of AppJet is to make programming web apps easier, so we figured if high school students could use it, then we were doing a pretty good job.

Side note: AppJet is not just for beginners. Easy does not imply power-limited. For instance, JavaScript is easy to learn, and with its higher-order functions and lexical closures, it’s a pretty advanced language.

150 students signed up for our class. We gave them the AppJet basics and then let them go and build apps. I was very impressed with the programs they came up with.

First came the kind of apps you would expect high school students to start with.

Then things got more interesting when they experimented with dynamic content.

Next blossomed a genre of question/answer apps.

And a genre of discussion-board apps.

One particularly impressive program was a simple yet useful app that puts Google in an iframe and lets you take notes on your searches, store them persistently, and organize them:

You might notice that many of the above apps are similar to one another. That is because the source code to an AppJet app is public, and you can easily “clone” an app to create a derivative work. In fact, we keep track of the entire family tree of apps: every new apps starts as the clone of an existing one, with the exception of hello-world, which was the first.

All in all, we have over 400 apps running on our system after the weekend. Granted, most of them are only slight modifications to hello-world and receive very little traffic, but we think this release is a major first step toward making it easier to get a web app online.