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

January, 2011

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Interesting Links 31 January 2011


    Well my busy season is about to begin. Next week I will be in Austin TX for TCEA. I will be doing some talks and demos about Small Basic and hanging around the Microsoft booth  from time to time. I also plan to attend EduBloggerCon TCEA, the CS/TA SIG meeting and some sessions. Most of all seeing some of the many wonderful Texas teachers I have met over the years. And some good Texas BBQ for lunch. I also have meetings this month in Miami and New York City.  Early March is SIGCSE. After that I think I will schedule a breakdown. Smile

    I will be working in Florida for a couple of weeks the end of February and first week in March. Anyone in the Boca Raton area want to have a Microsoft guest come by their school? Let me know.

    Just a couple of links to share this week.

    A reminder that applications are now being taken for the 2011 U.S. Innovative Education Forum.

    For all you Mac people, you can download download  a 30 Day Trial  Microsoft Office for MAC 2011. You can download the trial directly from Microsoft at I hear good things about it BTW and not just from Microsoft people. There is an FAQ on the trial at

    The latest of the Microsoft Campus Tours on Channel 9 is out. This one focuses on Microsoft’s transportation options on and around campus called The Connector | Microsoft Campus Tours

    In other Channel 9 new, the Coding 4 Fun site has migrated to a new home on Channel 9. It is now at Same great content. Same nutty authors with some additions. Lots of interesting projects for people who code for fun!

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Here we go loopty loop


    I’ve been wondering lately what it is about loops (in computer programs) that is so hard for students to get their heads around. A college professor was telling me (back a while ago but it stuck with me) that they had assigned a program to print out the words to The Twelve Days of Christmas and had explicitly asked student to use loops. And when you think about it this is a natural for loops because of all the repetition. A good number (or bad depending on point of view) had actually submitted solutions without loops. Some of these students had previously taken and passed Advanced Placement Computer Science in high school! What’s up with that?

    Clearly it is not lazy. using loops is the way lazy people would do it. (Though I like to think that there is a fine line between lazy and efficient at times) No, students had used cut and paste and a lot of typing to do this all inline.

    Now loops are something we do without thinking all the time. Climbing stairs is a while loop. Think about it – we repeat the same step motions until we get to the top or bottom of the stairs. We check, usually with our eyes, to see when we are there and then change our motions. We’ve all seen what happens when people don’t check haven’t we? Blind people climbing familiar steps memorize the number of steps and effectively execute a for/next loop to do the same thing. Eating is the same. We keep putting food in our mouth until either we are full or we run out of food which ever comes first.

    And yet all too often students fail to see how programming syntax allows them to do the same things in a program. I don’t get it.

    Loops of course are all the same in programming. Oh the syntax is different for different types of loops and in different programming languages but basically they have the same components.

    1. Setting initial conditions
    2. Changing conditions
    3. Checking to see if the condition has changed such that the loop should terminate

    In the middle somewhere useful work happens – giving the benefit of the doubt.

    Here is a Small Basic example

    For i = 1 To 10 ' Set initial conditions
      t = t + i   ' pretend this is useful
    EndFor      '  change the value of i and see if we are done

    Here is a C# while loop

    TwoWord = "ABC";    // Set an initial condition
        TwoWord = Console.ReadLine();   // Change the condition
    while (TwoWord.CompareTo("exit") == 1); // See if the ending condition is met
    I think students get how loops work. Really I do. I think if you asked a student to explain the components of a loop they could do it. But translating that knowledge to a specific problem seems to be harder. I don’t know why. I hear this sort of story (students struggling with using loops) from teachers all the time. There are other aspects of programming that students also struggle with the application. Arrays for example seem to be a struggle for many. Far too often I hear stories of students having variables like A1, A2, … A10 when a simple array would be much more efficient.
    Concepts are easier than applications of those concepts. Problem solving of new problems is harder than applying old algorithms to well known problems. What’s the answer? How do you deal with this? Or don’t you see it with your students? If not, what is your secret?

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Field Trip! Johnny Cupcakes and More



    I’d never heard of Johnny Cupcakes until just recently. The other night I made the opening remarks and welcome at an event run by STEP that Microsoft hosted at the Microsoft New England Research and Development center (NERD for short). Johnny Cupcakes is a company started by an energetic, one might say frenetic, young man by the name of Johnny Earle whose nickname was the inspiration for a line of clothing, largely t-shirts, that often feature cupcakes in their designs. While not a hi-tech business it sure is an interesting one. And Johnny did keep mentioning Microsoft software that he had used in the setting up and running his business. So students did hear the message that computers are everywhere.


    As I said the event was put on by an organization called STEP that has as a primary role taking high school students on field trips to local businesses – both large and small. The idea is to give young people a look into the possibilities and the realities of what a job looks like. Microsoft has hosted a number of these tours at the NERD center but students in the program have visited retail operations, architectural practices, media companies, and many more. These can be eye opening experiences. And inspiring experiences. The student participants I met Monday night were excited, were motivated, and were looking to a future where they could succeed based on their own brains and hard work. And inspired by a very creative Johnny Cupcakes. I may have to buy one of his shirts now. Smile


    Speaking of field trips, last week I helped host a tour and learning session at our local Microsoft Technology Center in Waltham MA for a group from Year Up Providence (RI). This is the fifth year that the MTC has hosted a group from Year Up.

    Year Up's mission is to close the Opportunity Divide by providing urban young adults with the skills, experience, and support that will empower them to reach their potential through professional careers and higher education.

    They do this through internships, training and yes field trips like their visit to the MTC. On this visit I talked about career skills such as networking, interviewing, and the like. But I also talked a little bit about careers in technology. The rest of the visit included some great technology displays and more talk about technology careers. It is important to expose students to new horizons and give them an expanded career horizon. Field trips can do this. I know that field trips sometimes get a bum rap but I hear a lot of excitement and renewed energy for learning from students after these field trips. While not all students will be inspired to study for a STEM career I think enough of them will to make it all worthwhile.

    At Microsoft, locally in New England at the MTC and at NERD but also facilities around the country, we have hosted tours by groups like Year Up and STEP but also from local high schools and middle schools. It’s one of those ways we participate in the local community and help to encourage students to stay in school, learn math and science, and perhaps one day enter the computer or other STEP field.  It gives many of our employees a chance to share their enthusiasm for technology careers and to show students that there are multiple paths and opportunities. And its fun.

Page 1 of 8 (22 items) 12345»