June 20, 2013

Massachusetts lawmakers are debating a proposal that would mandate computer science classes in all Massachusetts public schools. The plan would integrate computer skills into the state’s public school curriculum and standardized tests starting as early as the eighth grade. As part of the coverage of this story, I was asked by a local online news outlet to provide my thoughts and comments…

What was your initial reaction to the proposal? Is the idea of students graduating from high school with a background knowledge in computer science something that you had considered before this initiative?

I was delighted to see this proposal given due consideration, as I strongly support the introduction of basic computer science competencies in K12 education. Massachusetts has always been a leader when it comes to public education and it makes all the sense in the world for us to lead what I believe will be a trend across the country and the world – that of recognizing “computational thinking” as a basic competency. Not only is Massachusetts a leader in K12 education but also it is home to some of the best computer science departments in higher education, and it has one of the highest concentrations of IT businesses — and hence employers — in the country.

Yes, of course, introducing and teaching computer science concepts (and more specifically “computational thinking”) to high school students is something that many computer scientists, including myself, have argued and pushed for – at least by making it an option to any K12 graduate. My own son who is a Junior in Wayland High School had this opportunity (and took advantage of it). It would be great if every student in the state had similar opportunities.

Better yet, it would be great if every student in the state is expected to have mastered some basic or minimal computational competencies.

What do younger students have to gain from a mandatory computer science requirement in Mass. public schools? Is there a specific demographic that you see benefitting from this initiative?

A lot!

The world we live in is increasingly controlled, managed, explored, and experienced through computational platforms. One can see such a world in two ways. One can see it as a world that can be changed to match one’s needs, or one can see it as a world that somebody else designed for use by others in a very prescribed way. The former view is an empowering view of oneself as a “creator”, whereas the latter is a mundane view of oneself as a “consumer” or “user” of somebody else’s creation.

We need students who think of themselves as creators and innovators, and not as mere consumers of what others have created! It is one thing for a student to play a video game, and it is a completely different thing for that student to create that video game (even if it has less bells and whistles!)

For creators: “if you don’t like it, change it”. For users: “if you don’t like it, get used to it”.

Do you believe that college students today are well-equipped with an understanding of the field of computer science? How does the study of computer science differ from the basic computer skills taught in many schools today?

Generally speaking, I see college students as being increasingly sophisticated in their ability to use computers and gadgets. They certainly possess the skills – they are computer literate. But that is a far cry from possessing the “computational thinking” competencies that are at the heart of computer science. These competencies are certainly lacking.

Computational thinking is all about the problem-solving processes at one’s disposal, including fluency with organizing information, analyzing data, modeling and simplifying complex phenomena, prescribing the necessary steps needed to efficiently figure out a solution to a problem (i.e., coming up with an algorithm), ability to recognize the same computational problem in different settings, etc.

Computational thinking is not only about solving problems, but it is also about our ability to explain seemingly very complicated phenomena by viewing them as computational processes. Looking at biology through a “computational lens” is the real reason we are able to make sense of DNA and gene regulation systems (which we now recognize as programs and biological computers). Looking at our physical world, our financial system, our social networks through a computational lens is equally empowering!

If you check the web page of the Hariri Institute for Computing at BU you will notice that the graphic I use to communicate to visitors the power of computing is that of the “computational lens” (and the insights it reveals).

Teaching “computational thinking” competencies and developing an appreciation of the “computational lens” is what I hope will be the norm in our high schools!

By teaching computer science competencies in high school (and indeed throughout K12 education) and by building on these competencies in college, we would be equipping students not only with the means to creatively express themselves in an increasingly digital society, but also with the capacity to engage effectively and competitively with the world around them.