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 10 January 2011


    Yesterday I got the “Royal Treatment.” That is to say that Ken Royal from Scholastic did an audio interview with me. We talked a bit about the state of computer science education and how we can make it “cool” and attract more students. This is the first of a new online show for Ken and it was an honor to be the first interview. Please drop by and take a listen. It’s only about 20 minutes but we cram a lot in the time.

    Microsoft’s Channel 9 has a new series of Microsoft Campus Tours The latest tour is titled Dining On Campus I was fascinated with the efforts to “go green” and reduce waste through recycling and composting.

    Lynn Langit has a new blog post about how she is teaching teen-age girls T-SQL They use a database “Query to find ‘hot’ boys”. Apparently that is a topic that has some relevance for young women. Smile

    Camorn Evans (twitter @EDUCTO) Microsoft’s CTO for Education has a new video series, "2011 B.C." on Facebook at; episode 01-In the Beginning is available now.

    Want to get certified in MSFT technologies but don't know where to start? Visit the MSFT Learning Career Portal.

    Erin 'Ed' Donahue, a new member of the Microsoft Academic team, is half of the hosting team for Ed & Ashley's 5 Minute Show! The current interview is with  Deborah Collins Stevens of This Is Not the Life I Ordered.

    Play InterroBang has been honored by having been voted the #2 social impact game of the year on Games For Change! View the top games: What is Play InterroBang? As games for change describes it:

    The community votes put Interrobang so closely under the most favorite game, it was nearly a tie! Interrobang is league based game for middle school and high school honor students. Funded by the Microsoft Partners in Learning Program, Interrobang sends players to complete “missions” that focus on exploring your local environment, helping your community or creating and sharing art.

    Missions in Interrobang are crowd sourced. Gameplay is simple: players are first encourage to pick an easy mission to accomplish. Secondly, players are asked to plan and complete a mission with a focus on team collaboration. The third and fourth steps include documenting the process, so you can share it online via blog posts, photo galleries or videos. Players are also rewarded points for suggesting missions and connecting with the Interrobang community

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    To IDE or Not To IDE


    One of the controversial issues that keeps coming up in computer science education is the role of the IDE – Integrated Development Environment. Some people believe that students should learn using command line instructions so that they become more aware of the roles of compiling and linking. I’m going to jump right in and say that insisting on command lines in a first course makes about as much sense as requiring that new car drivers start their cars with a hand crank.

    Now I’m not saying that compiling is not an important concept – it is. And so is linking. But in this day and age it doesn’t have the importance it did back in the old days when we often had to manually determine how and when the different parts of a program were loaded into memory at run time. You don’t need that in a first course. In fact I am not sure where it does fit into the curriculum.

    The first course of programming or computer science should be about success and for building a foundation for the future. I understand the argument that compiling and linking is part of that foundation and 20 years ago that was true. I don’t think that it is true today. Today we have so many varied ways of building software and integrating it into something that the computer understands and can present to users that focusing on just one doesn’t make as much sense early on. We have web pages, Internet APIs, mobile devices, PCs, and more. It’s all a little bit different.

    Returning to the success part of a first course. An IDE helps make beginners successful by making things they don’t need right away invisible and allows students to focus on logic, problem solving and the specifics of the first programming languages. IDEs also support powerful debugging tools which makes fixing problems faster and easier. Yes I know you can get a listing of errors and print it all out from a command line tool. In fact it can be a whole lot like back in the punch card days! Oh yeah that will excite students.

    So other than hiding compiling and linking what are the knocks against IDEs? Well one is that they are too GUI focused and this focus takes away from the focus on algorithms, problems solving and programming basics. This is an easy argument to make because students, especially youngers ones in high school and earlier, do often get caught up in the GUI. I see this as a problem as much of the instructor as the tool though. By providing templates or pre-built GUI code an instructor can help keep the focus away from the GUI. At the same time today’s students are used to a real GUI program rather than white letters on a black “console” background. I would also argue that I/O is easier in many ways with, say, Windows Forms objects than parsing input  and output strings on a command line program. This makes processing more data more easy which leads to better testing and prevents a lot of the early problems with I/O that beset many beginners.

    The other big complaint about IDEs, especially professional ones like Visual Studio and Eclipse, is that they are too complicated. I taught HS CS for a number of years using professional IDEs – some for C/C++ from Borland but mostly Visual Studio for C++, J++ (a Java replacement), C# and of course Visual basic. Students generally adapted to the complexity very quickly and easily. With Visual Studio the similarities to other Microsoft products like Office made this even easier. But I’ll accept that it may be a bit complicated from many high school students (and their instructors) but please don’t insult college students by saying it is too complex for them Seriously? What sort of people are you recruiting?

    Of course there are simplified IDEs to use if you really find Visual Studio too complex. Take Small Basic for example. Are there really command line compilers that are most simple then this:


    There are also some strong advantages to IDEs such are powerful built-in debugging tools. I have used these in Visual Studio to show how recursion looks, how variables change, and how decision statements are not always what they seem (think = vs. == in C++). IntelliSense or other auto completion technologies (as seen in Visual Studio and Small Basic) allow for almost unlimited exploration of language and library options.

    If you want to program in Visual Studio, C# or other dot net languages there are command line compilers available. They come standard with the .NET Framework and your Windows computer probably already has then installed. But are they really the way to go? Not for me. Give Visual Studio and/or Small Basic a try and see how they work for you.

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Measure 21st Century Teaching and Learning at Your School Today!


    I just saw an announcement of an interesting new program from Microsoft’s Partners in Learning team that is designed to help schools do self assessment of how well they are incorporating 21st Century skills. If you are involved in technology integration this may very well be worth looking into.

    MS_PiL_school-research_Logo_330x175Free surveys of teachers and school leaders that will measure 21st Century teaching and learning skills in your school.

    Would you like to measure new and existing teaching and learning practices in your school? Get a data-driven, action-oriented report with concrete examples of how your school can develop its innovative teacher and learning practices to develop students’ 21st Century skills.

    Partners in Learning School Research is a free research tool that schools around the world can use to get a data-driven, action-oriented report with concrete examples of how your school can develop its innovative teaching and learning practices to develop students’ 21st Century skills. Learn more and get started today!

     Partners In Learning Network

Page 6 of 8 (22 items) «45678