pmb: (Default)
pmb ([personal profile] pmb) wrote2005-07-14 10:24 pm

Whoah.

When life gets going fast, the livejournal updating gets sparse...

When last I updated, I mentioned my birthday. I neglected to mention that my dad was in town for it. Not only that, but he was in town for the Seattle to Portland bike ride, which I did last weekend with [livejournal.com profile] nedthealpaca, [livejournal.com profile] tralfazz, and [livejournal.com profile] canarasekal, while [livejournal.com profile] dboothe drove sagwagon of hugeness for support. We rode from Seattle to Centralia on Saturday (~100 miles) and then from Centralia to Portland on Sunday (~100) miles for a grand total of 206 miles at an average speed (when we were moving) of 15.5 MPH.

Then, on Sunday, my dad returned the hugemobile (candy apple red Dodge Durango) to the rental agency and got on a plane for home, and Dan and I headed back to Eugene.

On the way up we slept on Thursday night at the salut haus, and hung out with [livejournal.com profile] ideath, [livejournal.com profile] conformpdx, [livejournal.com profile] esmesquall, [livejournal.com profile] ouro, Miana, Joel, Beth, and Linus (as well as the people who were going on the trip). Then, on Friday we crashed in the big blue house in Seattle and saw Chiara, her mom, [livejournal.com profile] mbrubeck, and [livejournal.com profile] clairebaxter. Then we rode, and you know the rest...

After that adventure, class resumed on Monday (tired legs made getting to class on time difficult), my little brother headed out and south to Berkeley on Wednesday and class ended today.

The class went really well overall, but I don't think I will be doing any 4 week intensives any more. It's just too much - I was really pushing everybody to their limit at times in the class, and their performance in other classes apparently suffered as a result. It's difficult to see any other way of doing things however, because when you squeeze an 11 week term into 4 weeks, then that one class is like taking 2.75 classes. But people think the workload will be more like 1.5 classes and so build their schedules (in)appropriately.

However, the whole class responded really well to the increased pressure. Lots of high quality gibberish programs, everybody's wiki worked and some were genuinely amazing, and I was blown away by the quality and success rate of the final projects. It made me feel like we don't push our undergrads hard enough - give them opportunity to excel and they generally will. But perhaps that's just some of the old Mudd experience rearing its head.

I tried some new teaching techniques this term - I treated the subject as easy and just gave quick overviews on syntax and stuff and then threw the first assignment at them. Students later claimed that what I had done was okay because it was easy, but I'm unconvinced. I think treating things as difficult makes people have trouble. Python makes a few aspects of computer science really neat to talk about, and it also promotes a development style that is fun. In particular, the way the guts of python are available at runtime makes it very easy and natural to talk about the idea of layers of complexity and understanding, and how it's important to understand things at the appropriate level. Multiple students reported the phenomenon where they enjoyed what they were doing so much that they got a little carried away on this or that project, which was really exciting to see. That excitement lead pretty naturally into a discussion of prototyping and the idea of explorig the problem domain by doing instead of thinking. After every assignment I passed back anonymized copies of everyone's code to everyone in the class after every assignment. It was really interesting to see the myriad different ways people would solve the same problem, particularly when I totally thought I had telegraphed the easy solution.

The python class remains my baby and remains hella fun to teach. I have to finish grading stuff this weekend, and then, about a week after I turn in the grades, I'll see if the students enjoyed the class too.

[identity profile] qousqous.livejournal.com 2005-07-15 06:40 am (UTC)(link)
yo.

what's your schedule for ptuj &c.?

[identity profile] tdw.livejournal.com 2005-07-15 06:52 am (UTC)(link)
I did the text generation program thusly. By only having them build the CPD data structure and writing the actual text generation myself, grading was a snap. All in all, I really liked that assignment too. :)

[identity profile] pmb.livejournal.com 2005-07-15 06:49 pm (UTC)(link)
I made the assignment much more open ended, which meant that students who wanted to actually made gibberish creation engines that randomly took either the previous 1,2, or 3 words into account, and other such enhancements. Despite the increased difficulty of grading, I really do like giving out open ended assignments.

When you leave some wiggle room, and point people at ways of succeeding beyond expectations, they often will. Also, I really wanted them to write programs that they could show off to their non-CS friends and have those friends think that they did something cool. Putting heavy restrictions on input and output formatting hurts that kind of thing. But perhaps heavier restrictions are required when you are teaching a class that has more than 15 or 20 students...

[identity profile] mycrust.livejournal.com 2005-07-15 02:48 pm (UTC)(link)
It made me feel like we don't push our undergrads hard enough - give them opportunity to excel and they generally will. But perhaps that's just some of the old Mudd experience rearing its head

I have a lot less teaching experience than you, but this, at your remark about the strategy of presenting material as "easy" really rang true. I've always sort of believed that students will never quite perform as well as you'd like to them to no matter how low (or how high) you set the bar. I think most students have an internal slacking adaptation algorithm, and they figure out exactly how much effort they have to put into thinking about a class to just get by. There is definitely a regime where asking more demanding things of students gets them to learn a lot more, even if they wouldn't necessarily have gotten much better test scores if the class were easier.

[identity profile] pmb.livejournal.com 2005-07-15 05:28 pm (UTC)(link)
Thanks for agreeing! As someone whose GPA was not that stellar as an undergrad, I have to make sure that this is a legit teaching philosophy, and not just me ensuring that I have a good excuse for feeling like I learned a whole hell of a lot at Mudd even though my numbers don't look impressive outside the bubble.

The best bad student!

[identity profile] dmyersta.livejournal.com 2005-07-16 02:14 am (UTC)(link)
I *always* do the "What do they want me to do? What is the bare minimum I can get away with doing and still get the grade I want?" algorithm for *any* assignment. I don't alway do what I think the bare minimum is, but I always ask myself what the least I think I can get away with is...

I once decided that I could start a semester long project 1 week before it was due. It worked well enough. I got the A I wanted and everyone was please except for the one person in the class who knew how long I had waited to start and she just thought it wasn't fair!

[identity profile] agthorr.livejournal.com 2005-07-15 04:37 pm (UTC)(link)
After every assignment I passed back anonymized copies of everyone's code to everyone in the class after every assignment.

That's a great idea! Every CS class should do that...

[identity profile] pmb.livejournal.com 2005-07-15 05:22 pm (UTC)(link)
Yes. Yes they all should.

I also held a discussion highlighting interesting features of each person's assignment after I handed back the packet o' code. Students were really into it. I first did it in 323, and later in Python v1, and it has always been a hit.