There is an effort
underway to enhance the current high school
science curriculum in the US. Spearheaded by the US National Science
Foundation (NSF), the intent is to "transform" high school computing
education from one that is focused on application and programming training
to one that opens
up more of the "magic of computing". The idea is that computing
cuts across many different types of activities and jobs, so narrowly
focusing on things like word processing or Java programming may not provide
a good overview of the field to teenagers.
The NSF executive
summary [PDF] of its "Transforming High School Computing" project cites
several statistics that highlight
the current problems with computing education in the US, along with its
plans for addressing them. Essentially, it would like to see three new classes
developed that will benefit students
who are headed in different directions.
Two of the courses would take the place of today's introductory and
advanced placement (AP) computing classes, while an entirely new course
would be developed for students who are headed to college and interested
in a scientific field. But instead of an introductory class that teaches
how to use a keyboard—something that is likely needed by very few
high school students today—word processing, and the like, the new
"Pre-AP" curriculum would "go beyond mere computer literacy to teaching
fluency in the fundamentals of computing and computational thinking, using
an inquiry-based instructional approach and engaging students with
exciting, 21st century applications."
Likewise, the new AP course for potential science majors will
"explore, in more detail and depth, computational concepts introduced
in the "Pre-AP" course, including critical thinking, logic, algorithms,
etc." While the text reads a bit like a marketing brochure (which,
in some sense, it is), filled with phrases like "rigorous and
engaging", it would seem to be a step in the right direction.
Another goal is to train 10,000 new teachers in the new curriculum so that
by 2015 the new courses are being taught in 10,000 schools. These are
fairly ambitious goals and will require a public/private
partnership for funding according to the NSF. There will undoubtedly be
and software companies falling all over themselves to give money and, more
importantly from their perspective, hardware and software to schools in
support of this effort. That's good, as far as it goes, but the NSF and
those working on the project should most certainly consider the role for
free software as part of the "transformation".
It is certainly true that there is far more to computing than learning how
to use Office and Photoshop (or even OpenOffice and GIMP for that matter).
Students will clearly understand computers and computing better if they get
a sense for what computers can and cannot do. That implies access to a
wide variety of different types of applications, not just those that might
be used in an office or programming job, which is something that free
software can provide much more easily, at a much lower price than the
commercial vendors can.
Consider the breadth of applications available for today's Linux
distributions—all installable at the click of a button. Most
certainly many of them are not as polished as their commercial
counterparts, but they are available to explore. Want to try computer
aided design for the birdhouse you are building in wood shop? There's an
app for that.
AutoCAD, even provided for free, seems a bit
like overkill to explore the idea of CAD.
Tracking down the proper computer with the proper
license for the CAD software also seems like it would be
counterproductive. Free software can be installed easily and abandoned
quickly if it does not suit.
Teacher training could also focus on how to find interesting applications,
and to note particularly good ones for specific purposes. It is far more
useful to understand what a spreadsheet can do, how it works, and how it
can help with your homework, than it is to know the specific function names
in Excel, for example. Just as good programmers can switch languages
fairly easily, computer literate people should be able to switch
applications without much difficulty. That is done by understanding the
underlying concepts and then being to able to apply them widely, which is
something that the diversity in free software fosters.
The cost savings of using free software are likely to be quite large, but
the commercial companies will try to reduce that advantage as much as they
can—and take a tax write-off while they are about it. But the
advantages of free software go well beyond the price. For anyone
interested in "how it works", free software offers the ultimate inside
look. From most proprietary software companies, that can't be bought at
For budding programmers, or those that think they may have an interest,
free software provides not only a look at the code, but also a look
at the development culture. Finding a bug in some package may be
frustrating, but a quick look on Google or the project's web site may find
others who have the same
problem and have a patch available to fix it. There is a lot to be learned
(both good and bad) from grabbing a patch from the internet and rebuilding
All of that is not to say that the entire curriculum should be narrowly
focused on free software. There is plenty to be learned from the
proprietary brands. Trying to keep Windows and Macs out of the classroom is
unlikely to work, but is also a bad idea. Diversity is important when
trying to learn about computers, so seeing how different organizations and
projects do things can only help there.
The information available so far is unclear about what tools will be used
in the new classes. One hopes that the NSF, which has sponsored a whole
lot of free software along the way, doesn't fall into the trap of thinking
that Windows and Mac are the only choices. Even if those two do dominate
the computer labs in high schools, there is plenty of free software that
runs atop them. The benefits of free software outlined here will not
surprise many (any) LWN readers, but they may not be obvious to those
outside our communities and that's something worth changing.
to post comments)