Class Communications

Right now I'm on vacation in Harrogate England. Natan is here taking part in the International Gilbert and Sullivan Festival so Devorah and I came along as tourists. Today we went to Knaresborough:


Figure 1: The River Nidd as seen from Knaresborough Castle

Normally when traveling I try to get everything in and that leaves me pretty exhausted at the end of each day. Since this time we'll be here for around two weeks, I'm trying a less hectic pace. Do some touring along with some rest and relaxation. I actually gave myself the time to do some recreational reading and just finished The Comeback by Daniel de Vise and have a big queue of what's next.

I'm also going to try to get a blog post or two out.

One thing I've been meaning to blog about for a while is class communication and having seen this the other day, I guess it's time.

In the article, Evan Peck talks about his experience using Slack as a means of class communications and why he likes it.

Here's my take:

Class communication takes many forms. It can be the dissemination of information such as assignments or announcements, assignment collection, presenting feedback either on assignments or in general, specific interactions between the instructor and the students, group discussions, and cross student interactions.

For sharing and collecting code as well as providing feedback, I like using Git and GitHub. I use it for homework, projects, sharing class code - pretty much anything involving code or student work. That leaves all of the basic communication platforms. The popular ones include:

  • The schools CMS – Moodle, Blackboard etc.
  • Piazza or other forum platforms
  • Slack and other chat platforms
  • Facebook groups
  • old school mail lists

Blackboard or your school's CMS

First up, Blackboard.

Just no.

In my experience, they're all slow and clunky and usually have an awkward interface. I've always found them hard to navigate and use and I find little value added.

Piazza and forum software

Piazza is a free to use discussion platform. Many schools use it. Personally, I don't like Piazza but it does have some good points:

  • The Q&A format works pretty well.
  • It allows anonymous posting which is sometimes desirable.
  • You can look at participation reports
  • TAs or instructors can approve questions and answers

There really is a lot to like about it but it doesn't work for me. Personally, I don't like the interface but that wouldn't be the deal breaker for me if my kids liked it. The deal breaker for me is that kids have to actively go to the site. Yes, they can set their preferences for alerts but if they don't and they don't check the site regularly they'll miss things. This is a big deal to me. If I send out something important I have no idea if or when people will check in on it. For me personally, it's yet another site that I have to actively and regularly check.

Another interesting thing I learned about Piazza has to do with students honesty about platforms. Back at Stuy a colleague used Piazza regularly and was getting good results with it - many active students. I couldn't get as much buy in. The teacher told me that the kids said they really liked the platform. A year or two later, I surveyed the kids in my class – they were in his and other teachers the previous year or two. I asked them about platforms they used and how they felt about them. The results were that they used Facebook groups on their own (I'll talk about them later) and used whatever platform we required because we required it. Even if they said they liked it, they really didn't.

Last semester I set up a Discourse server for HunterCS. Discourse is another discussion platform. I liked the fact that I could run the server and had ownership of the data. I also liked the way the forum software worked in general. On the other hand, it had similar overall problems as Piazza.


A hot contender and the one that Mr. Peck uses is Slack. It's a chat platform. It can be a separate app running on your phone or desktop or you can use a web interface. It has channels for topics, can thread discussions, it does alerts well and can integrate with tools like calendars and GitHub. Just like with Piazza, there's a lot to like.

My problem with Slack is that it's really for live communication not asynchronous after hours communication. It works best when you're working on something and you have your slack window open, you have a question so you type it in and get immediate answers. It just doesn't seem to work as well when you don't use it live. You can read the messages posted since you last checked but it can be really hard to follow unless people explicitly use the threading.

Slack also shares the issue of being another site or application to use but since it does alerts well it doesn't bother me as much.

Facebook groups

Facebook groups seem to have been the student go to for a while now. They create their own teacher/professor free student groups. I think it's great that they create resources like this and as I tell them, it's important for them to have a forum that's free from the teacher's eyes. I mean, how can they plan that surprise party for me on the class chatroom that I have access to :-). On the other hand, Facebook groups have some downsides:

  • Not searchable or discoverable. I've seen kids only find out about them at the end of semesters.
  • In some cases, each year a new group is created so no institutional memory develops.
  • All the info stays in Facebook

Mail lists

This all brings me to old school mailing lists. I've been using them for decades and I keep coming back to them. Since they're just email, no one has to check a separate app or site. Since they're email, they support threading. Also as email, they can be public to the list or private to just one or a few people.

Again, they're not perfect - I can't easily set up long term categories or channels like you can with Slack or Piazza and they don't integrate with tools like calendars so as with everything else, there's always some compromise.

What do you use?

I think I might try Slack again this semester if the students want to go for it or maybe discourse. If they don't want to try those, then it'll be back to mailing lists.

What do all of you use? What are the strong and weak points of your chosen platform and what would make the ideal platform for class communication?

Getting Ready To Go Back

It's August 3rd and I've been giving a lot of thought to the start of the semester. Normally I wouldn't think about the Fall term this early. While I've been working on and off since last semester ended, I don't officially "go back" until August 23rd with classes starting on the 27th. The difference is that for the first time in forever we're taking a longish trip between now and then.

We're heading over to Harrogate England. We've never been but Natan's taking part in the International Gilbert and Sullivan Festival so we figured we'd follow and play tourist while he was rehearsing and otherwise doing the festival. I'm looking forward to the trip but don't expect to get much prep work done while we're there.

So, what's coming this semester?


Hunter's honors program has grown big time so I'll be teaching two classes instead of one this semester. One section will be our pre-major CS course and one will be our CS1. I've done both before so I won't need a lot of advance prep. Besides, I learned long ago that no matter how much prep you do, everything changes once you get in the classroom with a new batch of kids. Better just to have starter material and a direction since everything's going to change after day one anyway.

Teacher Ed stuff

On the teacher education program front, we've got to send a few items back through governance for approval. Instead of having teachers in my programs take a separate fieldwork course, I integrated it into my curriculum development course. Another change that we have to make, believe it or not, is to remove the words "for teachers" and "for educators" from two of the pure computer science courses in the program. Fortunately, I've done all the prep work needed to get these going come late August. We're still planning on starting our first cohort in the Spring.

Other stuff

Here's where a lot of the fun stuff is happening. Like last year, I'm planning on doing a lot of outreach to high schools to talk about colleges, tech, and Hunter. The outreach's really made a difference but it take a lot of time since it's all about school visits. I'm hoping to get to some parents association meetings as well this year.

I'm also planning a number of new things for our Hunter CS students and I'd love to jump on the planning now but these things really have to wait until the term starts. Here's some of what's on tap:

  • A monthly CTLE session for CS teachers.
  • A monthly tech talk / meetup at Hunter for CS students.
  • Finding more and more internship opportunities for the kids.
  • A series of open source workshops I'm coordinating with MongoDB.
  • I'm hoping to work out some workshops for the kids with Red Balloon Security
  • And a new tech mentoring program I'm hoping to get off the ground.

I'm sure some of these plans will change. I think I'm pretty ready to go for the fall but I'll still mull things over for the next few weeks.

Two Faces of Project Based Learning

If one looks at my twitter feed they'll notice that in addition to CS Ed, another issue I'm passionate about is school reform or rather resistance to what is popularly known as and mislabeled as school reform. I'm anti vouchers, charter schools, high stakes testing and more. One of the heroes of this resistance is education historian Diane Ravitch. I'm a big fan of Diane's and she's one of the true great champions of public schools, kids, and teachers. She blogged today about how a superintendent on Long Island replaced test prep with project based learning. The post which talks about how this superintendent improved test results is worth a read. My only quibble was that we shouldn't read anything into the results for a variety of reasons including the fact that the group of students who did the project based learning (PBL) units instead of test prep were self selecting volunteers.

One of the comments caught my eye:

PBL is just another “student-centered” fad…

PBL operates on the myth of “transference” perpetuated by non-educators.

The comment continues on with a number of good points.

Why am I writing about it here? Because PBL is a big CS Ed buzzword and like most buzzwords there's both truth at the root of the hype and hype that distorts the truth.

When done right with the right group of kids, project based learning can be wonderful but it takes a lot of time and effort. You can't just set the kids loose to learn. You've got to train them to work together, set up the project, as the teacher, you've got to know the subject so as to know when to guide, when to tell, when to prod, and when to leave them alone. Doing it right, at least for most students, is certainly not giving them the instruction sheet and going off the check your email.

On the other hand, it's easy to do it wrong. If you've got high performing kids, they'll figure things out. If you've got a few high performing kids, they can mask the fact that the majority of a group isn't getting things. You might have an assignment where a kid figures out a formula from discovered data and might be able to then use it to make predictions but there's a good chance they won't understand why it works or it's root derivation. That's where we need the teacher.

One of the dangers of bad PBL is that it's sexy. Kids are engaged and it appears to work - particularly when the teacher doesn't know the subject area. This is my great fear whenever I hear things about teachers being "Lead Learners." Sure, when you're a converted something else teacher moving into CS you won't know the subject matter but that has to change over time. I've seen enough instances of cases where teachers never develop their chops and just throw projects at the kids augmented by scripted curricula or computer driver content. The kids get through the class or program but are not prepared for the next class or next level. I've seen this with the old Cisco curriculum, any number of after school and summer programs - some VERY highly regarded ones and I think we'll see more and more of this in states that are pushing CSforAll without developing the necessary pre and in service programs for their teachers.

Don't let my last two paragraphs leave you feeling that I'm anti PBL. I'm not. It's great when done right and if you have thee time and resources in your school and classes you should be using it when appropriate.

If you want some pointers on how to get going in the right direction with PBL in CS check out this book by my buddy Doug Bergman. It's a great getting started guide by a great teacher. He's basically Mr. PBL and he does it right. If you're new to CS you'll still need to learn content and if you're new to teaching, you'll be developing your chops for your entire career but it's a great resource to get you and then your kids started on the journey.

Keyboarding and the Digital Divide

My friend Adam posted this link to an article on the new digital divide the other day. It's talking about young people who do everything on the phone so aren't familiar or comfortable with a traditional keyboard/mouse computer setup. In the comments there were some of us who lamented about the term "digital natives" and the idea that kids these days know all about computers and technology.

This led me to think about a couple of things. First was a conversation I had a few years ago with someone who taught lower grades. I forget if it was upper elementary or middle school. He asked if his school should continue to teach keyboarding. I thought about it for a minute and decided it was probably a good thing. At some point, kids will have to type things - papers, reports, programs and the kid that doesn't have to fight with the technology has a clear advantage. I don't remember who said this but one of the early rationales for markup typesetting systems like LaTeX or HTML was that the system takes care of the formatting so the author could focus on the content. You shouldn't stress about how large the type should be, how to emphasize some text or how to number a section, just say you want a section, let the system format it and you focus and writing your content.

In the case of HTML you weren't supposed to worry about the size of the screen, if it could show graphics, or even if it was color, grayscale or black and white - you just provided the content and markup and the browser would render it correctly. Same with LaTeX. You just labelled your document with things like \section \subseciton, \footnote \equation etc. and let the system typeset it. If you're publishing a book, just say it's a book and it'll render it correctly, a paper, it'll make the appropriate adjustments.

All this meant you could just focus on your content.

At a more basic level, the same is true for typing. If you're hunting for keys in words you're distracted from thinking about sentences let alone concepts, flow, etc. A kid who can type most certainly has an advantage over one who does not.

Meanwhile in the schools there's frequently an assumption that kids used computers all the time so they certainly can type. In my experience that hasn't been the case and as pointed out in the linked article above things are probably going to get worse.

Of course it's true that typing might eventually go the way of the dodo. Maybe swiping and tapping with thumbs will become the norm through society or maybe we'll go to mostly dictation (although that has it's own problems) but we won't get there for a while.

The article also made me think about the fact that kids these days use computers all them time and don't know how to do anything on them. Almost sounds like a Yogiism. The truth is that, yes, kids grew up using computers, tablets, and phones but they use them within the walled silos of Facebook, snapchat etc.

Back in the day, if you used computers you had to make an effort. If you wanted to use a word processor you had to learn something about a file system. If you wanted to do something on that new fangled thing called the internet, you had to learn something about HTML and transferring files. In general, if you were a teacher and a kid used a computer for something they were probably pretty knowledgable about computers and if they didn't know something they could probably figure it out.

Now, everything is within a pre provided application. Kids can use Google Docs or I'd guess Microsoft Office and have no idea what a file system is. They put up pictures using Instagram, commuincate using Facebook or Snapchat and in general don't have to know anything about the technology they're using. Some argue that CS Education should address this but then we turn around and use integrated cloud based environments so the kids learn some of the algorithmic side of programming but nothing about the environment they're working in.

Personally, I think our kids should ahve at least a rudimentary understanding of what's under the hood but I could be wrong. I try to address this by starting the kids in sheltered environments and then graduate them up to the command line but that's just me.

The important takeaway is to remember that a "digital native" may very know nothing about the technology that they're using. We should understand that and act accordingly.

Time To Create An Ethics Course

I think it's time for me to start developing a CS Ethics class.

An ethics course isn't a replacement for having teachers that live and model good behavior and weave ethical issues throughout the curriculum but still, adding a separate course on top of that has its merits.

I'm not in a rush to create this course. I might be done in a month or it might take a couple of years. When I'm done, I'll add it as an option in my CS Teacher education programs but hopefully it will be an attractive course for undergrad CS majors as well.

While it's easy enough to come up with possible topics - privacy, moral responsibilities, biased algorithms, net neutrality and on and on I'm looking for this course to have a serious coding component. I want the students to build things to really understand the implications of what they're studying.

One topic I definitely want to cover is anonimity. I'd love to find the right combination of data sets and have the class discover that some hidden information in the sets isn't nearly as hidden as it seems to be. When I was at Stuy, I was thinking about having the kids give me permission to use their class schedules since even with names removed we could probably identify many kids by electives and overlapping classes. I have no idea what I'll be able to do at Hunter. If I can come up with something good I think this will form the basis of a pretty amazing part of the class.

Another project I'd love to put together is something dealing with a biased algorithm. Again, I don't know where this will go, maybe something where I can seed the class so that different groups implement some project differently and we can then analyze each groups biases, hidden or otherwise.

Beyond these two, I'm not sure.

How about you? Anyone out there have any good ideas for programming projects for an ethical CS course? If so, please share. It might be a while but when I do finish putting this together I'll be sure to publish whatever the end result is.

A couple of Brian Kernighan videos

I noticed a couple of short videos - interviews with Brian Kernighan - on my YouTube home page the other day. This is probably because I recently viewed a Kernighan video in the same series after reading this post on the history of naming grep on JCS's blog.

For you youngsters out there, CS people of my generation relied on Brian's books "The C Programming Language" and "The Unix Programming Environment"to get us started with C and Unix respectively. Even though they were both published in the 1970s I'd still consider the both as "must reads." The section on software development at the end if the Unix book is still probably one of the best written introductions to compilers out there. I'd also add a few more books he co-authored to the "must read" list:

I read these books in the 80s, 90s and post 2000 so even when reading examples using ancient Fortran, the concepts still hold up and the writing is extremely accessible.

My Brian Kernighan story is that way back in the mid 1990s when I was starting to design what would become Stuyvesant's intro CS course, I sent out emails to as many "thought leaders" as I could get a hold of including both professionals and academics. I cold-emailed Brian based on a conversation I had with a former student. My former student, Bruce, had wandered into Brian's office while in college for "office hours" on a lark and ended up having a great conversation. He felt Brian might respond.

I shot off an email and a few days later got back pages and pages of really useful thoughts and commentary. I was blown away by the response. Either he took some serious time to think this out and respond to some nobody teacher cold-emailing him or he's just that good that he can rattle off a tome length response to some random teacher emailing him. Either way, it was a huge help. It also made an impression so while I might fail at times, I try to be responsive when people cold call or otherwise ask for help that I can provide.

I met Brian a number of years later at Google and in addition to being tolerant of my fanboy-ing, I found him to just a really special individual

Both these videos are short and I think both CS students and teachers will find them very interesting.

Part 1:

Part 2:

How early for APCS

In what grade should students take APCS? This question comes up from time to time.

I've heard answers ranging from middle school through never. Infact, years ago, my chairman relayed a conversation he had with Marvin Minsky where he asked Minsky what the high schools should be teaching with respect to CS. The answer was "nothing." This was then amended to "teach them to type." Of course this was a long time ago but I believe the sentiment was that college was the right time and the high schools don't know what they're doing and will just screw up the kids. Actually, I still see some of this attitude today and it gets passed down where high school teachers sometimes don't want the middle schools to "mess up their kids" and on down the line.

At this point, it's pretty clear that you can do good CS at the high school level and as things are being pushed down the grades we'll eventually figure out what's right and when.

Still, within the high school the question of what grade for APCS-A remains.

There isn't a single right answer for this but I can share my experience and what I ended up deciding when I developed things at Stuy.

MATH BOOKS and Physics First

As parents, my wife and I learned early on that we'd have to supplement what our kids would learn in school, particularly in terms of math and science. I was in charge of math. Since I used assorted books to help, math time came to be known simply as "MATH BOOKS." It's funny that now while my kids don't look back super fondly on MATH BOOKS they agree that it was an important thing for us to do.

I discovered, as I'm sure many parents do, that there are times when a kid is just not ready for a subject. At one point I tried to introduce Algebra too early and saw it wasn't going to take so I pulled back. A while later, we tried again. This time it was clear that they could do the mechanics and solve problems based on rules and formulae but they really didn't "get it." A third attempt some time later, they were ready. They mastered the subject with deep understanding easily. It could be argued that the early exposure helped but I don't think it did.

The takeaway here is that kids can do the mechanics and appear to succeed but if it's too early, they don't really learn the subject.

I saw this on a larger scale with "Physics First." At Stuy, most freshmen would take Bio in 9th grade followed by Chem and then Physics in their Junior year. Physics first kids would take Physics in the 9th grade. I don't have any evidence for this but based on my inquiries over the years it seemed that the kids who took physics in their junior year had a deeper understanding of the subject.

I also personally saw this when teaching math classes early on in my career. Most Stuy freshmen take geometry. The math aces take precalc or calc but a few weren't math aces but were the star in their middle school. They were pushed through geometry in 8th grade and started Stuy in Algebra 2 and Trig. The majority of these kids that I taught could spit back all the formulas and theorems from geometry but very few were actually ready for Alg2/Trig and struggled considerably.


So what about APCS? At Stuy we always taught a superset of the old APCS-AB. It's mostly APCS-A in the Fall semester and Data Structures in the Spring. When I started, there was no prerequisite for APCS so I had students in all grades. Mostly Juniors and Seniors but a few Sophomores. I think I only had a freshman in APCS once and they were an outlier.

Some of my sophomores were ready, more could merely spit back material and do the mechanics - enough to pass the APCS-AB exam but they really didn't get it. There were some, however that weren't ready. These were very bright kids and while I can't say for sure, deep down I very much suspect that if they took my class a year later they would have done much better and they might have followed a very different path towards their future.

As a teachers we can change lives for the better and in fact save lives. We can also do great damage. Because of the latter, teachers should follow the mantra "first do no harm." This led me to a general rule of taking kids into APCS-AB until their junior year. If I were to allow a sophomore in I wanted to be pretty sure that the kid was ready.

Later we were able to create a sophomore year CS requirement which gave all kids exposure to CS prior to APCS-A (we still taught AB but by now only the A exam was offered) and also gave us a platform to vet the outliers who might be ready for APCS. For those kids, in addition to an interview we had them self study APCS-A, do a project and sit for the APCS-A final exam and then we'd add them to the second half of our AP class.

Has it worked?

By and large the system has worked. Kids now get an intro in the 10th grade followed by APCS in 11 and more electives if desired in the 12th. For the kid that's truly ready for APCS in the 10th grade, we have a path. We don't make it easy but the path is there.

Over the years we've had some CS superstars come through the program. Some have pushed back – "why do I have to take the intro?" "Why can't i start right away in APCS?" – after all was said and done, all but one came back to say that we did it the right way and that they benefited from all our classes.

At Stuy, it seems that for most students, 11th grade is right for our APCS. Between academic maturity, other classes, scheduling and everything else, it seems that this works the best for us.

Why the rush?

Frequently the question as to when to teach APCS revolves around how early it can be taught. I have to ask - why are we so caught up with doing things so early?

If we're just pushing college level courses down to high school then what's the point? The kids will have to take the classes again if they're going to major in CS anyway.

If you have a program that doesn't duplicate college courses you might want to have kids finish APCS-A earlier but I wonder how early you really need.

As a society we keep pushing things down younger and younger. We're pushing AP classes like history or APCS-P down to 10th grade or even earlier. You have to ask, is a course that's developmentally appropriate for a 18-22 year old developmentally appropriate for a 14 or 15 year old? Probably not. You also have to ask that if it makes more sense to push further ahead or if it's better to do enrichment at a level the kids can handle.

I'm an enrichment over acceleration guy but other people differ. Just like the question of when for APCS, there's probably not a single right answer to this.

Last words and what should you do?

As I said up front, there's no right answer to this. I'm still convinced that 11th grade is probably the best general entry point for APCS-AB but if I were only teaching APCS-A maybe I'd shift it down a year. My gut tells me no, partially based on teaching non APCS to 8th, 9th, and 10th graders but maybe. Of course, we all teach different students in different environments so your mileage may vary.

There are also those outlier kids that can truly master the subject at an earlier age, I'm not really considering them here but they should be accommodated when possible.

If you've been running a program for a while, look at the data - not how many kids pass the exam - look at how many master the next level material. If your kids next class is data structures in college, find out how well prepared they were and see if and how it maps to the grade in which they took APCS. If you're just starting, I'd recommend erring on the side of caution - remember "do no harm."

If you have to teach CS and it turns out you have to teach it when the kids are too young to master APCS-A then don't teach APCS-A, teach great CS at a level that's appropriate.

All of this will work itself out in time. Until we get there, there will be some mis-steps - I know I've had mine. As long as we continue to move the kids forward and give them something that they wouldn't have been getting otherwise while we figure all this out, we're doing pretty good.

CSTA 2018 - Funding and Direction

In addition to everything I wrote about last time there were a couple of other big announcements at this year's CSTA conference. Both announcements deal with funding.

First, there is a new class of CSTA membership. The free tier remains but now for $50 you can join CSTA+. This new level of membership comes with a bunch of extras that are probably good for K12 teachers but I doubt I'll use any of them. I did, however, get a snazzy CSTA+ water bottle by joining at the conference. For me the interesting part is that 50% of CSTA+ dues will go to support local chapters.

I don't exactly know what that means but it's what got me to join. Ultimately, local teaching communities are important and CSTA+ supports that, I'm all in.

That said, what do chapters do? I know what goes on in NY but not elsewhere. I bet the same is true for people all over the country. One question that came up repeatedly at the conference, at least in my circles was "what would the chapters use the money for?" I think it would be wonderful if on the CSTA web site there was a page where chapters could easily list activities funded by the central organization. I'm not looking for a big write up - who has time to read or write that. I'm looking for a line or two. What the chapter did and maybe a few comments on details. Over time this could be a great way for chapters to steal ideas from each other.

The other piece of big news was Microsoft pledging a big chunk of change to the CSTA. I've often lamented that so many CS Education (and education decisions in general) are decided by everyone except the teachers. The CSTA is our teacher's professional organization and our best bet for teacher representation when policy is made and implemented. Once again it appears that some of these funds will help support local chapters.

The Microsoft funding though got me thinking. The linked piece talks about advocacy, professional development and curriculum. All important but there's an even greater need right around the corner. We need quality, qualified CS teachers and we need them now. Taking a teacher with no CS background and giving them some PD can be a stop gap but it isn't a solution. Long term we need pre and in service teacher preparation programs similar to what we're rolling out at Hunter. Programs that include both pedagogy and content. As states begin to require these programs, as they do in all other subject areas, teachers both new and in service will have to take a number of graduate credits. In our case, 18 for a certificate for an already licensed teacher and our MA program is somewhere in the 30s.

I'd love to see money allocated to pay for CS teacher certification through our public colleges as they (we) roll out programs.

This said, the Microsoft commitment is great news for the CSTA and CSTA is a great option for teachers that can afford it.

Here in NY, our CSTA chapter is fairly young. I'm excited to see what this year brings both on the local and national level.

Csta 2018 Report

I just got back from the CSTA (Computer Science Teacher's Association) conference. It's the biggest annual conference dedicated to K12 CS education. I think there were about 700 people attending. It felt much larger than last year but compared to SIGCSE which is double the size, CSTA still felt pretty intimate.

The conference was in Omaha Devorah came along to play tourist and we both came a day early to do some site seeing.

First, we hit the zoo and Lauritzen Gardens. We've got the Bronx Zoo here in NY an the NY and Brooklyn Botanical Gardens which are all pretty impressive but even so, Omaha's zoo and gardens are well worth a visit. We then went over to the Durham Museum which was really terrific. Housed in an old railroad station, the museum has lots of great Omaha history as well as trains and other neat exhibits.

We also walked all over and did our best to pick up on the local flavor. One of our discoveries was a terrifically quirky retro/nostalgia/antiques store. It had an awesome working Pinball museum


along with all the rubber ducks you'd ever want for debugging


and a whole lot more.

By the river, we found both a statue and series of plaques honoring labor:


something I'm thinking a lot about now in light of the recent Janus decision.

As for the conference. It was 100% worth it.

I spent a lot of time at the GitHub booth with my new friend John talking about how I use GitHub with my classes.


and as always one of the highlights was spending time with old friends and making new friends while talking shop.

I also gave a talk on the state of CS teacher certification in New York State and what we're rolling out at Hunter. that led to discussions with people from all over. Texas, California, Indiana, and other places. We had some great discussions as to what's going on all over the country. I also had a chance to talk to teachers from all over NY State to let them know how Hunter can help them.

There were also interesting sessions. I attended a BOF facilitated by Todd Lash and others about mapping model lessons to CS standards. I'm actually not a fan of "the standards" and have some serious concerns about how standards are thrown around and used but it was a very interesting session nonetheless.

I also enjoyed a session by Owen Astrachan on teaching sorting. Owen gives a great talk. I didn't agree with some of how he approaches teaching sorting but then we teach different classes and students and could have slightly different goals leading to my view. In any case, it was very interesting and I plan on stealing the motivation he used. Owen started with a list of top hits - their titles and artist names and had us perform some mini data mining exercises on them in a spreadsheet to motivate the concept of sorting.

Probably the highlight of the conference for me was Michelle Friend's keynote. She had me as soon as she encouraged us to question the value of a lot of the education research out there. It got better when she reminded the audience of teachers that they were all education researchers. they perform their practice every day, analyze the results, and work to improve. So often, I hear education researchers dismiss teachers - "that's just anecdotal" they say while they publish the "true way" while ignoring the thousands of complex factors that actually affect education. There is some research that's great and some researchers I greatly respect but I've been forced to read enough bunk and there's been enough nonsense forced upon teachers over the years that just doesn't work in practice that a healthy dose of skepticism is critical.

Michelle also talked about assessment and how we test "what we can" rather than what we should.

It wasn't a talk from on high but I think it's what the audience needed - a talk from someone who's currently an academic but who at her core, I think is a teacher. It was teacher to teacher and that's what, at least in my opinion CSTA should be about.

A final highlight for me was when they awarded the Cutler Bell price for high school students. I knew that Benjamin Spector & Michael Truell were winners but I didn't realize they'd be at the conference to receive their award for their work creating Halite. I had helped them a bit along the way so knew the quality and impact of the project and it was great to see Ben and Mike recognized and to be there to be able to congratulate them in person.

Now it's back home and back to reality. The organizing committee really outdid themselves this year. Great job on CSTA 2018. I'm already looking forward to next year.

I'm not going to congratulate you on your AP results

While busy finishing off my sides for my talk at CSTA2018 this weekend I noticed a Facebook post about APCS exam grades now or shortly being available.

I'm no longer teaching high school but still fancy myself a teacher first and part of the K12CS community. We're a growing community and we're growing fast.

Usually, at this time of year we see a number of people posting their results. "I had 16 test takers, had 5 fives, 6 fours etc."

I decided that not only won't I be congratulating anyone on their results this year but decided to write this quick post to say no one should.

I'm not saying that hundreds of teachers out there don't deserve congratulations - they do. The problem is, for everyone who's kids got all fours and fives, somewhere out there was a teacher who possibly through no fault of their own had students scoring ones, twos and threes.

When I was at Stuy, almost all of my kids got fours or fives when the exam was the old AB exam. When it went to A only, it was almost exclusively fives with a few fours and maybe a single one. That wasn't me. It was the kids. The AP CS teacher before me got similar results as did all of my colleagues and the teachers who are still there. Again, it was the kids.

That's not to say that I didn't add value. I know I spent a career at Stuy doing right by those kids regardless of test scores.

The fact is that there's only so much a teacher can do.

  • Was APCS (A or principles) their first course?
  • What other demands are placed on the students?
  • How about the teacher?
  • How many kids in a class? How much time?
  • Is APCS an elective or required??
  • Is the teacher getting the support they need?

And the list goes on. I know some great teachers who never had classes with great AP results and meh teachers that did. Actually, I know some APCS and Calc teachers that consistently had classes with good scores through drill and kill and building student speed. Of course, at the same time these teachers totally turned the kids off from the subjects

Our teachers do deserve praise and congratulations.

  • Praise for getting through another year.
  • Praise for forging a path in this new subject area.
  • Praise for doing more with less.
  • Praise for inspiring kids and starting them on a path.
  • Praise for changing lives for the better.
  • And so on

If your kids left with more than they came in with you did a great job and deserve congratulations. If you set a seed that will later grow you've done an enormous amount of good.

It's like I would always tell my kids when they won an award. I was never proud of them actually winning the award. I was proud of how they carried themselves, prepared, performed or whatever. The award was just some outsider also noticing they're awesome.

Same thing here so I won't be congratulating teachers on student test results. The results coming in do provide some measure of closure for the year though so I will congratulate you all on the year and your work.

Hope to see many of you this weekend at CSTA2018.

Enter your email address:

Delivered by FeedBurner

Google Analytics Alternative