Ryan Nutt
  • Member for 4 years, 8 months
  • Last seen this week
How to stop being The Oracle
32 votes

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 ...

View answer
Dealing with students who complete labs very quickly
21 votes

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 ...

View answer
Cheating on labs
13 votes

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 ...

View answer
Problematic student at a very high level
12 votes

You said he refuses to work, but has mastered the material. How do you know he's mastered the material? I've had students like this in the past. They'll finish 2 weeks worth of assignments in a day ...

View answer
What would be a good analogy for IP addresses and ports?
11 votes

I used seats in the room. The classroom has an address. So, if someone wanted to come and talk to one of the students they would come down the hall and into my room. But, that only gets them to ...

View answer
How can I automate the grading of programming assignments?
10 votes

Yikes, that doesn't sound like a fun way to grade. Sounds about like what I do with students that are competing in ACSL competitions. But that's only 6 or 7 students, 4 times a year. I can't imagine ...

View answer
Teaching binary to 6-8 year olds
9 votes

We made bracelets in APCS Principles (9th - 12th grade). I bought a bunch of blue and white (school colors) beads. Blue was on, white was off. They then made bracelets of their names or initials using ...

View answer
What autograding software do folks use for Java code?
9 votes

For simple stuff I've used CodingBat. They've got an authoring system buried on the site. It's not terribly difficult to create your own questions, although the instructions are pretty wordy. When ...

View answer
Is there a better way to validate student learning?
8 votes

I look at it as two separate tasks. Learning: The goal here is to learn new things and practice what you've learned. For my classes, these are mostly small lab style assignments. I want them to work ...

View answer
How can I speed up the construction of high quality testing materials?
7 votes

You don't necessarily have to rewrite the entire thing every year. Most of the tests I give are 40 questions. What I try to do is add 10 or 15 each year to the bank that the test is pulled from. ...

View answer
Classroom use of a limited port scan in the wild?
7 votes

I taught a Cisco networking class for a couple of years and we had to stay off of the district network any time we were doing networking stuff. What I did was build a separate network in the middle ...

View answer
How to teach which loop should be used
7 votes

I teach them while loops, for loops, and for each loops; in that order. What I've found is that while loops tend to make the most sense for students. The idea of while I'm hungry, eat pizza is ...

View answer
on-What are pre-requisites for teaching version control to a high school CS class?
7 votes

The biggest one for me would be a reason to use version control. When you're writing small lab assignments, version control probably isn't worth all that much. It's when they get to a point where ...

View answer
Analogy for static objects (or members)
6 votes

I use school colors and principal's name. If someone comes in tomorrow and says your principal is no longer Mr. Smith, it's now Ms. Jones then that change is made for every object (student) in the ...

View answer
Assignment repositories
5 votes

At the beginning of every year I buy the UIL contest packet from the previous year from http://store.uiltexas.org/computer-science/ . UIL is an organization that's over athletic and academic ...

View answer
What screencasting tools can be used for online teaching
5 votes

Fingers crossed that this one doesn't get closed. I've tried to do something similar, but it hasn't come out well. Hoping that some others have suggestions. It looks like they're using some sort of ...

View answer
Should I Provide Answers To Exercises?
Accepted answer
5 votes

I post solutions after the due date of an assignment. And usually, I'll go over them in class as well. Two birds... Students get to see at least one working solution, although I try to come up with ...

View answer
What are the tradeoffs of allowing students to submit test corrections?
5 votes

Our district has a policy that any student that scores under a 70% must be allowed to retest. You take the retest score, average it with the original, and cap it at 70%. Catch is that I teach all AP /...

View answer
Video Games during class
5 votes

I semi jokingly tell my students at the beginning of the year they can play any game they want on the computers, as long as they write it first. It at least gets a laugh. For me it takes two things. ...

View answer
Recommended IDE for teaching web development to beginners
5 votes

I go for simple. This year we used either an online editor or the free version of JCreator specifically because they don't have autocomplete. What I noticed last year using NetBeans is that students ...

View answer
Python IDE for beginners
Accepted answer
4 votes

I'm not a fan of full IDEs for beginners. A few years ago I switched my first year students (Java) from NetBeans to an online tool without any autocomplete or helpers for most assignments and found ...

View answer
How to communicate expectations around "rabbit holes"?
4 votes

Wish I had a good answer, but I can sympathize with your Scratch example. What I started doing was just giving up on the first day we did Scratch. I would show them the drawing tools before we did ...

View answer
When should I scrap my projector for a blackboard?
4 votes

The last time I used a whiteboard as a whiteboard was to describe a maze building algorithm. It was a small-ish board that I put on the ground and drew a grid. I then stepped in a square and we walked ...

View answer
Teaching Other Markup Languages
4 votes

Next year I'm planning on having some of my second and third year students build an API that can then be used by students in our mobile development classes, and possibly web development classes. Hadn'...

View answer
Lab Requirement in AP CS A
3 votes

I looked at them when they first came out and decided not to use them. Did go through and look at the topics and make sure that we're covering everything we need to in class. But between labs that I'...

View answer
Textbooks: Yes, no, roll your own?
3 votes

We have a class set of textbooks. When I started at this school I was told that I needed to check them out and use them. I talked them down to only issuing me half of the class set and one book went ...

View answer
Is it possible to teach selection (`if`) before variables
3 votes

The first 6 or 8 days of the year we work in Jeroo instead of straight Java (there's a Python mode as well). It serves as a very quick introduction to syntax, ifs, and while loops. I've found it helps ...

View answer
Designing rubrics for AP Computer Science-style free response questions
3 votes

In the weeks leading up to the test I typically only use the actual past tests for exactly that reason. But even when I don't use the released FRQs I still grade on a 9 point scale so they get used to ...

View answer
Should I have written tests on basic programming skills?
3 votes

Seems like an objective test early in the year over syntax is a really good way to run off rookies. If your kids write enough code, they'll pick up the syntax. After forgetting a semicolon for the ...

View answer
Using autograding (Github Classroom) - pitfalls and best practices?
2 votes

1, 2, & 3 In most cases, I'm okay with them having the tests ahead of time. The only thing that concerns me a bit is that they can edit the tests, and GitHub would use those. What I do, and it's ...

View answer