Thursday, July 30, 2009

Figuring Out What Will Get Attention

I think a lot of us have trouble knowing what will be interesting to others. I think this is true in the classroom (“What do you mean kids don’t find learning binary interesting? I LOVED IT!”) and it is clearly true in blogging. I’ve been looking over the blog posts from the last month and the statistics around each one. I am surprised by the posts I thought would get a lot of attention and comments but didn’t. Others that I expected to be largely ignored – read and forget – have a bunch of comments. How do you know what is going to resonate and what will not? Honestly I don’t think you can. Not with any real certainty anyway. But I have examples. Anyone what to explain things to me?

I’m going to give you some examples from this month both to show you want I mean and (more selfishly) try to highlight some posts that I think deserve more attention and give you a chance to see what did get attention that maybe you missed.

On the more attention than I expected clearly Teacher Web Sites comes first. This one was one I hoped would be interesting for a few people but turned out differently. Largely this is because one of the companies I mentioned in passing put a link to the post with the suggestion that people “help” me out. I saw an amazing amount of traffic referred from Facebook. More than came from search engines even! That’s rare.

What It Is Like to be A Student? received more traffic than most as well as four comments. Honestly that surprised me because I posted it primarily to link to someone else’s blog! I hope you will read those posts (Lost in syntax part 1, Lost in syntax part 2) as they are more interesting than that post of mine.

I really expected comments on On The Value Of Testing but there are none and not much traffic either. Why is that? Was it too obvious and every says “oh yeah sure” and goes on about their business? No idea.

I really had high hopes for Who’s Afraid of Smart Machines? but perhaps people are just discussing that too much in too many other places. Still I was hoping teachers would weigh in on this as suitable for classroom discussion. And that people  who give opinions as to how they felt about smart machines and what the potential meaning for humanity is. Oh well. I did try.

Two posts inspired by NECC Sponges and Participants and Would You Wear A Ribbon That Labeled You a Trouble Maker? had a lot of readers. Only two comments though. Again I’m not sure why but I’d really hoped for more comments especially on the Sponges and Participants one. I really want to know if other people see conference participants the same way I do or hear some alternative views.

Sometimes I do get it (somewhat) right though. Are We Doing It Right? had five comments. Not a huge number and not quite as many as I would have liked but at least there was conversation and that is what I was aiming for.

SO there you have it – proof that I don’t really know what I am doing or what my audience wants. I’m trying though and I am always open to feedback. So any advice you have for me to make my blog better for you and for computer science teachers/education in general let me know.

Thursday, July 23, 2009

RoboZZle – a social puzzle game

RoboZZle bills itself as “a social puzzle game” but to me is is a fun and interesting way to introduce programming concepts. Yes it is a puzzle. The social aspect is that members of the community can create their own games. There are a series of tutorial puzzles to start things off. One of the things you will find is that the tutorials introduce recursion (without bringing up the term to scare people) very early in the process. I have to say that makes it a particularly interesting teaching tool for me.

Check it out at http://www.robozzle.com I think you’ll find it fun. And perhaps it is a game to get young  people interested in programming.

The description of RoboZZle from the Coding 4 Fun blog is:

Robozzle is a Silverlight game that helps teach players the art of programming logic through a series of fun and challenging community-created puzzles.  What's more, the game is "community sourced" meaning not only can you contribute new levels - but actually help expand the game and shape it's future.

There is a community around a part of the server-side RoboZZle code at Codeplex if you are looking for a projet  like this to get involved with.

Monday, July 20, 2009

Interesting Links Twittered July 20 2009

 

Things are a little conversation focused lately on Twitter. It seems like a lot of the people I follow are teachers on summer break. So while there is a good bit of educational conversation going on there is also a lot of just people chatting. I think that is good though. I feel like I am getting to know people better. That doesn’t mean that useful and educational things didn’t come my way and get passed along though. Here now my picks of the week.

Mr. Higgins has updated his list of math related links on his school webpage. If you teach math or know someone who does you will want to check that out.

Matt MacLaurin (@mmaclaurin) announced the new Kodu blog. Speaking of Kodu:

ACM Women's CIS Newsletter v02.01 - Celebrate, Inform & Support (PDF)

RT @SpringboardBlog: New Blog Post: Technical Book Club: Code Complete - Selection of Major Construction Practices http://bit.ly/HbEbd11:50 PM Jul 13th from TweetDeck

The CSTA blog had an interesting post - A Computer Science Honor Society: Is it Worth the Work?? What do you think? Join the conversation on their blog.

Are you interested in seeing what Office 2010 looks like?Robert Scoble (@Scobleizer) has posted a bunch of video demos of Office 2010.

BTW one of the things I learned on vacation is that the Mayan calendar runs out in 2012. I think that means that Mayan Civilization may also be gone by then. :-) Seriously though maybe the Y2K problem didn’t start with the computer age. Something to think about.

Monday, July 13, 2009

Kodu Demo – Programming for little kids

The other week while I was at NECC (what a great time meeting with and learning from some wonderful educators) we filmed a video of me demonstrating Kodu. You can see it and read some thoughts from the Microsoft Education team at the Microsoft US Education blog.

Some useful highlights I borrowed from the Microsoft US Education blog are:

If you are with a school or an educator interested in using Kodu in your curriculum, you can sign up here to get involved in the academic beta program on the PC. Space is limited, and it requires an Xbox 360 controller for Windows and a reasonable graphics card. You can read more about Kodu’s potential use in the classroom here, and how kids at a Michigan elementary school took Kodu for an early test drive during the development phase here.

Note that Kodu is now officially available on the Xbox Live Community Games channel for the Xbox 360 and for a very reasonable price!

 Kodu game lab

Technorati Tags: ,

Saturday, June 13, 2009

Real Life Is An Open Book Test

The other day a regular reader of my primary high school computer science blog (thanks Avi Burstein) sent me a link to an article titled Academic source code dust-up symptom of CS education ills. The short version is that a college student posted the source code from a school project to the Internet and his professor objected strongly. The professor was concerned that future students would be able to find the code on the Internet and turn it in as their own. The student believes that his right of expression allows him to post his work. Eventually an academic judicial affairs office sided with the student. Kyle Brady the student involved tells his version of the story on his blog.  I don’t expect this to be the last of this sort of conflict though. And that is a shame.

I’ve been programming for school, for fun and to make my living for about 37 years know. And while I have learned a great deal from course work and from “book learning” I have learned even more from reading the code other people have written. In fact many textbooks include sample code. Certainly the books I have written have included sample code. But professional developers spend a lot of time reading other people’s code. Formally, informally and in any way you can imagine. They also look to reuse code. And they keep documentation around. Even today when much of what one wants to learn professional software developers often have shelves filled with books. Believe it or not they actually reference them too!

I don’t remember when I first heard someone say “real life is an open book test” but it really stopped me on my feet one day. It also influenced me as a teacher. While I often expected students to memorize some things and gave my share of closed book tests and quizzes I always expected students to take advantage of external resources for projects. That included the textbooks of course and the help files and programming language documentation. It also includes asking for help – though one does have to be careful about explaining the difference between getting help and getting someone else to do the work. And yes, even looking things up on the Internet. That’s how professionals work.

There are people, often great educators whom I respect, that want to put more limits on students. For example they want to avoid things like Intellisense (IDE features that show programmers options for function/method calls and parameters) because if means they don’t have to memorize as many of those things. I disagree because I see greater value in the experimentation and “accidental learning” that provides. But that is ok I think.

Stealing (or borrowing) code from the Internet is a real and justifiable concern for many people teaching computer science (well programming anyway). I would argue that faculty should know their students programming styles well enough to spot clear cheating just as English teachers can pick it up in student essays. Sure that is not very practical in sections of 300 but I don’t approve of sections that are too large for the instructor to know their students. (So there :-P ) IF you are going to have sections of 300 you are begging for cheating to occur so you should not whine when it happens. That doesn’t mean I approve of cheating – I don’t. But you already heard me write disapprovingly of overly large sections and cheating is one reason for that.

One thing I used to do with semester end projects was to have one on one mini-code reviews with each student. They would do a demo and I would test a few things. Then we would talk about the code. I came prepared and if there was code that seemed to advanced for the student or too different from their normal work I asked them to explain it. If a student can explain code in a way that makes it clear to me that they know how it works, can debug it, can modify it and can make it fit their particular application why should I care if they wrote it from a blank slate or took some ideas and code snippets from someone else? It would be like penalizing a student in shop class because they borrowed a saw.

School is about learning. It is not teaching students to work with one hand tied behind their back. It is about helping to understand what they read (or find on the Internet) not making them reinvent the wheel. I’ve blogged  before that I think it is important to have computer science students read more code. IF they find student code on the Internet and learn something from that I think that is great. I suspect they’ll learn how not to do things more often that how to do things but that is valuable learning too. In the mean time there are a great many code samples on the Internet. Microsoft posts lots of code that answers the question “How do I?” (some links below) There are many other sites that do the same thing. Students will find sample code. But they will learn for it and that is what we’re all after isn’t it?

 

Friday, June 05, 2009

It Ain’t Heavy It’s My Software

The trend these days seems to be moving applications to the web browser. The ideas behind that are having access anywhere – from any location, from any computer, and at any time. Sounds great. But I resist. I like my so-called heavy applications. OH I understand the benefits of light applications that run from the web browser. I also understand the limitations of computer based heavy applications – operating systems dependence and lack of availability when one is away from their “home” computer. And there is installation costs. I get all that. 

I do happily use Outlook Web Access and Hotmail for email  when I need to for example. But I’d still rather use real Outlook or another “real” email application. I use twitter from the web interface from time to time but the power and flexibility of TweetDeck or other special twitter applications wins me over when I have a choice.

I think this is as much a result of my perception that special purpose tools in most areas give one better results than general purpose tools. Sure a Swiss Army knife will let you do a lot of things with one tool. But as well as separate screw drivers, scissors, knifes, etc? No not even close. You can use one hammer for everything you need to hit but a wrecking hammer will not do as good a job putting in nails as a framing hammer. And getting a table saw to do what a scroll saw can do is going to lead to frustration. Likewise a web based email client will do a lot – and they are much improved in recent years – but a dedicated application on your computer can do more, faster, easier, and still let you do a lot when you are not connected to the Internet.

Which brings me to the next piece. I didn’t grow up with ubiquitous network access. And I still find myself in places where I can’t get connected easily. So the idea of only being able to use an application when connected to the Internet scares me a little. Well maybe concerns me would be a better way to phrase it.

I do like cloud computing to some extent. The idea that I can place data on the cloud and get it from anywhere is great. The idea that there are cloud applications that I can use and access when I am connected is great. But I still what to work locally. I still want some control over my data. That control piece may actually be what concerns me the most. I have always taken responsibility for backing up my own data. Sure I have worked on commercial systems where formal and regular backups were taken. But I have always also done my own backups. I still have copies of programs from college – over 30 years ago. I trust me. not that I haven’t ever lost anything but nothing I haven’t been pretty sure I didn’t need anymore. Well mostly. :-)

Do people – thinking students really – think about and discuss the pros and cons of heavy apps against light apps? I’m not sure too many programming courses really teach light apps. most web-based development I see done in high schools and early years in university are heavy apps. That concerns me a bit. I guess some web development courses cover simple web applications with some database access. That’s great as far as it goes. But I’m not sure it teachers the complexity of building the sort of web applications that many in industry are moving to. While it is true that I am not a huge fan of that sort of thing I recognize that for the near future they are the future. Students need to know about creating them. At the very least they should be exposed to the discussion and presented with the issues to think about. The sooner that happens the sooner they can build applications that old school people like me will be comfortable using.

Or maybe they’ll see the pros and cons differently and the pendulum will swing back to locally run applications. Stranger things have happened.

Thursday, May 28, 2009

Computing at School Working Group

What did I learn about on Twitter today? The UK based Computing at School Working Group is what I learned about. From their home page:

The Computing at School Working Group is an informal group that aims to promote the teaching of computing at school. Our membership is broad, and includes teachers, examiners, parents, university faculty, and employers.

CAS was born out of our excitement with our discipline, combined with a serious concern that our brightest students are being turned off computing by a combination of factors that have conspired to make the subject seem dull and pedestrian. Our goal is to put the fun back into computing at school.

They have a conference and regional support groups called hubs. So if you are a pre-collegiate computer science teacher or a university faculty/lecturer with an interest in helping support such education in the United Kingdom you will want to look into this program.

In the US there is still the Computer Science Teachers Association which, while is largest in the US, is really international in scope and membership.

Speaking of the CSTA, they just released the draft of a model curriculum (Level I Course: Foundations of Computer Science) that covers K-8 computer science. They are looking for comments and opinions on it so take a look.

ADE Team Member Blogs

Hilary Pike & Diane Curtis Springboard from Mortarboard to Onboard (RSS)

Clint Rutkas BetterThanEveryone (RSS) & Coding 4 Fun (RSS)

Sam Stokes on Research in your life and studies (RSS) & on Game Programming using C#, Lua, XNA, XML, Zune, XBox and World of Warcraft (RSS) & on Building games based on Silverlight and Expressions (RSS)

Randy Guthrie MIS Laboratory - Resources for Information Systems Faculty and Students (RSS)

Alfred Thompson Notes for High School Computer Science Teachers

Thursday, May 21, 2009

Revisiting the GoTo Statement

In yesterday’s post I named the “GoTo” statement as basically a bad thing. To my surprise this started a short Twitter discussion and also came up in the comments. So I did a bit more research. I found this fairly balanced article called “Using gotos” by Steve McConnell. And Mark Guzdial twittered a link to an older post he wrote titled “Plea to Language Designers: Bring Back GoTo!” Wikipedia also covers the issue fairly well with a bunch of external links. So clearly  there are multiple sides in this issue. I made the comment in Twitter that this issue is far from settled science.

By settled science I mean that there is still a lot of discussion going on. Arguably there are cases where GoTo statements have a place. One of the things that Mark Guzdial pointed out in twitter “When non-programmers define processes, they use goto's. GoTo is natural.” There is a lot of truth there. Of course one could argue either for or against what is “natural” and people do. Another thing to consider is how an understanding of GoTo helps with understanding other concepts. Ian Bogost (@ibogost)Twittered “GOTO made understanding machine branches easy.” Let’s face it most assembly languages could not function without the equivalent of a GoTo statement!

Most programming languages do include a GoTo statement of some form. Why? Well the discussion comes up every time and people ultimately decide to include it and yet at the same time hope people will not use it. Even the venerable Programming Proverb 7 says “Avoid unnecessary GOTO's” and not avoid all use of the GOTO. I suspect that this is a debate that will go on for ever. Not that there is anything wrong with that. I think I learn something new every time it comes up.

Friday, May 15, 2009

A First Computer Science Course

Starting back this past winter I started hearing about a National Science Foundation (NSF) project to create or perhaps promote might be a better way of putting it a new three course computer science curriculum for high schools. This is part of the Broadening Participation in Computing  (BPC) program at NSF. I heard some of it at TCEA and more still at SIGCSE. It sounds pretty interesting. Clearly, in my opinion and in that of many others, we need to expand computer science education. We especially need more diversity in the field. Only some 20,000 high school students take the APCS A exam these days. That compares pretty poorly with over 80,000 in statistics which is a fairly new and still small (in AP terms) exam. Would a good course before the APCS course help matters?

What I have been specifically thinking about lately is this so-called first course. Some people refer to it as a pre-AP course but others see this as a course for far more students than just those who are headed for the Advanced Placement Computer Science course. I tend to agree. While it might be nice to have a lot more kids take the AP course – ok yeah it would be nice – I keep coming to the idea that what we need to do most in high school is:

a) get students interested in computer science and

b) give them some basics so that when they get to college/university they are ready to start if they have the interest

I’ve seen a number of my own students over the years take just one computer science course in high school and then do just fine as CS majors in college. Not taking APCS did not stop them because they had interest and some basics. So the question is – what should that first computer science course be like?

Should it have some programming in it? I’d have to say yes. But it doesn’t have to be boring or especially difficult programming. Start with Alice, Scratch, squeak/eToys or something along those lines. Then move to something a little more “real” like Small Basic, Visual Basic or perhaps Python or a functional language like F# or Scheme. Personally I’d avoid curly bracket and semi-colon languages but for some people C#, Java or even C++ will work out just fine. The important thing I think is to give teachers some choices. Let people teach with what they are comfortable with. If they like the tools teachers are much more likely to spread enthusiasm to their students. That to me is a key piece.

I think you also have to be concepts focused more than tool focused. I think that the activities at Computer Science Unplugged are great for that. its not just that they are fun and interesting it is that they move some of the focus from the physical computer and to the concepts themselves. That’s a big plus.

I’d like to see some computer history covered as well. I know. Everyone tells me history is boring. But maybe that just means we are teaching it wrong. We’ve got some real characters in the history of computers and we should play that up. There were some out of the box inspiring people like Grace Hopper for example. Let’s get some creative people to tell those stories in the best way possible. And stories are the way to do it – no dry recitation of facts and dates. That would be boring. But talk about the things that made change and innovation necessary. World War II and everything from code breaking to simple cannon trajectory calculations. Why was computing necessary for just in time inventory? And there are lots more we could come up with after a little brainstorming.

What else do we need? What concepts are key? Remember that in a single semester or even year course we can’t cover it all. Loops and decision structures? Absolutely! Right? What about object oriented design/programming? Is the first course too soon? Or should we use objects even if we don’t teach how to create them? Is recursion in or out?  Can we use games as projects? Why or why not? What are good projects that build interest while teaching concepts?

Do you have or know of a scope and sequence document (or more complete package) for a first computer science course? Please send me a link at alfredth (at) microsoft.com or add it to the comments on my main blog? Strong opinions about what this course should look like? Let me know in the comments, by email or write about it in your own blog and let me know about it. This is something I think needs a broad background of ideas and support.

Friday, May 08, 2009

Learn Programming with XNA: Curriculum Available Now

I get asked about curriculum available for XNA on a pretty regular basis. I’ve been linking to a lot of stuff that is available in parts and pieces and even more complete things like Brian Scarbeau’s great XNA educational resource page. And Kelvin Sung’s Game-Themed Introductory Programming Project.  Microsoft just added another piece at the puzzle with a curriculum titled Learn Programming with XNA.

Overview

"Getting Started Making Games with C# and XNA Game Studio" is a programming course for senior high school or undergraduate students with no prior programming experience. It is intended to engage students with the craft of programming by the creation of gameplay using the XNA game framework.

Whilst the students will learn how to create games, the course should really be regarded as one which teaches programming. All of the issues that are explored are also applicable in the wider scheme of software development.

Presentations are provided as part of the learning materials. The presentations are grouped into a number of topic based parts with a practical session to underpin the taught content. Each presentation is interspersed with demonstrations and annotated with speaker notes, as well as content review sessions.

The material is intended to foster a dialogue between the presenter and the audience; in some places the presenter is given some discussion points to further this. There are also some "interactive development" sections where presenter and audience use what they have been taught so far to solve a particular problem. These attempts (and their occasional failure) lead to more detailed exposition of the material and hopefully remind those present that having things not work is actually part of the software development experience.

The whole package includes demos, labs/projects, PowerPoint presentations and teacher notes. Lots of stuff in there. If you are thinking about a game development course take a look.

And there are more curriculum resources available on a variety of CS  topics at the Pre-Collegiate Faculty Connection site including a dynamite standards-based Web Design curriculum. Take a look around.

Monday, April 13, 2009

Links Twittered April 13 2009

Once again I have found myself Twittering a lot of links in the course of the week. Here, in hopes you will find one or more of them interesting and or useful, is the most recent collection. If you want to see these in a more timely fashion I invite you to follow me at http://twitter.com/alfredtwo.

Before I start though let me remind people that there has been a lot of conversation on two of my blog posts from last week. I would seriously welcome more comments on both. And if you have a blog and could link to one/both of them to seed more people my way I would really appreciate it. Or Twitter about them – lots of new traffic coming to my main blog from Twitter lately. They are:

From @NCWIT: I found this article about Computer Science majors not lacking for jobs. One interesting quote from the article is a professor who says "I have more recruiters here than I have seniors"

From @NCWIT @ghc  and @anitaborg_org I found out about an African-American Women in Computing Science (AAWCS) scholarship program.

From an email from a friend (thanks Brian) I found out about some interesting looking tutorials for developing games using XNA.

A lot of people were talking about this Wired Campus article from Chronicle.com  Professor Encourages Students to Pass Notes During Class -- via Twitter Would you do things this way in your classroom? How about in a business lecture/meeting? 

Microsoft Learning has released 2 courses for Windows 7 early adopters. Perhaps something for school IT people who have to think about when (or if but I hope when) to upgrade to Windows 7.

From @alexbarnett and @dhinchcliffe  I found a link to something called The Programmer Competency Matrix It looks really interesting and gives one something to think about in terms of where students are compared to where, perhaps, they need to be some day.

Discovery Education is running a contest. You can enter to win a wireless lab for your school!http://cdwg.discoveryeducation.com/1208/enter.cfm

An interesting video from ZDnet (found on TechRepublic) about deciding on the proper IT Tech support to user ratios. The video talks about a ratio of between 60 and 120 users to 1 tech support person in business. Most schools seem to be more like several hundred to 1 How about yours? Perhaps this is a video to show you school board while they do budget planning? :-)

Friday, April 10, 2009

Teacher Tech Tuesday Erin Gruwell of the Freedom Writers Foundation

Teacher Tech Tuesday: LIVE Webcast with Erin Gruwell, Founder and President of the Freedom Writers Foundation

Join Microsoft Education for a LIVE webcast with Erin Gruwell, Founder and President of the Freedom Writers Foundation, as she discusses her upcoming book Teaching Hope: Stories from the Freedom Writer Teachers launching later this year. Erin will discuss how she and 150 teachers across the US wrote and collaborated on the book using Microsoft and HP technology.

Teacher Tech Tuesday: LIVE webcast with Erin Gruwell

• April 14th, 2009 at 4:00 PM Eastern

• May 5th, 2009 at 4:00 PM Eastern

Register for the webcast at: http://www.microsoft.com/education/events/teachertech.aspx

Sunday, March 29, 2009

A Little Link Love

I have a number of friends and co-workers who are blogging for higher education students (and to some extent higher ed faculty) who I really should give a shout out to. If you are looking for some interesting people to follow these people are worth checking out – especially if you are or know someone in college/university.

Hilary Pike and Diane Curtis blog at Springboard from mortarboard to on board. Recent posts include installing Windows 7 from USB onto a netbook, Technical Book Club (some great recommendations for CS related books to read) and Hilary’s Ada Lovelace Day – Women in Technology – Jennifer Marsman interview.

Clint Rutkas is one of the bloggers at Coding4Fun but also blogs as an individual at his own site - http://betterthaneveryone.com/ You may want to check out his latest project – Webcam Software – Image Processing Edition

Sam Stokes tends to write at a high level but covers some interesting things. Recent posts include Programming languages: C# versus F#, building AI and Physics, FUN: Use UML to map your great game idea design processes and Back to the finite state discussion. And if you are “into space”, MCO: More thoughts on the Martian Climate Orbiter.

Dan Waters has gotten back on the blogging horse after being tied up writing his new Zune game development book. Recent posts include videos such as Doing Homework in Windows 7 and Win7 running on my Eee PC. He also has a video on IE8 Web Slices & Accelerators.

Of course don’t forget that my primary blog and the one most updated is Computer Science Teacher - Thoughts and Information from Alfred Thompson

Saturday, February 07, 2009

Five Year Blogging Anniversary

Today marks five years of blogging for me. That day was a Saturday as well. Funny how things work out.

I have to say that time does fly when one is having fun. My first blog post was at a blogging/community site called the Spoke. I wrote about business travel that day. It was the start of an experience that has made me friends and acquaintances all over the world. And broadened my thinking on many topics.

Today the Spoke has been closed but I have moved my blogging in more directions. I blog about social computing and other more random topics at by blog on Live Spaces – my Alfred Thompson the Cyberspace People Watcher  blog. I blog about computer science and education topics at blogs.msdn – my high school Computer Science Teacher - Thoughts and Information from Alfred Thompson blog. I blog about random stuff at  Mr T's rants and ravings – a blog hosted by a former student. And I micro-blog at http://twitter.com/alfredtwo Perhaps I should consolidate into one blog somewhere. Perhaps one day I will. But for now this is working for me.

So to all who read my blogs, link to my blogs, comment on my blogs and those who have participated in blogging with me for the last five years – Thanks!

Wednesday, January 28, 2009

Useful Web Links for Computer Science Teachers

I keep doing sets of links to hand out at various conferences. It seems like every time I do the list comes out a little differently. Some new things. Some things have new addresses. And the order of things changes for the audience. This list is from a pair of handouts I have put together for a high school curriculum panel at Stevens Institute of Technology and for TCEA. Since I’m been working on this I haven’t has as much time to write for the blog. So here’s hoping this serves as double duty.

K-12 Faculty Community Site http://www.microsoft.com/education/FacultyConnection/precollegiate 

A source for curriculum resources, teacher forums, and program announcements

Programming Languages for Beginners

Alicehttp://www.alice.org  – A 3-dimensional, drag and drop programming language from Carnegie Mellon University

Kodu - http://research.microsoft.com/en-us/projects/kodu/

A graphical programming tool for younger students.

Scratchhttp://scratch.mit.edu  – a light weight 2-dimensional, drag and drop programming language from MIT

Small Basic - http://msdn.microsoft.com/en-us/devlabs/cc950524.aspx

MSDN Academic Alliance http:// www.msdnaa.net

A Microsoft program for schools to get Microsoft Development software for labs, teachers, and students.

DreamSpark for High schools https://www.dreamspark.com/HighSchool/Default.aspx

DreamSpark High School provides professional-level development and design tools to students enrolled in an accredited, secondary educational institution at no charge.

XNA Game Studio Express http://msdn.microsoft.com/xna

Software for developing games for Windows, the Zune and the XBOX 360. Also links to the XNA community with sample code, tutorials and support forums.

Visual Studio Express Editions http://msdn.microsoft.com/Express

Free development tools (IDEs) for Visual Basic, Visual C++, Visual C# and Visual Web Developer

Beginner Developer Learning Center http://msdn.microsoft.com/en-us/beginner/bb308754.aspx

A web site for people of all ages who want to learn programming and web development. Tutorials, videos, projects and web casts

Microsoft Robotics Studio http://msdn.microsoft.com/robotics

Visual Programming Language for robots, runtime libraries for higher level programming, a 3-dimensional robot simulator with sample simulations, tutorials, and videos

Coding 4 Fun http://blogs.msdn.com/Coding4Fun 

A web site for hobbyists and computer tinkerers - sample projects and information for doing fun and interesting thing with programming; often combined with interesting or unusual hardware

Alfred Thompson’s Blog http://blogs.msdn.com/AlfredTh  Which is of course my real official blog.

Sharing of resources, links, and information of interest to K-12 Computer Science Teachers

Tuesday, January 20, 2009

The 2009 Alice Symposium – Call For Papers

Just passing this along in hopes that people interested in Alice will see it an take advantage of this opportunity. I have no connection to the conference or the Alice Project. I’m just a fan.

Deadline: March 15th, 2009

The 2009 Alice Symposium

Duke University

Durham, NC

June 17, 2009

Symposium website:

http://www.cs.duke.edu/csed/aliceSymposium2009

The one-day Alice Symposium is June 17, 2009. This symposium is for Alice teachers at levels of instruction ranging from Middle school and High School to College and University.

Note: Two-day workshops will be available before and after the Alice Symposium.

June 15-16: Alice 3 workshop focusing on Alice in AP and CS1 courses

June 15-16: Alice 2.2 workshop focusing on Alice in pre-AP, pre-CS1 and non-majors courses

June 18-19: Media Computation

You are invited to submit a paper or an abstract for the symposium.

All accepted papers will be published in the conference proceedings. We have requested "in-cooperation" status with SIGCSE. If this status is granted, papers will also be made available for publication to the ACM Digital Library.

TOPICS

  • Studies involving the use of Alice
  • Experience papers
  • Nifty Alice teaching ideas
  • Interdisciplinary use of Alice
  • How to teach with Alice
  • Alice use outside of the classroom
  • Alice and computing concepts
  • Alice and animation
  • Other Alice ideas
  • There are two types of submissions: Abstracts and Papers.

ABSTRACTS

If you wish to give a presentation, but do not wish to submit a full paper, you may instead submit a 250 word abstract describing what you wish to present. Presenters will have approximately 20 minutes for their presentations, including questions and answers. (Please note that abstracts, while available in the conference proceedings, will not be made available to the ACM Digital Library.)

PAPERS

Papers will undergo a blind reviewing process. Papers must not exceed five pages. Authors will have approximately 25 minutes for their presentations, including questions and answers. Papers submitted should follow the ACM SIG Proceedings format. Information is available from the symposium web site.

Windows 7: To the Beta and Beyond

Something for the IT people at your school or district.

Date: Thursday, February 12th

Time: 11:00am Pacific Time

https://ms.istreamplanet.com/springboard

Join Mark Russinovich and a panel of subject matter experts for a live discussion of what's in store for IT pros with Windows® 7. Learn about the evolution of features like Group Policy, BitLocker™ To Go, DirectAccess, BranchCache™, and Software Restriction then get tips on troubleshooting, deployment, and application compatibility. Bring your questions—Mark and the panel will answer as many as they can during the hour-long event, then publish the rest in a Q&A after the event.

Find answers to your Windows client OS deployment and management questions with resources, tools, monthly feature articles, and guidance from subject matter experts and early adopters. To learn more, visit www.microsoft.com/springboard.

As part of the “virtual” experience, you may submit your questions about Windows 7 Beta to the panel live during the event—or submit questions in advance to vrtable@microsoft.com.

Springboard Series: The resource for Windows desktop IT professionals

Monday, December 22, 2008

One More Reason to Be Proud of Working For Microsoft

Microsoft named top U.S. company for community investment in survey of peers Interesting article about “a survey of major corporations [of which companies are] doing the best job of investing in its community. The survey was part of a study published by the U.S. Chamber of Commerce and the Center on Philanthropy at Indiana University.”

IBM and Dell were 4th and 5th. Google and Intel were tied for 6th (although I think that should be seventh but what does it really matter.) Lots of the giving of all five companies is for education. This is not surprising as all of these high tech companies really require not only educated employees but customers.

I’ve been really pleased to be a part of a lot of work that Microsoft has done to support education over the past several years. There is a clear indication at all levels of the company that Microsoft has to support education. For the good of the students, society and Microsoft itself. I’m glad that other companies including those that Microsoft competes with feel the same way.

Friday, November 28, 2008

What are you?

Just for the fun of it I was taking a series of poll questions at Microsoft’s Microphone application on Facebook this afternoon and all of a sudden this question came up and I was stumped.

Do you consider yourself primarily a:

  • Gamer
  • Programmer
  • Computer Scientist
  • Artist
  • Technology Hobbyist
  • IT professional

And I didn’t know. Clearly not gamer or artist. IT professional? What does that even mean today? I work for a computer company but not really in an IT role. And while I have done that it never defined me. So that’s out.

These leaves technology hobbyist which feels ok but not quite. And then programmer and computer scientist. I want to say computer scientist. I really do. But do I reach that bar or am I “just” a well educated programmer? I think I would have to answer computer scientist but admit that this is as much aspirational as actual. And I have to think about how I define computer scientist.

So where do you see yourself?