Tuesday, February 11, 2014; 9:35:29 PM Eastern
Why Fargo 2 technology is exciting
- Fargo 2, the next version of Fargo, is in beta, and pretty close to release. The major change in this release is the CMS isn't in the server, it's in the static app that runs on the user's desktop.
- In the traditional model for content management, Model #1 in the diagram, most of the hard work is done on the server and there's a lightweight client written in JavaScript, that runs in the browser. The client assists the user in navigating a menu system for setting options and editing articles and images. Examples of apps that work this way are WordPress, Tumblr, Blogger, Ghost, basically most blogging and content management software.
- Because the heavy lifting is done on the server, and it's managing lots of users' sites, the servers are expensive. Huge data centers, with air conditioning and staff.
- A different model has always been possible, Model #2 above. My earlier company, UserLand, pioneered this with Radio UserLand in January 2002. It put the heart of the CMS on the user's machine, in a separate app you had to download and install. At the time there was no "cloud" for us to tap into, no Amazon S3 or EC2, or Dropbox, for us to leverage. But it worked! Radio was a popular product, even though the user was running a little server on their desktop (and most had no idea they were).
- Today we can do even better, because the browser running JavaScript is a very powerful environment. Installing a CMS on your machine can be done simply by loading a page. No software to install. It's really amazing when you think about it. (But not so amazing if you think how long it took to get here.)
- Model #2 has very little downside today compared to 2002. The cloud is ubiquitous and reliable. The software runs in the browser, no app to install. And today's machines are hugely powerful and can render a modest size website in a second or less (really). It's fast.
- The big win in doing it this way is that you can have a much richer interface for editing and managing content, because the work is distributed. As a result in Fargo 2, you can edit a whole website in a single outline. This is a first, a breakthrough. (I've been working toward this since starting my blog almost 20 years ago.)
- The new Fargo does almost all the work that a server-based CMS such as WordPress and Tumblr does. It relies on a tiny public component, called Fargo Publisher, which has been released under the MIT license. The protocol it uses is open, so other back-ends can be implemented, and other "static" software like Fargo can use it to help the user publish their work. I will document the protocol when it settles down, which will happen soon.
- We've already documented how to install this server software on Heroku. ;-)
- This is going to be incredible.