programmati.ca Open Studio

About

Programmati.ca builds client-side application engines

Its engines turn a description of an application into a running application in the browser. AppSPHERE is the first.

Where it came from

The first version of AppSPHERE was developed in 2001 by Amir Husain. Its AppSPEC language described an entire application in XML: the screens, the data pipelines and the state machine that connects them, rendered and run by an engine.

That version made its way into the technology stacks of giant Japanese telecom and financial-services companies.

Its core philosophy, a single document that specifies an entire multi-state application, has now been updated with the latest engine.

Why it is still ahead

Many of AppSPHERE's ideas have since been rediscovered and adopted piecemeal by JavaScript frameworks. The complete model, a fully declarative state machine for an entire application in one document, with loosely coupled components, remains a couple of generations ahead of today's web stack.

  • The entire application, including its states and transitions, is one spec that tools can read, check and generate.
  • Screens connect by label, and components bind to data by identity, so features attach without integration code.
  • Integration logic lives once in the engine, and a theme is a single attribute.

All eight reasons

The names

AppSPHERE is the engine. AppSPEC is the declarative XML language it runs. AppSPHERE Studio is the visual IDE: the workflow of Visual Basic, rebuilt as a modern tool.