Want To Impact Networking? Contribute To OpenDaylight. Here’s How.


The OpenDaylight project (see my previous post and the ODL site for more information on what ODL is all about) is open source. As in, anyone that wants to get involved in the project can get involved. ODL is not limited to vendor employees (although certainly several of them are involved in key roles). If you want to get involved, you can. There is nothing stopping you.

If you’re wondering why you should care, ODL is at an interesting point in its life. From what I learned at the ODSummit, there’s a number of existing projects within ODL that need more and/or better code. There are most likely projects that should be recommended and considered for inclusion in ODL. There’s wiki documentation that needs to be either created or updated. There is growing burden of administrative and organizational duties that need to be handled. The project might benefit from additional voices and points of view as Hydrogen finds its way into end user hands and next steps are discussed. (Like if or how federation between controller might happen or a northbound interface standardized.)

The clearest point made regarding contributing to OpenDaylight was that despite all of the other needs, code is needed more than anything else. Here’s two idea approximations I blasted into Evernote, probably not word for word, that I gathered from a couple of presentations.

Push the code. Realize your ideas, don’t just talk about them. The community values code – it’s all about the code. Code is king. – Chris Price, Ericsson

Bring code to the table – that’s how to win arguments in the ODL community. – Ed Warnicke, Cisco

And what is that code written in? OpenDaylight uses Java. Now, if you’re like me saying, “I don’t know Java,” I’ll tell you that the answer I heard over and over again was that…

  • You can learn Java. It’s not particle physics or string theory.
  • People in the community will help you if you’re willing to put the effort in.

My friend Brent Salisbury is a prime example of this. He went from operating networks (like many of you reading this do) to writing code for ODL in his spare time to now working for Red Hat full-time as an ODL developer. My friend & fellow podcaster Matt Oswalt has also taken the time to get the basics under his belt and commit some code to the project. Case in point – it can be done, although foregoing sleep seems to be a prerequisite. ;-)

Let’s say you don’t know that you want to dive into one of the ODL projects and start committing code. You could at least start paying attention to the community and see what’s going on.

  • There are a large number of active ODL mailing lists. You could monitor some that pique your interest. Don’t be overwhelmed by the sheer number of lists. They are organized by ODL project. For instance, the “affinity” lists are tied to the Affinity module in the ODL Virtualization Edition. If you want a couple of lists to start with, you might consider the “Discuss” list as well as the “TSC” list. The TSC list is communication to and from the Technical Steering Committee, and many of the conversations impacting ODL as a whole happen there.
  • The #opendaylight IRC channel on freenode is open to all. Google it, and you’ll get there. Hop in, see what’s going on, ask questions, and be a little patient. The ODL community is globally distributed (literally), and so the person that might be able to answer your question might not be in the chat room right at that second. It also seems that activity in the channel is a little quieter than it has been because so many developers were head-down trying to meet the Hydrogen release date.

As for me personally, I’m not sure what I’ll do to contribute to ODL. I believe that ODL matters, that it’s going to be around for the long haul, and it will have a significant impact on the networking industry. I suppose I could be wrong, but I believe ODL is past of the point of, “Can this work?” It’s not a question of if it can work. Hydrogen is evidence that ODL is working. Period. The multi-vendor approach is working. The governance is working. A product has emerged, and roadmap for the next release is already being discussed, as well as putting structure in place to maintain existing code. OpenDaylight is as tangible an SDN product as any individual vendor offering.

But…I’m in overcommitment mode already. There is literally no more hours in the day for me to add ODL to my plate until I clear some other things off. And unfortunately, I have two projects I’m committed to with multi-year timelines…and not doing especially well at moving them along as quickly as I’d like. That said, I have a network architecture interest in ODL, as well as a use-case. So my contribution is probably going to be more along the lines of helping to raise ODL awareness, working with the releases in a test bed (and perhaps production), and providing feedback to the community if I can do so in a useful way. I might also get into the wiki, working on end-user documentation if I start to get a handle on the software. I am a big believer in context-driven, use-case aware and user-sensitive documentation that makes it easy to consume networking products easily and for the right reasons. So I could perhaps make a positive impact on ODL in that way, assuming there’s a void needing to be filled.

I think a larger point worth making is that networking is changing, and ODL is a chance for you to be right on the forefront of that change. To actually cause change in the industry – to be really, truly make a difference in how organizations will consume their networks in the next decades. That opportunity doesn’t always come around, so if you’re interested…jump.

About the author

Ethan Banks

Most people know me because I write & podcast about IT on the Packet Pushers network. I also co-authored "Computer Networks Problems & Solutions" with Russ White.

Find out more on my about page.


  • When I was first started reading the article, I was half-hoping you would provide a solution my “But I don’t know Java” excuse. But .. Oh well !! Other than maybe contrbuting to the Python clients to the ODL Controller, there seems to be no non-Java code.

  • I have followed ODL, have built and experimented with the controller, and have high hopes for the project. Unfortunately, I also fall into the “I don’t know Java” pile, but want to contribute.
    I did a little digging around the “Getting Started Guide”, but didn’t find anything I could dive into. I was wondering if there’s some way to contribute to documentation. Seems just about anybody could help there, and what product couldn’t use a hand with the part most devs don’t like; documentation. I’ll keep looking.
    Thanks for the ‘jab’ to contribute.


Most people know me because I write & podcast about IT on the Packet Pushers network. I also co-authored "Computer Networks Problems & Solutions" with Russ White.

Find out more on my about page.

Subscribe via Email

Receive complete, ad-free posts in your inbox as I publish them here.