Your email is not valid
Recipient's email is not valid
Submit Close

Your email has been sent.

Click here to send another

Cracking the Computer Code

Few people know the programming languages like Java and Ruby that run the modern world. The People of the Book should fight against this illiteracy.

Print Email
(Photoillustration Tablet Magazine; original photo Shutterstock.)

Next month, more than 1.5 million American college students will graduate with bachelor degrees. Nearly all of them will be illiterate. In their offices and in their apartments, they will stare at the key texts that guide their lives in mute horror, unable to understand what they mean. They will come to depend on a small and mighty class of priests to interpret the secret language for them. No matter how successful they become or how many graduate degrees they accumulate, they’ll remain forever ignorant and powerless.

If you think the paragraph above is needlessly alarmist or somehow allegorical, you haven’t been paying attention. Whatever professional path the members of the class of 2012 may take—medicine or marketing or manufacturing—most will lack one area of knowledge essential to all facets of life: the language of machines.

Everything around us, from the phones in our pockets and the cars we drive to the terminals that monitor the fluctuations of our fortunes, is governed by computer systems that run on lines of code. And yet, “[s]o few Americans know how to program,” media theorist Douglas Rushkoff wrote earlier this year, “that firms like Google and Facebook are actually buying whole companies just for their code-literate employees, in what are known as ‘talent acquisitions.’ ” Rushkoff’s solution—and the title of his new and essential book—is simple. It’s program or be programmed; learn how to use these awesome new tools or be used by them.

As a professor of new media, I habitually present my students with a thought experiment: Try to imagine a different Facebook. The social network being their chief means of communications—and, for most, an object of obsession—you’d think the question would be easy to answer. You’d think these young and bright men and women would have a plethora of ideas about how to make Facebook a more intuitive, enjoyable, and useful platform. They very rarely do, and for one simple reason: For all the hours they spend on Facebook, they don’t really understand how it works. Unable to read or write code, all they can do is interact with it in the precise, narrow way its developers had intended, stripped of agency, easy to fool or manipulate.

It would be folly, of course, to expect everyone to become a computer scientist capable of high-level programming and technological innovation. But it is just as preposterous to hand our children a tool without any instruction of how it works and what it can do. If they spoke the language with some proficiency, they could find easy and elegant ways to counteract the dazzling violations of personal privacy that are more and more prevalent online, say, not to mention create the products and services that might catapult them and the economy at large into prosperity. Instead, they’re digital Blanche DuBoises, always depending on the kindness of strangers.

This plight of coding cluelessness is an American challenge—think of all the jobs being snatched up by Chinese and Indian kids who are more digitally fluent—but it is also, in a way, a Jewish one. The People of the Book is more than a moniker; it suggests a certain kind of sensibility that allowed this small nation to survive and thrive. Put simply, the Jewish mentality has always been that of the open source: Rather than rely on a small class of clerics to parse the holy writ, Judaism invited everyone to look at its central code, argue about its meaning, and interpret, sometimes even rewrite it, at will. We don’t just read the Talmud; we use it, we understand its logic and its functions and apply them to aspects of our lives that the ancient texts had no way of foreseeing. It’s a text, but also a tool, and it requires a learning curve.

Around us, the digital landscape, once wide open and consisting mainly of web-based software, is shifting, relying more heavily on apps, which are closed, single-purpose systems. An environment that was once largely inviting to hackers, modifiers, and tinkerers is gradually fencing out all but tech’s illuminati. The Internet, it seems, is following radio’s trajectory, from a domain of enthusiastic amateurs to an industry rigidly controlled by a small number of companies seeking profit and shunning innovation. We all know how that worked for radio, an industry that lost its dominance as soon as the next big thing appeared; we all have to make sure the Internet takes a different path.

What to do? Thanks to Zach Sims and Ryan Bubinski, two maddeningly young entrepreneurs, the question is easier than ever to answer. Last August, the two started Codecademy, a web-based, interactive programming tutorial. Less than three months later, they already raised the spirits of more than 500,000 users, not to mention $2.5 million from one of the more venerable venture capital firms in the business. It’s easy to understand why: Codecademy’s tutorials are free, and they’re great fun. The lessons are short and easy to follow, and each completed section earns you a badge. For hard-core computer geeks, this may be silly stuff; for college kids, or small business owners, or would-be entrepreneurs, or New York mayor Michael Bloomberg, who recently signed up, it’s a stellar introduction into a world that seems much, much harder than it actually is.

Let’s not waste another minute. Judaism’s old motto, tze ulmad—go forth and learn—tells us just what to do. We’ve done pretty well mastering the book; we must now do the same with our keyboards.

***

Like this article? Sign up for our Daily Digest to get Tablet Magazine’s new content in your inbox each morning.

Print Email

Supportive of the initiative, but their name is Codecademy and not Codeacademy/Code Academy. I am a co-founder of Code Academy (http://codeacademy.org) in Chicago, and we have created a physical program that teaches beginners how to build web applications. If you could correct your post that would be great. Thanks!

liel_leibovitz says:

Thanks, Mike, and my apologies. Spelling corrected!

Harlan Cohen says:

I have been programming more than thirty years and have mixed feelings about this article. A course in logic might do some people as much good as learning a programming language. I was taught my first computer language in a Mathematics Lab (ALGOL, before there was a SAS). Those programs were lame in terms of solving any every day problem, but the problems did introduce the concepts.

If that is what Codecademy is doing, more power to them.

Truthfully, I found Visual Basic on my own much easier to learn than Java in a class twice a week. Given the roles I assume lately using databases, learning a couple brands of SQL is probably the best first language to learn.

I think the Indian and Chinese influences result more from relative population, more advanced communications,  and employment economics (I include H1B in that). Certainly Eastern Europeans had their day before the Far East. Before that, the best machines were built in the Western hemisphere and the programmers residing in the West had the advantage.

I’ve been programming professionally since 1979, so permit me to present an analogy.  To drive an automobile, you have to know what the controls do.  You don’t need to understand how the engine works (except, perhaps, superficially), and you certainly are not required to know how to design an engine.  The former takes a few months; the latter takes a college education in mechanical engineering.

Programming is kind of like that.  At its base is logical thinking, knowledge of which I think benefits everyone.  Expressing that thinking in a computer language is at the heart of what I do, but it’s actually one of the last steps.  For a software engineer, deep understanding of a problem, its possible solutions, and how they interact with other parts of a system (including other software and the software’s human users) is really where most of the effort lies.  Writing code that’s efficient, as well as logically correct, involves choices that require college-level computer science expertise.  It may be easy to create a program to handle personnel data for ten employees, but unless you understand the implications when the company grows to 100 employees, your program may run 100 times slower (or even 10,000 times slower!).

Anyone capable of logical thought (what portion of Americans?  but I digress!)  can learn to write simple programs, and gain a basic understanding of the process.  But that won’t turn them into programmers.  Programming is a discipline requiring proficiency, and it is an art requiring love.  You really have to love programming to be any good at it.

That’s why God invented nerds.

I’d also like to take issue with this statement:

“Around us, the digital landscape, once wide open and consisting mainly of web-based software, is shifting, relying more heavily on apps, which are closed, single-purpose systems. An environment that was once largely inviting to hackers, modifiers, and tinkerers is gradually fencing out all but tech’s illuminati.”

This is just nonsense.  An ‘app’, or application, is simply a solution to a problem.  Web apps are just programs, like any other.  Like all others, they are written by programmers.  Many are written by young entrepreneurs.  

Remember that the Internet, for the layman, consisted of nothing but email until around 1995.  Everything else in the ‘digital landscape’ was software that resided on one’s own computer.

With the gazillions of software frameworks available now (who can keep track of them?  not I!) it would seem to me that the opportunity for innovation increases every day.

What one can accomplish on the Web these days is simply orders of magnitude greater than it was twenty, or even ten years ago.  Innovation is a given for the Web, and no one can predict what it will look like ten years hence.

(Finally, a nit:  ”illuminati”, with its antisemitic connotations, in a Jewish publication?!?  Please!  How about “cognoscenti”, or the neologism “digerati”.)

Here’s where the car analogy fails.  Cars don’t run your bank account, or manage your personal information.  And they aren’t storing more and more of that information in a cloud.  We wouldn’t  argue that kids shouldn’t learn math because they won’t all become mathematicians, or english because they won’t all become writers.  We accept that these are core competencies needed to function in this society.  So is computational thinking.   This is being recognized in the U.K. , where the minister of education in January a radical reformation of IT to include the instruction of programming to start as early as 6th grade.  North America is just a few steps behind.    

About a month ago I started a activist/educational website for parents who want to start learning to code with their kids.  Anyone who wants to continue this conversation is more than welcome to visit: familycoding dot com.

2000

Your comment may be no longer than 2,000 characters, approximately 400 words. HTML tags are not permitted, nor are more than two URLs per comment. We reserve the right to delete inappropriate comments.

Thank You!

Thank you for subscribing to the Tablet Magazine Daily Digest.
Please tell us about you.

Cracking the Computer Code

Few people know the programming languages like Java and Ruby that run the modern world. The People of the Book should fight against this illiteracy.

More on Tablet:

New Report Shows Britain Not Immune To Anti-Semitism

By Liam Hoare — Faring better than Europe, but with clouds on the horizon