Share and discuss this blog

Announcing

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.

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 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: