Community-based Drupal training at DrupalCon Chicago
Community-based Drupal training at DrupalCon Chicago
I'm at my third DrupalCon in as many years. This year's conference represents two firsts for me: it's my first as a CivicActions team member, and my first as a conference speaker. I'll be presenting on Community-based Drupal Training with three other people. My case study will draw on my experience teaching Drupal for free (or at very low cost) in my community of Missoula Montana, and in this post I want to share a bit about what I've learned in the process.
Why community-based Drupal training?
We define community-based Drupal training as training offered for free or at low cost, offered by and for Drupal community members, and often in a local or regional context.
Drupal has gained huge popularity and adoption in the last few years – it now powers nearly 2% of sites in the internet – which means that many more people and organizations are using it. And Drupal is uniquely flexible in scale: it's used for sites ranging from small personal blogs up to complex enterprise sites with massive traffic (e.g. whitehouse.gov, examiner.com), and everything in between.
As Drupal increases in popularity, more people need to learn how to use it at every level. Drupal founder Dries Buytaert recognized this when he called for an emerging industry of Drupal training. And while high-quality professional Drupal training has been around for some years (pioneered by Lullabot, and now offered by several firms like Chapter Three, Volacci, etc) such training has typically been costly, and difficult to access outside of major metropolitan areas. Accessing such training has required a time and money commitment that excludes many of the people now getting involved with Drupal in a more casual or exploratory way. So it's clear that more varied training opportuninties are needed to serve the needs of the influx of new Drupal users, and community-based training is
Seeding Drupal in Western Montana
When I moved to Missoula, Montana over two years ago Scott Rouse and I co-founded the Montana Drupal User's Group and initiated bimonthly informal Drupal meetups. Missoula's Drupal community wasn't as large as in the major cities, but we'd regularly get 10-20 people at a meetup. We had a handful of Drupal professionals, but many more who had heard about Drupal and wanted to get their feet wet. We quickly saw that some beginners needed more than informal meetups if they were to really absorb Drupal and embrace it, so we initiated monthly 3-hour 'Getting Started' classes, offered at no charge.
Taking local training to the next level
Buoyed by the terrific feedback we received, we began to want to provide more in-depth training that could reach a wider audience. We found The Lifelong Learning Center (LLC), Missoula's popular adult education program, which already offered some basic web courses. We drew up a course proposal for 'Build a Powerful Custom Website with Drupal 7'. The class would offer 30 hours of training in Drupal over 5 weeks, and meet twice a week for 3 hours. We found it simple to get our course accepted into their Winter catalog.
The LLC offers classes on everything from pottery to sign language, and they mail their catalog to thousands of locals, so that helped promote the class. Keeping fees low was important to us: Montana's economy has been hit hard in recent years, and some folks taking our classes are unemployed. Andy departments at the University of Montana (another audience we wanted to reach) have had their budgets cut recently. Since the LLC operates as a nonprofit, they were able to offer this 30-hour class at a fee of just $123, which is pennies on the dollar compared to most professional Drupal training.
The LLC provided a great classroom lab equipped with wifi, projector, and modern iMacs; they also handled promotion and registration. Nine students enrolled, with diverse interests in Drupal. One woman wants to build a site for her family-run outfitter business. Two men want to become pro developers with Drupal expertise. Five students come from the University of Montana intending to use Drupal for three departmental sites. One student, a professor of Journalism, heads up RezNet, a Drupal-based hub site for Native American reporting. And one woman – the Library Director at the Bitterroot Public Library, about 1 hour south of Missoula – wants to rebuild the library's site in Drupal.
Since there were only nine students and we had five weeks, Scott and I focused on what each student wanted to achieve with Drupal and strived to relate our classroom presentations to the real-world needs of the type of sites they needed to build. Our curriculum was a comprehensive introduction to Drupal: what Drupal is (open-source web software and a diverse global community), what it can do, how to install it, and lots of hands-on instruction in basic site-building. We also covered some best practices in information architecture and site planning.
Here's a video of interviews with students in the class:
Some lessons learned
Three infrastructure choices we made really helped the class flourish:
Class hub siteWe set up a class hub site which acted as a forum for students to ask questions, and for us to post class notes and other resources the class to review and refer to. (This had the healthy side-effect of getting them used to basic interactions with Drupal 7.)
Project siteWe decided a good way to teach basic site building was to create a demo site ahead of time that would incorporate basic features many sites need, and have the students work on exercises each week to build that site step-by-step. Scott built a D7 site for a fictitious local bike club Zoo-Town Bikers which included basic posts, content types for bike rides, announcements, and events, event calendar, and a "I've ridden this ride" feature. The Zoo-Town Bikers site served as our teaching template as we covered the basics of site-building, and we encouraged each student to follow along each step of the way as we created the site week-by-week.
Student sandboxesAlthough we covered installing Drupal in one of the class sessions, to make it easy for the students to jump in and work we decided to set up pre-made Drupal 7 sandbox sites for each student. WebEnabled.com made this easy and convenient. Their $20/month plan gives you a 10-site developer account, and I was able to create 10 Drupal 7 sandbox sites in about 15 minutes. Although some students already had Drupal running on their laptops, most used the sandboxes and it was a valuable fallback for those whose on installs got messed up. I highly recommend pre-creating sandboxes like this for an intro Drupal class, it saved us a lot of headaches.
- We made a large effort to invite the students to get involved with our local Drupal user group, join its online forum and come to our in-person events, hoping the class will just be a starting point of contact with the Drupal community in a relationship which can contiue to grow. We've already begun to see this bearing fruit.
- A friendly, human face is important to a lot of people: we let students know that even after the class, we're available to help answer questions and help when they get stuck. We live in their town and they know where to find us. While we did cover how to get Drupal help online and on IRC, for beginners (and some non-beginners!) this face-to-face connection is very reassuring.
- After the initial weeks, we left some class time open for students to work on their own projects and get 1-on-1 help from the trainers. I was really gratified to see students startinging to help each other out, discovering solutions to problems together. I feel we took a step toward building a new small cell in the huge body of the Drupal community.
- Since I work from home on a virtual team, getting out of the house and sharing the Drupal love gives me some much-needed balance. I love teaching Drupal as much as building sites, and sharing my time and knowledge with the local community is my major way of giving back in return for everything I've received from Drupal software and Drupal people.
- It helps to work for a company that values giving back to the community: CivicActions pays team members for a certain amount of community participation each month, so I don't need to choose between volunteering my time and putting food on the table. Every company that bases its business on Drupal should contribute back to the community in some way.
The Drupal community has always showed remarkable ingenuity and flexibility in finding ways to meet its needs. As Drupal grows to become a dominant web and information platform we'll need to find new ways to train people on it. Community-based training, which can take on many different flavors tailored to local needs, can fill an important role in helping anyone who needs or wants to learn Drupal, and help grow the Drupal community.