Cs

Java Interfaces

Two of the hardest topics to make meaningful to students in APCS-A are inheritance and interfaces. It's not that they're super difficult topics but rather that they're not often needed, useful, or superior to not using them on beginner assignments. More often than not the motivation is a bit forced as are the assignments. Inheritance is its own can of worms and to be honest, something I've not found to be all that useful or necessary.
# COMMENTS

Solve A To Solve B

So many programming assignments involve a direct solution. Write a program to do this or write a problem to solve that. It's pretty typical. There's nothing wrong with assignments like these. They allow students to practice what they've been learning and it gives them the opportunity to create some cool programs. All the same, I like it when there's an indirect problem. You're faced with a problem but in order to solve it you first have to solve some other problem
# COMMENTS

Advent of Code, Data Structures, and Hidden Complexity

Since 2015, Eric Wastl has gifted us each December with Advent of Code - a 25 day programming competition that I very much enjoy. This year I haven't been able to get to too many of the problems. I only completed the first two days on the day they were released, problem three a day late and then I didn't get back to the problems until almost 12/25 - the final day of the competition.
# COMMENTS

Professional Development - APCS-A, similar and beyond

A while ago I wrote about our plans at Hunter to run professional development for CS teachers. Specifically, running once a month sessions for teachers who teach APCS-A, similar and beyond. The idea started as a joke but morphed into a legit idea. I was talking to some friends about CTLE hours and how ridiculous the system is. NY State teachers need 100 hours of CTLE credit (PD hours) every so many years.
# COMMENTS

PD in NYC

I spent this past Saturday morning up at the Microsoft building in Times Square. What was I doing there? Aankit Patel invited me to check out the professional development that he and his team organized for the teachers involved in the assorted CSforAllNYC programs that his office runs. Wow. Lots of great things going on. I was only able to stay for a couple of hours but I spent some time in two rooms run by TEALS, a room of BJC teachers, a group working with p5.
# COMMENTS

Who Played Spiderman - part 3

Parts 1 and 2 Part 1 Part 2 Part 3 In the first two parts of this set of posts I wrote about the motivation and design a question answering system that can answer "who" queries like "who played Spiderman" or "who shot John Lennon?" It's not perfect. When doing the Spiderman query, chances are the desired answer will be at or near the top of the list of most frequently appearing names but so will "
# COMMENTS

Who Played Spiderman part 2

Parts 1 and 3 Part 1 Part 3 Part 2 When we left off last time we used a search engine API to gather a whole bunch of documents with the term "played Spiderman" or "who played Spiderman." Now we have to process these documents to answer the question. Fortunately, the documents are basically just big strings of text. Since we're doing a "who" query we want to find all the names in all the documents.
# COMMENTS

Who Played Spiderman part 1 or my Nifty Assignment (that was rejected)

Parts 2 and 3 Part 2 Part 3 I wasn't going to teach this lesson today. I was planning on starting a multi day project starting with an exercise in specification writing and design. Beforehand though, we had to talk about classes. One of my students asked if probability and/or statistics were really important for CS. I started to cite a few examples and then decided to segue into this.
# COMMENTS

Compile Each Concept

We've all been there: Student: Teacher, I need help Teacher (comes over) Student (shows screen listing three bazillion errors) The student has just written pages of code and finally decided to try to run it only to end up with pages of errors. Error messages can at times be hard to read for beginners but to see and truth be told, they frequently don't even read them but over the years I've developed a practice that I've found helpful as a software developer and if students adopt the same practice it can save them a lot of time and effort.
# COMMENTS

Creating a school for CS

Do we really need CS focused high schools? That's the question Alfred Thompson asked partly in reaction to my post talking about Bill Gates' visit to AFSE, a NYC public school with a CS focus. On both posts, Michael Preston shared some important and good points about AFSE as a starting point and gateway that helped lead to CS4All in NYC and also specifically about AFSE. In response to Alfred's question I thought it was time I shared a bit about what I was pushing for AFSE back when I was involved.
# COMMENTS