Additional profile information on Alfred Thompson at Google+
Someone recently passed on same objection to using C# as a first or otherwise early programming language. I hear these sorts of comments all the time and while I have addressed some of them in the past it seems like this is a good time to readdress them. These are my opinions of course. They are based on my own teaching experience as a high school computer science teacher. And your mileage may vary but these things I believe.
Two things in here. One is that C# is proprietary and the other is that it is a clone of Java. Neither of these is completely correct. The C# language borrows heavily from a number of languages including Java, C, C++, Visual Basic and Haskell just to name a few. In more recent years Java has borrowed heavily from C# as well. So while no language develops in a vacuum it is not far to call C# a “Java clone” even though they have many similarities. As for proprietary, C# is a standard language and C# compilers can be (and are being) created without any control or limitation from Microsoft or other vendor. The same can not be said for Java which, while it has a community model in theory, is largely controlled by Oracle who purchased Sun Microsystems. If there is a proprietary language in this mix Java fits the bill closer in my non-legal mind.
OF course I don’t understand why being “proprietary” rules out using something in school anyway. From what I can tell they use copyrighted books, patented products, and all sorts of proprietary products every day in schools. With programs like MSDN AA for schools and DreamSpark for students getting software very inexpensively or even free for students is not an issue with C# either. There is also C# Express Edition which is a free and easy download.
I’ve wrote about this before but it bares repeating. This is a teaching problem not a tool problem. On one hand you can, if you really want to, limit your students to command line programming. It’s just as easy and just as boring as programming in C, C++ or Java. So if boring is your goal please stay away from Visual Studio. On the other hand if you want students to enjoy the confidence and encouragement they might get from creating real graphical user interface programs that look “real” then maybe Visual Studio is for you. There are ways to keep students focused on the code that you want them to focus on as well. You can supply form templates for example. You can specify exactly what a user interface will look like as another option. OF course if you really want to have students spend more time on the user interface than on useful programs there are far better languages than C# (or Visual Basic) for that. Some languages have these really horrible APIs that you have to hand code every little piece and attribute of objects on a screen. Yuck!
Assembly language is even better for this! But like C or C++ it is a hard way to start. If you are Bill Gates than by all means start with Assembly or even C/C++ but if you are anyone else you may want to think of something a little more easily approached for a first course. There will be time for C/C++ or even Assembly language down the road. I do believe though that this is also a teaching issue, a pedagogy issue, rather than a tool issue. It is a lot about how you teach the concepts that makes the knowledge transferable to new programming languages. And if the complexity of the syntax scares students off or just gets in the way of them progressing than you lose all of the theoretical value of the tool.
I thought it would be interesting to take a look at the top read blog posts from April 2011. I look at both web statistics and RSS statistics.In some ways I feel like the RSS statistics tell me the most about what is useful for my most regular readers. Although I know that several people who seldom if ever miss my posts (I love you all) read via web browsers many follow using RSS readers of some sort. The web hits come from search engines and in links. The search engine traffic is also very informative. It also lets me know that I am covering topics that people are interested in. Hopefully I am helping. The in links most often come when I get a little opinionated. OK I can live with that. So for what ever it is worth here are the top 10 posts according to RSS statistics as provided by Feedburner.
And then there are the posts the analytics tool says are the top posts as read by web browsers. Mostly a different list with a couple the same. If you only read via RSS (which is how I read most blogs) you may have skipped by one of these and find it worth taking a second look.
What was useful (or useless) to you? What topics should I be looking to research and blog more about? How can I be helpful to you this month?
I had an interesting week last week. Took a couple of vacation days – one to go snowboarding with my son who is an elementary school assistant principal who had school vacation and an other to install kitchen cabinets (which I got a blog post out of Problem Solving For All Times) At the end of the week I travelled to Arlington VA (just outside of DC) for meetings at the NSF (National Science Foundation) to take part in some discussions about first high school computer science courses. Wow! Did I learn a lot from the smart people who were there. I still managed to find, and usually Tweet about, some interesting links. And here are my top picks
On Wednesday, May 11th Microsoft New England will be hosting a special event with Xconomy focused on the Future of the Web and Search. Join us for an evening with Microsoft Online Services Division President Qi Lu as he sits down with Xconomy’s Boston Editor Greg Huang to field questions from you—the users and shapers of the future of the Web. Dr. Lu will provide his perspective on where the web is heading, how Microsoft is helping to shape it, and how search will be transformed. As president of Microsoft's Online Services Division (OSD), Dr. Qi Lu leads Microsoft’s online advertising efforts, across search (Bing), portal (MSN), mobile, and the broader advertising platforms and services. Please register here: http://bit.ly/XCf38ms. This is a FREE event and is open to the public
Andrew Parsons (@MrAndyPuppy) twittered a cool list of Imagine Cup Game Design entry videos Take a look to see what a competitive game looks like this year.
Microsoft's April Tech Student(s) of the Month: Jake and Sam highlights a pair of students who are creating Windows Phone games and apps and making money at it. Seem like great people as well.
Good read Mark Frydenberg of Bentley University (@checkmark) talks about Twitter in the classroom in the current BizEd Some good ideas for any classroom.
Why We Must Teach Girls to Program–A Women Developer Speaks –A great guest post on Lynn Langit’s blog (@llangit)
Cheryl Arnett (@c_arnett) who has attended previous Innovative Teacher Forums and will be attending again this year has a great article on the Huffington Post: Celebrating Teachers -- The Microsoft Innovative Education Forum If you would like to attend, the deadline (May 15 2011) is fast approaching for teachers to apply to Microsoft Partners in Learning US Innovative Education Forum.
Edwin Guarin and I had related posts last week – his at Dreamspark and App Hub Registration process REVEALED! and mine at DreamSpark, AppHub and Windows Phone Development. Interested in developing for Windows Phone? Visit here for everything you need to know.
Meet Microsoft’s Next Generation of Innovators!.
From creating an online platform through Azure that helps ease the devastation caused by floods in Australia, to using Windows Live to create a band, to helping develop the next generation of teachers in the Middle East, to charting the future of advertising across multiple screens, people are doing amazing things with Microsoft technology. Microsoft Next is an internal competition created to showcase how Microsoft people and technology are helping individuals and communities around the world and to offer the creators a chance to showcase their projects on a global scale.
From creating an online platform through Azure that helps ease the devastation caused by floods in Australia, to using Windows Live to create a band, to helping develop the next generation of teachers in the Middle East, to charting the future of advertising across multiple screens, people are doing amazing things with Microsoft technology.
Microsoft Next is an internal competition created to showcase how Microsoft people and technology are helping individuals and communities around the world and to offer the creators a chance to showcase their projects on a global scale.
View their winning videos: