A couple of weeks ago we launched EVO:RAIL, a new VMware solution. I have been part of this since the very beginning, the prototype project started with just Dave and myself as part of the prototype team with Mornay van der Walt as the executive sponsor (interview with Mornay will follow shortly as this project involves many different disciplines). After Dave developed the initial UI mock-ups and we worked on the conceptual architecture, Dave started developing what then became known internally as MARVIN. If my memory serves correct it was our director at Integration Engineering (Adam Z.) who came up with the name and acronym (Modular Automated Rackable Virtual Infrastructure Node). All was done under the umbrella of Integration Engineering, in stealth mode with a very small team. I guess something not a lot of people know is that for instance William Lam was very instrumental when it came to figuring out in which order to configure what (a lot of dependencies as you can imagine) and which API calls to use for what. After a couple of months things really started to shape up, the prototype was demoed to C level and before we realized a new team was formed and gears shifted.
Personally whenever I talk to start-ups I like to know where they came from, what they’ve done in the past, how things went about… as that gives me a better understanding of why the product is what it is. Same applies to EVO:RAIL, no better start then with the lead developer and founding team member Dave Shanley…
Good morning Dave, as not all of my readers will know who you are and what you did before joining the EVO:RAIL team can you please introduce yourself.
I’m the lead engineer, designer and software architect of the EVO:RAIL platform. I joined VMware about two and a half years ago. I started out in Integration Engineering, I got to see and experience a lot of the frustration that is often seen when trying to install, configure and integrate our technology. I’ve pretty much worked in web application engineering my entire career that has given me a really broad experience across consumer and enterprise technology. Before VMware I was the CTO of a really cool VC funded start-up in the UK as well as being the lead engineer over at McCann Erickson’s EMEA HQ.
One of the key messages in all EVO:RAIL sessions and discussions at VMworld was simplicity, what does simplicity mean to you?
Well, in my personal opinion, simplicity means an experience that feels natural and allows you to engage in it without having to think about it. It’s an intrinsic experience. ‘Don’t make me think’ is my professional mantra – I have always disliked systems that requires training up front in order to be able to understand it. Virtualization is extremely complex and our products are wildly powerful – but just because something is powerful and complex, it doesn’t mean it should leave you scratching your head.
Would you say not being over exposed to VMware products has helped shaping EVO:RAIL?
Well I would say that I spent a long time watching and observing and listening. I watched how we deployed our technology and consumed it (I built the online beta lab systems as well as designed the VMworld lab systems a couple of years ago). I saw and experienced a lot of the friction points that leave people dropping down to CLI commands and watching the wire. It was then I started thinking about ‘How would change this if I had the chance to re-architect these processes’. After that I literally threw away the rulebook, ignored everything we had done in the past and started from scratch to prototype something that would allow me to configure and manage this technology without any pain and without having to think about it.
If I look at the EVO:RAIL engine I cannot compare it to any VMware product out there, it seems to deviate from some of the VMware standards like for instance the use of flash. How come?
In order to invoke change, you have to upset the status quo. I deliberately decided to ignore every single VMware standard in order to build something that was truly a revolutionary experience from what we have created before. You can’t do that when you start inside a box. I was lucky enough to be given free reign to break eggs and rip up the rule book. I couldn’t have done it without Mornay Van Der Walt, VP of Emerging solutions and my boss. He protected me from every internal process that tried to stop me and my team in our tracks.
Okay, lets get a bit more in the weeds. The User Experience is truly unique for an enterprise solution in my opinion, can you go over some of the unique features in the configuration UI?
One of the very first choices I ever made was to implement automatic saving and validation of every thing a user does during configuration. This means there are no save buttons anywhere, they just don’t exist – and the first time you start typing you will instantly know your work is being saved and validated. You don’t have to think about it. Another nice feature is that the configuration UI is not a wizard, it’s more like a preferences system – so you can move in and out of each different category without feeling like you’re lost or you can’t remember what you selected. You can configure networks by creating IP pools (this was actually your idea Duncan) so you don’t have to configure individual IP addresses. We also make DNS config as simple as it can be, no zone files or reverse lookups. NTP, Syslog, Timezone can all be set from a single place, it even installs, configures and licenses vCenter Log Insight as well.
The Management interface also allows you to deploy virtual machines. Is the EVO:RAIL UI intended to be a Web Client replacement. Is the Web Client even supported?
No, the EVO:RAIL management UI is not intended as a replacement. The Web Client is a very rich and powerful tool that unlocks full access to the magnitude of power that vSphere provides. The Web Client has its challenges but it’s still our primary management platform. EVO:RAIL’s management platform was designed to provide a much more lightweight view to manage your VM’s and get a simple overview of the health of your appliance/cluster as well as enjoy an extremely simple and hands off licensing and patch/upgrade experience. It’s designed for people who don’t necessarily want or need to use the Web Client for simple VM management and creation. Some administrators will have no need for one, or the other (or both). The option is there however if you want either the heavyweight or lightweight experience. You can jump straight over to the Web Client from the EVO:RAIL UI when ever you want or need more power and control.
I know there was an early access program for EVO:RAIL, how did customers respond to the simplified interface?
It was a really interesting mixed bag but with a few universal consistencies. Every customer loved the simplicity, cleanliness, responsiveness and the experience of the UI. Some wanted some more control than the first iteration of our product facilitates, some customers loved one part of the UI but had little need for another. The general consensus was extremely positive and felt like we’d got it right and we’re heading in the right direction. As far as I am aware, there has been little to no negative feedback regarding the UI.
The UI also seems to make a lot of choices for you, for instance there are VM sizing templates but also VM security templates. How did you go about sizing?
When I want to build a VM, I normally think in three sizes Small, Medium and Large (well four if I need a micro/appliance type VM, but those are not common workflows). The sizes however are relative to the guest OS that I am creating. So a small Linux VM needs very different resources for a small Windows Server 2012 VM. So the templates are dependent on that guest OS – this means you get a specification that we feel is best practice for that particular operating system. The security policies are actually advanced virtual machine settings taken from risk profiles. The risk profiles are a part of the vSphere Security Hardening guide. William Lam came up with the security profiles feature based on his years of experience and he also wrote the VM size specifications per guest OS which were then tweaked by you (Duncan Epping). So I’m more than confident with our templates and profile specifications. They have been defined by the best.
I personally particularly liked the simplicity of the monitoring interface. Can we expect more integration with the hardware platform soon?
We’re definitely looking into that, the goal is to build a platform that allows our partners to expose some of the magic of their own hardware and give customers a more tailored experience. We’re working on it, but that’s about all I can say at the moment.
If you can talk about it, what is the focus for EVO:RAIL from an “experience” point of view for the upcoming releases?
Well, I’m going to keep that under wraps for now, we’re getting a metric ton of great feedback that needs a lot of careful discussion. As I mentioned before, my goal is to not pack in endless features, it’s about simplifying the experience of the entire technology stack and bringing enjoyment and confidence back to enterprise software. I can tell you however that this is just the start – We built our first iteration of the product with a tiny team of just 6 engineers (including myself). We did it all ourselves (including all the design) in just 8 months. Imagine what we’re going to be able to create as we grow. We proved we can do it and that we can do it to a world class level – now it’s time to bring out the big guns and really start getting creative.