Additional profile information on Alfred Thompson at Google+
Ever since I was told about a list of Movies for Computer Science Students and wrote some comments about that list I have been thinking book. Fiction books. Novels that tell stories that involve computer science and the sorts of issues of privacy, philosophy, ethics and social change that computers make in our society. And being a life-time science fiction fan that may come easier for me than for many. Books have an advantage over movies is that they can spend more time on explanation. They spend more time talking about how people (and in some of the cases I will list – machines) think and why they act as they do. I don’t have anything like a top ten list but I do have a couple of books that always come to mind. OK eight book are on this list. And in general a couple of authors – Asimov, Heinlein, Stephenson – who I like.
I, Robot (9780553382563): Isaac Asimov: Books ISBN: 055338256X ISBN-13: 9780553382563
Caves of Steel (Robot (Spectra Books)) (9780553293401): Isaac Asimov: Books ISBN: 0553293400 ISBN-13: 9780553293401
The Adolescence of P-1 (9780671559700): Thomas J. Ryan: Books ISBN: 0671559702 ISBN-13: 9780671559700
The Moon Is a Harsh Mistress (9780312863555): Robert A. Heinlein: Books ISBN: 0312863551 ISBN-13: 9780312863555
Snow Crash (Bantam Spectra Book) (9780553380958): Neal Stephenson: Books ISBN: 0553380958 ISBN-13: 9780553380958
Cryptonomicon (9780380788620): Neal Stephenson: Books ISBN: 0380788624 ISBN-13: 9780380788620
Neuromancer (9780441012039): William Gibson: Books ISBN: 0441012035 ISBN-13: 9780441012039
Digital Fortress: A Thriller (9780312944926): Dan Brown: Books ISBN: 0312944926 ISBN-13: 9780312944926
That’s a start. I’m sure many of you know of more and even better books out there. I would love to hear your suggestions for additional books or better books as well as which of the books above you would leave off your list and why.
Mark Guzdial had a guest post by Eric Roberts of Stanford today titled - Guest Post: Eric Roberts on the Dangers of Escalating Enrollments which really got me thinking. While the focus of the post was increasing CS enrollment at Stanford and some other universities it got me thinking about high school computer science and how it relates to this issue. I did post a longish reply in the comments there but decided I had more to say than was appropriate for a comment. What would it mean if interest in CS grew in HS? Could we handle the increase? What is our capacity? And most important, would what we do help or hurt university computer science education?
My first thought on it this was "well that is Stanford." They do after all attract a pretty smart bunch of students. But the bit about students building credential for a weak job market makes sense in a lot of contexts. In the long run that is likely to create the same sort of bubble that the dot com boom did with people taking CS primarily for the money. Although if as it appears to be happening at Stanford, students are actually growing to like the subject after taking it for other reasons perhaps this increase will last. At least at some not yet determined plateau.
The capacity problem at universities seems a little easier to deal with than if it were happening at the high school level. There are, I hear, a bunch of CS PhDs floating around looking for faculty positions rather than temporary post docs. I read something about that at Mark Guzdial’s blog. (http://computinged.wordpress.com/2011/03/09/impact-of-increasing-number-of-post-docs-in-cs/) Classrooms and lab time are somewhat harder but given faculty solvable issues. In high schools we have a terrible chicken and egg situation with not enough demand to hire teachers and not enough teachers to fill jobs in places where demand grows – if in fact it grows at all.
I’d like to think that the word would get down to high schools that students at top schools, like Stanford, are taking more CS to help them get into the job market and so increase demand for CS earlier. But I am not sure that will happen in anything like the scale and timeliness we’d like. Even it, or perhaps where, it does get to the attention of students, guidance counselors and school administrators where will the teachers come from? My concern is that teachers with limited experience and excitement about the field of CS will be “drafted” into the roles and turn off students before they get a chance to get excited about CS. This could reverse the trend that Stanford and others are seeing. This would be bad.
The number one thing, in my opinion, that high school computer science needs to do is to build interest in learning more. Actually I see that as the role of high school in pretty much any subject you can think of. Do the courses we have today do that? I am optimistic about the new APCS Principles course. There is talk of a new pre-AP course along the lines of what several schools and districts are doing. They look ok to me as well. Again, assuming the right people are teaching them. APCS as it exists now? OK I’m not so excited about that. I think that one has to already be excited about CS to enjoy that course. Even then it can be a thrill killer. Again, it need not be with the right teacher and the right emphasis on the exam. That means, again my opinion, not treating the test as god.
So the two problems are the right teachers and the right courses/curriculum/teaching tools. I think there are lots of good tools and curriculum. I post about a lot of stuff like XNA Game Development courses. And Small Basic for introductory programming courses. Free or inexpensive tools for schools (MSDN AA – contact me if you need this for free) and students (DreamSpark) abound. For the Java fans there is GreenFoot. There are also graphical drag and drop teaching tools like Kodu, Scratch and Alice. I like to think that many of the programming projects I write about here are fun and build interest as well. But where are we going to find the teachers?
There are some great opportunities for professional development for existing CS teachers. (Information on my favorite at the end of this post) but not a lot of incentive for teachers to move into the field. The ever articulate Mark Guzdial took this question up on a post at What’s the argument for becoming a computer science teacher? and I took up the question at Making the Case for Becoming a Computer Science Teacher The fact remains that finding enough good computer science teachers is probably the hardest problem we have in high school CS education. And far too few people outside our immediate community seem to be interested in addressing it.
Footnote: High school computer science teachers really should attend the Annual CSTA Computer Science and Information Technology Symposium this summer in New York. Register now at http://tinyurl.com/csit2011reg
I’m a day late this week. Yesterday was the end of the US Imagine Cup finals and I really wanted to post about that. It was a wonderful weekend and an encouraging weekend as a bunch of outstanding students showed off some really great projects. And I got to spend time with the rest of the academic team as we are normally spread all over the country for most of the year. Today I am travelling back to New Hampshire. Hopefully the sun will be out. I missed it while I was in the Seattle area. So here now some links I hope you will find interesting.
Clint Rutkas (@ClintRutkas ) has a nice video showing commuting and transportation options to/at the Microsoft HQ. It’s interesting how they are using green options, car pools and buses to both make commuting easier for employees and better for the environment.
The Computer Science Teachers Association has released a new review draft of the CSTA K-12 Computer Science Learning Standards: Revised 2011. If you are interested in education standards fro CS this is well worth your time to check out.
Interested in Windows Phone programming or game programming or especially the two combined? Then you want to watch this video on XNA Game Development on Windows Phone in One Sitting. Speaking of game development, there is a New game development tutorial is now available on Apphub for developers at every level!
From Microsoft Research, a link that talks about how MSR’s WorldWide Telescope Revolutionizes Astronomy 101
Lynn Langet (@llangit) wrote a post for people who run or attend a CodeCamps. - (how to) teaching kids programming at CodeCamp
People interested in Kodu, and perhaps entering the Kodu Cup, check out this SlideShare document : Kodu class
Chasing inspiration: from Imagine Cup to Microsoft - Ed Donahue (@creepyed) and Ashley Myers (@OrganizeFISH) on the Microsoft JobsBlog! Nice story about how these two wonderful young women competed together in previous Imagine Cup events and both wound up working at Microsoft.