What did you do this past week?
Oh good, they fixed the WordPress lag. So, this week me and my partner made the deallocate method, the io method, touched up a few things and made some unit tests.
What’s in your way?
Originally I was worried that we would have a hard time getting our code to work, but one HackerRank submission later and we’re already passing most of the tests. There’s still that one test we aren’t passing, but I talked to another student and found out we were interpreting the input erroneously. Thanks Ameya, you get mad props.
Other than that, it’s just the tests, checkdata, ci file, sprucing things up (our allocate and deallocate methods are ugly as sin), running doxy, yada yada.
What will you do next week?
Do the project, turn in the project, then sleep. Then stop sleeping, and work for other classes.
What was your experience of the peer-instruction exam?
Hmm…
Why did we have a peer-instruction exam? Why did the professor think that giving half the time for individual work, then half the time for collaboration, instead of giving the full exam for individual work, would be a good idea? Well…
Programming is rarely an individual endeavor. In the professional setting, there is usually a group of programmers collaborating on one project. So, to be a good professional programmer, you need well-developed group skills: good communication, scheduling, task allocation, etc. So, in a class that aims to teach students how to be professional programmers, it makes sense to put them in a group and have them work together.
And, it just so happens that on exams, some people get the solution in a few minutes, while others spend the whole time fruitless staring at a problem. So, why not have group exam experience? That way, those who got the answers can teach others and bump up their explanation skills, while those who didn’t can learn not only what the answer is, but why it works. And group work acts as its own grading curve. Win-win.
This is how it would work in an ideal world. In reality, there becomes an answer economy, with students peddling the solutions they have for those they don’t. The time restraint makes explanation risky, leading students to mindlessly copying text, without soaking in what exactly their writing. In the end, nobody really works together, nobody learns, and everybody gets less time.
Overall, I do think this class does a good job in building group skills, with the group projects and in-class exercises and such. But as for these exams, I think I would prefer to spend the whole time working on the problems individually.
What’s your pick-of-the-week or tip-of-the-week?
Today, while I was working on the project, I showed someone how you can easily switch between files in nano. They were pretty impressed, since they use vim (the clearly inferior choice). However, if you do use vim and want that nice tab-switching capability, here’s some advice on how to set the key bindings.
