63
votes
How to help students avoid being distracted by bells and whistles
This is a very common problem. Students tend to focus on the stuff they can see, which can be to your benefit (visual programs are more engaging than command line applications), but like you've ...
31
votes
How to stop being The Oracle
Rubber Duck Debugging.
A few years ago we bought a bunch of cheap rubber ducks. Students with questions have two options. They can either ask their neighbor or explain to the duck what they're trying ...
27
votes
How to help students avoid being distracted by bells and whistles
Make the bells and whistles part of the problems you want them to solve.
This is actually a great situation, since your students seem to be really interested in those things and show some intrinsic ...
21
votes
Dealing with students who complete labs very quickly
I have 3 tiers of labs.
First are the required labs. They're worth 100 points each and every one must do these. If they don't do one, it goes in the gradebook as a zero. These are also the labs that ...
15
votes
How to help students avoid being distracted by bells and whistles
I am dismayed that students seem to spend an enormous amount of time straining at gnats, trying to get picky details of the appearance correct.
So they are tackling a front-end programming assignment ...
14
votes
How to help students avoid being distracted by bells and whistles
If you are just trying to teach core programming concepts, and don't want students to be distracted by a GUI, which you yourself avoided by learning in command line programming, have you tried ...
13
votes
Cheating on labs
For me, labs are worth very little. The district sets them to be only 10% of the student's average. So I don't worry about them working together. In fact, I encourage it. What I tell students is that ...
13
votes
Cheating on labs
I can only speak from a high school perspective as that is what I teach (14-18 years olds), and I truly feel your concern on this question. Biggest issues I have in my CS class are distracting ...
9
votes
How to help students avoid being distracted by bells and whistles
Just to check, are you setting expectations correctly?
For example, perhaps the reason why the students are focusing so much on the visual appearance is because they think that's the core "point" of ...
9
votes
How to help students avoid being distracted by bells and whistles
Part of it may be wanting to have pride in their work, and not knowing (yet) how to direct that urge productively.
I also learned in a predominantly CLI environment and I can remember, with a ...
8
votes
Cheating on labs
At Denison, our intro class has labs designed around real world problems, and involves lab reports. This makes it a lot harder to cheat. We're not saying "implement quicksort", we're saying "write a ...
8
votes
How to stop being The Oracle
(You didn't say what ages your students are, so this answer is necessarily a little nonspecific. There is also an article here that you may find helpful.)
First and foremost: don't expect total ...
7
votes
Cheating on labs
My main tool to prevent plagiarism on short beginner labs is to have a discussion with my students and to under-count them in grading.
I explain to my students that cheating is a huge problem on CS ...
7
votes
Objects Lab Before Inheritance and Polymorphism
A benefit to OOP often overlooked is encapsulation. The object has data and methods (knows things and does things) that elements outside the object neither have access to, nor even know exists. Only ...
7
votes
Single-dimensional array and simple looping activities of significance
The Dutch National Flag problem is linear in running time. Essentially sort an array with only 3 distinct values each of which may appear 0 or more times. (not length 3). You are allowed only one pass ...
7
votes
Single-dimensional array and simple looping activities of significance
A variant on the ENIGMA machine encryption works well in a single loop, and is sufficiently complex to give students a real challenge.
The core idea of the ENIGMA machine for this assignment is that (...
7
votes
How to help students avoid being distracted by bells and whistles
This is an important teachable moment
One of the most annoying traits in newer engineers is their "helpfulness." They may not realize that working on tasks outside of their assigned scope can ...
5
votes
Dealing with students who complete labs very quickly
The other answers are good, but there's another angle you could take that hasn't been mentioned: make the early finisher(s) your temporary lab assistant(s). Assuming that what they turned in was ...
5
votes
How do you structure broad, open-ended, freely chosen projects so that students use class time wisely?
The first step is for the students to design their own projects. I give them a timeframe, and make clear that they will be held accountable (within reason) for finishing the project. I don't just ...
5
votes
Objects Lab Before Inheritance and Polymorphism
After students have explored java's string and math classes I introduce a group project called "Mathey". Each group is to write as many math functions that they can think of and assemble them into ...
5
votes
How to stop being The Oracle
Students will act according to the habits they have built up. The one they have isn't terrible, but you can work to improve it. This answer won't save you much time, initially, but if you can change ...
5
votes
How to help students avoid being distracted by bells and whistles
I'll have to admit to not actually using Windows Forms Programming, but MS seems to indicate that it is a variation on Model-View-Controller (MVC), in which an underlying model is viewed by one or ...
4
votes
Cheating on labs
One option is to have a short closed-book in-class quiz after each lab assignment to test each student's understanding (which is a good thing to do even in the absence of cheating).
For your sample ...
4
votes
Dealing with students who complete labs very quickly
I am basing my answer on my own high school experience, some decades ago. I was a junior in a CS class composed mostly of seniors. The format for a five day week was two days of lecture, three days of ...
4
votes
How do you structure broad, open-ended, freely chosen projects so that students use class time wisely?
I have students complete a long-term project over a very wide spectrum of CS and applied ICT areas. Each student has one project of their own choice and design. Topics proposed by students at present ...
4
votes
Dealing with students who complete labs very quickly
I'm a big fan of giving fast-finishers choice. I make one thing abundantly clear to the students from the beginning: if class is 90 minutes long, everyone works on the topics of our course for that ...
4
votes
Integrating Graph Theory into AP CS A
You may very well have some examples where you can discuss state machines and hence state diagrams, that is, graphs.
For example, if you're creating a game with a computer controlled character, that ...
4
votes
Accepted
Review of Information Theory Lab
I love the idea that you've created a lab using a classic logic puzzle. If you don't already, it might also be beneficial if you could give a real-world problem that the same logic, or concept, has ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
labs × 24lesson-ideas × 4
ap-computer-science-a × 4
resource-request × 2
best-practice × 2
java × 2
project × 2
introductory-lesson × 2
textbook × 2
arrays × 2
secondary-education × 2
information-theory × 2
curriculum-design × 1
student-motivation × 1
algorithms × 1
object-oriented-paradigm × 1
classroom-management × 1
exercises × 1
active-learning × 1
resource-information × 1
cs-theory × 1
differentiation × 1
looping × 1
ethics × 1
cheating × 1