Share and discuss this blog

Saturday, December 22, 2012

The Best and Brightest Teaching Computer Science Online

In the 1990’s I was running the Institute for the Learning Sciences, trying to re-envision education in the age of computers. My former PhD student (at Stanford) and colleague at Northwestern, Chris Riesbeck, was not only designing the technical side of what we were building at ILS, he was also putting our ideas into practice on a daily basis. He stopped showing up to teach his programming classes. Instead he posted assignments on line and responded to questions and problems that students were having with the assignments. He evaluated the work they did and, as they improved, gave them more difficult assignments. He saw no reason for lectures or classes.

Of course, the authorities at Northwestern objected. His students simply stopped coming to class. It was easier to communicate by email. Many people have learned to program from Chris and most will tell you that he is the best programming teacher they ever had. They were learning to do something and that is not done by listening, but by constant practice with help from a mentor.

Some years later, I was asked to design the educational offerings for master’s degree programs at Carnegie Mellon’s new Silicon Valley campus. Ray Bareiss who had been the associate director of ILS moved to California, and the team at Socratic Arts and I designed some radical new ways of teaching on line. Of course, what we did was built upon what Chris had done and what we had done in a previous venture with Columbia University. We added a story line to the projects students did so it would look and feel like they were on a real job. They were not taking courses nor were they attending classes. We were working with the faculty at CMU in Pittsburgh, many of whom objected to this new style of teaching by mentoring projects rather than by lecturing. One who did not object was a former PhD student of mine (at Yale) Jaime Carbonell, who together with Michael Shamos had enough weight to convince his colleagues in the eCommerce program to go along.

One who initially objected was the Software Engineering professor assigned to CMU-SV, Lynn Carter. But after a few months of teaching our way he said (and I have this on video) that he couldn’t see teaching any other way now that he had understood what good teaching in computer science was all about.

We built a great many computer science master’s degree programs for CMU. All learning by doing, all on line, no lectures, no tests, just mentors available as needed and students working in teams to get things done.

This was before online suddenly became fashionable in the university world, before putting lectures online became the must do trend, an idea that is absurd it is hard to contemplate. Who remembers lectures they heard in college? CMU actually was decidedly uninterested in the fact that our learn by doing offerings available online or even a way to improve face to face teaching, and with the exception of eCommerce did not bring our new teaching model back to the main campus.

My friends and I are still trying to get good practical computer science education to the world in a way that would allow many people to become effective programmers, software engineers, mobile app developers, ecommerce specialists, big data analytics experts and so on.

So, we started XTOL.

You’ll notice, if you look at that site, that the old gang is back together again. We are committed to getting on line education right and to changing the concept of school from a passive experience to an active one, solving challenging problems in realistic settings.

The first two schools (there will be others) to offer what we have built are:


The latter is offering an MBA we built for them and will be offering some of what we are doing in computer science as well.

In particular we will be launching much of the computer science masters degree programs as short courses, in addition to the full degree programs.

The short courses can be taken by anyone who can complete them. They teach real world skills that a high school or college student would not learn in their school and would give them useful knowledge for employment. (As an example, how to optimize a website for search engine ranking is a short course we will soon offer.)

As a computer science professor for over 35 years, I was always astonished at the extent to which computer science is taught as a series of subspecialties that in the end do not produce skilled professions who can be readily employed the real world.

Why is this the case? In my recent book “Teaching Minds: How Cognitive Science Can Save Our Schools” I quoted a very well known computer science professor who did not want his name mentioned:

Every faculty member in the Department of Computer Science at my University thinks that their small insignificant area is important enough that all undergraduates must take a course in it. When you add all those courses up there is simply no time for a student to do anything other than take crazy courses in sub-disciplines represented by the faculty in the department. Everybody’s course is a sacred cow. If you tried to put something new in, something would have to come out, and no faculty member wants his course to be eliminated.

At a big state university, which one would think has an obligation to supply training to the students of that state in a major field in which students can readily find employment, the faculty could care less about that and they only want to do graduate teaching. We teach courses that are modeled after courses in the professor training schools like Harvard and MIT. But how many professors do we need?

There are roughly 60 faculty members in Computer Science. They cover all the traditional areas of Computer Science. Ironically, Software Engineering, which is what 90% of the undergraduates do when they graduate, is not covered.  It is not considered an intellectual or academic discipline. It is considered too practical. There is only one software engineering course and it is taught by an adjunct because no one really cares about it.

There are hundreds of computer science majors here.   The faculty doesn’t feel it needs to change because there are students clamoring for what is now offered. 98% of them want to be programmers. Almost none of them want PhDs.

I cannot go to a faculty meeting any more. I get into a fight at every faculty meeting. I argue about teaching and education and they think they know because they are professors. I cannot subject myself anymore to their abuse.

We are trying to remedy all that. Not just in computer science, but that is where we have started because we are experts in that field. We are ready to work with experts in other fields to start making on line education something worthwhile, useful, practical, and enjoyable. And, we want to start a revolution in teaching and learning. Students deserve better.

Check with Socratic Arts and Engines for Education (our not for profit for high schools) for updates:

No comments: