Learning How to Teach a Class

TeachingClass

A friend in the Dallas UX community reached out to me. When I read her email I couldn’t believe what she was offering. Her question was if I’d be interested in teaching a class on responsive web design at SMU/CAPE.

Honored, surprised, and excited I ultimately replied YES! A few days later it hit me – I had no idea how I was going to teach a class. SMU is a highly prestigious institution here in Dallas and I figured the expectations were high.

I’m happy to tell you that I’ve taught that class – with great success. My students are now loaded with valuable, hand’s-on pro-tips, to help them level up their careers.

Read on to get a picture of how I organized myself with purpose. My lessons will help make you ready for the day you teach your own class.

Write No To Say Yes

Receiving the email surprised me a great deal. I never figured such a famous university like SMU would know about me. How did they even get my email address?

Turns out I benefit from the volunteer work I do in the Dallas UX community. Speaking at evening professional meetups. Tweeting out pro-tips. Posting useful facts on LinkedIn. Participating in the fantastic Big Design Conference.

It All Adds Up

I suppose I’m lucky. I strive to be optimistic, open, and generally useful. That’s served me well. Call it tactics for improving my personal brand image if you want. Ultimately I strive to serve the community and get to know people.

One of the SMU coordinators who attends these events knows me. When her teammate needed a teacher for responsive web design she connected us. Wonderful!

Consider Wisely

Replying back, “Thanks so much. May I have a few days to consider your generous offer?”, gave me a few days to figure out if I could do this. It’d be a first for me. The last thing I ever want to do is accept a job and not deliver. That’s so lousy. I refuse to fall on my face, and let down my partners.

I gave it deep thought. Running a class isn’t entirely out of the question for me:

  • I’ve given loads of one hour talks on technical matters.
  • As a coder I’m well versed in building mobile websites.
  • I’ve organized and run plenty of hand’s-on workshops. One of them being four hours long at SXSW.

Experiences like these gave me enough confidence that I didn’t simply answer back “Thanks, but I can’t.” Ultimately I wanted to do it because it’d be a career-highlight. Who knows where something cool like teaching would lead. Best of all it would give me a chance to make good on my first-principle: sharing what I’ve learned.

Trusting in the Brain Trust

Always gotta do some research. That’s the engineer in me. So I looked to my peers as for examples. I wanted to find friends, family, and colleagues who’ve taught before. What would they say about my proposal to teach? Had to wonder who I knew with some first-hand experience.

Turns out I know loads of teachers!

Full-time teachers would be helpful, but I really wanted to discover people in my position. Working stiffs who teach in the evenings. Did I mention my class was a night class? Monday and Wednesday, from 6:30pm-9:30pm, for three weeks. Kinda aggressive, but not a long haul by any stretch of the imagination. I’ve had more lethal deadlines in my day.

Identifying all the people I know who work all day and teach at night gave me a list to start reaching out to. Emails, text messages, and face-to-face. I rattled off dozens of questions to get a vibe of how much work it is, how did they know what to do, and what do students expect.

I’m lucky. I have the best people around me. Everyone I asked was candid with their experience, and encouraging in my potential. They didn’t hold anything back and told me all they could. Natural teachers every one of them! Mixed in were reasons why they thought I’d do a fine job. Man that was great feedback!

Write No To Say Yes

Brain full of ideas I sat down with a pen, a paper, and just the quiet solitude of my noggin. It was time to write down all of the reasons why my teaching was a horrible idea, and I should refuse SMU’s kind offer as misguided confusion of my abilities.

Being creative as I am I wrote down nearly two dozen reasons why I should just say no. Why I ought to walk away from the impending doom of a failed classroom career.

To be sure, my goal wasn’t saying no. The goal in this survey of negativity was to clearly arrive at a yes. I went through each item one by one, said it out loud, and thought why the no didn’t apply to me in this case. Or how I planned to hop the hurdle.

An hour later I had a strikethrough on every line and that let give me the confidence to reply back, “Yes! Sign me up!

Yes, I Do

My SMU contact, and the web design program coordinator, is so supportive and encouraging. They made me feel like a million bucks, and empowered to do right by my future students.

We chatted a bit, exchanged some emails, and I could tell that my initial thoughts matched her expectations. My plans would fit the needs.

Discovering new situations I always ask open-ended questions to the client, or boss, to learn. Stuff like:

  • “How will we measure success?”
  • “What type of person does well in this position?”
  • “When do I need to deliver what type of stuff to you?”

Answers to those questions gives me a ton of context from which to learn. I had about three months to put together 18 hours of class material.

Deliver on Some Other Things First

I had a few other side-hustles that I had to come good with during that time. A two-hour workshop at SXSW Interactive on UX and analytics, a four-hour workshop at Squares Conference on responsive web design and development.

Part of my professional brand is delivering. On time, and beyond expectation. I can’t help it – it’s just who I am. You can guess all the hours I invested into both of those workshops. I consider SXSW to be the major league of nerd fests so that was a good twenty hours of production. Squares is such a solid local conference, and I know the organizer, so I put another thirty hours into making that one top shelf.

I’m happy to report that both served their audiences well. Plus they informed my SMU class.

Man it’s great when things all click together!

Trello My Random Thoughts

While I was working on the SXSW and Squares conference workshops I couldn’t help but day dream about the SMU class. When a good idea pops into my head the last thing I want to do is turn it down.

So I built up an idea board on Trello capturing every random thing that came to me. Sometimes I dedicated time to brainstorming to get ahead. Figured it be valuable building up content to help out future-Ken. That guy was going to need all the help he could get!

What did I list on my Trello board?

  • Websites I love.
  • Websites I can’t stand.
  • Key pillars of responsive web design technique.
  • Notable people in the community.
  • Key moments in history.
  • Modern best practices.
  • Things I’ve done.
  • What I had to do to fulfill on my commitment TO SMU.
  • Daily-use tools from my professional toolbox.
  • Links to my favorite articles.

Gathered up all of this random stuff. Nearly everything went onto the board starting off in one big list.

Although I still wasn’t actively working on the class I took ten minutes every few weeks to organize the board. I started finding patterns to group ideas. Perspective told me things to remove because they were too edge-case or advanced. I’d think back to when I started learning responsive web development and what I wish I’d known back then.

That’s another thing – I’m not a teacher by trade. I’ve never studied pedagogy, and I know that’s a big deal with teachers. Why did anyone think I could pull off running an official class?

Folks at SMU knew enough about me from seeing my talks to gain confidence. What I think I demonstrate in my public speaking is: I show up prepared, I respect my audience, and I can deliver useful material. In retrospect I think the winning element is that I’m a working professional. It’s not idle boasting to say that I know this topic very well. It’s my jam!

Subject matter experts are valued by the coordinators.

My class is part of a nearly year-long certificate for working professionals who want to invest in themselves to get better. These are students who don’t have a lot of time to listen to a professor professing loads of theory. Students want to walk away knowing stuff that they can use ASAP to earn a better wage.

I have high esteem for learners.

Breaking it Down

I had a ball when I finally had the chance to turn full attention to building out my class. I needed a plan. My class needed to see that I know what I’m doing and see they’re in good hands with my leadership. That we’d get through every Monday and Wednesday together for three weeks no problem.

I knew I wasn’t going to just get up in front of a group of fifteen people and lecture all night long. What a boring drag that’d be. I also expected they, like any of us, are in a constant time crunch. Six hours a week of class time represented a big investment of their free time. Away from work, family, and personal pursuits. Understanding that I knew I’d particularly want them to write code during our time together. Always be coding!

Programmer-thinking is a handy way to approach solving just about any problem. One of its tenets is breaking down a huge, inconceivable task, into many little tasks. Each one more easily solved. Lazy programmers are the best. We like to solve a little task once, and make its outcome a reusable component that can be casually dropped into other places.

That’s when I came up with the basic building blocks of my nightly classes.

Building Blocks

TeachingClassBuildingBlocks

Here’s a list of all the building blocks I identified while planning out my courses. I figured having these would give me a common way of assembling each night’s lecture, organize myself with purpose, break up the monotony of 180 minutes, and let the observant students recognize part of my teaching language.

  • AMA. Ask me anything. Q&A period for the students to make meaning out of our time together. Everything was up for discussion. Usually kicked off a night with this segment.
  • Tour. Drop out of the Keynote slides and mirror my laptop’s screen so the class can see what I’m seeing. Then I’d load up websites from a curated list of interesting places. Each site has a working example of what we should strive to do, or what we ought to avoid.
  • Lecture. Straight up talking for some amount of time explaining the theory of a concept. Not just slides full of bulleted text. Big bold ideas. Illustrative examples showing how a thing ought to look.
  • Break. Ten minutes to stretch the legs and take a bio break. Often I need this as much as anyone. It was always a chance to fill up my water bottle. A necessity for so much talking.
  • Demo. Drop out of the slides and mirror my screen. Now run a tool showing how it’s used, and the benefit it offers. Always guided the demo by providing context of what effort it helps accomplish.
  • Exercise. Code together in class. Testing their understanding of my major lecture topic of the night. Goals will tell why they’re doing the work and what I want to see. Sometimes I’ll provide sample code as a jumping off point. After they work for ten or fifteen minutes I’ll walk around to visit with each of them. Gives me a chance to have one-on-one time and address their individual instructional needs.
  • Show. Following their exercise work. It’s a chance to call up a few confident students to the head of class and demo their work. Helps to find someone with a USB drive. While they go through their work I’ll ask leading questions prompting a response. Generally reinforcing lessons I saw they mastered that I want the entire class to grasp. Also a chance to highlight excellent work. Always clap for them. Thank them for sharing their work.

The SMU class-room facility are modern. I had my laptop at a podium connected to a large, wall-mounted, display. From there I ran a basic Keynote presentation to focus our attention. Each section of the presentation was prefixed with a slide showing in large block letters the name of my building block. An obvious hint as to where my lecture was going.

Time estimates accompany many of the slides. A simple way to convey how long we’d be on a subject. It was good for the students, and great for me, because it directly informed my time management. I didn’t slave to the estimation, but it helped me keep pace. For my money it’s an element of being a professional.

In Class Exercises

Writing code together in class was a phenomenal hit. I could tell some of the students had developed relationships in their previous classes and enjoyed collaborating. They sought each other’s company during the evening’s class. Perfect.

At the same time coding exercises were a chance for all of us to have a break from me just rambling on for three hours straight. Ugh – that would have been the worst. I believe I have interesting things to say, but enough’s enough.

First week it was just random code snippets to dial in their broad understanding of my topic. Second week they started something that looked a lot like a real-world project. Third week they continued evolving the codebase pushing into the realm of a portfolio piece. Something they can talk around with future clients. Something they can show to potential employers.

Students had dedicated time in each class to start and finish practical application of my night’s lecture. I encouraged them to continue working on it over the following weekend. To polish it up and lock in their understanding. I never made it official homework because I know the pressure they’re under in daily life. Still, I hoped they gave it some time and kept up momentum.

Choices Choices Choices

Part of my obligation to SMU/CAPE is awarding students a grade. That started to feel like a job. I knew I had to do it as part of the package for teaching people. Fair enough. Although I’d never written a multiple choice test in my life I knew I could figure it out, and I did.

One day, about a month before the class, I visited the school’s office for orientation. Had a chance to meet most of the people working in the back office in support of the students and instructors. A great group of dedicated folks! I got trained up on their systems and found out what I’d need to know. I got all of my questions answers while I pounded out notes on my laptop. It was a good session. Believe me that I referred to those notes plenty!

During our training together I learned about their online exam systems. That I could put together tests formed up of multiple-choice and true/false questions. Decided to go with that because it was something the students would know by the time they came to me. Even better it provided instant grading against my answer key flowing stats into their system reporting to the test takers.

Tests Before Talking

I wrote three quizzes and the final exam before I wrote any detailed lecture presentations. Planning my overall goals for what I’d teach, broken down per week, I knew what I’d want them to come away with.

My high-level plan guided what was on each of the three quizzes. Each was ten, multiple choice questions. Quizzes provide students a small grade, a confidence boost, and a reality-check as to how they’re keeping up with my content. Quizzes opened up after class Monday, and closed before the next class on Wednesday. Enough time to learn and confirm.

My goal was making the quizzes challenging, fair, and completely achievable for everyone who truly locked in the learning from my classes.

Of course I searched in Google for “how to make a good multiple choice test” and of course it came up with solid results. Here are the ones that most informed my quiz design strategy:

Let me reveal a secret to you. Something I did that I don’t think the students ever noticed. During each Monday night class I had in hand a hardcopy of the quiz scheduled to open after class. I used it as a guide guaranteeing I covered everything in class that they’d come to find on that night’s quiz. When the assigned homework held answers I made sure to mention the fact. Gotta be helpful.

Final exam was thirty-five questions. I ensured that everything they saw on the quizzes was in my final. It served to underscore all of the most important concepts I delivered to them during our time together. I wanted it to be a reminder after our time together so that they might prosper.

Assigned Homework

I’m ambivalent about homework. I expected they expected it, but I expected they wouldn’t want to do it. My take on homework is that it’s all supplemental. I choose articles that reinforced my lecture topics. I collected resources like:

  • Articles explaining in depth techniques that I glossed over.
  • Case-studies of real world applications of strategies I introduced.
  • Conference videos from industry leaders to inform and inspire.

I’ve already mentioned this, but I wrote one or two questions in each of the weekly quizzes whose answer came from the homework. I’d highlight the item in the name of fairness. Ultimately I wanted to make that a bonus for the people who were willing to go the extra mile completing their studies.

Online Resources

I didn’t provided my night’s full presentations to the students. I didn’t think my work was made to stand on its own. Each slide is minimal text meant to focus our attention as I spoke about the subject. In the back of my head I figured it would force them to take their own notes, and therefore be more engaged during class

Exception was a subset that showed what was to be built in the class coding session. Rough sketches of screens, menu item details were obvious choices. Targets to guide them towards completion. I’d done the solutions before asking them to do the same. Solving the problems on my own assured me they’re possible, and gave me something to screen-cap documenting show small, medium, and large UI achievements.

Another shared resource was a URL to a link-dump Google doc. Each night I added references as I demoed, toured, and spoke about techniques, people, and example websites. Then they could review those at their leisure as they processed class notes.

One more element was a Github repo where I dumped working examples and skeletons from which they could work. Was good to give working webapps showing the simplest concept fully formed. That lead them towards the next logical evolution, and the more cmplete polish. Sometimes I’d give my solutions so they could learn from my perspective. Like a code review passes along skills transfer.

Calling them by Name

Going into the class I wondered if I’d ever learn they students’ names. Normally I like to look a person in the eye and call them by name as we chat. Mindfully acknowledging another human being is so important. Given how short our time together would be I faced the fact that I simply wouldn’t get a hang of all (if any) of their names.

To tell the truth, admitting that felt a little weird. Not ideal in the least. I acquiesced figuring I was prioritizing what I could accomplish. Simply preparing and conducting the classes was going to be a major accomplishment.

Guess what! About half way through I knew more than half their names. By the last class I knew all of them. How could that be? Did some lifelong teacher give me a pro-tip? Did I have a secret to my success?

Yes! It was all thanks to a happy accidental.

Recalling one of the jobs I took on as an instructor was to take roll call in the first class. It gives the folks in the back office a chance to confirm enrollment. Mid-way through the first class I figured everyone was present and accounted for. Pulled out a sheet of paper and passed it around.

Because those fantastic people signed their names in order, and never switched seats on me in subsequent sessions, I drew an overhead layout of the chairs with labels.

I had a map! Pretty sweet way to learn their names.

First Contact

Another smooth move I did worked out well. In the first session I spent fifteen minutes introducing myself, touring some of my more interesting historical work, and recent topical work.

My deep history is making games so that nearly always intrigues people. Recent work being mobile websites is totally on-point and kept their attention too.

After that I turned it over to them. Gave them ten minutes to write an email addressed to me listing their expectations, learning goals, and any assumptions they held about responsive web design.

Perfect choice!

It gave them a chance to capture their thinking, take control, and ensure we know each other’s email addresses. Now we had two-way communication! Many of them used that to ask me things. Solid way of making myself available, and letting them know I want to work with them.

Even gave me several ideas to incorporate into the next class. Because some of them were kind enough to ask questions I was very happy to give them the answers I had.

Went Better Than Expected

In the end I created and delivered learning materials for the course on responsive web design and development. Lectures, homework, source code examples, quizzes, final exam, and in-class teaching.

This was an amazing opportunity to share what I’ve learned serving a group of enthusiastic learners. I encourage you to teach in your community because you can help people become better! When you do, reach out to me on Twitter and tell me your story.

Let’s do something awesome together!