My "engineering learning styles" session yesterday was based on work done by Richard Felder and Barbara Soloman at NCSU. We adapted the content to programming/hacker-school-specific descriptions, shared where we fit on each scale (with big surprises as we looked around the room), and swapped tips on how they affect our coding/teamwork, and drew a bunch of pictures (I'm a visual learner). If you missed the session, you can take the learning styles quiz on your own and read the descriptions of the styles. Case-study stories are at the bottom of this page along with tons of additional reading.

 

Warning: within 5 minutes of taking the quiz, you will think "but Mel, I do [weird-thing!] that doesn't fit inside the model!" You're right; the model's broken. All models are. They're just languages to talk about your learning with, which is what I wanted to give you; use what works, chuck what doesn't. We often wobble across a wide range on the scale depending on context/topic/skill-level/people/breakfast/etc. because many of us have learned to adapt ourselves to a wide range of educational environments; the trick (and my great hope) is that you'll start adapting your environments to work for you.

Tips I remember from yesterday:

  • Active learner? Do study and discussion groups. Pair program (especially with a reflective learner); you'll likely enjoy "driving" the keyboard. And please, please, please do test-driven development; it's a discipline you may find hard at first, but taking that one step before following your natural impulse to dive in will lead to cleaner code and fewer bugs and world peace.
  • Reflective learner? Write notes and take time to digest them afterwards. Pair program (especially with an active learner); you'll likely enjoy the "shotgun" (non-typing) seat. Also: stop reading stuff and push yourself to just write code.
  • Sensing learner? Make a list throughout the day of Concrete Things I Am Learning. You see the world as made of concept-nodes (that happen to be joined by edges), and you'll be way more comfortable when you concretely know what those concept-nodes are.
  • Intuitive learner? Every time you learn something new, sit down with a person/project/book/idea that seems to be completely unrelated until you figure out how the ideas connect. You see the world as made of concept-edges (that happen to be between nodes) and things won't click until they fit into the stuff you know already.
  • Visual learner? Tweak your editor's color scheme, font style, etc. until you're Really, Really Happy With It. Draw pictures of everything, on everything; use physical movement and space (computer windows in the same arrangement, books in the same place on your desk, waving your hands in the quicksort-dance...) and think about "translation to/from words" as "good communications work," not "what a waste of time."
  • Verbal learner? Write. Talk. Learn to use powerful text manipulation/search tools like ack. And think about "translation to/from pictures" (when working with visual learners) as "good communications work," not "what a waste of time."
  • Sequential learner? Embrace tutorials/textbooks, but don't get stuck on them; if you can't get past step 3, get someone to kick you out of your rut, or find another sequential book/tutorial/etc and look for their equivalent of "step 3" (example: stuck on a chapter on compilers? go find other videos/book-chapters/etc on compilers, read them, then come back to your linear track and see if you're unstuck).
  • Global learner? Keep trudging through the "WTF-zone" (the time before The Revelation Moment Where It All Makes Sense) -- massive immersion and exposure is the key. Also, remember that having The Revelation doesn't mean you're done with a topic; even if you can intuit the correct answer, you haven't really learned something until you can teach someone else how to get there too.
  • Any sort of learner? Work with and talk to people of different and similar learning styles with you and ask them to think out loud for you. You might pick up tricks on different ways of thinking/seeing, or gain empathy for why your colleague does something that seems bizarre to you.

Questions, comments, thoughts, reactions? Hit me up. I was stunned by how packed the fishbowl was and how enthusiastically people responded; I usually don't need to stop people from talking about research papers, but... but... awesome!