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

October, 2009

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Web 2.0 and Other Educational Resources from Microsoft


    OK, this may not be the definitive index to Microsoft resources for teachers but it’s close. Something for everyone from elementary school English teachers to high school science teachers (check out the world wide telescope) to high school computer science teachers. Lots to choose from.

    Web 2.0 and Other Educational Resources from Microsoft

    1. PhotoSynth -

    You can share or relive a vacation destination or explore a distant museum or landmark. With nothing more than a digital camera and some inspiration, you can use Photosynth to transform regular digital photos into a three-dimensional, 360-degree experience. Anybody who sees your synth is put right in your shoes, sharing in your experience, with detail, clarity and scope impossible to achieve in conventional photos or videos.

    2. Worldwide Telescope -

    WorldWide Telescope (WWT) enables your computer to function as a virtual telescope, bringing together imagery from the best ground and space-based telescopes in the world. Experience narrated guided tours from astronomers and educators featuring interesting places in the sky.

    3. Office Labs – Concepts

    a. Community Clips

    If there’s a new trick or skill you want to learn in Microsoft Office, but you don’t have the time to take a course, check out Community Clips. It offers a portal through which you can easily browse, view, share, and discuss informal "how-to-use” Office videos from around the world. It also gives you the ability to record your own screens and voice, so you can create your own training videos to share.

    b. SharedView

    Connect with up to 15 people in different locations and get your point across by showing them what's on your screen. Share, review, and update documents with multiple people in real time. A Windows Live ID (Passport, Hotmail, or MSN) is required to start sessions, but not to join sessions. New in version 1.0: we have added a web based join experience to make SharedView even easier.

    4. Live@edu -

    a. Office Live Workspace

    If the H1N1 flu virus keeps your students away from the classroom, continue the learning online by using Office Live Workspace to:

    · share assignments

    · distribute handouts

    · post presentations

    · enable group collaboration

    Use this free online service to publish and share Microsoft Office Word documents, Office Excel spreadsheets, and PowerPoint presentations. Students can get class information from anywhere they have Internet access.

    b. Skydrive

    With SkyDrive, you can embed public or shared folders on Windows Live Spaces. Everyone can see what’s public, but only people you’ve granted permission can see your shared folders.

    Computer Science and Computer Technology Resources

    1. Pre-Collegiate Faculty Connection -

    Microsoft’s site for K-12 educators where you can access resources developed for middle school and high school technology, computer science and math teachers. Just released: A tutorial and Curriculum unit for teaching and learning Expression Web – the latest Web development software.

    2. MSDN Academic Alliance -

    The MSDN Academic Alliance is the easiest and most inexpensive way for academic departments to make the latest Microsoft software available in labs, classrooms, and on student PCs. The program, which is available in more than 45 countries worldwide, has two primary goals:

    1. To make it easier and less expensive for academic institutions to obtain Microsoft developer tools, platforms, and servers for instructional and research purposes.

    2. To build a community of instructors who can share curriculum and other learning resources to support the use of these technologies.

    3. DreamSpark -

    DreamSpark High School provides professional level development and design tools to students enrolled in an accredited, secondary educational institutions at no charge. Register now and give your students access to all the great software and training DreamSpark offers.

    4. Expression for Educators -

    These educational materials provide a variety of resources for learning Web design with the tools provided in Microsoft Expression Studio software.  Students, educators and hobbyists of all ages will find quick tutorials, short learning units and extensive course content to fit their individual teaching and learning styles. The range of difficulty goes from easy - with the quick start tutorials that require no previous Web design experience- to a more advanced level for people who are already skillful at using Web technologies and employing design strategies.  The one semester web design course is appropriate for high school and introductory post-secondary technology courses.

    5. IT Academy -

    The Microsoft IT Academy program is designed for accredited academic institutions worldwide. Today there are thousands of Microsoft IT Academies in more than 100 countries and regions.

    The program provides educators with the tools they need to effectively train students on Microsoft technologies, prepare students for the global economy, and create a skilled community. This subscription-based membership program offers curricula, courseware, and online learning for students focused on a profitable career path, life-long learning, and Microsoft certification.

    6. Alfred Thompson’s High School Computer Science blog -

    Alfred Thompson's blog about teaching computer science at the K-12 level. Alfred was a high school computer science teacher for 8 years. He has also taught grades K-8 as a computer specialist. He has written several textbooks and project books for teaching Visual Basic in high school and middle school. Alfred is the K-12 Computer Science Academic Relations Manager for Microsoft.

    Other Education Resources for Education

    1. Innovative Teachers Network -

    The Innovative Teachers Network makes it easy to find the resources you need, contribute your favorite curriculum resources, and connect with educators to transform your classroom into a technology-rich environment for classroom learning!

    2. Microsoft Partners in Learning -

    Partners in Learning is a global initiative designed to actively increase access to technology and improve its use in learning. Our goal is to help schools gain better access to technology, foster innovative approaches to pedagogy and teacher professional development and provide education leaders with the tools to envision, implement and manage change.

    3. PiL (MSFT Institute)

    Participate in a unique professional development experience that will provide you and your organization with tools and resources to create and support innovative environments and organizations. Based on key learnings of Microsoft initiatives and our Partners in Learning program, (which has already reached nearly 3.5 million educators in more than 100 countries), this program will give you new ideas to implement in your organizations, district, classroom, or workplace. One coming October 27 - 29, Cambridge, Massachusetts.

    4. Microsoft Education Teachers Site -

    The home page for Microsoft resources for teachers of all levels.

    5. Digital citizenship curriculum -

    The Digital Citizenship and Creative Content program is a free, turnkey instructional program. The goal is to create an awareness of the rights connected with creative content. Because only through education can students gain an understanding of the relevance of and a personal respect for creative rights and grow to become good digital citizens.

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Loneliness of a Department of One


    I read the blog post by Daniel Moix on the CSTA blog today (My Voice) with interest and a mix of emotions. His is a story I have heard before. The computer science teacher who is a department of one or merged into a department (sometimes science, sometimes math) where they just don’t really fit. Much as we talk about computer science being a course that could (should?) count for a math or science credit the fact is that few schools believe it fits either department. It’s a tough situation to be in but it is the norm for high school computer science teachers.

    What does it mean? It means no one locally to discuss projects, grading rubrics, how to present specific topics, share test development, help recruit students or provide many of the other means of peer support that academic departments normally provide as a matter of course. It means feeling like no one understand you or what you are trying to do. It means no one to go to when a student “breaks” their program and you can’t figure out what is wrong. It means no one to plan with or bounce ideas off of. It also means that when budget cuts or scheduling issues come up one is all alone against groups of people with different priorities.

    Even at technology education conferences the computer science teachers are often a tiny part of the program. At a large event like TCEA or NECC (now ISTE going forward) there are special interest groups and they are helpful. At other regional conferences computer science teachers often find nothing of interest and no active group for them to relate to.

    This is one reason that the work of the Computer Science Teachers Association (CSTA) is so important. The leadership cohorts that CSTA has been training are actively at work starting local chapters. There are now local CSTA chapters starting up and/or running in 10 states now. If you are in one of those states and teach computer science get in contact with them and get involved. Strength in numbers. And if they is no local chapter get in touch with your local CSTA leadership cohort people (list here) and help them get a local chapter going in your area. No one should be alone.

    Oh and you New England people, if you are looking for a guest speaker let me know. Love to come by and help anyway I can.

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    What Sort Of Thing is Programming? Really?


    Every so often a thinking question comes to mind. Once upon a time I would either spend some time thinking about these questions and perhaps write a blog to help with the thinking. These days I tend to first toss the question out on Twitter and see what comes back. I find this actually to be a useful process. It helps me think and often gives me interesting and/or useful feedback for my thinking. Earlier today I tossed out this gem “Is computer programming a science, an engineering, a craft or an art? What do you think?” I received several replies:

    The diversity of opinions is not at all surprising. I’ve heard variations of this discussion regularly among academics, professional software developers and casual programmers for years. A lot of scientists completely reject the idea that is is science. In fact some reject the idea that computer science is rightly called science let alone the computer science tool that is programming. Many engineers, especially those from more traditional engineering disciplines reject the idea that programming is engineering. Why? Because “real” engineering doesn't create things with as many bugs as software has. Well it’s a theory. And listen to people who have earned the right to call themselves “Professional Engineers” and add P.E. after their name on their business cards. Even the ones who work as software developers are not always so sure about this idea of “software engineering.”

    Many professional programmers on my acquaintance, especially but not exclusively those who came into the field with little to know academic background in computer science, prefer to limit the discussion to Art and Craft. So before I go any further here are a few definitions cribbed from Wikipedia which is always a good place to go looking for arguments. I mean discussions.

    Art is the process or product of deliberately arranging elements in a way that appeals to the senses or emotions. It encompasses a diverse range of human activities, creations, and modes of expression, including music, literature, film, sculpture, and paintings. (

    A craft is a skill, especially involving practical arts. It may refer to a trade or particular art. (

    Engineering is the discipline, art and profession of acquiring and applying technical, scientific and mathematical knowledge to design and implement materials, structures, machines, devices, systems, and processes that safely realize a desired objective or inventions. (

    […] Science refers to a system of acquiring knowledge based on scientific method, and to the organized body of knowledge gained through such research.[2][3] This article focuses on the more restricted use of the word. Science as discussed in this article is sometimes called experimental science to differentiate it from applied science, which is the application of scientific research to specific human needs—although the two are commonly interconnected. (

    A lot of words show up in multiple definitions. I think of myself as an engineer. I see that as a personality type of sorts and that it is one that describes me. Am I a “software engineer"?” That has been my title in several jobs but really? Engineering? I have to admit that I don’t think we are there yet. Maybe one day. If we make it then computer science will be critical to us getting there. But while programming is a tool of computer science it lacks something for me to call it though. Although we do program by creating a hypothesis (this code will work) and then test that hypothesis which has sort of  the scientific method about it. For lose definitions of the scientific method perhaps.

    So that leaves art and craft. While to some of us good code is a thing of beauty and is of course very expressive I’m not sure about this one either. I guess I am not quite willing to accept the notion that talent over comes skill and training. So that leads me to craft.

    Craft is where I usually wind up in my thinking. programming is a skill. It is practical. It can incorporate some science, some engineering and even some art. And like the crafts of old it is often best taught by a master to an apprentice. So for me that is the right combination.

    The most important part of this question though is not the answer. I doubt there is one true answer. The important part is the discussion. Have you had this discussion with your students? With other computer professionals? With anyone? I think this is the important question for software practitioners to discuss if only to understand themselves.

Page 1 of 6 (17 items) 12345»