Archive for October, 2007
Why Lisp?
One advantage to a proprietary hosted application is that no one cares what you use to get the job done, as long as it works. Now that we are open source, there is understandable interest in what that source code looks like. In our case, it turns out the majority of our software is written in a language called Lisp. For most people that even recognize the name, Lisp is that funky artificial intelligence language with all the parenthesis that was cool in the 80s, but is now dead.
Lisp is not dead, it just smells funny —Edi Weitz
So, why did we choose Lisp? Part of the answer involves Paragent’s history. When Paragent started, our goal was to create a development platform that would allow programmers to take advantage of idle computing resources in a corporation. We developed a peer-to-peer agent that spoke a special xml-based language that would make it easy to write programs and distribute the workload across many machines. When we decided to shift our focus from a development platform to a hosted desktop management service, we took a good hard look at what we had. It became pretty clear that we were a poster child for Greenspun’s Tenth Rule:
Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp.
We decided to take a closer look at Lisp as a possible implementation language for the new server component, along with Ruby/Rails, PHP and Python. I won’t go into detail on why Lisp is so great as there are many resources available that do a much better job than I can. Perhaps one of the most influential in much of Lisp’s recent resurgence is Paul Graham’s Beating the Averages. In addition, a new book by Peter Seibel called “Practical Common Lisp” had been released around the same time that we were considering implementation alternatives. He has a wonderful chapter on why lisp, and then followed it up with 31 more chapters of great Lisp programming education. After much deliberation, we decided to give Lisp a go.
True to the promises, we were able to develop and launch the first version of Paragent in record time with a limited budget. We were adding minor features every week, and then came out six months later with major new functionality including remote desktop and trouble tickets. In addition to the development productivity afforded by Lisp, we benefited in areas such as maintenance and support. One example is the ability to update running code on live production servers without missing a beat, sometimes with customers literally looking over our shoulders! Those are just a few of the obvious benefits from using Lisp, but there are hundreds of small ways that Lisp makes our jobs more fun every day.
Hopefully this piques your interest a little in this funny old AI language with all the parenthesis. If you want to learn more, check out the links above, download the Paragent code, and join the community!
New Installer
We have uploaded a new installation file that should make it much easier to get the Paragent platform up and running on your own system. It is a tar.gz file, and includes a script for installing on the Fedora distribution. You can get the file at the Paragent google project site here.
Why Open Source SaaS?
The primary method used by most web 2.0 companies to gain mindshare is to give away a “free” version of the service, and then hope they can up-sell a portion of those users to a premium service. The general rule of thumb in the industry right now is that for every 100 free customers, 1 will pay you money for your service. 100,000 users, and 1,000 will pay you money. Often, the up-sell is based on some value-add. More storage, additional features, no ads. At this point, it is almost formulaic.
Unfortunately the Paragent service doesn’t work that way. These aren’t 100,000 users, 80% of which will use the service for a month and never come back. For the Paragent application, behind each user are all the computers they are monitoring. And whether the user ever comes back to the site or not, that is tens, or potentially hundreds, of persistent SSL connections that we have to maintain. 100,000 users could be 2,000,000 potential agents connecting to us if we averaged 20 computers per account. We could limit the number of computers a free account could monitor, but the basic value is in the automation. Limit the number of computers you can monitor and maintain, and the service loses any value whatsoever. 90% of the heavy lifting in Paragent is simply maintaining the connection to the computer. The economics of giving away our service is just not the same.
That is the technical reason that the traditional web 2.0 freemium model doesn’t work for Paragent. There is also a more practical reason: a closed source SaaS model is bad for our customers. In the unlikely event that Microsoft closes its doors today, if you have Microsoft Word installed on your computer at this moment, you still have Word installed on your computer tomorrow. What happens if SalesForce were to close down, or 37signals? What happens if you can’t log into your sales force automation tool when you wake up one morning? It doesn’t take an extremely unlikely event to expose customers to the risk of closed source hosted service providers either. Acquisition is the number one goal of almost every single Web 2.0 company out there today, whether they admit it or not. A company could simply sell out, and the new owner decide they don’t like the current business model. Witness the firestorm after the flickr sale to Yahoo over a simple change in login accounts.
SaaS and closed source is the worst of both worlds. We believe our hosted model and services are key to our value proposition. By releasing our code as open source, we are giving our customers the long-term stability and flexibility of knowing they will always have options.
Paragent is Open Source
While it won’t be news to anyone that has gotten to this blog from our website, I wanted to write an entry announcing the fact that Paragent is now an open source company.
We have been working on this move for a while now, and there is still a lot more work to get done. It is not unlike getting a phone call that the in-laws are coming over for a visit. We are taking a look over the house and making sure all the dirty socks are in the laundry basket, and the pizza boxes are in the trash. We have created a new web site, and are hosting the project at code.google.com. Part of the process of moving from a closed-source company to open source is going over all the code that we are releasing. This means adding copyright/licensing boilerplate; scrubbing for passwords, emails and any other Paragent-specific details; creating documentation for community members; and bringing our current customers up to speed on what this all means.
It turns out that story is pretty easy: Paragent.com is still focused on providing a safe, secure hosted service that provides a cost-effective and headache-free tool for IT administrators to help organize their lives. The value we were providing yesterday is still the value we are providing today. However, if you are a developer, or an IT shop that likes getting under the hood, Paragent is now available as an open source download. We are even here to help with our expert and professional team to get you started, and keep you running.
In future blog posts, I will go into more detail about the hows and whys of moving to an open source model. Subscribe to the feed, check out the new site content, and download the code!