Computer Science Teacher
Computer Science Teacher - Thoughts and Information from Alfred Thompson

December, 2010

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Interesting Links Post December 6th 2010


    csedweeklogoWell it is Computer Science Education week. Are you doing anything at your school for it this week? I attended three different CSTA chapter meetings in the last couple of weeks (northern New Jersey, Massachusetts, and New Hampshire) and there was a lot of talk about CS Ed week at all three meetings. Check out the CSEdWeek web page to see what is going on around the country. And now a few other interesting links.

    The XNA Game Studio team announced Dream.Build.Play for 2011. While students should absolutely be entering the game division of the Imagine Cup Dream Build Play is open to everyone including people who develop software for a living. So you pros out there looking to make a name for yourself in game development this is the one for you.

    Are you ready to compete? Dream.Build.Play is a competition where you can create and submit your XNA Game Studio 4.0 game for Xbox 360 to win prizes, including the chance to have your game featured on Xbox LIVE Arcade. Registration will open in late February 2011.

    Speaking of the Imagine Cup, Andrew Parsons, recently relocated to New York City from Australian, makes the case Why [students] should make a game for Imagine Cup 2011 

    A thought provoking post on the CSTA blog Maybe Course Proliferation Is a Bad Idea? Could we possibly have too many computer science courses? Types of courses that is – not too many courses in too many schools. Check out the post and leave your thoughts over there.

    Did you know that Microsoft has been ranked as one of the top corporate citizens. One of the reasons I am proud to work here. A lot of people seem surprised by this which tells me that Microsoft is not the company some people think they are. The article makes for an interesting read.

    Are you using Visual Basic and thinking that the C# people are having all the fun with Smart Phone programming? Well, good news, Visual Basic Windows Phone 7 Developer tools is now available!

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Top Read Posts from November 2010


    As with most blogs traffic here comes from two main sources. One is subscribers; people who follow the RSS feed and read regularly. I use one analytic tool to try to understand that traffic. I use another tool to try to understand the direct web traffic. Most of the direct web traffic comes from links from other blogs and web pages but a lot comes from search engines as well. And some people who arrive directly from favorites in their web browser. It’s all good of course. The interesting thing is that while there is a lot of overlap between the two groups as to what posts are read the most often there are differences. So what I tried to do for today was to gather links of the top 10 based on merging the two sets of data. (well it is a rough merge but it works for me.) The idea here is to encourage subscribers to look back as some links they might have missed first time around as well as to encourage people who wind up here from search engines to look at what others found interesting.

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Characteristics of a Good Programming Project


    Hélène Martin had a pair of great posts last week  (links below) about what makes a good programming project which I linked to from my links post. Hélène asked in the comments what my idea of a good programing project was. It’s a fair question. Developing projects is one of the hardest things teachers of programing have to do. A lot of what we do involves borrowing projects that other people develop. Sometimes we get them from textbooks, others from course websites, more from conferences, and still more more conversations with other teachers. Some of my favorite original projects have come from conversations with students in class. But what makes a project a good project?

    Before we go farther I divide projects into small projects and large projects. large projects are very different in scope and purpose than small projects. For the purposes of this post I will talk about the sort of small projects that are assigned during the course of a semester. These projects are generally focused on a particular concept. In fact a project that tries to cover too many topics in a small space is not usually a good idea. So to start off a small learning project has to have at its core a central, as close to atomic (I use that word very loosely) operation or concept. Ideally you don’t want students confused by trying to use two or more new concepts at a time. As a teacher you don’t want to have to guess about which of several concepts students are having trouble with.

    A good project should have a “hook” for the student. While not every project is going to interest every student one should aim to interest as many as possible.  I got interested in programming because it was fun. It is still fun. It’s not much fun if the project isn’t personally interesting to me though. The same is true of students. A motivated student will knock themselves out to work on a puzzle/project that interested them. They’ll do the minimum and get the minimum out of a project that makes no sense to them or lacks interest for them. I think that some courses get too pure mathematical for some students. Programming and math have more than enough in common that beating a student over the head with the connection can be counter productive. Fun is not a bad thing and I would argue that more learning happens when students are having fun than when there are miserable. But no I don’t have peer reviewed research to support the idea.

    A good project lends itself to helping the instructor understand what students do and do not understand. This is a hard piece and frankly I think it comes more with instructor experience than purely a function of the project. For me any assessment tool, including projects, are most valuable when instructors are able to use it to gauge learning. This cycles back to the bit about a single main concept of course. I’m not sure how to define this characteristic. I used rubric a lot in evaluation. So a project that allowed me to define a lot of things to check while remaining simple (yeah a tricky balance) was/is a good project.

    The other thing I like in a project is that it is easily expandable. By that I mean that a student who completes the basic assignment can easily find ways to expand their project. They can make it personal. They can use it as a base to learn beyond what has been covered during lectures or assigned reading. When students learn on their own they seem to learn it better. They also often teach the concept to their peers. While one has to be careful to make sure this peer tutoring is accurate it can be a real bonus to learning. Letting students get creative lets students get more satisfaction from their work. It can also open the door for development of additional projects or aspects of projects that can be used in future classes. There is nothing wrong about learning for students.

    I like Hélène’s list and her thinking behind it. She has clearly given a lot of thought to what she has been doing. I don’t think my ideas are all that different. I do think I took longer to stumble on to my conclusions though. It may be that we as a CS education community need to talk more about what is and is not a good project. Maybe if we had a better mental image of what we wanted we’d have an easier time creating new projects. Or worst case, recognizing one when we find one.

    Hélène Martin’s posts:

Page 6 of 7 (19 items) «34567