I just read Alfred Thompson's predictions for next year. I was going to leave a comment but since it would have gotten somewhat long winded, I thought I'd comment in a post of my own.
If you haven't read Alfred's post yet, check it out: http://blog.acthompson.net/2015/01/computer-science-education-predictions.html
On more states allowing CS to count for a graduation requirement:
Alfred's probably right but I'm leery. Sure, it could end up terrific but I could see a number of ways this could play out badly.
We could end up with non-cs classes to count as CS or we could see schools allowing real CS to count but there would be no incentive for a school to actually create any meaningful CS classes much less for kids to take them.
I guess the root of my concern probably relates two of my concerns about education in general:
- Real, experienced teachers aren't driving policy in education in general and CS is and will be no different. We're going to be left with something forced down from above and I fear it will be bad.
- I'm not a big fan of education education. As schools of education get involved they will have more of a voice. I think one of the worst things to happen to math education over the course of my career has been "Math Ed." I fear CS Ed will have the same effect on K12 CS education.
Maybe I'm a pessimist or maybe I've just been burned one to many times or maybe it's that as a public school teacher I see the negative effect of politics and money on public education but at least in NYC I see where the decision making is coming from and I'm not encouraged.
On the other hand, even if I'm right and the powers that be really screw things up,there should always be at least a few people who see through they hype and that's where I can continue to do positive work.
On Python continuing to grow
It's been one of my go to languages for a while now. I've been using it in and out of classes since some time in the mid 90s.
I don't see it replacing Java in AP CS and it looks like Scratch has the inside track CS Principles but it's good for so many things and has such a low cost of entry, I again feel that Alfred's right.
The fact that it's easy for a non-cs teacher to pick up, at least to a limited degree, will certainly help the charge. I'm not sure if long term, this is a good thing, but it will help to push python's growth in education.
As a side note on Java – I'm not personally a fan, but there good things in there that would be lost with a total shift to languages like Python.
On CS Principles
I do see a time where the course is forced on Stuy but I'm not worrying about it for the moment. I think we already teach a stronger course and by the time CS Principles becomes an issue at Stuy, I'll probably be gone.
I could see chromebooks working out for CS but only if schools don't lock them down. Out of the box, you can only use cloud based development environments. This is surely limiting but if you have the bandwidth, between codesters.com, koding.com, cloud9, Dr.Racket and assorted other tools you can certainly do some good CS.
The upside comes when you can drop into the Linux shell. I've been playing with a C720 Intel chromebook recently. It's small and lightweight and once I set it up, it was running Dr. Racket, NetLogo, Python, Java, Processing (all with a fairly hefty Emacs install).
Will it run everything? I don't know, but if I can get a new lab of computers and have the freedom to custom install the machines, I'm seriously considering chromebooks.
I'm also recommending them to my kids looking for a cheap portable development environment.
I've never been one for my own predictions - maybe because I'm more of a continuous journey rather than destination type of guy so I'll hold off on my own predictions for now, but I'll close with a direct shoutout – Hey Alfred - thanks for posting your predictions - good food for thought as is your blog in general.