Wednesday, May 13, 2009

The Luddites Have a Point (or Do They?)

David Bradley writes:
What scares me is the pride with which many of the people who claim they don’t understand “computers” brandish their ignorance
One reason for this is people don't think learning technology is a legitimate intellectual activity. Many people envision the problems of computer science to be more complex versions of "how do I install this printer?" They can follow the instructions if they have to, but they'd prefer to just ask their grandchildren.

Which is a shame because the reality is that there's a whole world of ideas out there. Understanding, say, object-oriented programming or the idea behind a relational database is analogous to reading Hamlet or Mill. People don't brag about not having read Hamlet.

But anyone can read Hamlet -- you just pick up the book. On the other hand, how can you learn about object-oriented programming? Well, the wikipedia article is gibberish*, every book is too technical -- I'm out of ideas.

People get more exposure to math and science, but it's taught in a similarly unpleasant and inaccessible way. For example, any high school calculus student can tell you that the integral of x is (x^2/2) because "it's the anti-derivative". None are likely to know why differentiation and integration are inverse operations.

One problem is that to really understand this stuff you have spend a lot of time working out, e.g., what a "real number" is. This is a) is pretty boring, and b) unnecessary if all you need to do is use the equations in physics.

This is a shame though, because like computer science, math and science contain some accessible and compelling ideas. Unlike computer science though, there are a few good popularizations of math and science that require no background. The most prominent example is probably Godel, Escher, Bach, but more straightforward books like The Elegant Universe are pretty good as well.

Takeaways:
  1. Someone should write a good popularization of applied computer science!
  2. Everyone who's good at technology should stop pretending the boring stuff is so fucking interesting! Despite what my 16 year-old self would tell you, building your own computer is not fun. It's a time consuming cycle of experimentation and googling. (and pirating DVDs is a waste of time!).

    So I guess the luddites have a point in that a lot of perceived technological "expertise" is really just familiarity with the boring and arbitrary implementation details that computers unnecessarily expose to us all the time. I.e., it seems like one could reasonably say "I'm not interested in learning to install a hard drive for the same reason I'm not interested in learning to change my oil."

* Object-oriented programming (OOP) is a programming paradigm that uses "objects" and their interactions to design applications and computer programs. Programming techniques may include features such as information hiding, data abstraction, encapsulation, modularity, polymorphism, and inheritance. It was not commonly used in mainstream software application development until the early 1990s. Many modern programming languages now support OOP.

2 comments:

Mulatto Jesus said...

i had a boner until i read this

Beneficent Allah said...

Teach me teach me!

Post a Comment