Student stupidity (part 1)

 | 2 min

I’ve had a very busy time over the past two weeks with my students having a major website development assignment due. Out of a class of 88, I’ve had around 12-15 students coming to see me nearly every day.

There are two or three who come more than once a day. These are the very bottom students in my course. One of them is a repeater from last year. They come with the most basic questions about things that I have showed them and explained in class and that they have practiced in labs. It’s pretty damning when in Week 11 of their second programming course, when told that in order to insert a record into the database they need to call the Insert method (something which is itself so blindingly obvious they shouldn’t need to be told), they reply ‘How do I call a method?’. How can you get past the stage 1 course without knowing how to call a method?

There are several others who insist on doing things differently to the way I taught them. One of the requirements is for a persistent to-do list, that users can log back into and update at any time. A student implemented this by storing all the information in a cookie and then asked me if it was acceptable. Excluding issues of cookie size, I explained that it didn’t really meet the persistence requirement, as the user could only retrieve their items if they logged in from the same browser on the same computer and if they didn’t have a plug-in that deleted cookies on logout. She got a bit huffy at that and made a big production of saying how she’d have to go and re-implement everything based on the lab ‘on top of all the work I’ve already done’.

I also have students who are trying to take the easy way out but in the process are making things more difficult for themselves. I told them they should use strongly typed DataSets for their database connections. You can generate all of the SQL queries you need to connect to the database very easily. Basic select, insert, update an delete are created for you, and you can modify these for other scenarios either by direct editing or using a query builder. Then, most binding can be done without procedural code. Things like inserting, deleting in code only require two lines of code. However, quite a few of these students seemed to think this was too much effort, and decided to try and find the code on the internet. As a result I have students coming to see me with three screenfuls of code that is trying to load data from a database and create a grid, and they tell me they’ve spent hours getting it to work and it just doesn’t. I ask them why they didn’t do it the way I showed them, and usually do it in front of them in about two minutes. They mutter something about thinking it would be easier their way.

I console myself with the fact that the majority of the class have actually figured out how to do it properly with little interaction with me. The lectures & labs gave them all the tools they needed – they just had to apply it to a different situation. Most of them seem to have done that very well. It’s just because I’m constantly interacting with the C students that I start despairing about either my teaching ability or the quality of the students (depending on the mood I’m in).