Make Them Sweat

May 28th , 2016


Forced To Persevere

Forced to persevere has many names; “Eat or Be Eaten”, “Do or Die”, and “Swim or Sink”. The way I like to think about it is that whenever life hands you an opportunity to fail, then you are forced to persevere. I like to see these opportunities to fail as moments to become a stronger version of yourself. The struggle from the fear of failure creates an intense emotion that has engrained some of the most memorable lessons of my life.

Every time I am learning a craft I always plateau. I get to sticking points where I just don’t get any better at what I am trying to become great at. This happened to me everywhere. I got stuck on 225 for the bench, I couldn’t break Silver I in League of Legends, and I couldn’t figure out pointers in C/C++. To this date I have only overcome one of those plateaus; I understand pointers in C and the reason is because I was forced to persevere.

Plateaus suck. They are truly some of the worst things about getting good at anything. It is aggravating to like something so much and not get better at it for a long period of time. It makes you feel like you should quit; that you weren’t meant for this. What is worse is the fear of failure, the fear that this is the end of the road, the fear that you are never going to get better no matter how hard you try. That fear can be discouraging if not crippling. It’s probably the main factor that stops all of us from getting better at our crafts.

My favorite programming assignment at my university is implementing malloc. What makes this assignment so great is that it is known as the “Rite of Passage” in our system programming course. The funny thing is that after being on course staff for multiple semesters I think the assignment name is a misnomer; it’s not really teaching you about malloc(), it’s teaching you about yourself. It’s one of those weird assignments where it was intentionally designed so that the current version of you could not possibly solve it. By this I mean that as a system programming student if you wanted to be able to implement a memory allocator that passes all the test cases you were going to have to kill “weaker versions of yourself”. You were literally going to have to become a stronger version of yourself just to pass this one assignment. What I loved about this assignment was that it had an all or nothing grading scheme; I love and hate the TA who decided this. What I mean by all or nothing is that you had to pass all the test cases otherwise you would automatically fail the assignment. I spent 40 hours on this assignment over the course of 3 days; when I was done I took a 2 hour nap on the floor of the lab (I was that physically, mentally, and emotionally exhausted). By the end I really understood how heap memory worked in C and how to use pointers. Two things that I went an entire year without understanding. You may wonder “How did this kid go a year without understanding pointers” and that’s a good question. The answer was that I was never forced to. I am human and I will pretty much always take the path of least resistance. I went through a year of programming classes without understanding pointers, because I was always given an extensive set of test cases and I would try different things until I passed them (shotgun programming). I remember whenever working with variables and pointers I wondered whether to use an asterisk or an ampersand, so I just tried both individually (I learned relatively fast that using both at the same time didn’t get me anywhere). The malloc assignment taught me something much more valuable than how a memory allocator works in C; it thought me that I will never overcome a plateau unless I am forced to persevere. Unless I am put in an uncomfortable situation where I am being pushed past my limits, then I am never actually get better at my craft. I believe this is just how it works for most people and why I encourage instructors to provide these opportunities to their students; make them sweat.

What Not To Do

I think the most common way people try to teach students is actually very wrong and is seen in a lot of new teachers. When I first started off teaching I was on course staff for a discrete math class. I was a sophomore in college; young and excited. I was very eager to teach and help students do well in the course. For my first semester I held one of the most popular office hours I have ever seen. I solved homework problems in miraculous detail on the whiteboard in front of a room crowded with students. I would even verify their solutions and if it was wrong tell them why it was wrong. Now for those of you who already see what is wrong with this I will explain that I only ran my office hours that way, because that was the only way I have seen office hours run.

It’s actually logical why most new teachers teach this way; it doesn’t require anything more than being a good student. All I needed to do was to solve the current week’s assignment before my office hours and just work out the solution in front of everyone. But this is bad. The fact is that your students don’t need you to solve problems for them; any A/A+ student could do that. In fact everything that is taught at the undergraduate level is a solved problem. What they need you to do is to teach.

Students don’t actually learn anything from this route. They are taking the path of least resistance that will ensure them the A on the homework. By working out solutions for their homework you are enabling them. You are taking away the opportunity for them to think critically about the problem and the opportunity to gain intuition from struggling. On top of that you are taking away an opportunity to build character. As an educator your job is to provide opportunities to learn and by doing your students’ homework for them you are actively working against that. In fact I personally believe that the course material comes second to fostering creativity and independence.

I think a great quote for this topic is “give a man a fish and you feed him for a day; teach a man to fish and you feed him for a lifetime”.

Education is an Arms Race

When I was a freshman I ended up taking on of the hardest classes of my life … hardest at the time. After not doing how I wanted on the exam I asked my TA who I looked up to “Does CS get easier after this class?”. He chuckled and told me that this will probably be one of the easiest classes I take throughout my undergraduate education; he was right. What he told me was that “classes never get easier, but you can get better”. I only really understood this after a few more semesters of courses. I realized that my courses were only getting harder by virtue of the progressive learning system, but what was happening was that I was becoming better at thinking critically about problems, so I ended up spending less time on assignments. This led me to understand that education is an arms race.

Education is an arms race where learning objectives are the predator and you are the prey. If you don’t wont to be eaten by the learning objectives, then you are going to have to adapt. Consequently, courses get more rigorous as you climb the knowledge ladder. There is also a snowball effect here. If you do not meet the learning objectives of a course that serves as a prerequisite to another course, then you just might become your next course’s meal. This means that if you coddle a student, so that they can get the A on a single homework assignment, then they might fail an exam question in the course if not a later course where the stakes are much higher.

Breaking the Freshmen Mentality

A common problem that I see with incoming students is that they treat their freshmen level classes as if it were a continuation of their senior year at their previous school. I call this the “Freshmen Mentality”. Common symptoms include not giving enough time for assignments, desiring to have their hand held, and a strong sense of entitlement. This doesn’t just happen freshmen year of college, but at every level; elementary to middle school, middle school to high school, and high school to college. In fact it happens from course to course. Essentially most tracked learning has a progressive curve and there will always be a new element of rigor. What differentiates my more independent students from the ones that desire more hand holding is mentality. The mentality to want to adapt to new elements of rigor and build the character needed to be successful in their new learning environment.

So how can you break this? This was an interesting thing I learned to address in my early semesters of teaching. When I held office hours I made sure that students made a good faith attempt at learning the material on their own. If they missed lecture, then I told them to watch the lecture recording. If they skipped the reading, then I pulled out the textbook to the relevant chapter. If they haven’t solved parts a and b, but for some reason want help on part c, then I told them to work out parts a and b first. Basically I make it clear that I help those that help themselves. As an instructor you can explain the material beautifully, but your students will never succeed unless they first learn how to adapt to the standards of the course that you teach.

Make Them Go Through the Motions

One of the weirder rules that I have for teaching is that I “never take the whiteboard/keyboard”. Kind of vague, but by that I mean that you should never take the driver seat away from your students. So if there is a moment when your student is solving a problem or debugging a piece of code you should never take that opportunity from them. So my problem with a lot of programming office hours is that instructors will too easily give up on their students. They will try to explain to the student how to debug a segment of code, but the student might be slow for a variety of reasons and the instructor will just take the keyboard away and find the bug for the student. This is probably the worst thing you can do as an instructor. This includes when a student is working in the whiteboard and showing their train of logic and you point out the next step of the proof when they would have gotten there at their own pace. By the end of this the student loses faith in their own abilities; they feel inadequate that the instructor had to take the driver’s wheel from them. They feel defeated that given their best efforts the instructor deemed that they weren’t ever going to solve the problem even with guidance. On top of that you are robbing your student of the opportunity to learn to solve their own problems. Teaching requires a delicate balancing act of pushing your students to succeed and to keep their ego intact if not boost it. You want them to feel confident about solving their own problems for future endeavors of their life.

I think an analogy is to think about the best personal trainers when at the gym. The best personal trainers are the ones that explain very carefully the science behind the movements. They explain just how to squat with proper technique. They will show you proper form and then in due time make you go through the motions. On top of that they give you guidance when you are going through the motion; they will point out subtle mistakes in your form and give you advice on how to correct it. And throughout your training with this instructor they will motivate you to continue performing the movements. Now these are really subtle details that not everyone recognizes in good personal trainers. But even the first time gym attendee will recognize when their personal trainer is doing their job correctly; they make you sweat.

Now the equivalent of taking away the keyboard is if your personal trainer said “yeah this weight is never going to move at this rate” and stole the bar from you and proceeded to their own workout. How would you feel? At the very least you would be demoralized that your instructor essentially gave up on you, but more realistically you would be pissed that they just stole your gains. You would probably fire this instructor. Sadly that is not the mentality that most your students will have. They will be perfectly content if you did their set for them. But they aren’t going to get better unless you make them sweat. It is common sense that you aren’t going to get stronger at the gym when someone else is lifting your weights, so why don’t more people feel this way about school? The answer is that your success in school is not accurately measured; it’s measured by your grades which depend on some homework assignments, projects, and a couple of exams; most of which others can do for you without the system ever knowing. But it’s different at the gym. Your progress is very easy to measure … did you lift more weight? did you run that mile any faster? did you gain/lose pounds on the scale? All of these things you can’t fake; you have either made your gains or you haven’t. But school is different; you can fake grades through numerous approaches. Your students will always take the path of least resistance. Your job as an instructor is to make sure that you aren’t enabling them to take any other path besides the one that makes them the strongest version of themselves. It’s hard, but you have to make them sweat.

Discussion

Contact Me

Email: bschong2@illinois.edu

bchong95

bchong95