Who are the high school developers?

I spend a lot of my time thinking about high school (and younger) students who are doing software development of one sort or another. Being one of those people who tend to think in terms of groups I group those students several ways. One way is to differentiate between those students whose “development” experience is largely limited to what they learn in class. The other group is the real enthusiasts who are learning as much, and often more, outside the class as inside the class. In my role at Microsoft I look for ways to help both groups learn more about how to “do development” using Microsoft products. Microsoft does after all pay my salary. Honestly though I look to do that in ways that I think teach broader skills and hopefully give students a good base of knowledge that will serve them well thought their life time.

The students who just learn what they learn in class are fairly easy to help in some respects. Those are the students who are helped most by helping their teachers. Those are the students and their teachers that we create curriculum for, create and manage some contests for, and for whom we provide or support teacher training opportunities. We’re always looking for ways to do that better as well. The trick here is really to find ways to make the classroom more interesting, more relevant and above all more educational.

The student who is doing most of his learning (and it is unfortunately mostly boys) outside the class is a bit harder to reach. These are the self directed students who tend to go in all sorts of directions. These students fit into a class that we more generally refer to as hobbyists. The difference between the high school hobbyist and the older hobbyist is that they tend not to have the budget for books and hosting solutions to say nothing of the latest and greatest hardware. And yet they (students) often do some of the most interesting things. For them we have sites like Coding 4 Fun though. And I think that a lot of students are going to be interested in trying out the Microsoft Robotics Studio software – especially as more sample software becomes available with more hardware partners. But there is more we can do I think. I’m open to hearing (reading?) suggestions as to what we should be doing for these students. Is it more tutorials, special online forums, or is it perhaps contests to give students something specific to work towards? Or something else completely? I’m open to suggestions for parents, teachers, and of course from students. Please feel free to drop your ideas here as comments or use the connection form to email them to me. Thanks!

Oh and I hope it goes without saying that I’m particularly interested in hearing what sort of help we can provide to young women who are interested in computers. They are all too often overlooked when boys get pushy and start grabbing all the attention.

Comments (5)

  1. Jeff Parker says:

    My suggestion would be more basic and simplistic getting started with C# tutorials, some on the hello world caliber. Just to show them the fundamentals in the language. Easy to read and easy to get started with and fun enough to keep interest.

    For example, I take a martial art, there is a 16 year old kid in my dojo who wants to be a programmer it is one of his biggest dreams. He has classes in high school and they teach in Java language. When school was in session he would come in to the Dojo every week and tell me all the "exciting" things he learned. I remember well the time he learned recursion but couldn’t come up with any uses for it or why you would want to do it so after a workout we sat down and discussed several uses for it. His excitement and passion for programming has always made me leave with a smile on my face.

    Well I am on the board for a local .net user group and we give away prizes and so on. Well at one meeting I won a copy VS 2005 Pro. I didn’t need it as I have it already so I gave it to him so he could work on things in the summer. First place I sent him to was coding4fun thinking that would be a great place for him to learn and play with all kinds of different things. Well I underestimated the learning curve of someone with only a year of formal programming teaching and also switching languages and also the depth of the .net framework it really is kind of intimidating having never really worked with a framework and suddenly seeing one like the .net framework. His quote to me after he got everything up and running is “I really have no idea where to even start”. I gave him some books of mine to borrow and try to answer all his questions and even walked him through some things but what would be really nice is some very slow intro tutorials that are fun. Several examples of beginning programming in MSDN itself are really pretty dry reading. Something we as long time professional programmers are very used to. However a young high school kid just noticing girls don’t really have cooties and thinking about freedom of having a license to drive needs to have some fun learning some very basics of the languages and the framework.

  2. AlfredTh says:

    Thanks for the great comments. I think you are right about the need for more very basic projects with more basic steps. That’s comething I think we need to work on.

  3. Dorai Thodla says:

    I like your blogs. Discovered them recently and read them regularly.

    I think some variation of Logo/Smalltalk may be interesting to students. I read "Turtles, Termites and Traffic Jams" a couple of years ago and it teaches you simple simulations with less than a page of code. I think to get the hobbysts interested we need to come up with ways of "Playing to Learn".

    Imagine a Visual Studio for students. How will it look? With all the cool UI coming out of Vista, we may be able to do a lot of interesting things.

    Here are some ideas:

    – A high level animation language

    – A way to make up your own visual language

    – A language to build robots

    Have you seen some of the Squeak demos that Alan Kay gives?

  4. AlfredTh says:

    Dorai, Thanks for the comments. I have seen a little of Squeak but not a good demo. I have also looked at Scratch from MIT which is built on Squeak. It is a lot like Alice from CMU and both may be good for a lot of beginners.

    KPL now renamed Phrogram has a number of great classes that are part of it that allow easy animations. The Microsoft Robotics Studio software has some robot emulation and connects with a lot of hardware that is out there.

    I think it may be that we need someone to pull all of this stuff together in a way that makes sense to students, teachers and mentors who want to help learners.

  5. Dorai says:

    I agree. I would love to participate in setting up a wiki and gathering some of this info.

    I also think the new Sharepoint may be a good platform to build some of these portals. A couple of years ago we worked on http://www.opencourse.org but its goals were different.

    I think investments we make in getting student comunities built, based on their subject interests may be a good start.

Skip to main content