Tuesday, April 26, 2011

Do People Learn in Classrooms?

I've spent the last week or so working on a final projects and studying for exams, and it has raised some questions in my mind about how well the standard academic system works. I'm not going to claim that I haven't learned an incredible amount from the classes I've taken, but if I'm completely honest, I'm not great at learning while actually sitting in a classroom or taking tests.

My problem is that unless I'm actively engaging in what's going on in class I get distracted. (I should probably stop taking my laptop to class, that can't help.) If I'm not distracted, I'm busy copying down the notes on the board word for word without really paying attention to what those words mean. At the same time, I do pretty well in these classes. My grades are good, but there have been many classes I've gotten an A or A- in where I definitely had not mastered the course content.

What I learned instead was how to do well in each specific class. I determined how much time I needed to spend on homework, what I needed to study, what I needed to put on my exam cheat sheet, and how to write to cater to the professor's idea of what a decent paper should look like.

So where HAVE I learned a lot? Outside the classroom. The most educational experiences I've had throughout the course of my education have all been projects. I've been required to do projects in every single class I've taken in grad school. A quick rundown:

Intro to Artificial Intelligence:
  • Search algorithms in Java
  • Machine Learning in Java
  • Planning using PDDL
  • Decision analysis
Intro to Operating Systems
  • Disk Scheduler and Thread Library in C++
  • Memory Pager in C++
  • Secure, Concurrent Web Server in C++
Microarchitecture
  • Forced determinism in multithreaded applications in C++
Advanced Programming Languages
  • Type Checker in Java
  • Survey of Checking Practices for Scripting Languages
Advanced Cryptography
  • Paper summary
Web Databases and Information Systems
  • LAMP stack setup
  • Basic MySQL, PHP, and HTML
  • Sessions, Login, and Cookies
  • JavaScript validation, APIs, and interactivity
  • Search Engines and Indexing
  • Final Group Project
Dang. That's a lot of projects, but that's exactly why Michigan cranks out so many great engineering graduates each and every year. Calvin is the same, just on a smaller scale, especially with Senior Design and lab projects. When you have to actually DO it, you learn it.

If you have an even somewhat challenging and fulfilling job, you'll never be called upon to sit in a room and listen to someone for four months before having to try to guess what you were supposed to retain. You will be called upon to work with a group of people or by yourself on a project, and you will be judged on your results.

The key is to find great projects for students. If professors want their students to learn to the best of their abilities, they need to assign projects that put large portions well within the reach of the students' knowledge and abilities, and some smaller portions just over their heads. It might sound a little mean, but it's important to get students' confidence up before cutting them back down to size and letting them clamber back up. That's how we grow.

I couldn't tell you specifically what many of my professors lectured on last year or even last month, but I could talk for days about the things I learned while working on the projects they assigned.

So go sign up for some classes with lots of projects. If you can't find some, make up your own projects. If you're really ambitious, do both.

No comments:

Post a Comment