From Listening to Active Learning and Mentoring
Yesterday I outlined some of the changes that are coming for the North Dallas .NET Users Group. Today I’m going to focus on that first change.
More of a focus on hands-on practice, group activities, and mentorship; less of a focus on large group lectures. You learn to be a better developer primarily by developing and interacting with others. We are going to change the format to focus on activities where people are primarily doing, not listening.
This isn’t to say that we won’t ever have meetings centered around someone speaking. Sometimes those meetings can be very valuable. But they will no longer be the norm.
The goal: provide more effective learning opportunities for developers, helping them accomplish their goals and improve their careers.
There are few things I like more than a good lecture. I even like giving them sometimes. I even pay a good bit of money to The Great Courses so I can get high-quality lectures on various topics that I enjoy. But I am convinced that lectures/talks are not the best way to learn most technical topics.
Eric's Deck Is Short A Few Cards
Now I’m going to argue with myself for a bit. This will help flesh out some of the underlying notions and possibly answer some objections.
Meetups Are Great for Being Exposed to New Things and Lectures are Great for That!
Some people come to meetups to be exposed to new ideas. Meetups can be used for that. You know what’s better? Twitter. Blog posts. Mailing lists. Talking to people. Pluralsight. YouTube. Udemy. Books. If your goal is to be exposed to new ideas, driving some place to listen to some person talk about a topic is usually not the best way to get exposed to new ideas.
What am I getting at? If we’re going to drive somewhere to learn some things, let’s do something that you can’t do just by watching videos on YouTube. And if this works the way I hope it does, you'll have the chance to be exposed to more, not less.
Well Maybe I Learn Programming Best By Lectures!
Maybe you think that going to a lecture is the best way to learn Python (insert your language of choice here). Maybe that’s true. I also have my preferences. However there’s some research out there that says that the whole “learning styles” thing is bogus. One of the things we should do is look at this research some time.
What I can say is this: from my experience in teaching programming, me (or anyone) talking to people was not how they got better. They actually got better by programming, hands-on. I will admit that I like to hear people talk about software development. But I also know for much of what we do this is ineffective, despite my feelings.
But Some Topics Aren’t Hands-On!
This is true. And those shouldn’t be hands-on. Part of the challenge and the fun is figuring out the best way to learn different things.
But Aren’t Meetups Useful for Letting People Practice Speaking?
This is true. The community is better off when there are better speakers, and practice is good for that. And there will still be chances to speak publicly in what I’m proposing. It’s just that 1.5-hour-long lectures are no longer going to be the default.
But What about the Other Good Things about Attending Meetups?
There are benefits to going to meetups outside of knowledge/skill acquisition. I have benefited enormously from the networking, for example. Don’t worry, these other benefits stick around. This is a change to optimize the educational value of the meetups, not to remove the other positive aspects.
So, to be clear, the focus here is on improving the meetup from a knowledge/skill acquisition standpoint. Now I’m going to turn around as ask you a question. When it comes to knowledge/skill acquisition, what can you do better at a meetup than a well-produced online video course can do?
Chances are, you will not consistently out-lecture a well-produced video course. You will not out-plan a well-produced video course. You will not beat the convenience of an online video course. When you have speakers, sometimes you get great ones. Sometimes…things go poorly. If you want consistency, disparate speakers giving talks is not your best bet.
I can think of only one thing that’s definitely better with meetups, and it’s a huge win: you get to interact with other people. Let’s talk through some examples.
- Someone watches a video, tries to follow along, but makes a dumb syntax error that they can’t figure out. So they get stuck. And they get frustrated. They waste lots of time. In contrast, someone is working through some exercises with some mentors and other students. They make a dumb syntax error and they get frustrated, but someone is there to help them, and tells them where they are missing their semicolon (or whatever). The learner wins.
- Someone reads a blog post about something related to React (or whatever). They get the syntax and how to do it but they’re not sure why the framework has this feature. So they ask the blog post, “Hey blog post, what is this feature for?” The blog post doesn’t answer, because it’s not sentient. It’s just a blog post. In contrast, someone is working through some programming task with mentors and other people. They get how it works but don’t know why it’s important. But that’s okay, because they can ask one of the mentors and because they are human, they can understand, respond, and explain the big picture. Perhaps they can even adapt the exercises on-the-fly to help the learner.
- Someone reads a blog post about combining some CreateReactApp project with Express to deploy to Heroku (or whatever). They try to follow the instructions but something just isn’t working. So they leave a comment on the blog post saying “nothing shows on my app.” At first the writer of the blog post thinks “I sure wish they had left more information because I can’t debug anything with that info.” Then the writer thinks “I wonder if CreateReactApp has changed, or Heroku, or Express.” Then the writer considers the perils of debugging deployment issues over email or blog post comments. Then the writer feels a little bad because they’ve let this person down, and wonders if they should take some extra time to dig into this but he also happened to be having a nice weekend and wants to play Minecraft with his kids instead. Yes, maybe this seems oddly specific. And yes, maybe this very thing happened to me yesterday. Maybe. In contrast, someone is going through this same exercise with mentors and a group of people. It doesn’t work. They think to themselves, “nothing shows on my app.” After struggling with it a bit, they ask for help and some awesome mentor comes over, finds the problem, and helps them out.
- You’re going through this video course on Angular and it’s pretty cool I guess. You do it for a while but you have a lot going on. You know that sometimes it’s a lot easier to stay motivated in learning when you’ve got someone else to learn with. But you keep slogging through it, hoping that you’ll make enough progress to keep you motivated. But then you run into a snag and geez, it’s hard to stay motivated when those keep happening. In contrast, instead of learning alone, you meet monthly with a group of mentors and other learners. You get to show off this cool thing you built to other people. Hopefully they aren’t lame so they smile and encourage you. You are now less likely to stop because you have support.
Leverage the in-person context for hands-on practice, work alongside other learners, and mentors available to help for the tough questions. This is a different, better kind of learning.
Tomorrow I will discuss the problems of curriculum and mentors. It’s not like we can just wish for this to be and poof, there it is. This is going to require some work.comments powered by Disqus