RailsConf 2014

Building kick-ass internal education programs (for large and small budgets)

Building kick-ass internal education programs (for large and small budgets)

by Chuck Lauer Vose

In his talk at RailsConf 2014, Chuck Lauer Vose discusses effective strategies for building impactful internal education programs within organizations, regardless of budget size. He emphasizes that it is crucial for organizations to educate their developers, especially in a landscape with a shortage of senior programmers. Vose shares several key points to help facilitate internal education:

  • Beginning with Inspiration: Vose encourages educators to find passion in teaching, regardless of their prior knowledge. He shares how he was inspired by fellow tech educators and suggests creating an environment where learning can happen naturally.

  • Effective Strategies for Education: The speaker highlights that education doesn't have to be costly or overly complex. His experience ranges from grassroots initiatives like lunch discussions to structured programs. Key initiatives include:

    • Lightning Talks: Short, informal talks that encourage participation and discussion among peers.
    • Mob Refactors: A collaborative coding session where the team reviews and improves code together, fostering learning through discussion.
    • Pair Programming: Advocating for collaboration by establishing simple methods to encourage this practice, like setting up a visually inviting work environment to facilitate pairing.
    • Workshops and Themed Sessions: Organizing meetings focused on specific topics allows for in-depth discussions and hands-on practice.
  • Mentorship and Buddy Systems: New hires benefit significantly from having training partners to assist during their onboarding process, effectively halving the time it takes for them to become productive team members.

  • Creating a Culture of Learning: Vose underscores the importance of establishing an open and inviting atmosphere where knowledge sharing is encouraged. He notes that even small, informal gatherings can lead to substantial learning outcomes.

The ultimate message from Vose is straightforward: internal education can be accessible and doesn't have to be daunting. By facilitating inspiring environments and promoting collaborative learning opportunities, organizations can develop strong educational frameworks that help their teams thrive. He concludes with a rallying cry that internal education is easy and encourages participants to take immediate action in implementing these strategies within their own teams.

00:00:17.000 Hello, everyone! I want to welcome you to my talk. Yes, you can raise your hand now. I designated a person to raise their hand anytime I say so, or at the beginning of a statement that stands out. We're going to talk about building kick-ass internal education programs. Sometimes, we don’t have a mandate from our boss or organization, but it’s important to educate ourselves. We need to be able to build these programs, and sometimes we have to take the initiative ourselves. Before we start, I want you to know when I raise my hand, or if the person down here raises their hand, I want you to raise your hand as well. Let’s practice this quickly. Yes, very good! This is how I will get your attention. Usually, my raised hand means it's time to quiet down, but not always. We will do some activities, and I need a way to get your attention, so this is effective. As you've been sitting all day, how can we keep our brains active? I’d like you all to stand up and take a three-minute stretch break, if you can, and introduce yourselves to your neighbors. We have three minutes.
00:02:01.600 You all did great with that! One of my favorite aspects of that activity is that every time I do something like that, people tell me that nerds won't participate — they won't stand up or talk to each other. But that's not true! Every time, attendance skyrockets because we create noise and excitement. At RailsConf, I always seek inspiration. Even though they don't list an inspiration track, there are always those talks. I aim to inspire you throughout this session to take action on education at home. I'd like you to remember one main point from today: internal education is easy. By the end of this talk, I hope you'll believe you can start it next Monday. The second takeaway is that you don't need to know everything to teach. Also, education isn't particularly expensive or hard to implement. I sometimes make it seem difficult because that's how I make my living, but you can do it differently. I had a number of proposed titles for this talk, but my wife vetoed some of them. One was 'Covert Education: Sneaking It In Without Them Knowing.' Another was 'How to Educate When You Don’t Know What You’re Doing.' But those didn’t make the cut. As I mentioned, my name is Chuck Lauer Vose. I have bright hair, and feel free to find me around the conference if you have questions about education. I like ferrets, food, photography, and I was the founder of the Portland Code School. Currently, I’m an education engineer at New Relic. I also enjoy magnets, ponies, and pets in clothes, and although my coworkers can be quite unreasonable, I do love them.
00:05:09.200 I want to start by sharing some inspiration. A couple of years ago, I attended a talk by Kira Mata at Ruby on Rails. At the time, in 2012, he didn’t speak much English but wanted to communicate through code, which we all share as a common language. He was very nervous, but he showcased what he expected from his audience brilliantly. He asked us to clap during his pauses to encourage him throughout the talk. So, I’d like you to do the same for me today. Please clap when I pause or look nervous; it would really help ease my anxiety. Now, I want to talk about how I got started in education. It’s a rather embarrassing story, but how many of you know Eve Online? It’s typically seen as one of the nerdiest MMO games, often humorously dubbed 'spreadsheets in space.' That’s where I began teaching. The game presents a steep learning curve, and due to its difficulty, there’s an entire Alliance of about 2,000 people that educates one another. Not satisfied with just joining Eve University for my education, I started my own guild, which enrolled around 80 people. We hosted weekly speaking events led by prominent PVP players, marking my first attempt at public speaking. Honestly, it was more intense and addicting than space piracy itself! Following this, I introduced animated slides into the presentation at a previous company called Bside Digital, which had about 40 employees. Education wasn't a core theme, but I managed to integrate it around the edges by conducting lightning talks and other small-scale sessions. I started small, sharing successes with colleagues, and our lightning talks became so popular that the entire company attended. We then saw other initiatives bloom, like pair programming workshops.
00:09:33.240 It was inspiring to lack a mandate yet still discover how to take just a little time each week for education. As the success of these initiatives grew, we gained more financing to provide lunch during these events and to demonstrate success further. In my previous company, I initiated an intern program called 'gone terribly wrong' because it was supposed to have three interns every three months but ended up attracting 17 right away. At that time, I still lacked teaching knowledge and had barely accepted that I was educating others. One of the smartest individuals I spoke to stressed that an educator in the tech realm is not someone who knows everything but someone who creates a space for others to learn. This realization was transformative; it highlighted that my role wasn't about having all the answers but creating an environment where people could read, understand, and figure things out. My experience at the Portland Code School was profoundly inspiring, marking my greatest pride so far. I’m still connected to many students, and while it’s bittersweet to look back, I wonder what lies ahead now that I work at New Relic. I was surprised to see how deeply invested New Relic is in education, a realization that hit me around month six. In my role, I help establish internal education programs for engineers who are incredibly talented and often much smarter than I am. Although I might not have specific knowledge they do, I can create spaces for learning and help design a curriculum that works for them.
00:12:43.560 This was our initial mandate at New Relic: to make already brilliant engineers even more extraordinary. I felt overwhelmed by the prospect since I had been on the applying side for years and wanted to elevate my skills as well. The concept of not needing to know everything was crucial. Passion and inspiration drive this effort, and it’s also crucial that you give of yourself in this activity. I’m learning alongside you, and you can do this too! Now, let’s take a moment to structure our thoughts. Please spend 30 seconds reflecting on an effective educational experience from your past and share it with your neighbor for two minutes. I'll raise my hand as a reminder.
00:15:51.159 The most compelling educators push people out of their comfort zones. I haven’t seen another presentation that actively encourages audience interaction, which is vital. I truly appreciate this quote, as if we’re growing, we’ll always be out of our comfort zones. An educator creates an effective learning space and partakes actively, as you observed with me walking around encouraging dialogue. Bill Nye and Neil deGrasse Tyson have always inspired many with their exceptional ability to engage people. I admired Bill Nye as a child and now appreciate the new realms Neil deGrasse Tyson opens regarding space and our universe. When I teach, it's about exposing you to the idea you're capable of teaching, too! I hope, as you return home, you inspire others to learn the code you’ve been yearning to teach. A good educator gives themselves wholeheartedly, which aligns with the values of the open-source community. Be prepared for the fact that education might take some time beyond working hours, but it’s indeed rewarding. Can everyone turn to their neighbor and give a high five? I doubt this high-energy initiative would fit well in most other communities, yet here in the Ruby space, it fits perfectly. At this time, I considered incorporating a clapping method using your neighbors' hands, but that might make things chaotic.
00:20:50.440 How many of you have encountered this XKCD comic about nerd sniping? It essentially refers to the phenomenon where saying something piques someone’s curiosity. This powerful tool—nerd sniping—can lead to vibrant discussions and explorations. The pivotal question is, how do we create conducive learning spaces? It's not strictly about the physical environment; it could be a mix-use space, like couches or a lunchroom. My favorite way to initiate education is through lightning talks. Scheduling these 30-60 minutes before lunch on Fridays has proven productive. The causal setup allows attendees to build upon their discussions over lunch, making it effective. An additional perk is being able to shift schedules around if the session is successful by starting it earlier and negotiating a lunch budget through the company! I've hosted lightning talks featuring topics beyond technical content. However, I recommend including some relevant technical material to ensure value.
00:24:49.000 Food can also encourage attendance, as bringing snacks effectively garners participation. Consequently, we observed the whole company enthusiastically attending our Friday sessions. Another strategy is mob refactoring. A colleague named Ki introduced me to this innovative method where everyone collaborates on a code piece, reviewing it collectively without judging the author—a crucial aspect to maintain a positive atmosphere. After rewriting, the code is often discarded, but the dialogue that happens is incredibly constructive. Pair programming is crucial yet often overlooked; however, it consistently highlights that programming is a tradeoff between speed and quality. Encouraging a culture of pairing can be mutually beneficial. If your organization struggles with pairing initiatives, try my 'sneaky monitor' tactic. You can set aside a time where you bring your monitor to your teammate’s desk—this creates a sharing environment that grows over time. After recurring actions, people will naturally adopt pairing. Additionally, I recommend sending out an open invite for pairing in communal spaces where individuals can connect with others.
00:30:01.080 Finally, I have found workshops to be a dynamic approach to learning. Just last week, we explored the service object pattern with a RailsCast. We watched a session for ten minutes, then paired for 40 minutes, practicing what we learned. What amazed me was that within one and a half hours, I felt as though I gained two days of educational value! It was exhilarating to learn in such a rich, collaborative environment. Thank you for your attention! I apologize if I rushed through parts of my presentation, worried that I’d pause too long without applause! In closing, I want to encourage you to try lightning talks next Friday. It’s a straightforward initiative that allows your team to share ideas and insights and I’d love for you to conduct a code review. Furthermore, set aside some pairing time using the 'sneaky monitor' method for your next new hire—it can significantly enhance productivity and morale! I want to count to three, and let’s all together say, 'Internal education is easy; I will start on Monday!' Thank you!