“Developers, developers, developers,developers” chanted Steve Ballmer, CEO of Microsoft, in his own inimitable, calm, understated manner to a meeting of Microsoft employees emphasising the importance of attracting and keeping developers for the Windows platform.
Even better is the remixed version that has another great Ballmer performance whipping up enthusiasm at a Microsoft employeee event – http://www.youtube.com/watch?v=d_AP3SGMxxM&feature=related – I’d love to see my principal try that at a staff meeting. Difficulties in attracting and keeping developers for their phone platform is one of the issues Microsoft are facing in their battle for market share as they chase Google Android and Apple iOS. They have the money to push Windows Phone for years till they get it right as they did with the Xbox which is now a market leader for them. Time will tell how this plays out.
No this article isn’t about Microsoft, or Steve Ballmer but I’ve been thinking about the place of programming at second level for quite a while now and I sat down today to write about this as an exercise to reflect/distill my thoughts on where we might go with programming in my school. I’ve been doing some reading, studying and teaching in this area recently, activities influencing my thoughts in the background. This article is kind of “state of play” for where I’m at on this one at the moment.
A Bit of Reading
I’ve just finished reading George Dyson’s book on early work developing the digital computer – “Turing’s Cathederal, The Origins of the Digital Universe”, http://www.amazon.co.uk/dp/B0076O2VXM . A very detailed book, perhaps overly so in places for my liking, but a very interesting read and one I’d recommend. It was fascinating to read about the big names like Von Neumann, Turing, Bigelow, Eckert, Mauchly, Godel, Ulam etc. who were closely involved, as well as the big names on the periphery like Oppenheimer, Feynman, Mandelbrot and Teller. Much of the action takes place in the Institute for Advanced Studies in Princeton (IAS) before, during and after WWII. One thing that struck me was that many people outside of the project didn’t appreciate what a game changer having a programmable digital computer was, didn’t appreciate what a powerful and flexible tool that this Universal Turing Machine could be. Indeed it is notable that not long after Von Neumann left the IAS for the Atomic Energy Commission, the computer project was killed off and it would be another twenty years before there was another computer in the IAS in the 1970’s. Turing himself was disappointed with the reception of his 1936 paper On Computable Numbers which seemed to lose the interest of mathematicians when he started talking about machines and similarly lose the engineers when he started delving into abstract mathematics but its importance wasn’t lost on folk like Von Neumann who saw its fundamental importance for the development of computers, machines that could be programmed to do different things.
A Bit of Studying
While reading this book I have also been doing an online course in Python programming as an introduction to computer science with a crowd called Udacity – www.udacity.com. Who/what is Udacity? Well according to the blurb on their site ….
We believe university-level education can be both high quality and low cost. Using the economics of the Internet, we’ve connected some of the greatest teachers to hundreds of thousands of students in almost every country on Earth. Udacity was founded by three roboticists who believed much of the educational value of their university classes could be offered online for very low cost. A few weeks later, over 160,000 students in more than 190 countries enrolled in our first class, “Introduction to Artificial Intelligence.” The class was twice profiled by the New York Times and also by other news media. Now we’re a growing team of educators and engineers, on a mission to change the future of education.
The course I studied was taught by David Evans who is Professor of Computer Science at the University of Virginia and I have to say he was excellent. The course was taught over seven weeks with homework assignments at the end of each of weeks one to six, and exam questions at the end of week seven. The course “lectures” were delivered as a series of videos hosted on Youtube. Each week there was twenty to forty short videos interspersed with short questions to give you a chance to check if you knew what was going on. The programming elements could be tested on their online Python interpreter and I imagine the load of having thousands of people running badly written code on their servers must have been a frightening experience for the admin folk behind the scenes. At the end of each week there were several “homework” questions that had to be completed to a deadline and on the day after the deadline your work was graded and videos showing the solutions to the homework were provided. The video content was very clear and I would say much better experience than any lecture I attended in college in a room full of students trying to follow the lecturer writing on the board.
They also had a very active discussion forum that saw over 7,500 discussions over the seven weeks. The forum was moderated by Udacity mentors who at times were there to answer questions but also guided people towards helping each other without stepping over the line of giving each other answers to questions on the homework. The atmosphere on the forum was engaging, helpful and generally upbeat. At times the Udacity servers (Google App Engine from what I could tell) buckled under the load coming up to deadlines and the forum would buzz with frustration. It was calming to have Udacity staff, quick to respond and reassure with deadlines being pushed back to make up for the down times. Having thousands of students in the forum was great as there were always people there to answer questions and add to discussions in a way that would be very difficult with a small class where a forum would probably be a pretty barren experience.
This is one of the short videos from the course of which there were over 200. Ignore the content (pretty dry stuff looking at a hash function) and concentrate on the delivery style. Videos often are followed up with a short question to give the learner a chance to work with the idea introduced in the video.
I started this course not so much because I wanted to learn Python but because I was interested to see how the course was delivered. I was impressed, very impressed. I don’t see how doing a course in the traditional way could have been as good as what I experienced with Udacity. Being able to “attend a lecture” for as long as I was free to do so and when I was free to do so with an experience that felt pretty much like one to one teaching was terrific. The fact that you couldn’t interrupt the lecturer to ask a question as you could in a normal lecture was more than catered for in the forum where you could ask as many questions as you liked. This isn’t teaching by computer, it is teaching that uses ICT as a tool. If Udacity were based in a school a mile down the road I’d say the experience for me online would still have been better than attending lectures in person covering the same material taught and mentored by the same people. Being online brought definite advantages to the learning experience and this I didn’t expect.
Sebastian Thrun, a Stanford lecturer and founder of Udacity, gave a moving talk on the background to setting up Udacity. It is about 20 minutes long and well worth a look.
So does this spell the end of traditional 3rd level institutions? If courses of this quality are available online can traditional 3rd level colleges compete? I think anyone who would predict that traditional 3rd level colleges are doomed on the basis of doing one online course would be pretty foolish. What I would say though is that I see a lot of potential in the processes and tools used by Udacity that could be taken advantage of by any 3rd level college. As ever some will resist change and others who want to embrace change will be prevented from doing so either by existing policies or a lack of resources but, ever the optimist, I think good educators will engage simply because it is good for their students.
It should of course also be borne in mind that the 3rd level experience is about more than the imparting knowledge and skills and there is much that a traditional college can do that its virtual cousin can’t. Leaving aside the whole social, growing up, leaving home, developing independence, co-curricular activities, networking, making friends side of things which are fundamentally important and perhaps more important than what goes on inside the lecture hall, there are also benefits on the academic side that traditional colleges excel in. One that springs to mind were the students that Stephen Howell brought to the CESI conference to present/demonstrate their work to teachers. The students had developed prototype applications that could be used by teachers as tools to assist their teaching. I have no doubt that the opportunity of working with Stephen and publicly presenting their work was a considerable “value added” part of the studying a course in Tallaght Institute of Technology that would be very difficult to replicate in a virtual world.
Ann Kirschner of the City University of New York wrote an article recently decrying the slow pace of change at 3rd level colleges in America and is worth a read I think http://chronicle.com/article/Innovations-in-Higher/131424/
A Bit of Teaching
While doing a bit of reading on Turing, Von Neumann et al and doing a bit of studying with Udacity I’ve also had to keep the day job ticking over with a bit of teaching. Last year I had decided I was going to bring back programming to the TY course in my school. It was something I had allowed slip from the programme when we started doing ECDL which we then replaced with Digital Creator.
Having Digital Creator on the TY course is a good thing and while the official “Digital Creator” course is under threat we will probably continue teaching much of the same material in the same way next year. I have no regrets bringing in this course to my school and I’m very grateful to Ciaran McCormack and his folk in IADT for helping us to move in this direction. If Digital Creator survives in some form we will be on board.
I do regret though that we didn’t keep up a more techie offering to complement the creative opportunities of Digital Creator. Back in June of 1989 when I was offered a job in Clongowes I was told I would be teaching TY computers come September. As part of the Maths course in TCD I had done some programming in Pascal and C so I figured that was what I would do with TY. So I bought a Pascal compiler, Borlands Turbo Pascal, that would work on the schools 14 PC’s and developed a course where students learned simple graphics commands (line, arc, etc.) to draw characters and then used procedures and loops to animate them and tell a story. As time went on and the Internet became the next big thing we moved to HTML. I can’t put my finger on the when or the why but the push to use ICT as a tool for other subjects pretty much killed of the notion of learning about computers for their own sake and we moved more towards computer applications as opposed to computer science.
We are coming full circle again though and programming seems to be back in fashion. Nowhere is this more evident than the explosive growth of Coderdojo this last year – www.coderdojo.com. Started as the brainchild of James Whelton, a student at the time in Cork, with backing from entrepreneur and philanthropist Bill Liao it has now gone international http://zen.coderdojo.com/dojo with Dojo’s not only all round the country but in more than a dozen countries round the world.
Road Map – both real and aspirational
So where am I at now, having done some reading, some studying and some teaching? How do I see things developing in my school?
- A programming/computer science class will definitely stay in place for TY in my school while I have a say in the matter.
- Modules teaching the use of creative tools a la Digital Creator will continue to be an integral part of TY in my school.
- It would be nice to have a programming/computer science subject for Junior Cert.
- It would also be nice to have a Digital Creator style of course for Junior Cert.
- It would be nice if we didn’t put the IT stuff in TY simply because we find it hard to justify taking time from other subjects to squeeze it into the Junior Cycle
- Any class that I’m going to give a number of times I’ll consider recording, Udacity-style, so I have a very good quality, rehearsed and edited version available for use both during and outside of class time.
- If I can find a better version on the Internet of something I’m going to do then use it instead – Not sure of the origin of the phrase but I read it in Jeff Jarvis’ book “What Would Google Do” where he said “do what you do best and link to the rest”
- It would be great to have online courses to the Udacity standard targetted at 2nd level students.
What are your thoughts in this area? Join the discussions or start a new thread on the CESI list.