The bottom third is where I hope to see improvement with the introduction of typing exercises, lecture exercises (multiple choice/true-false/fill in the blank style questions) and also I include YouTube videos of that week's material. My logic is that like sports, you need to stretch and warmup before doing a physical activity, so the same should be applied to a new concept. If the student is still having trouble implementing the concepts on their own, by having a prebuilt, functional version can help them see how it works.
So far, the students are responding favorably to the exercises and the only fall out I've had are students that fail to show up or do any work. Grading wise, the typing exercises are 10%, lecture exercises are 10% and the actual programming assignments are 30%. Since the problems are a smaller chunk of their overall grade, it alleviates the pressures of the 'all or nothing' structure of the unit tests.
In my evaluations last semester, many loved the introduction of the YouTube videos and I plan to ask them about the typing exercises this December.
I definitely agree on the personalized feedback portion though, that's why I make the second class meeting only programming, no lecture. This way, they can get their hands dirty with an experienced person to help them.
Brilliant. About 75% of our class time is spent doing exercises in class with me roaming about, or at least it would be if I could remember to stop talking at certain points.
Smart! Before I let them loose during the 3 hour lab, I spend about 15 minutes talking about the overall plan of a specific problem. For example, during looping, they had to flip a coin 1,000,000 times and record the results. I explained how Math.random() worked and how if they did "Math.random() > 0.5" they could determine whether the coin was heads or tails.
Looking at my current scores: 9 have A's, 2 B's and sadly 1 F
I wish that I could give out those grades (except for the F, obviously). One of the drawbacks of our system is that we have to grade on a curve, particularly the number of top grades that we give. The deans can give some variation in that quota, but only in exceptional circumstances. It is hard when I am teaching an elective and these are students that are specifically choosing something very challenging when they could just as easily spend their last semester coasting through.
I have never had to fail a student, but I have had a few violations of academic integrity that had to be dealt with. One of the few upsides of intensive grading is that I tend to remember specific errors, and a flag always gets raised when I see the same error twice, regardless of how many variable names were changed, etc.
Here's the current exercises for my Java 1 class: http://imgur.com/a/boc6h
So far, the students are responding favorably to the exercises and the only fall out I've had are students that fail to show up or do any work. Grading wise, the typing exercises are 10%, lecture exercises are 10% and the actual programming assignments are 30%. Since the problems are a smaller chunk of their overall grade, it alleviates the pressures of the 'all or nothing' structure of the unit tests.
In my evaluations last semester, many loved the introduction of the YouTube videos and I plan to ask them about the typing exercises this December.
I definitely agree on the personalized feedback portion though, that's why I make the second class meeting only programming, no lecture. This way, they can get their hands dirty with an experienced person to help them.