I’ve met Hugo Duncan (@hugoduncan) at the first Blitzweekend; he wasn’t the most vocal but yet he’s one of the programmers who impressed me most, having managed to develop a UML interpreter based on 2 new languages, Cat and Heron. Everything was against him: his team was setup just late Friday evening so there was no prior work, there had to be a working prototype in less than 2 working days, he worked from an OLPC, and he also told me his background was in mechanical and hydraulicelectrical engineering.
On the last final day of Blitzweekend, when we saw the results, I knew we had one of the most brilliant programmers in Montréal.
Since then, Hugo has been involved in tech entrepreneurship in Montréal as a consultant and also as a lead developer/co-founder. One of his latest projects is cloudhoist, a web application for easier cloud hosting management. It was recently featured in Montreal New Tech. I’ve met Hugo and also asked him the following questions:
Can you describe in a few words what cloudhoist would do?
CloudHoist.com is a web site that aims to make it easy to configure, manage and scale servers in the cloud.
Who is targeted for? developers or sys-admins? experts or beginners?
The aim is to simple, flexible console that will appeal to both developers and sys-admins. We provide a simple form based configuration system for those that want to get started quickly, and are looking to allow the use of advanced scripting if required to pin done the fine detail. ClouHoist aims to provide a way to grow from a single monolithic server, through split database/web architecture, to load-balancers, message queues, etc.
Why a cloud management software? Companies like rackspace, slicehost already have their own control panel. Also, there are lots of third-parties management software available for Amazon EC2
At the moment, cloud companies provide interfaces that make it simple to launch servers, but provide little in the way of configuration tools.
One of the key reasons to use the cloud is to cope with varying traffic/work-loads (if you have stable server requirements then dedicated hosting is often cheaper). The longest part of getting a new server up and running is configuring it to do what you want. I remember starting my first cloud server. It took about 10mins to sign up, 10mins to select a server size and operating system, and then a few days to configure it. As Clayton Christensen points out in his book, “The Innovator’s Solution“, it is the “not-good-enough” point of solution that creates innovation and can lead to disruptive innovation.
I think the range of current innovation in cloud offerings reflects this well. If we look at Infrastructure as a Service (IaaS) providers, such as VMWare and Amazon, we see that they are trying very hard to provide value added services (eg Amazon’s Simple Message Queue, SimpleDB, etc) that simplify infrastructure configuration. Services such as Google’s AppEngine, or Heroku, which offer Platform as a Service (PaaS), take this a step further and provide platforms that scale with little or no configuration. At the other end of the spectrum we see the rise of the DevOps movement and interest in automated infrastructure management tools, such as Opscode’s Chef, which aim to automate the configuration of any server.
The cloud providers themselves have vested interest in providing value added services, as IaaS becomes increasingly commoditised. Tools such as Eucalyptus and Abiquo are going to make it increasingly easy to set up clouds and even second tier ISP’s are becoming interested in offering cloud services. The current offerings however come at a price for the user, as they create lock in to a specific cloud, and also constrain the architecture of a user’s product. If you use Google AppEngine for example, you do not have a choice of database, you have limited ability to use network services, and so on. If your application fits well with the constraints of a particular service then you can definitely reduce your time to market and infrastructure administration costs, but you pay the price in reduced flexibility in architecture and in lock-in to a provider with a specific price/service profile.
The automated configuration tools such as Chef or Puppet give you the freedom to run on any IaaS cloud, but require very detailed knowledge of server administration. They work well if you have a team of sys-admins who can set the whole thing up and run it, but they are definitely not simple to use without the sys-admin expertise.
CloudHoist aims to provide simple configuration of cloud infrastructure, without tying you in to a particular cloud provider. We aim to provide the power of the automated configuration tools, with the ease of use of the Platform as a Service providers, allowing you architecural flexibility, and the ability to use whichever cloud best fits you price and performance requirements.
The current homepage mentions pricing. Are you planning a software-as-a-service company? I’ve seen lines of code on github and it seemed an open-source projet at the time
CloudHoist uses the Pallet opensource project (which in turn uses jclouds). Pallet will continue as an open source project, and is similar in some ways to automation tools like Chef, and to Command and Control tools such as MCollective and Capistrono. The distinction is quite clear; CloudHoist provides a user interface, abstracts away the need to write scripts, and provides configuration services that package up some of the “best practices”.
We are still working on the details, but we aim to make it possible to run your custom Pallet “crates”, which are configuration functions, from within CloudHoist. This will enable advanced users to use the full power of pallet, while still having a console to provide easy access and overview. At the same time this also lowers the risk associated with a company coming to depend exclusively on CloudHoist.
Can you tell us a little bit about the back-end? Any goals on speed, (possible) real-time feature, periodic tasks, reporting, or technologies used?
Technology wise, CloudHoist will make use of many of the new features of HTML5 to provide feedback on the status of you cloud and your configuration actions. The backend is written in Clojure, a JVM language that provides many concurrency primitives that will simplify the scaling of the service.
The current site is aimed initially at configuration, but reporting is an area that would be a natural fit, especially when we implement automated scaling strategies
And the key question, when it is going to launch?
The site itself is already self hosting, in that we use a local instance of CloudHoist to manage CloudHoist on the cloud. The site is in alpha – we are accepting registrations for early access at this time. We are opening up the service to anyone that expresses a strong need for help solving their cloud infrastructure issues, and as we discover a business model that works.
We are very much believers in the Lean Startup and Customer Discovery methodologies, and we are looking to get users involved immediately – so let us know if you think this service will be of immediate benefit to you, and we’ll give you access.
Hugo Duncan tells me that while the website isn’t ready for production usage, he’s definitively open for feedback and collaboration. If you have a django, .net or rack application, he’s ready to make cloudhoist compatible and make it a compelling cloud management tool for developers. Go have a look!




Comments
Montreal Tech Watch July 19, 2010
Cloudhoist readies cloud hosting control panel http://bit.ly/aWKINF
mtltech July 19, 2010
[mtw] Cloudhoist readies cloud hosting control panel http://bit.ly/aWKINF
Nathanial Ofiesh July 19, 2010
Montreal Tech Watch » Cloudhoist readies cloud hosting control panel: Services such as Google's AppEngine, or Hero… http://bit.ly/97CDW9
blitzweekend July 19, 2010
RT @mtw: Cloudhoist readies cloud hosting control panel http://bit.ly/aWKINF
hugoduncan July 19, 2010
RT @mtw: Cloudhoist readies cloud hosting control panel http://bit.ly/aWKINF
CVCA Team July 19, 2010
Cloudhoist readies cloud hosting control panel http://goo.gl/fb/nLF5t
Forex Trading August 09, 2010
Alexis Smirnov September 03, 2010
RT @mtw: Cloudhoist readies cloud hosting control panel http://bit.ly/aWKINF
Roderick Streck December 31, 2010