I attended DevOpsDays India 2013 held in Bangalore. Overall program can be found here and videos should be uploaded in two weeks approximately. This is a personal account of my experience and what I enjoyed the most!
Traveling all the way from Pune, I made it just in time to Sidu’s keynote on building communities. Sidu has been founder of few startups and as part of C42 engineering they have built RubyMonk which myself and friends have found immensely helpful in getting started with Ruby.
Sidu talked about how to go about building communities (And what follows is my interpretation of his talk- on same flow). One of key points he made was we generally tend to think of community as a bunch of hackers. While this is wishful thinking, eventually hackers have to create value for customers through businesses. Community is the whole ecosystem which facilitate bartering of value. With that point in mind, when you start a community:
- Keep at least one stakeholder for whom you are creating value through community. Is it people learning new language? Or a company benefiting from talent pool? Basically have end goal of community in mind.
- Planning and meeting systematically is one of most important things to keep community alive and to grow over time. It will take time – but be patient and keep meeting.
- Once you have a set of people who are contributing – identify and promote them. It places value on contribution and motivates more people to build value for community.
Once community has taken off, you will need to ensure:
- Identify the value you are creating and people/organizations benefiting from value creation and make it a loop. The community has to continually create value for it’s stakeholders.
- Marketing the community is equally important – be it face to face interactions for employers or employees, or people looking for advice or social media. Marketing will definitely make or break a community beyond a point in time.
- Eventually you will have to find the next level of leadership. May be you will get busy with other projects or will get into something else – make sure you know when you are not adding value and pass on the baton to somebody else.
Communities are never perfect
Ranjib’s talk on Attaining Resiliency was really good talking about design considerations for designing resiliency into applications. It teaches us to accept failures and build applications for them. The key takeaway for me was to build tools such that they can be eventually chained together with other tools to get bigger tasks done.
Automation is an asymptotic phenomenon
Piyush from MakeMyTrip spoke at length about centralized data/log collection. Centralized log management has been a topic of great interest to me, specially based on my experiments with LogStash, Splunk etc. The amount of data and insights you can generate specially for a travel company can be of tremendous value. You can find the presentation here and slide number 5 talks about overall architecture. Learning from case study of MakeMyTrip is great indeed.
Failures are inevitable, accept them
Folks at apigee spoke about an orchestration tool they built to create a environment of their complex stack and fully automated. This tool could be used for developers to setup their new environment, or a sales guy to create a customer specific environment from scratch. While slides are not yet available online – the concept was definitely good.
Another talk from MakeMyTrip by Konark Modi was on advanced workflow management for jobs instead of using Cron- which can get cumbersome for complex jobs. I learnt a lot from session and could see possibilities of doing things differently using workflow management tools for batch jobs. The talk focused on Celerey, but there are other tools available like Luigi and Apache Oozie.
There were some noticeable ignite talks like “Using Salt with Vagrant” and talk from Xebia labs on using DeployIT for release automation. Akshay spoke about Build radiators on Raspberry Pi and if you want a quick overview of various modules in OpenStack then checkout this link.
What is DevOps BTW? : Three C’s of DevOps
Second day started with a session by Nathen Harvey from Opscode delivered over video streaming. Titled “Three C’s of DevOps”, the presentation is best explanation of what DevOps stands for that I have came across so far. I could relate to it even more because earlier evening I was part of an open space discussion on “What is DevOps?”. We could see multitude definitions and misunderstandings that people had about DevOps. Although as a group we had eventually concluded that it’s not a role or tools or a new team you invent – we got a definitive answer very next morning! I highly recommend everyone to attend a live talk from Nathen if possible and at the least go through the deck!
I had indeed great time interacting with DevOps community in India and learning a hell lot in short span of time. I met some very interesting people doing different things in DevOps. I met plenty of Thoughtworkers and ex-thoughtworkers who had kicked off startups or joined some interesting DevOps teams! What more, I spent few hours at airport too with attendees and had great chat on various aspects of not so much DevOps :) I am thankful to DevOpsDays India organizers for incredible job and I look forward to next one!