What I Do At Work

Normally I don’t post about what I do at work.  This isn’t due to it being any sort of state secret, it’s just that I want to try my best to avoid giving any corporate secrets away or otherwise upsetting the hand that feeds me.

However, things have changed.

As of today (well, actually as of a week or so ago… but we announced it today, so today is what counts) the corporate secrets we had are somewhat less secret.  Because Citrix have released XenServer as open source software.

This is both a huge deal, and not a huge deal at the same time.

Let me try to explain:

Xen is a hypervisor.  And Xen has always been open source.  As of a month or two ago Citrix passed the Xen hypervisor project management over to the Linux foundation.  Why?  Well mainly to get rid of the accusation that Citrix owned Xen and could take away their ball at any time.  This was a good thing – it wasn’t about making the code more open (it was already GPLed up to its eyeballs), it was about making the development process and governance more open.

But that’s in the past, and that isn’t what I’m talking about today.  Today I’m talking about XenServer being open sourced.

Now, XenServer is, in effect, a number of things.  Specifically its the brand of Xen – and the associated bits of software – that Citrix have sold and supported ever since they bought XenSource.  But thats all a bit unclear…

So lets consider XenServer the software

As of a week ago it consisted of:

Xen – the hypervisor.  Already open source and part of the Linux Foundation

XCP – which is most of the other tools that you need to actually use Xen.  This was also all handed over to the linux foundation.

Some privately owned bits of  code – including the Windows guest PV Drivers and tools.


And what has happened today is that we have rethought what XenServer is.  XenServer is now

“An open source distribution of Xen and all the tools needed to make Xen useful. “

So XenServer is to Xen what Ubuntu is to the Linux Kernel.

And all the tools that are part of XenServer have also been turned into their own open source projects.  You’ll find them on GitHub.  (Actually, this is a bit of a lie.  There are things that haven’t made it to github yet – the xeniface.sys windows PV driver, for instance, needs to have a chunk of code rewritten before we can open it up under a BSD licence.  But everything will get there. Eventually.  Citrix have been kind enough to dedicate a lot of manpower to let us do this)

You’ll soon be able to download and use a free, fully working version of XenServer.  No strings attached.

Meanwhile Citrix will have their own product plans based around this fully open XenServer model.

So thats the story – a free, enterprise grade, trusted virtualization solution that you can contribute to, based entirely on open source technologies, including the Xen hypervisor.  Thats a huge deal.  But most of it was actually already free – what has changed is how we develop it inside Citrix.  Thats a less big deal for you, but it has been quite a big deal for me and for my day job:

So.  What do I do at work all day?

I’m part of the Windows team for XenServer

In fact I’m the Dev Lead – which means I sit in more meetings than I’d like, worry more about bug numbers that I would like, and get involved in lots of discussions about process… which I actually do like… because I’m weird like that. I code and fix bugs.  And I write new bugs.  I scrummaster a little on the side.

Recently I’ve been handling our open sourcing efforts.  Writing our ReadMes and Maintainers files.  Moving our code out of Mercurial and into Git.  Changing out build system to cope with this.  Negotiating which licence we’ll be using.  And attending meetings.  Lots of meetings.

What the Windows team do is write the tools and PV drivers that you install on Windows guests running under XenServer.  And as of now all of these tools are open (except xeniface, like I mentioned above, and the installer, because we have some confusion as to what exactly should go in a clickthrough licence.).

We also do lots of the things that open source code alone can’t easily do, like sign drivers and get them to pass Microsoft’s logo tests and ensure our platforms are supported by Microsoft.

And this is what we’re going to carry on doing.  Windows 8.1 and 2012 r2 are looming on the horizon and we have some things we need to massage into shape.  But now everything we do you’ll be able to see on GitHub, download from XenServer.org and hear about on mailing lists (which haven’t actually arrived today – but word is they’ll be here soon)

Now, there are some caveats:  These new projects (Windows projects included) are not part of the Linux Foundation.  Just as some parts of Ubuntu are not part of the Linux Kernel.  And these new projects are not things we are used to maintaining as open source projects.  So we’re likely to make some mistakes (and quite possibly some enemies) as we make this adjustment to how we work.  But I’m planning on writing about it as much as I can in order to do my best to make sure we show as much of the working as possible.  I don’t know how easy it will be for us to take contributions, especially in the short term (but we’ll do our best).   Part of my contribution to this will be writing about what is going on – so you can see there is stuff going on.

This has been a lot of work and there is a lot more work to do in the coming days, weeks, months and years – but hopefully the end result will make using XenServer a lot easier, will make working with XenServer (both the product its interfaces and the people behind it) a lot easier, and will encourage more people to give it a go (and then, having fallen in love with it, to buy paid support and pay my salary)

As for me?  Well, that new other half of xeniface still needs to be rewritten.

You must be logged in to post a comment.

© Ben.Cha.lmers.co.uk