We thought it would be a good idea to have a “Meet the Red Hat Open Stack Team” series of blog post. This is me.
When and why did you join Red Hat ?
I Started in July of 2009. Why? There is a Long answer to that.
What part of the world are you based in ?
Massachusetts. I work out of the Westford office, which is our Engineering Headquarters.
What were you doing before joining Red Hat ?
Immediately prior to joining Red Hat I was at VMware. I was nominally on the High Availability team, but all my efforts were around either running Open Source tools on the VMware platform or getting VMware tools to run on Linux. Much more fun was what I was doing prior to VMware.
In the middle of the Decade, I worked at Penguin Computing on Scyld Beowulf, now Scyld ClusterWare. This was a lot of fun. We were building a single system image where the process space was distributed across multiple physical compute nodes. Although we targeted it at the High Performance Computing market, it was solution that had something to offer to many aspects of large scale computing.
What OpenStack projects are you involved in?
I work almost exclusively on Keystone. I seem to have become the clearing house for LDAP support, but others are picking that up. I am more focuses on HATEOAS, PKI, and the trusts work, as well as general concepts around Identity Management.
What have you contributed to OpenStack in the last 3-6 months ?
For the Essex release, my biggest contribution was reintroducing LDAP support to Keystone. There has been a fair amount of follow on work from that.
For the Folsom release, my biggest contribution was PKI tokens.
As a member of Keystone Core, my biggest contribution is doing code reviews.
Thus far in Grizzly I’ve done a fair number of bug fixes and refactoring. I’ve spent a good amount of time building up the SQL upgrade tests and dealing with issues specific to our threading model. Probably the most non-interesting but essential thing has been to change how users are assigned to projects. In order to tie in with Role Based Access Control, that assignment is now done via a Role as well. It seems small, but it is an essential change, and other things will work better because of it.
What are you working on currently / in the next few months for OpenStack ?
My current tasks involve mechanisms for delegating authority, whether between users or services. More information here:
What do you enjoy most about working on OpenStack ?
The people that are involved with Keystone are top notch, and yet there is a surprising lack of Ego. Joe Heck is one Heck of a tech lead, and Dolph Matthews is just fantastic. We recently picked up a couple more core developers who have really helped move things along: Guang Yee and Henry Nash. The member of non-core contributors is growing, and several of them have picked up pieces of work that were originally on my plate, and proceeded to implement them better than I would have. We all have out interests, and they seem to be complementary. So, one of my roles has been to help get people up to speed in the development process.
The automation support for the workflow is one of the smoothest I’ve had the pleasure to work with: Open Blueprint, record Bug, write code, submit to Gerrit. Making changes due to feedback from code reviews has become painless as I’ve better learned git. Keeping track of what I need to do, including new change requests that are posted for review has never been easier for me. Which is good, because there is a lot to do.
But most of all, I love the fact that Open Stack is generating so much excitement. I feel lucky to be paid to work on it full time. Which is also a part of my answer to the question of Why I work at Red Hat.
What advice do you have for people interested in OpenStack ?
Get involved. Code reviews are always welcome. Nothing will get you in better with the existing team members than providing input. Documentation fixes, bug reports, comments on blueprints, and testing. Get involved. Open Stack is a collaborative effort. Collaborate.
What other open source projects have you been involved in ?
While here at Red Hat, I first worked on RHQ, and later FreeIPA, with a touch of Pulp and Candlepin in the middle. At one point I was focused on the Certificate Server that is used by FreeIPA.
I am still working to get BProc into more of an Open Source development model. Even though it is GPL code, the development has been done in house for too many years.
My first Open Source contribution was to a PalmOS application for studying Chinese called Dragon Character Training where I built a “game” to test you in the pronunciation of the Chinese words.
When did you first start using Linux and what distro was it ?
1998. Red Hat 6. A good friend of mine, Mike DeBeer, helped get me over the initial learning curve. I’ve bounced back and forth between Red Hat and Debian over the years.
What desktop environment are you running ?
I run Gnome 3 and Fedora 18 right now, basically because I try to keep current and support what the Fedora and the Gnome teams are actively developing. I switch to KDE from time to time, as I actually am a C++ coder at heart.
What are your preferred programming language and/or dev tools ?
All programming languages have their sweet spot, and all have their warts. I’m learning to think in Python more and more as I work on Open Stack. I’ve done a fair amount of C++, Java and Straight C in the past, and am pretty handy with Bash as well.
For coding, I am an IDE person. I got very comfortable using Eclipse during my Java coding days. Now that I am focused on Python, I use Eclipse PyDev as my primary IDE, and often fall back to EMACS. I am also conversant in vi and tend to use that for very quick tasks.
Where is your blog / twitter / Google+ / YouTube profile found ?
Blog is http://adam.younglogic.com. I don’t tend to use much of the other technologies. I have a Google+ account, but my launchpad ID is far more used.
What else would you like to say to the OpenStack community?
We need more code reviews. The more eyeballs on the code, the better. Use code reviews as a way to get to learn the code.