I spoke to Christopher Seiwald, founder and CEO of Perforce Software, on the eve of the company’s 2011 user conference which starts today.
The Perforce product manages source code, dealing with version history, check-in and check-out, branching, merging and so on. It is excellent software, lightweight, fast and reliable, and there are Perforce clients for a wide range of development tools across multiple platforms. The company has been able to compete successfully against the likes of IBM and Microsoft by offering a tightly focused and vendor-neutral approach, with few dependencies, low management overhead, and fast performance.
Now Perforce is doing a web content management system, but why? “We thought the web content world was a very easy step for us, in terms of what we knew and what our customers are already using the product for.” says Seiwald. “We’re building a web content management system to sit on top of Perforce. It’s going to be open source, so our customers can extend it, and it’s built using PHP, Zend and Perforce. Our APIs are also open.”
If you look under the covers of a CMS system like WordPress, every post and comment is an entry in a database. In Perforce Chronicle, the database is abstracted by Perforce, and of course everything is versioned. “It is all hosted by Perforce, using more of a document model,” says Seiwald. “A database underlies everything, we have a database underneath our system. But the world shifted a long time ago, for certain things, from regularly indexed relational databases to things more like documents where you index everything, you index every word, because you can.”
Although the CMS system will be open source, the Perforce back end “remains our proprietary company jewels,” Seiwald told me. “I’m a big fan of open source. If we could figure out a way of funding our operation in an effective way with open source then we would, but we’re not that clever. The business model just seems to support having a proprietary back end.”
Nevertheless, there will be a free CMS server for small sites. The approach will be similar to that used for the version control system, where up to 2 users can use it for free. Sites with few authors and/or small amounts of content will likely be free. “My attitude has always been, get from people who are willing to pay their money, and if they’re not willing to pay, make sure they can use it anyhow.”
The features of the CMS are not yet available in detail, and Seiwald says the first release will be “as simple as possible. My goal is to get it out of the door so that you can manage a simple web site in Perforce. The guys who are working on the CMS are pushing to put more in; I keep pushing to get it out earlier.” However, since it is open source it should be possible to plug-in additional features.
Perforce Chronicle is part of a wider strategy, to embrace the cloud and to encourage users to version more of their content, perhaps all of it. “People are putting just about everything online somewhere, not just source code, because they think online is better than offline. Data sitting on your local desktop, that just makes people scared. Online, whether corporate online or out in the cloud online, is becoming more appealing.”
I am reminded of Microsoft SharePoint. In January 2009 I wrote a post SharePoint – the good, the bad and the ugly. Since that time SharePoint use has grown, but it still has that mix of great features, over-complex setup and maintenance, and parts that rarely seem to work as they should. I use SharePoint myself, and sometimes SharePoint decides that the document I have open is read-only, for no apparent reason. I have to save my changes locally, and then copy it back to SharePoint overwriting the original.
SharePoint may be awkward, but the problem it solves is huge: reasonably secure access to your content from anywhere, without VPN, and with versioning, programmability, and a bunch of other features. SharePoint is a way of storing content in the corporate cloud. Yesterday Apple released its iWork apps for iPhone, including Pages and Numbers. Using SharePoint web storage, I can open, edit and save documents and spreadsheets in Pages on the iPhone, for example.
It will provide the simplest of access to Perforce for the simplest of uses. Need to work on a document? Drag it to your desktop. Need to check it in? Drag it back to Perforce. Done. It not only is an example app for our new web services, but also takes advantages of the trend for simple, online document management – backed by the power of versioning in Perforce.
That is actually not quite enough. Users need to be able to double-click a document to open it, and save it directly from Office, before it is really seamless; and yes, SharePoint has that. Nevertheless, I think this is an interesting direction for Perforce, and done right could find a ready market.
There is a little more on Perforce Chronicle on the company blog, which is where I grabbed the screenshot, but expect more details soon as the conference proceeds.