I’ve had a multifaceted career in computing — a term that I note is different from the discipline commonly known as computer science. I began as a software developer/engineer, working in the areas of printing/publishing and telecommunications equipment. After completing my doctoral studies and “making the transition” as a postdoctoral scientist, my focus shifted to a hybrid mix of research, development, and…education. An esteemed colleague of mine posits that everything we do in our research should, in one way or another, inform the education — and vice versa. Based on my rather nonlinear career, it’s safe to say that I agree with him by having tried to do it all (sometimes successfully).
Over the past few years, I’ve been thinking more deeply about this intersection, especially as it plays out at comprehensive liberal arts and sciences universities such as the one at which I teach. I’ve always wondered why computing is a relatively small major at most universities, despite the enormous opportunities that await most of our graduates. In a recent discussion with another parent at a kids’ party, I met a man whose story gave me some insights. He said he’d always had an interest in computing but felt that he couldn’t keep up with the mathematics (often associated with the discipline of computer science). He was now in a senior role directing IT and software development initiatives and wishing he had taken more computer science courses. A liberal arts education let him broadly explore ideas, like many university students, and leave emphasis on professional development very much a secondary consideration.
In my 24 years teaching, I’ve met hundreds of students who reminded me of that parent, although many were his diametric opposite — starting in computer science and ending somewhere else. Based on this experience, I believe we need to pay a lot more attention to the education of those looking to enter our profession, regardless of how they got there. As they seek employment, they will increasingly be competing with those, like the parent I met, who never got computer science training but who are so well-trained generally that they can pick it up, themselves, perhaps through internships and massively open online courses (MOOCs). Isabel Beichl, my colleague and predecessor as editor in chief of Computing in Science & Engineering magazine, wrote about many of the revolutionaries in computing who didn’t have PhD-level CS training. Indeed, she discussed how many didn’t have CS degrees at all:
“This observation doesn’t mean that time in academia is unnecessary, but rather that education can perhaps be organized differently. And, judging from the biographies found in wikipedia, each of these gentlemen had superb childhood educations. Humans really do learn a lot of the most important stuff quite early in life.”
And this brings me back to education and the role that computing doesn’t currently have in it. Computing is essentially a new form of literacy and fundamental knowledge, so why aren’t we exposing students to it earlier in life? As members of this profession, do we think it’s important to influence policy and make that happen? During the recent, well-published teacher’s strike in Chicago, Illinois (I’ll steer clear of the strike-related politics), Mayor Rahm Emanual mentioned that “children in Estonia are learning programming in first grade” and went on to ponder why the US isn’t doing that as well. It really had little to do with the issue at hand, but remains a valid question — one that I hope political leaders and education policy makers everywhere will keep asking. The future of our profession depends on educating a next generation at scale(meaning, worldwide), and kids shouldn’t be waiting until college to get their first taste of computing.
The Case for Breadth
Everything I’ve said thus far has absolutely nothing — though possibly everything — to do with this month’s Computing Now theme. Over the past few years, I’ve been closely involved with efforts in the US to broaden participation in computing — a concept that emerged from the National Science Foundation program of the same name. BPC is now part of the NSF’s Computing Education for the 21st Century (CE21) program. In other words, at least at the NSF, everyone knows that computing education is a key to the long-term vitality of computing and the discipline of computer science. To borrow a phrase from my own university, computing must be viewed as part of “educating the whole person” in much the same manner as other foundational disciplines such as language, literature, social studies, history, mathematics, physical education, art, music, and science (focusing on what I see on my childrens’ report cards). I’d sure like to see computer science on that list, but in the meantime I’m already in the process of teaching it to them at home using Lego Mindstorms and other languages and systems that target a younger audience.
My choice of articles for this month’s theme is aimed not at any particular aspect of education but rather focuses on articles the Computer Society published in 2012 (and a couple of gems from 2011) that address computing education more broadly. I was delighted to see that we’re actively publishing articles that are important to computing education’s future (sometimes associated more with ACM and SIG CSE).
We start with a couple of EIC messages from CiSE. I’m proud to say that Isabel Beichl and I have both penned columns on the subject of education. As I mentioned, her “Of Art and Education” examines current figures in computing and their lack of formal training in CS per se.
In “Accelerating Learning with Distance Education and Open Courseware,” I wrote about the disruptive trend of massively open online courses (MOOCs) and how they could be part of an overall reinvention of education that better serves our students, who often need more lab time with their instructors.
The next two articles helped reaffirm my belief that computer science remains a living curriculum. Gerd Kortuem and his colleagues’ “Educating the Internet-of-Things Generation” discusses the efforts of Open University to redesign its introductory computer science curriculum to focus on the Internet of Things.
“Integrating Historical Security Jewels in Information Assurance Education,” by Jefferey McDonald and Todd Andel, discusses the growing number of academic programs in the US that are focused on information assurance.
You could argue that the “Internet of things” and “information assurance” are just new names for “distributed systems” and “security” (where there are plenty of courses), but these articles illustrate the need for computing to take into account current developments and make them available to students as academic programs that go beyond what might be covered (or even required) in a traditional computer science degree.
Judy Kay’s “AI and Education: Grand Challenges” presents a great overview of the classical and emerging architectures for incorporating artificial intelligence into education. Without a doubt, this area continues to grow in importance.
Another piece that captured my attention was “The Australian Educational Computer that Never Was,” which looks at the Australian government’s (ultimately unsuccessful) efforts to build a computer for educational purposes before PCs and Macintoshes appeared. Having taught computing history at my own university, I’ve long felt we could do a better job teaching students more historical and cultural context (humanities and sciences are absolutely great at this!) before jumping head first into programming. Lest I digress, an important aspect of this article is that history is repeating itself. The Indian government has recently commissioned the develoment of a low-cost computer, the Aakash tablet, to link students to a national e-learning/education program. This time, of course, the technology is built around the open source Android project. As I understand it, efforts are under way to make it possible to program in various languages on this platform (supposedly, it already supports Python).
The next article is an interview with Peter J. Denning, known for his work to “codify the principles of computing” and whose efforts influenced many of us who did our dissertation research in computer systems. (Also worth watching this awesome Computing History Museum distinguished lecture featuring Denning, himself.) Thinking of what I’m doing in this editor’s introduction actually reminds me of Denning’s work to broaden our view of computing to recognize that it’s more than algorithms and programming. Rethinking how we educate computer scientists should start from Denning’s “great principles” framework.
Without a doubt, substantial interest has lately focused on the disruptive notion of a complete revitalization — or rethinking — of computing education. This idea plays out in Salman Khan’s latest book, The One World School House: Education Reimagined (Twelve, 2012), as he envisions a campus in Silicon Valley (and places like it) at which students learn in a self-paced enviroment similar to the Khan Academy. Most of the “core” subjects (art, literature, and so on) take the form of ungraded seminars as students spend their days working on internships and projects with mentors whose ranks include practicing professionals (that is, people who are successful at building things that matter) as well as professors.
Sure enough, we’re starting to see such disruptive ideas in our publications, as well. For example, Ann Sobel’s “Should Everyone Go to College?” suggests that whether to get a college education is not a clear-cut choice. Potential students must consider factors such as ability, interest, potential for employment, and cost when making this decision. Although a computer science degree offers a likely path to employment, the cost of getting there remains an issue. Even so, preparation is key and, as I mentioned earlier, alternate pathways exist for getting there via other traditional disciplines.
I mean no slight by not including other excellent articles that I discovered along the way in gathering this sampling of education-related articles that have appeared in our publications over the past year. But I do hope that this collection shows convincingly that education is very much on our minds here at the Computer Society — at least a part of most everything we do. (We even have a new Special Technical Community dedicated to education.) I’d like to see us explore some of these topics in greater detail in the future. Please don’t hesitate to contact me at firstname.lastname@example.org or on Google+ with your suggestions.
George K. Thiruvathukal is a full professor in the Computer Science Department at Loyola University, Chicago, where he also serves as codirector for the Center for Textual Studies and Digital Humanities. He is editor in chief of Computing in Science and Engineering magazine and an associate editor in chief for Computing Now. Thiruvathukal and his colleagues have been funded by the US National Science Foundation as part of the Broadening Participation in Computing program. His research interests span multiple areas of computer science and interactions with science and the humanities. With Steve E. Jones, he is also coauthor of a recent book, called Codename Revolution: The Nintendo Wii Platform (MIT Press). He will also be co-leading (with Konstantin Läufer and Mark Lewis) a tutorial, called “Using Scala Strategically Across the Undergraduate Curriculum,” at the SIG CSE 2013 conference.