To view posts about previous T-SQL Tuesday entries, please use this tag.
The late, great, Robert Davis invited us on Independence Day 2010 to write about Gettin’ Schooled:
We return to our days of youth to take a fresh look at learning. How do you learn? How do you teach? What are you learning or teaching? Or the coup de grace post would be learning something new and telling us about it.
As some of you may know, I taught high school for a year in 2005. My subject was Computer Literacy, and my students were (mostly) the children of the wealthy elite of Johannesburg.
That year was preceded by a four-month stint as a junior lecturer at an ICT academy teaching Java, and later followed by a year of tutoring and about three years of Saturday School (which in some respects was similar to SQLSaturday), where a group of teachers taught as much as we could to underprivileged kids for free each weekend, and then we got a hotdog for lunch to say thanks.
Along with performing on stage, teaching is one of my great loves. There is no equal to explaining something to a group of people (or a single student) and seeing that look when they understand.
I’m sad Robert isn’t here to read this, because although we didn’t interact much before he died, I learned so much from him (including his blog, forum posts, and Twitter feed). Robert and others like him inspired me to turn my admittedly unusual teaching style to the Microsoft Data Platform community.
The sentence that called out to me in this T-SQL Tuesday invitation was “how do you teach?”
I don’t think I’ve ever thought about it long enough to explain it, and although I’ve come a long way from walking into a class of cheering students in August 2004 wanting to learn about Java, the principles haven’t changed much.
1. Passion
You have to love what you teach. That’s probably my overriding principle. Most days I didn’t know what I’d be asked by my students, but I loved the opportunity to interact with them. Be it Computer Literacy, programming, SQL Server, or even life skills (there’s a lot of stuff that comes up in class), I loved it. The best thing is that I can’t possibly know everything, and I am not afraid to let them know. At the school I ran a general knowledge contest for the kids, where if I didn’t know the answer to something they’d go into a draw to win an iPod Shuffle (look, teachers don’t make big coin). Aside from the prize, it allowed them to engage in the excitement of sharing knowledge with me and their peers. It led to conversations that normally wouldn’t take place in that kind of environment, and it broadened my own general knowledge.
Which brings me to the thing that seems obvious but isn’t.
2. Know your s#!t
You have to know what you’re teaching. Working from a fixed syllabus will get your students to pass a standardized multiple-choice test, but that’s not teaching, that’s reinforcing conformity. The good news is that you have to learn before you can teach. Whether I research a single technical blog post, prepare a 60-minute session, or write six chapters for a book, I have to understand what I’m talking about so that I can repeat it in my own words. It turns out that this is an excellent skill for life in general.
3. Time management
Lesson plans can cover an hour or a year, and knowing what to leave in is probably not as important as what to leave out. I’ve said in several of my SQL Server talks that the information I’m giving isn’t completely accurate because of time constraints. I want to convey a subject with enough information to be mostly right, so that if you want to learn more you can find out the exceptions to the rule. If I only have, say, twenty minutes to explain database clusters, I’m going to gloss over certain details.
I mentioned in a recent post that I ran out of content for a full-day session twenty minutes before the end. That’s not terrible, but it’s not great and I felt bad for my paying students. After the fact my proctor mentioned that it would have been easy enough to throw in a real-world demo which would have taken around twenty minutes to show, and I might even have thought of it myself if I hadn’t panicked.
4. Don’t panic
I know, right? This is the one thing they teach you in acting classes. When you’re on stage it’s easy to forget your lines, lose your place, trip over a prop, and for all my IT people, have equipment failure or a crappy network connection resulting in a demo failure.
I’ve had the luxury of improvisation training. The core principle there is “don’t panic,” followed closely by “yes and.” When something happens in the scene, you accept it and add to it. This can extend to a missing prop, an actor who didn’t enter on their cue, or a Bluetooth keyboard failing in the middle of a demo. Don’t panic. Your audience — your students — are there to learn from you and want you to succeed. You immediately get their empathy if something goes wrong, and there’s a presumptive contract that they will learn something from you.
Aside: of the innumerable technical sessions I’ve attended and presented, very few have escaped without a demo or technical failure of some sort, and in all but one case I learned something. Only one presenter was so horrendously unprepared that it was offensive to everyone in the room, and I apologized about them after the session to the attendees out of professional courtesy.
Knowledge transfer is one of humanity’s greatest achievements, and I played a small part in that. Share stories of your favourite teachers in the comments below.
(Photograph by Maggie Hallahan / Microsoft / Azure / Visual Studio. CC BY-NC-ND 2.0.)