The OpenStack Blog

Author Archive

Open Mic Spotlight: Dan Smith

9998950f4ac00c8f357d1f9640d4860eThis post is part of the OpenStack Open Mic series to spotlight the people who have helped make OpenStack successful. Each week, a new contributor will step up to the mic and answer five questions about OpenStack, cloud, careers and what they do for fun. 

Dan Smith is a Principal Software Engineer at Red Hat. He works primarily on Nova, is a member of the core team, and is generally focused on topics relating to live upgrade. You can follow him on Twitter @get_offmylawn

1. If you couldn’t be a developer, what would your dream job be?

I’ll try to answer this by quoting some code from


import developer

except ImportError:

raise Exception(“Cannot continue without the developer module!”)

2. What behavior has helped get you the furthest as a developer?

I’d say: Figuring out who the smart and productive folks are and learning to do as they do. OpenStack is a great project for that because it’s chock full of smart folks to learn from.

3. What is your favorite project that you’ve contributed code to?

It sounds contrived, but, definitely OpenStack. I can’t recall a past project that had me as motivated to review patches in the car on the way to a weekend vacation or rebase/resubmit my patches on a Saturday morning. The incredible velocity and high density of excellence on this project makes it fun. I feel privileged to be able to work on OpenStack for my day job.

4. How did you learn to code? Are you self-taught or did you learn in college? On-the-job?

When I was very young, I was given a Commodore VIC-20 with no game cartridges and some empty cassette tapes. It didn’t do much unless I made it happen, so I had to learn to write code for it. I still have the thing in the attic, but I keep the reference manual on the bookshelf with other technical books.

5. Be honest – are you more likely to know your project collaborators by their IRC nic or their actual name?

The only reason I know a few people by their actual names is because their IRC nicks haven’t been on the badges at recent design summits. I hope that will change in Hong Kong :)

Open Mic Spotlight: Armando Migliaccio

armaxThis post is part of the OpenStack Open Mic series to spotlight the people who have helped make OpenStack successful. Each week, a new contributor will step up to the mic and answer five questions about OpenStack, cloud, careers and what they do for fun. 

Armando Migliaccio is a restless Italian expatriate who moves back and forth to and from Europe. Armando and OpenStack met on a sunny day of July 2010; since then he  has worked on many OpenStack projects, mostly Nova and more recently Neutron, where he is a core member. Currently at VMware, he spends most of his time ensuring that VMware technologies are the most advanced and feature-rich ones to deploy OpenStack on.

1. What random or unique items are in your bag or backpack right now?

Backpack? Who needs a backpack? Everything is in the cloud! No, seriously everything I have in my bag is just enough to get me there…a laptop/tablet and a charger.

 2. Where is your happy place? Favorite place to visit, vacation, decompress? 

Somewhere in Italy, most preferably in the hills of Tuscany.


Picture compliments of Jean Luc Benazet

3. What is your go-to beverage or snack while coding?

When I code all I need is to be immersed in my music….water if it’s going to be a long long session.

 4. What do you think is the coolest thing that’s happened with OpenStack over the past three years?

Adoption. It is unbelievable how many companies and individuals have embraced it. Some people are still scratching their heads on how to tame the beast…especially around upgrades, which may hold back a little…but once the last wrinkles are figured out (like deprecating nova-network in favor of Neutron), OpenStack will sky-rocket, if it hasn’t already.

 5. How did you learn to code? Are you self-taught or did you learn in college? On-the-job?

I started some trivial coding back when I was 9, first in Basic and then Pascal and C when I was slightly older. After that I could say that I was already scarred for life so going into computer engineering seemed like the most sensible choice :)

Open Mic Spotlight: Alessandro Pilotti

OLYMPUS DIGITAL CAMERAThis post is part of the OpenStack Open Mic series to spotlight the people who have helped make OpenStack successful. Each week, a new contributor will step up to the mic and answer five questions about OpenStack, cloud, careers and what they do for fun.

Alessandro Pilotti is the CEO of Cloudbase Solutions, a company focused on cloud computing interoperability based in Verona, Italy and Timisoara, Romania. Cloudbase Solutions provides the integration between OpenStack and Windows, including the Hyper-V compute driver and Cloudbase-Init (Cloud-Init for Windows).

Alessandro is currently an MVP on ASP .Net / Internet Information Services and a Windows Azure Insider, holds a master in computer science, various certifications in the IT domain (MCSD, MCSE, MCDBA, RHCE). He enjoys doing technical speeches, developing open source projects and participating in the IT community life in general.

When not coding, consulting or training, he is flying with his paraglider into old fashioned clouds. You can follow him on twitter at: @cloudbaseit

1. What do you think is the coolest thing that’s happened with OpenStack over the past three years?

Well, obviously the reintroduction of Hyper-V starting with OpenStack Folsom. :-) I’ve always been a huge fan of interoperability and what we are doing is helping bridging the gap between Microsoft based infrastructures and the open source world. Being able to choose among a huge range of underlying technologies is one of the strong points in OpenStack and I’m definitely proud to be part of this effort. So far the work I’m doing with my team includes the Nova Hyper-V compute agent, Neutron Hyper-V plugin and agent, Ceilometer Hyper-V compute inspector, Windows guests support (Cloudbase-Init) and way more. All this stuff has been released during only one year and we have a lot more in the works for the upcoming releases!

2. What behavior has helped get you the furthest as a developer?

I’d say being open minded and driven by passion is what helped me the most. This is for sure more a craft than a job, which requires a very well balanced mix of logic, creativity and analytic skills. Unlike most other crafts, our tools change and evolve continuously, which means that a consistent amount of time needs to be dedicated to reading about new stuff and trying it. I’d divide the skill set required to make a good developer in four main areas: coding, architecture, testing and sysadmin skills. In cloud computing we are also witnessing a very interesting effect: the two main IT categories, developers and sysadmins are merging into this new figure: the devop. Basically a convergence between sysadmins with scripting skills and devs with os knowledge. The former usually lack on the coding and architectural side (e.g.: design patterns) and the latter on the sysadmin side, so my strong suggestion here is to invest as much time as possible in closing up the gap, whatever side you are in.

One thing that definitely helped a lot in shaping my skillset was to learn early on how to use directly the operating system APIs as much as possible. Back in the day there was no choice, any decent application was written in C/C++ and that was it. The rise of bytecode based frameworks (Java. .Net) and dynamic languages (Python, Ruby, etc) added a big and confy layer between the developer and the underlying system, which means that nowadays developers have a hard time in getting stuff done that requires going beyond the framework limitations. You don’t even need to get your hands “dirty” with old school C/C++, Python offers modules like ctypes to get the job done easily, you just need to know what to do. All of our OpenStack contribution is entirely written in Python, if you take for example Cloudbase-Init there are quite a few examples of this type of coding.

I noticed that people tend to learn a language on a specific OS and environment and stick to it. IMO this will never give you that “plus” that will make you see things differently when needed, ending up in the “when all you have is a hammer, everything looks like a nail” situation instead.

There’s quite a lot to add, especially if you run a team, but that’s a different story!

3. How did you learn to code? Are you self-taught or did you learn in college? On-the-job? 

A big mix of all three: self-taught while on-the-job plus the few bits that you can learn at college. Here’s how the story went:

I got an assembled 386DX based PC towards the end of high school, back in the very early ’90s and I started coding professionally almost right away on the first small projects. I’ve always been attracted by lots of different things, out of curiosity and awe for cool engineering. I started out coding in C++ on Windows 3.1 (don’t laugh, that’s what was available at the time!) which had a very solid set of APIs in common with what was going to be released as Windows NT, still in use nowadays in Windows Server 2012 R2. Due to the obvious limits of Windows 3.x and the inaccessibility of the Windows NT requirements (12MB of RAM were a preposterous amount those days for a poor student!) I moved on shortly afterwards to OS/2 (a true gem for its time) and Linux which was beginning its amazing story.

I didn’t leave Windows behind, but I started being happy with what Microsoft was releasing only from Windows 2000 onwards. Getting used to coding with the raw APIs and system calls on all those OSs proved to be an important school. I had a web development startup with some friends around mid 90′s and obviously the hosting servers used to be on the very cheap side running Linux, so that’s where I started getting my real sysadmin skills while the coding side was mostly boring PHP. Around 2001 I started doing lots of consulting and training in the Microsoft area as well. I started also collecting certifications: MCSD (both VS 6.0 and .Net), MCSE, MCDBA, MCT plus the Red Hat Certified Engineer (RHCE) certification on the other side. The M.Sc in computer science that I got in the meantime added more on the ability to quickly adapt to new subjects and on the math and logic side than real world skills.

4. Where is your happy place? Favorite place to visit, vacation, decompress? 

When I’m not traveling around the planet I spend most of the time in Timisoara (Romania) where our HQ are located and this leaves almost no time for proper sleeping, let alone thinking about vacations! That said, whenever I can, I sneak out to Verona (Italy), spending time flying with my paraglider in the mountains close to Lake Garda. Here’s a picture of one of the take off areas:


I love the utter simplicity of this sport: it’s just a high tech rag with a harness, reserve parachute and a GPS that you can carry on your back. All you need are thermals to gain altitude (with potential energy being your only “fuel”) and you can experience some gorgeous views, an amazing sensation of freedom and quite a few funny adventures, especially if you end up landing in the middle of nowhere. Good pilots (not my case, heh) can fly 100-200km during a good day. Although my piloting skills are quite raw, especially since my airborne time is very limited lately, I can still brag that I’m one of the very few stackers that really got “in the cloud”. ;-)

5. What do you think OpenStack will be used for in 20 years, 50 years!?

I unfortunately don’t own a crystal orb, but IMO the cloud as we conceive it today will change radically quite soon. In the end, all this virtualization thing is quite prehistoric. IaaS tools today are largely focused on enabling operating systems created for physical environments to run in a virtualized one, with quite a lot of overhead dedicated to emulate physical machine behaviours which leads, among other drawbacks, to uselessly long boot times.

Hyper-V for example already introduced with the latest release a “second generation” virtual hardware which largery improves boot times by providing a slightly different boot process and removing devices which are useless in a virtual world. I’d bet that the future will bring more “cloud only” operating systems, which means that OpenStack will have to adapt very fast to whatever direction the technology will take.

OpenStack is getting very big and the issues that we experienced with the Havana release are showing that too many features are being proposed and implemented, without enough bandwidth on the review side. I truly hope and wish that we’ll be able to maintain the flexibility to adapt to new challenges in a timely fashion to reach the 20 years mark. 50 years? Intelligent OpenStack services/agents wearing black suits with dark glasses and public phone calls instead of RESTful APIs? :-)

Open Mic Spotlight: Terri Yu

This post is part of the OpenStack Open Mic series to spotlight the people who have helped make OpenStack successful. Each week, a new contributor will step up to the mic and answer five questions about OpenStack, cloud, careers and what they do for fun. terri-yu-hockey

Terri Yu is a GNOME Outreach Program for Women intern working on the Ceilometer component of OpenStack. She also contributes to the open source organization Software Carpentry (part of Mozilla Science Lab), which mission is to teach scientists software skills. In her previous life, she did physics research at MIT and Yale in high energy physics, quantum information, and quantum optics. Now she is transitioning into a career in software and/or data analytics. You can follow her on Twitter at @terrimyu.

1. Where is your happy place? Favorite place to visit, vacation, decompress? 

The ice rink. I’m a diehard hockey player. Usually, I play a defensive forward role, but I’m working on my wrist shot. I love skating fast and spraying snow when I stop. I hope someday to play in the USA Hockey Nationals tournament.

My favorite teams are the San Jose Sharks (NHL) and the Yale Bulldogs (NCAA).  Recently, I started collecting jerseys.  I have few Sharks jerseys, and I just bought a Québec Remparts jersey because I really want to see a Canadian Major Junior hockey game.

2. How did you first get involved in OpenStack?

I had never heard of OpenStack until I started applying to the GNOME Outreach Program for Women. It’s a program that gives women the opportunity to work on open source projects under the guidance of experienced mentors. I applied to several organizations, OpenStack being my top choice. Fortunately, I was accepted!

My background is in physics, and currently I’m transitioning into a software or data analytics career.  I applied to the internship program to get some software experience.  OpenStack is a great fit for me because I’m interested in things like backend, infrastructure, and heavy duty computations for science applications.  I also wrote a blog post that elaborates more on what attracted me to working on OpenStack.

I’ve been an intern for the past 3 months working on the Ceilometer component under the guidance of my fantastic mentor Julien Danjou, who was recently featured in Open Mic.  I’ve used lots of open source software, but I had no idea you could get paid for working on it.  I’m seriously thinking about a career in open source!

3. How did you learn to code? Are you self-taught or did you learn in college? On-the-job? 

It’s hard to remember exactly when I started.  I vaguely remember reading a LOGO program and typing it into the computer at elementary school. As a teenager, I took two summer programming classes in C and Pascal and a college level Pascal course in high school.  When I went to college at MIT, I was lucky enough to take the legendary Structure and Interpretation of Computer Programs class taught in Scheme (a language similar to LISP). It was the best class I ever took in college and my first exposure to functional programming. Recently, MIT radically altered the course and switched the language to Python, which makes me sad because Scheme is such a unique and fun language. Nothing against Python, but there are so many learning materials for Python such that you can always pick that up later.  A few years ago, while I was still in physics graduate school, I took an online course with Software Carpentry, which introduced me to the basics of modern software development including version control, automation, and testing.

I’m aware that women are not proportionally represented in software, but I was really spoiled because I grew up in Silicon Valley and my parents insisted that I study technical subjects like math, science, and programming.  My family got our first computer when I was 13 and it was an Apple II GS.  I always thought coding was fun, and until I became an adult, I had no idea that there are women who are discouraged from coding. That’s how fortunate I’ve been. I hope we can increase the number of women who have the same experience as me.

4. What do you think OpenStack will be used for in 20 years, 50 years!?

I studied physics for a while, so my (biased) view is that OpenStack will become a widely-used platform for computational science. I hope that some of the great problems in neuroscience, genetics, condensed matter physics, etc will be solved on clusters running OpenStack. This isn’t so far fetched since CERN and Argonne National Laboratory are already using OpenStack for computational science. The Savanna Project is working on making it easy to “provision and manage Hadoop clusters on OpenStack”. Open source software is an essential tool for science, not just because of low cost but because it allows scientific knowledge to be readily shared and accessed by everyone. I’ve become very interested in the intersection of open source software and scientific research, after having volunteered at Software Carpentry bootcamps.

5. What are your tips or tricks for surviving jet lag or long conferences?

I don’t know about jet lag, but I like to bring my Nintendo DS Lite for long airport waits and transcontinental flights.  It has a super long battery life, so if my flight is delayed, no problem!  I can bury myself in Phoenix Wright: Ace Attorney or Civilization Revolution.


Open Mic Spotlight: Christopher Armstrong

This post is part of the OpenStack Open Mic series to spotlight the people who have helped make OpenStack successful. Each week, a new contributor will step up to the mic and answer five questions about OpenStack, cloud, careers and what they do for fun. me-bw

Christopher works for Rackspace on the OpenStack Heat project, focusing on autoscaling. I’ve been contributing to open source software for over ten years now, and I love working in Python. I spent a bit of time in the game industry, and while it can be fun, I’m happy to be back working on system/framework-level software, especially open source!

 He lives near Dallas, TX. He loves Greenville Ave Pizza, Revolver beer, and RPG video games :-) You can follow him on Twitter @radix.

1. What is your go-to beverage or snack while coding?

Usually a gallon jug of water is sitting on my desk. I also run to my local indie cafe at least once a day to have a break and drink a cortado.

2. What is your favorite project that you’ve contributed code to?

That’d have to be Twisted — it’s where I cut my teeth on open source hacking, and also where I have developed many friendships in the community. I don’t get as much time as I’d like to contribute to it these days, but when I do I’m in my happy place :-)

3. How did you learn to code? Are you self-taught or did you learn in college? On-the-job?

Self-taught, with casual mentorship from people in the Twisted community (especially Glyph Lefkowitz, Jean-Paul Calderone, and Allen Short).

4. How did you first get involved in OpenStack?

I became a contributor to OpenStack recently when Rackspace hired me to work on Heat. It’s been a pleasure getting involved with the Heat community and learning a lot of stuff about orchestration that I didn’t previously know. I can’t wait for everyone to start orchestrating their deployments with Heat!

5. What are your tips or tricks for surviving jet lag or long conferences?

5mg of Melatonin at 11:00pm (unless I’m out until 1am at the pub…). Definitely helps me get a good 7-8 hours of sleep even while jetlagged!

Open Mic Spotlight: Flavio Percoco

Screen Shot 2013-09-12 at 8.40.46 AMThis post is part of the OpenStack Open Mic series to spotlight the people who have helped make OpenStack successful. Each week, a new contributor will step up to the mic and answer five questions about OpenStack, cloud, careers and what they do for fun. 

Flavio spends most of his time hacking on storage (Glance [core member], Cinder, Swift) and messaging (Marconi [core member]) modules. He has both Italian and Venezuelan roots, and is currently based in Italy where he works remotely for Red Hat. Flavio is also an actively open-source contributor and part of Mongodb Masters group.

Prior to Red Hat, Flavio worked on Big Data oriented applications, search engines and message systems. He was also an active member of Gnome’s a11y team where he contributed to Orca and created MouseTrap, a head-tracker application. Outside Red Hat, he likes to take pictures, swim, travel, hang around with family and friends and whatever seems interesting. You can follow him on Twitter at @flaper87.

1. What is your go-to beverage or snack while coding? 

Coffee and Gummy Bears. Here’s proof:

2. What behavior has helped you get the furthest as a developer? 

“Be humble about the things you know and fearless about the things you don’t know… And keep going.” I always remind myself this.

Computer Science is one of those careers where people never stop learning. It keeps evolving every second, there are always new things to learn, share or do.

I consider myself a very passioned developer and I’m always looking for new things to learn and share. Whenever I get the chance, I dig deeper on the things I like the most and I’m always looking forward to share everything I know with other people.

This way of thinking has taught me that knowledge is worthless if you don’t know how share it.

3. Why did you get into computer engineering?

I’m not one of those who started playing with computers since he was 3 years old. I spent my childhood playing outside my house rather than inside it. I started playing with computers – and I mean programming - when I was almost out of high school – or was I out already? mmh – and I completely fell in love with it. My first distro was RHEL and after it I jumped through a whole bunch of different distros.

My other options besides computer engineering were: Physics, Medicine or Psychology but I’m programmatically lazy so, here I am. I still want to study Physics, though.

4. What are your tips or tricks for surviving jet lag or long conferences?

Trust your clock, it’s always right (unless you forget to change it to the local time).

Don’t think about how tired or hungry you are because you’re not. If your clock says 12:00 then it is time for lunch, if it says 20:00 it’s time to have dinner and if it says 2:00 then you can be tired and go to bed.

I call that: “Biology by approximation”

5. Not counting the obvious (your colleagues or close former colleagues), who have you worked with closely, built a relationship with or learned the most from in the community? Why? 

Without any specific order:

Doug Hellman: No matter how or with regard to what, I always learn something new from him. Email threads, reviews or code, it doesn’t matter, he’s always teaching me something.

Devananda van der Veen: When we met at the last Europython, we not just talked about technology but also about Philosophy and Buddhism. I really enjoyed our conversations and learned at lot from them.

The whole Marconi team: Those guys rock. We’ve been working very closely since the project started. We’ve made calls, meetings and hung around on IRC. All this time, we’ve shared and learned from each other. Also, I’d dare to say that Marconi’s irc channel is the funniest throughout OpenStack.


Open Mic Spotlight: Julien Danjou

JulienDanjouThis post is part of the OpenStack Open Mic series to spotlight the people who have helped make OpenStack successful. Each week, a new contributor will step up to the mic and answer five questions about OpenStack, cloud, careers and what they do for fun. 

Julien is a Free Software hacker working as a independent consultant. He’s the Project Technical Leader for OpenStack Ceilometer, and a member of Oslo core. He also contributes to other free software projects, like Debian and GNU Emacs, regularly. You can follow him on Twitter @juldanjou

1. What is your go-to beverage or snack while coding?

Coffee, without surprise, especially in the morning. However, I can’t drink coffee during my late evening coding sessions, for obvious reasons (I do need to sleep), so I enjoy scotch whisky once in a while.

 2. What behavior has helped get you the furthest as a developer?

I think being pragmatic most of the time helps a lot. It’s very hard to keep this in sight, as I, like many developers I guess, do have a tendency towards building some sort or perfect systems. But you have to make compromises all the time, and being ready to do so every day helps a lot building successful communities and projects. Also when dealing with open source projects, being humble and diplomatic is also a key to get your contributions accepted. You have to remember that you’re entering a zone where people don’t owe you anything and may be smarter than you.

3. What is your favorite project that you’ve contributed code to?

I think that it’s the on I use the most (I’m typing this in it), and it’s GNU Emacs. I do a lot of things with Emacs, coding obviously, reading and writing my mails, chatting on IRC, etc. It’s a really powerful tool for developers, and is easy to leverage to help in you in any tasks. And it got me into Lisp, a fabulous programming language, I’m thankful for that!

4. Have you organized an OpenStack meet-up/event or spoken about OpenStack at an event? What did you learn? What was the best part?

I spoke at a couple of events, and it was really great. I think the best part is getting feedback from users on what you built. This is really rewarding at a personal level, and valuable at a product level. That way, you know that you’re on the right track, or not.

5. Where’s your favorite place to code? In the office, at a local coffee shop? In bed?

This isn’t going to be original, but I do like to code at my desk at home. I find it hard to work in corporate offices most of the time, due to the noise, people going in and out, etc. I do prefer quiet and calm places so I can concentrate. Though I experienced doing OpenStack code reviews from a deckchair in the garden this summer, and it’s definitely something that I’ll have to try again!

Open Mic Spotlight: Julie Pichon

jpichonThis post is part of the OpenStack Open Mic series to spotlight the people who have helped make OpenStack successful. Each week, a new contributor will step up to the mic and answer five questions about OpenStack, cloud, careers and what they do for fun. 

Julie Pichon is a Software Engineer at Red Hat. She focuses her efforts on Horizon, the OpenStack web dashboard, and is a member of the core team. You can follow her on Twitter @jpichon_net

1. What do you do when you’re not obsessing over and working with OpenStack?

I’m usually found immersed in learning Japanese, or organising events and workshops for my local hackerspace here in Dublin (

2. What was your first commit or contribution and why did you make it?

My first contribution was a patch for the Horizon security groups form, to allow a security group to set itself as an allowed source of inbound traffic. I’d been working with AWS for a while and the problem was fresh in my mind, and the fix looked simple enough for a first contribution. It was interesting to figure out places where Horizon uses Django differently, such as the test fixtures. Getting set up with the development tools like Gerrit was a breeze thanks to the wiki documentation.

3. What other OpenStack developers deserve a shout out for the work they’re doing in the community? Who are our unsung heroes? Your own?

I’m really excited about the work Daisy (Ying Chun Guo) is doing to shape the internationalization team and increase the visibility of the translation and internationalization work. It’s important in order to make OpenStack more accessible and increase its adoption, and related issues shouldn’t come as a second thought.

4. What do you think are the benefits of the open, community-driven approach to development?

Personally, I enjoy the way it brings together people from all over, with their own perspective and strengths to enrich the project with. It avoids wasted, duplicated effort behind walls. It’s a great way to get interested people involved and to bring them up to speed, making the project more sustainable. There are many more.

5. What is your favorite productivity hack? Secret trick? Shortcut you’re slightly embarrassed to admit?

Since I usually work with different versions of devstack and openstack in multiple VMs, I found my life greatly improved when I discovered emacs’ TrampMode for editing remote files. I find it much easier to have all the files I need open in the same editor on my main machine rather than sessions or editors open everywhere. It’s saved me a couple of time too, when a VM died an untimely death…


OpenMic Spotlight: Gabriel Hurley

OpenMic_Gabriel HurleyThis post is part of the OpenStack Open Mic series to spotlight the people who have helped make OpenStack successful. Each week, a new contributor will step up to the mic and answer five questions about OpenStack, cloud, careers and what they do for fun. 

Gabriel Hurley is the Technical Lead for the User Experience team at Nebula Inc., PTL for the Horizon project, a member of Keystone core, and a core committer for the Django web framework. He has contributed to all the core OpenStack projects and developed numerous clients for interacting with OpenStack. His background is in web development and interface design, with a focus on Python and JavaScript development. Gabriel was first introduced to OpenStack while working at NASA, where his skills were immediately applicable to the nascent OpenStack dashboard project. Given his strong personal belief in open source this was a natural fit. Within six months he had moved to Nebula and began working full-time on OpenStack helping to build the future of this incredibly important endeavor. You can follow him on Twitter at @gabrielhurley.

1. Are there skills that you think are critical for OpenStack developers in the next 5 years? What specialties will be most useful? Valuable?

There are a few discrete layers of skills, and a few crosscutting talents. There will always be a need for people who understand the most fundamental layers: virtualization (flipping bits), storage systems (storing bits), and networking (moving bits). Those people will ensure that OpenStack gets faster and more resilient. There is also already an unmet need in OpenStack for people who craft great user experiences. In between are the folks who build the glue code and things like APIs that make it all hang together. In a more general way, OpenStack needs a pervasive awareness of a few key areas. Foremost, more people in the community need to have a basic understanding of security. This is the hardest job in Open Source, because as a security person you normally think in terms of attack vectors, audits and reviews. In Open Source a security person needs to spend as much time or more educating other people, because the best security comes from having the people who write the code in the first place be aware of the implications of what they’re writing. The most insidious security holes are buried in otherwise innocuous code, introduced by someone who simply didn’t know any better. Even worse is when a community embraces a practice that actively increases vulnerability (I’m looking at you, Rails…). Secondary to that, OpenStack needs its developers to be more aware of their end users. This shows up most prevalently in the APIs (which are often downright painful), but it also appears in configuration, deployment, and lots of other places. If every developer stopped for 5 minutes and thought about how someone else would use the code they’re writing a few months from now we’d have a much more functional OpenStack. So much of it has been written by people who had their use case in mind. We’re getting better about this as the community grows, but there’s still a lot of room left for more focus on the users.

2. If you could start your career over again, where would you want to begin? Advice for someone just getting started?

Quite honestly, I think my career’s had a fantastic trajectory. I could only wish I’d gotten started sooner. Everything good that’s come to me professionally is because I got involved in Open Source early in my career, I gave it my all, and I learned from fantastic people. Aside from all the magnificent developers in the Python and Django communities, I can’t stress enough how much I learned about leadership in an Open Source community and how crucial that aspect is. OpenStack still has a long ways to go in that regard. But my advice to anyone just getting started is to get involved with Open Source. Why? There’s no barrier to entry; you can do it RIGHT NOW! (I won’t be offended if you stop reading to go start contributing.) You can pick a project you actually use and care about. You will learn from people much smarter than you. You will be exposed to ideas you wouldn’t have ever considered. Still not convinced? How about the fact that Open Source is getting higher profile by the day?Recruiters look at GitHub profiles. Top companies hire talent based on their Open Source contributions alone. It gets your name out there forever and ever in a way that working for a private company almost never will. Need more? How about the fact that the work you do in Open Source immediately benefits people around the world. You’re actively helping people you’ve never met or heard of. I don’t know about you, but all those things make me feel pretty good at the end of the day.

3. What do you think are the benefits of the open, community-driven approach to development?

If you couldn’t already tell, I’ve been involved with Open Source my entire engineering career; I’m a huge advocate for Open Source. Let’s imagine for a moment that one company could somehow amass such a staggering sum of money that they could hire all the talent that contributes to an Open Source project. And then that they devoted the time of all that talent to a single project. You still wouldn’t achieve the outcome of Open Source because you’d be lacking the conflict of different ideas, different goals, and different needs that drives innovation. And that’s with one company bearing all the burden! Let’s look at Open Source in practice in OpenStack: you have a collection of contributors, many working for competing companies. No one individally bears the burden of cost or development time (opportunity cost). Outcomes are improved by the tensions between different groups being forced to arrive at consensus. Features no one else would have thought of are brought forward because someone somewhere wanted to do something a little different. OpenStack works because ultimately it becomes a shared common good. Companies who would gladly obliterate one another are willing to work together because they all recognize that the financial gain isn’t in the platform itself; it’s in what you do with it. We’re all working towards a future where the infrstructure layer is a given. Compute and storage will be ubiquitous, you won’t think about it any more than you think about water coming out of your faucet. Sure, people make money for getting the water to you, but that pales in comparison to the value of agriculture, sanitation, living in previously uninhabitable places… This is the power of a shared interest in a common good, and this is the similar power of Open Source.

4. How do you think the OpenStack community will need to evolve over the next few years in light of the fast growth and maturing user needs?

OpenStack has to learn to function as a concerted whole rather than a collection of autonomous software projects. There is absolutely nothing that would make a bigger difference to users than that. We need consistency and unification in every area: clients, APIs, configuration, deployment, discoverability, federation… the list goes on and on. Up until now OpenStack has been governed by the whims of individual Projects and the frustration experienced by users, deployers, and even developers is obvious. It’s time for OpenStack to develop a stronger sense of cross-project leadership. All the features in the world are nothing if using them is an uphill battle.

5. What other open sources projects do you think work well with OpenStack, and why?

While you can deploy just about any open source application on top of OpenStack, I’m much more excited for the possibilities that projects like Docker ( bring to the table. Finding new ways to define and deploy distributed applications is what’s really going to fuel the “Big Data” revolution. OpenStack gives everyone access to the cloud, but once you have a cloud what will you do with it? We need tools that are human-friendly, reusable and remixable; getting your app running should be downright obvious. The secret sauce shouldn’t be in your deployment, it should be in your data and how you make meaning from it. The more we can get to that last step, the more we can change the world. One other open source project that deserves mention is Zipkin ( which was released by Twitter. It’s a distributed tracing engine that allows you to follow one entry point (like an API call) throughout an entire distributed system and to understand exactly what it did at every step of the way. To get to the next level of optimization and unification OpenStack is going to need something like this built in. Trying to understand the complexity of an OpenStack deployment without distributed tracing is an exercise in agony.

OpenMic Spotlight: Kyle Mestery

minneapolis portrait photography, Twin Cities family portraits, St. Paul photography-20This post is part of the OpenStack Open Mic series to spotlight the people who have helped make OpenStack successful. Each week, a new contributor will step up to the mic and answer five questions about OpenStack, cloud, careers and what they do for fun. 

Kyle Mestery is a Principal Engineer in the Office of the Cloud CTO at Cisco. Kyle is the Chief Architect for Cisco’s OpenStack development, and has been actively participating in OpenStack and Open Source development for many years. Kyle has over 15 years of experience in systems software development ranging from distributed filesystems to distributed virtual switches. He is also an active speaker at Open Source conferences, and is the founder of the Minnesota OpenStack Meetup. In addition to being an active contributor to OpenStack, Kyle is also an active contributor to Open vSwitch and libvirt. His current focus in OpenStack is the Modular Layer 2 Plugin, where he is working to ensure ML2 will work successfully with the Open vSwitch and Linux Bridge agents, as well as with a new OpenDaylight Mechanism Driver under development. Kyle lives in Minnesota with his wife and 3 wonderful kids, who have all been exposed to programming through Ruby for Kids. Follow Kyle on Twitter at @mestery.

1) What do you think are the benefits of the open, community-driven approach to development?

I think the main benefit from open, community-driven development is the fact you feel like you belong to something throughout the entire process. Participating in the development of something like OpenStack means you are working with a large number of people spanning the entire globe. And the first you’ll notice is the sense of community one feels when doing this sort of development. The learning process you go through when getting your first commit may be a little steep, but once you’ve gone through it you’ll find you’ve made new connections from the people who assisted you along the way. And once you’ve made more than a handful of commits, you’ll be able to switch around and help other people make their first commit.

In addition, open development means everything is done in the open. From the initial design of a feature, to the development of the feature, to it’s eventual inclusion into the source tree and it’s documentation, all of this is done in the open. This means anyone can comment and contribute along the way. And this is what makes Open Source development so powerful. Open development and Open Source level the playing field and allow a much broader scope of people to become involved at every step of the process.

2) What are the essentials for someone just getting started with OpenStack? Sites? Books? Conferences? People?

When you’re just getting started with OpenStack development and you’ve never used git, gerrit, and other open source tooling technologies, the task can be somewhat daunting. Colin McNamara has put together a great presentation which covers “How To Survive Your First OpenStack Checkin”. He’s given this talk at the last two OpenStack Conferences, and it’s a great talk for someone beginning their OpenStack development journey. I highly recommend new developers to OpenStack to have a look at Colin’s slides:

Another great resource for someone just getting started with OpenStack are local User groups. One of the great things about OpenStack is the community of people who exist inside the ecosystem. There are User groups everywhere, and there is likely one close to where you live. Joining your local User group is a great way to get to know people using and developing OpenStack who live close to you. You’ll find a local community where you can share ideas and learn from others.  And if there isn’t a local User group near you, why not start your own?

Another critical resource for people new to OpenStack is IRC. IRC, for those new to it, stands for Internet Relay Chat, and is a way the majority of developers and users in the OpenStack community communicate with each other. There are IRC channels covering many sub topics of OpenStack, joining the appropriate one is a great way to ask questions as a user or a developer. You’ll find core developers for each of the OpenStack project are always on IRC and are willing to help.

3) What other open sources projects do you think work well with OpenStack, and why?

The list of Open Source projects which work well together with OpenStack is quite large. I’ll focus on a few which I’m familiar with and actively am involved with:

Open vSwitch is an Open Source virtual switch, originally developed by Nicira, now VMware. Open vSwitch has a large number of contributors, and is the base virtual switch for a large number of OpenStack Neutron plugins. The fact so many Neutron plugins rely on Open vSwitch running on each host makes it a core component of most OpenStack deployments.

libvirt is a library for managing and running virtual machines. libvirt supports a large number of hypervisors, and is a critical component of most KVM-based Linux hypervisor deployments. In OpenStack, when you run with KVM hypervisors you are using libvirt to run virtual machines on compute hosts. libvirt integrates nicely with OpenStack Nova to handle this, and is a critical component of OpenStack deployments with KVM.

Ryu is an Open Source component-based Software Defined Networking framework. Ryu is modular and supports a large number of protocols underneath. Since the Folsom release of OpenStack, Ryu has been an optional plugin for OpenStack Neutron. The flexibility of Ryu makes it an interesting choice for Elastic Cloud Platforms when deploying OpenStack.

OpenDaylight is an Open Source Software Defined Networking Controller sponsored by the Linux Foundation and developed by many different companies and individuals. OpenDaylight is a relatively new Open Source project, but the momentum behind it has been amazing to watch over the last 6 months. Work is currently underway to develop an OpenStack Neutron Modular Layer 2 MechanismDriver for OpenDaylight, with the hope of this becoming the reference controller MechanismDriver for ML2.

4) How would you suggest to someone that they should pick OpenStack for deployment? What is the most compelling argument for OpenStack in your mind?

OpenStack is a great deployment option if you’re looking for an Elastic Cloud Platform and you want to take advantage of the things a platform like that can provide. If you’re looking to deploy something along the lines of Amazon Web Services in your own lab or datacenter, OpenStack is a great choice. The scalability and flexibility provided by OpenStack map perfectly into this use case. And if you are already familiar with Amazon Web Services, deploying OpenStack into your own datacenter will provide you with familiar functionality for your local tenants and users.

Another great reason to pick OpenStack is if you’re looking at deploying your own Platform as a Service. Anyone looking to deploy something like OpenShift Agile or CloudFoundry should look seriously at how they can deploy those items on top of OpenStack. Someone looking to deploy Hadoop in an Elastic Cloud Platform should look at OpenStack as the underlying cloud platform for their Hadoop deployment. These are examples of strong use cases for applications deployed on top of OpenStack. And when you start to think in terms of scalability, flexibility, and manageability at the application level, OpenStack becomes a compelling option.

The most compelling argument for deploying OpenStack is the fact it allows you to unlock the power of your applications and run them in a truly elastic fashion on top. Once you start to think outside of the typical enterprise computing box, you realize how powerful this can become. And when you start to think in terms of elastic computing and computing on demand, deploying OpenStack becomes even more compelling. The simplicity and scalability of OpenStack makes it a compelling deployment option for anyone looking to deploy any type of cloud computing setup.

5) What is the most common misconception you hear about OpenStack? 

The most common misconception I hear about OpenStack currently is the fact people new to OpenStack think it’s an enterprise virtualization platform which is a replacement for vSphere. In my opinion, this is a rather limiting view of OpenStack, and doesn’t take into account what OpenStack was designed to be. OpenStack was designed to be an Elastic Cloud Platform more in line with what Amazon Web Services is. Trying to box OpenStack into being a replacement for something like vSphere limits the true power of OpenStack. This common misconception comes from enterprise users and developers who have years of experience with vSphere. It’s true that OpenStack is slowly developing features which put it more in line with an enterprise virtualization platform. But it’s more interesting to think outside of that box and imagine what you can do with a truly Elastic Cloud Platform. Once you do that, the possibilities you open are amazing. Thinking in terms of application scalability opens up new doors where you are no longer limited by hardware, but are more in tune with what the software can provide you and what you can do with the software you develop and/or run on top of OpenStack.

Back to top