8 ms·
This reminds me of some teacher training I received a few years ago. The teacher was showing us a technique for teaching a new skill to people: * First I do
by techiferous 17y ago
This reminds me of some teacher training I received a few years ago. The teacher was showing us a technique for teaching a new skill to people:
* First I do it. (Step one is blah, then we do foo, etc.)
* Then you help me do it. (So what's the first step? and then what do I do? etc.)
* Then I help you do it.
* Then you do it.
The first part is important: new learners simply watching an experienced teacher applying the skill.
- mbrubeck 17y agoMy best CS professors would write code on-screen during lectures (usually in a REPL, or sometimes an IDE). The great thing about watching them coding "live" is that you can see into their thought processes: which mistakes they make, how they figure out the mistakes and recover from them, exploratory code they write and throw away, the order they do things, how they evolve simple examples into complex programs. You don't get any of that from just seeing the finished product. It's also great for picking up mundane practical tips, like tab completion, GNU screen, shell history, and how to quickly look up documentation.
- branden 17y agoYes, yes, yes. My favorite programming instructor would often code in front of the class on a projector. Like you I learned a bunch of little tricks, and it also built confidence. If he can write an AVL tree in front of my eyes in an hour then man, it can't be that hard.
- yesimahuman 17y agoOut of my four years of college maybe one professor coded on-screen in front of us, and it was during one of the earlier classes. It's not that I don't appreciate or respect the traditional CS study, but as a programmer, how else are you really going to learn, than to watch a master at his craft? As I sit here in my last semester implementing a few chosen functions of a small but complete RDBMS for my databases class (i.e. most of the code was written, we just had to fill in stuff relating to a certain topic (buffer management, heap files, etc.)), it makes me wish that I would have seen how the whole system was developed from the first thought processes to the final debugging. That would have been a much better learning experience.
- joshfinnie 17y agoWell I think the issue might stem from the fact that professors in university might not be masters of the craft of coding. I am sure they lost a lot of that mastery while researching their theoretical distertations and what not. Many who show a mastery in coding are working on the next-big-thing and not furthering their theoretical knowledge. This is just my thoughts, however. I really have no experience in learning to code in university (2 semesters of intro ECE).
- yesimahuman 17y agoI would say that some of my professors are quite talented programmers. That or the software they use in class has been extensively worked on by many people (including grad students) for years and they have put little into it. Who knows :)
- Locke1689 17y agoWell I think the issue might stem from the fact that professors in university might not be masters of the craft of coding. I am sure they lost a lot of that mastery while researching their theoretical distertations and what not. I completely disagree. At least at Northwestern, the systems people know their stuff. You may be right about the theory people, though.
- GeoffWozniak 17y agoI tried this when I taught a programming languages course a couple years ago. I thought it went well enough, but to prevent wasting too much time in class, you should rehearse. During office hours and personal consultation I would also do live coding with students, but that wasn't rehearsed. In some cases it went really well, in others, it didn't (usually because something would just take too long -- or maybe because it was Scheme). Still, I enjoyed it and I know at least some of the students did.
- mawhidby 17y agoConsider yourself lucky, I graduated last December and never had the fortune to see any of my professors code on-screen during lectures. It would have been nice for a professor to code on-screen to see their thought processes, given that I started college with little programming experience. Even if I had programming experience coming in, it would have been nice to see somebody else's perspective. Maybe this should start becoming a requirement of the instructor?
- reginaldo 17y agoGood technique indeed... I think different people prefer different ways of learning. As of myself, I learn way faster when I see someone doing whatever I want to learn right in front of me. I do a lot of book-learning to, but I rarely find the SICP-kind of book that clicks on me. So book learning is more informative than practical... So the way I read many books (not the SICP kind, of course), is I quickly devour then and keep most of the stuff in the back of my head, so that when I'm doing the real thing I know what I don't know. After reading in a fast-pace, I try to do whatever I'm reading about and use books as references.
- patio11 17y agoThis is related to the effective way to teach kids anything. "C makes a c- sound, like in cat. CAT. Say it with me, CAT. CAT. Billy, what sound does C make? That's right, C like in CAT. CAT. Good job. CAT is spelled C A T. C A T. Say it with me, C A T. Jennifer, how do you spell CAT? That's right, C A T. Good job. Another word with a c- sound that is made by C is CAKE. Say it with me, CAKE. CAKE. Fernando, what sound does a C make? That's right, c- like in CAKE. Good job. Here's another word: CAR. CAR. Linda, what sound does CAR start with? That's right, CAR starts with c- like CAT and CAKE. Jimmy, what letter does CAR start with? That's right, CAR also starts with C. Good job Jimmy."
- ErrantX 17y agoMy Mum is a primary school teacher here in the UK; it's incredibly depressing because, as you say, this is the best way to teach kids... and here in the UK they have basically dropped the learn-see-do and reinforcement techniques. Everything is "approved" worksheets.....
- xtho 17y agoAre you sure you got the order right. The standard pyramide rather goes like: explain people how to do it, help them doing it, let them do it, let them explain to/tutor other peoples how to do it.