Over 24 years ago I learned about a Mac application called »Frontier«. This application taught me, that the Internet is actually a programmable environment.
Frontier was a genius concept invented by Dave Winer, because it was not only a script language (called „UserTalk”). It also came with an object database and an editor to edit scripts as outlines (something some modern IDEs try to adopt and to better organize source code!). The scripts were edited and stored as objects in the very same database. The database could contain other stuff like texts, outlines, binary data, simple values — all in a hierarchical structure. An object in the hierarchy would automatically be accessible in the script like a variable. It was all self-contained.
I think originally it was created as an application development tool in 1992 for automating MacOS with a script language called UserTalk (before Apple came up with its own script language called AppleScript).
The hierarchy was fundamental:
Everything was organized as collapsible and expandable outlines. The database, the scripts and some texts could be presented and edited in a text window in outline fashion. Outlining is a good way to break down things — and much of what we do in our heads is basically creating meaning by deciding what is inside or outside of a concept. We learned to think this way when we learned to think & understand (or use computers).
It even could interpret and execute AppleScript. But compared to Apples own AppleScript UserTalk was much faster in Frontier.
If Apple would have chosen to include Frontier in MacOS it would really have changed the Internet. AppleScript never really took off, because it was missing a good environment to develop and without a good object oriented persistent storage it always felt like just a macro language to automate some OS tasks.
End of Frontier?
In the 90ies there were other people working with Dave Winer on Frontier at a company called UserLand. Brent Simmons was one of them and he runs the blog inessential.com.
UserLand was the company that continued to distribute Frontier (and some applications based on its scripting language). Dave Winer convinced UserLand to open source Frontier as Userland was marketing applications based on Frontier (Manila and Radio).
So Frontier became an open source project in 2006 and a small community continued to work on it for a while.
But there were only few people actually contributing to the Frontier base application. And while the operating systems evolve the original Frontier code does not compile on new OS releases. No one was maintaining it.
I was occupied with teaching and other projects, so I lost track of Frontier.
OPML Editor
In 2005 Dave Winer branched off a release of Frontier which is now called OPML Editor. He basically used the original Frontier application, rebranded it and developed new ideas on top of it (digging heavily into Web APIs, JSON, node.js, JavaScript, a.s.o.).
So what is the state of Frontier today?
- The frontierkernel.org Community has not changed anything since 2007. There was effort to better talk with SQL databases. But this wiki has not been maintained and most of the pages are not accessible. There has been some discussions on the SourceForge site of the project though.
- Ted Howard is maintaining a version of Frontier that is released as OPML Editor. And Dave Winer made clear to me that OPML Editor is basically pretty much the same application that Frontier was.
- Brent Simmons is working (more or less) on a port of the original Frontier application to Swift. Although he said he is very slow via Twitter! (Update: He wants to develop a clone called Rainier now!)
- Dave Winer himself is hinting about maybe he wants to rebuild Frontier in JavaScript one day. I would love to see that happening one day – maybe even as a hybrid desktop/web environment with cool collaboration features.
Leave a Reply