Let's have some context: KubeCon+CloudNativeCon is one of the biggest conferences in the world where users, developers and companies who have/want to adopt the Cloud Native standard of running applications and use Kubernetes in their organizations, gather and discuss new ideas, learn deeper insights about it, make connections and have fun. Lots of amazing talks, events, meetups, parties, competitions happen in a span of 5 days, which can make a newbie fall in love with this awesome community.
This year KubeCon was held both virtually and in-person at North America and it was fun to browse through the spaces from my laptop and get live updates from in-person attendees through Twitter. So, I thought to pen down my takeaways of the keynotes and learnings of some events I attended which I felt can be interesting and helpful for someone new to the community. Since this is gonna be a bit elaborate, I'll group them day-wise and event wise for better navigation.
I came to know about this event since July while going through the Kubernetes website and was very excited for the upcoming one. This time there was a scholarship for students, which gave access to a lot of paid events for free, so many students were joining for the first time. As days went by, both the noise of the event and my excitement(being virtual was still a bummer) grew exponentially!
The CNCF has a great initiative of connecting people over a video chat called Mix-and-Mingle. Folks were talking about a lot of different topics; on Kubernetes, some exciting talks, career paths; the whole day. Fun-fact: at one point of time we were talking about genetics and evolution, so if you're ever attending this event, don't forget to drop-by and say a Hi!
Also, this happened:
The first two days were reserved for co-located events(Events on a specific domain of work such as ServiceMesh Con, Security Con, Data on Kubernetes day etc.), which are more of industry oriented and not something I was interested in.
It started with a great introduction to the cloud native space and CNCF for college students by Bill Mulligan(@breakawaybilly) and Savitha Raghunathan(@coffeeartgirl). They discussed how someone completely new to the ecosystem and learn on the go and contribute parallelly. Since there was a platform of different things for the virtual event access, they went through the website to clarify doubts regarding accessibility and discussed job opportunities at big companies and startups, exciting upcoming sessions, mentoring sessions and also how can one get started with Kubernetes. Starting out can be a real problem for newbies and Savitha described her own experience on how she got to meet amazing folks, know about the community and gain a lot of knowledge by contributing to small things and gradually moving up. Bonus point: if you want to have a healthy and fast growth in the community and writing excites you, look out for SIG-Docs. It's one of the easiest things to do and also a preferred starting place for many, as it's plane English and if technology interests you, you can just write about it and improve the official documentation. This helps a great deal to new contributors and also existing ones to understand the subject matter.
Next was a co-located event, "DoK Day" by the Data on Kubernetes Community, of which I'm a proud member😁. It started with a brief introduction by the community interns, featured some of the best practices by experts of running data on Kubernetes, technical challenges faced, use cases, learnings and finally ending with some good quiz, which can get you some cool swags. Shoutout to the very cool Bart Farrell(@birthmarkbart) to organize this flawlessly! Anyone wanting to join us, here's the slack, you're most welcome! - dokcommunity.slack.com
Finally it's time for the main event. Keynotes, sessions, one-on-one mentoring events and much more!
Bill Mulligan(@breakawaybilly) and Charley Mann(@Charley_Mann) discussed how students and end users can leverage CNCF opportunities to build their own brand. There are various tiers of membership you can opt for, which gets you social and marketing benefits and also as a student, you can submit your blogs, create your own community to be a CNCF ambassador. Adding to that, there are many certifications by the CNCF and The Linux Foundation, which are recognized industry-wide and can help propel your career in Cloud Native and Kubernetes.
- The GM of CNCF, Priyanka Sharma(@pritianka) kicked it off with some great announcements like new sponsors, big increase in community members in less than 6 months & announcement of a new certificate "Kubernetes and Cloud Native associate" for beginners to the space. Security was the hottest topic of discussion this year and OpenSSF(@theopenssf) was introduced for the safeguarding and long term benefit of open source software. Diversity and Inclusion holds a major spot in the open source community and the indigenous culture was presented with a song to set the mood.
- The concept of multicluster, its architecture and the need to do so were discussed by Kaslin Fields(@kaslinfields) with her very own artwork. Join SIG-Multicluster and SIG-Networking for more info.
- Lots of cloud native projects moved from sandbox to incubation stage and some to graduation(levels of acceptance of a project). Here's the CNCF landscape for reference.
- Finally, Cornelia Davis(@cdavisafc) explained how projects move through the levels of maturity and made a big announcement. For first timers, there is a concept of SIG which are now called TAG(Technical Advisory Groups). These TAGs cover different areas of the landscape.
This session sounded a lot relatable as this is an obvious question from someone new into this community "Why do I need to learn it anyway?". The folks from SIG-Usability(Tasha Drew(@TashaDrew), Josephene Pynadath, Gaby Moreno Cesar(@morengab) & Carl J Pearson(@carljpearson) perform extensive market research, 1-on-1 interviews with developers, end-users and make sure their perspectives and workflows are addressed. They make recommendations on how and where to store documentations, practice videos, tutorials for anyone to get started and also for experienced folks to get access to important info.
To address the elephant in the room, people are pulled into this "Kubernetes" mostly because of the hype and everyone wants to try it. But they stay due to the awesome community it provides and high-end infrastructure design that makes life easier for developers. This can be a roadblock as not everyone likes to know how the backend is designed. And also the upgrades and frequent updates can be challenging to adopt with by an organization. They also share tips on how to contribute and be a part of the team.
Towards the end of the day, there was a good session on applying the skills learnt while contributing to Kubernetes by Kiran Oliver(@kiran_oliver).
He discussed on how to involve yourself in meetings, attending and organizing meetups and putting yourself out there and create content in your own voice. He focused on sharing your expertise, unify, teach and inspire others. There are a lot of problems which one might have faced while trying to contribute to the project. And there's always a chance this can happen to others. So, helping them goes a long way to strengthen the community and learn things at a good pace. Progress, as much as we want it to be, isn't linear, quoting him "this isn't a traditional Zelda dungeon, it's a breath in the wild". These are important points to take note of while going through your path of being a contributor.
Here, I'd also like to give a shoutout to the session, which happened in parallel, on "Kubernetes SIG-Docs: A Deep Dive". SIG-Docs have been the starting place for many experienced and new contributors and is a must-watch to know how things revolve and operate around there.
- The very cool, Stephen Augustus(@stephenaugustus), kicked the day off by giving project updates. The Code of Conduct committee released a transparency report which makes community members feel psychologically safe. SIG Security, one of the newer SIGs, is doing some great work, providing hardening guides and cross-platform work, as Security was the main topic of discussion. The release of newer versions(done by SIG-Release) now has a proper roadmap. Persistent storage is now a priority and SIG-Storage needs new folks to work on that(shoutout to Data on Kubernetes Community). Inclusivity being a big factor in Open Source, led to a Inclusive Naming Initiative group. Focus was given on hiring technical writers for SIG Docs.
- Next up, Vaibhav Kamra(CTO of @kastenhq) discussed the surge of attendees of KubeCon over the years and also unveiled a new open source project, kubestr.io and also provides free training for it.
- Katelin Ramer(@wussowk) and Kim McMahon(@kamcmahon) talked about CNCF and RISC-V(@risc_v), leading the open-hardware environment. They talked about how better solutions can be come up by building together and good alliances.
- The CNCF community has grown to a very big community and Constance Caramanolis(@ccaramanolis) discussed about the future, the underlying projects, user burden, challenges faced by companies and means to sustain them. Not something surprising, more than 90% of folks know about Kubernetes first instead of any other project.
- Jasmine James(@gojasmineee) talked about creating holistic Developer Experience creating 4 human centered pillars- Discoverability, Usability, Capability and Stability, to address developer challenges.
- On an ending note, Lachlan Evenson(@LachlanEvenson) told us about networking(pretty hard stuff xD) and Robert Duffy discussed how the Expedia Group is leveraging the Cloud Native landscape.
Mental health has always been a priority in this fast moving world and the issue of burnout is quite frequent among professionals, but often neglected. We always talk about max productivity at workplace and everywhere and working hard to reach "the dream place". Yet, a big part of our lives stays unnoticed and the consequences are severe. Julia Simon(@JuliaSimon14) shared her very own story "A Vulnerable Tale about Burnout" of being in depression and suffering a complete burnout, the factors leading to those, some mistakes she made on the way and how she recovered from that to take control of her own life and curated a list of everyday events to be happy on her own. She also shared some small steps that one can take to be productive and stay happy in life.
Great panel discussion on Open Source mentorship(LFX Mentorship) and getting started in Open Source in general by Kunal Kushwaha (@kunalstwt), Divya Mohan(@Divya_Mohan02), Uchechukwu Obasi (@Thisisobate) & Developer Advocate of CNCF, Ihor Dvoretskyi (@idvoretskyi).
Here's a thread I compiled about the learnings, which can be very helpful to get a bird's eye view of the entire session:
Divya Mohan(@Divya_Mohan02) discussed about the Kubernetes release shadow program and how one can apply to be a shadow.
The release committee is designed as:
Emeritus adviser -> Different release teams(enhancements, docs, comms etc.) -> Their shadows.
It is NOT an internship and surely not the only way to knowing about Kubernetes. It is basically an apprenticeship model, helping with coordinating and facilitating of tasks. Through this process, one can gain knowledge on release process of a new version in an open source project and its importance to the stakeholders. Apart from that, you can also learn in depth about what various SIGs are working on. The time commitment is of 3-4 months. As Divya says, "the time you put into something is what you get out of it".
Anyone can apply for this and no prior knowledge or experience of release process or coding expertise is needed. Though some prior involvement can be very beneficial. It's an extremely competitive process with 100+ applications(increasing every release cycle) for about 20 odd seats, but can be a big boost to your resume.
Learning about the vast infrastructure behind the design of Kubernetes can be challenging in a world where things are automated development is prioritized nowadays and that's what Kim Schlesinger(@kimschles) terms as Cloud native generation: writes software and deploys it into cloud and discussed along. It's difficult for them to know how architectural design happens in the backend. She shared 3 methods:
- Mental model/Mental representation Create diagrams that show the sequential process of things with passage of time. Although this is vastly used, there are chances that people just try to mug up rather than getting a real feel of what's happening.
- Distributed tracing technology as a learning tool Method used to profile and monitor applications built using microservice architecture. She explained the process with a demo example application executing the sequential processes.
- Build 3D models of clusters. Here's something cool that she built on her own to "feel" the Kubernetes design:- This kind of interactive learning can be very effective to learn and memorize.
The day started off with a candid chat "AMA Coffee Klatch" of lot of folks with Priyanka Sharma(@pritianka) over a Zoom call. It was a fun session where you could ask about anything that happens in and around CNCF and how you can be involved with answers straight out of the mouth of the General Manager herself. A must-attend in every KubeCon!
Time for the final KubeCon keynote and the day, a bit sad that it's ending but the past few days had been nothing but awesome.
- The keynote kicked off with Machine Learning on Kubernetes by Jimmy Guerrero(@_jimmyguerrero) and Masoud Mirmomeni. They talked about skills shortage for getting projects into production, challenges faced by ML especially and how Kubeflow helps in solving them.
- The theme of Security was continued by Luke Hinds(@decodebytes) speaking about sigstore(@projectsigstore). He emphasized on how critical services are built on open source software.
- Paris Pittman(@ParisInBmore) and Christoph Blecker(@tophee) talked about sustaining the community, key to open source success with focus on SIG-Contributor Experience. The community has grown from 8k to 66k contributors and still a lot is left to do and learn. Documented roles help the community sustain and grow past ourselves. Companies are called out to sponsor their employees contributing to Open Source and Kubernetes to have a production ready project. There is always a need for new contributors and the community welcomes them.
- Stephen Augustus(@stephenaugustus) shared some useful messages on prioritizing health, burnouts, taking a step back and scaling yourself on the contributor ladder. In his words "If you're the only person in the world that can do the thing, you're wrong. Go record the demo or write the blog".
- SBOM(Software Bill of Materials) is a new concept around here and was discussed by Allan Friedman(@allanfriedman). It's basically a list of ingredients that constitutes your code and you can also get started by creating them.
- Then came the best part of the keynote, Award ceremony! The best contributors and maintainers are recognized on the grand stage. Here is the list of winners. With this the KubeCon NA 2021 keynote came to a end, but....with the announcement of the next KubeCon in Valencia, Spain!!
# SIG Contributor Experience Deep Dive- Alison Dowdney(@alisondowdney), Bob Killen(@MrBobbyTables) & Christoph Blecker(@tophee)
One of the few SIGs where folks can start out and also people in leadership position to know about new tools, policies and procedures in which things work around in the Kubernetes community. The teams are divided into multiple domains like Events, Marketing, managing GitHub, YouTube, Zoom and Community activities.
Some subprojects under them are:
- Contributor site (k8s.dev): publishes contributor guide, community Calendar which has list of all meetings happening and scheduled over the week and in the future and Release information.
- Community Repo(kubernetes/community): contains governance documentation, election procedures etc.
- Contributor Comms: Contributor twitter (@K8sContributors) handles latest developments, new features and contributing opportunities, which are also managed by a automated twitter bot.
- Manage the membership roles for folks to go up the contributor ladder.
- Mentoring for new contributors through Group mentoring cohorts, Shadow programs, Google Summer of Code, Contributor workshop etc.
How can you contribute:
-> Subscribe to Contrib-Ex Mailing list
-> Attend SIG meetings regularly to stay in context of what's
-> Find a buddy
-> Volunteer to take notes during the meeting
-> Small contribution > Volunteering for the world
-> Look out for Good First Issues as they boost your confidence
-> Not only code, but also marketing
This was a fun & intuitive session of interacting with fellow learners and some expert contributors. We were paired up randomly and sent into different breakout rooms, where there was a specific mentor and you could ask questions, interact and network. One of my most best conversations happened here when the technical sales lead of a Kubernetes provider company was our mentor for some 15 minutes. I came to know about the approximate cost of creating your own Kubernetes service and why companies prefer using services of other providers and not create their own. He also asked about me and how I was doing in my career.
Since this is a 1-on-1 conversation, this is a great opportunity for students to increase their networking and knowledge.
Being a fresh college student or a recent graduate, learning something vast as Kubernetes can be a very overwhelming. Alice Wasko(@AliceWasko) took us through her experience as a fresh hire from college needing to learn it for the company and how she set up her own bootcamp and tips for anyone to set up one for themselves.
1) Some previous basic knowledge can help, but it's never too late to learn.
2) List out what you want to learn first(some basic container mechanism with Docker and basic Kubernetes terms like Pods, Deployments & Service can be a good starting point)
3) Structure your learning plan/Figure out the why of stuff like:
- Deployments create Pods
- Pods run containers
- Services help in distributing traffic
- How traffic get to where it needs to
- What kind of service to service communication
4) Try some hands-on with a small piece of code or build a small app and test it out by changing stuff. This can help you set the base to learn more advanced topics
- Try building a Hello world app
5) Go in depth of the basic things you learned earlier such as architectural designs and networking in detail.
6) Learning resources like Documentations, Blogs and Videos are great to refer. But always have flexibility as not everyone learn in the same way.
7) Organize learning materials in the order of beginner to expert understanding.
8) Get feedback from people and try to work on it together to improve the content. In her words "It's a never ending project".
Finally, always know that planning out such a roadmap has the potential to make you a pro in the subject as well as smoothen the learning journey.
With this, my first KubeCon came to an end. I got to know a lot about what happens in the community and met some new people online who were both fun to talk and share ideas. Since there were about 5 to 6 meetings in every time slot, it wasn't possible to attend each one. There were also other fun games happening throughout these 5 days like BugBash, BattleSnake KubeCon Cup, whose winners were awarded at the end. The SIG deep-dives are really helpful for anyone needing to find a domain in which they feel a bit comfortable to work on. And also, a big thanks to the team of cloudnative.tv whose daily wrap-up gave a brief, insightful overview of all the events that happened everyday.
I definitely carry a lot of knowledge and to-do activities with me to move forward and hope any new contributor reading this would go and watch the recording of the above-mentioned sessions(if haven't) to have a nice headstart to begin their own journey!