5 ms·
Responding to the article's first two paragraphs: I'm about to state a controversial opinion, in the sense that I can't verify it formally. But through my work,
by GuiA 13y ago
Responding to the article's first two paragraphs: I'm about to state a controversial opinion, in the sense that I can't verify it formally. But through my work, volunteering and social interactions, I am slowly believing in it more and more (and I'd love to hear counter-arguments to it).
I think the reason why the average citizen has no idea of what programming entails, by contrast to a doctor or a lawyer or a fireman etc., is that programming mainly involves abstract reasoning to a level which most adult people simply can't grasp. Not because of their intellectual capacities, but because it's never been properly fostered or developed through their education.
A fireman puts out fires and assists in emergencies, a teacher teaches a classroom of students, a salesman tries to sell whatever he's selling - all those professions have a fairly obvious mapping to the outcomes they produce.
But programmers are much harder to intuit: on one end of the chain you have guys wearing tee shirts and flip flops sitting in front of their computer all day wearing headphones; on the other end you get websites and iPhone apps and GPS software (and those are only the things with which the average citizen is familiar). Understanding the link between the workers and the outcomes they produce requires some familiarity with the symbolic manipulation that's involved. Given this, it's fairly understandable why if one weren't familiar with this process, it'd seem reasonable that a computer programmer could just as easily stop nuclear terrorists or put a curse on their enemies with 3 keystrokes.
Abstract and logical reasoning are crucially missing in the modern education we give to our kids (witness the way math is now taught in the US, in ways that make mathematics become some kind of weird automatisms, stripping them away from everything that makes mathematics, mathematics). Repeat this over years and years, permeate the culture with it, and you get citizens who not only don't get this entire world of symbolic reasoning, but also for whom bridging that gap has become near impossible.
I've actually gotten in great conversations with the non-scientific type at house parties, conveying basic computing and logical reasoning concepts. I once met a girl who was a textiles worker - we got in a great conversation about Jacquard looms, which she had studied in college - and from there I was able to get her to play with the ideas that lead to computation and all that fun stuff.
What would be cool is a TV show which would do to computing what Cosmos did/does to science (I have non-scientific friends who deeply resonated with the new Cosmos and loved it, and the ideas it presented, pushing them to seek more). I wonder who we should pick for our Carl Sagan/Neil deGrasse Tyson.
- chadgeidel 13y agoI haven't finished it yet, but this video starts out amazingly. https://www.youtube.com/watch?v=EKWGGDXe5MA https://www.youtube.com/watch?v=EKWGGDXe5MA Of course, Feynman was an amazing "explainer" of complex things. I can't think of a modern analog. I'm hoping other commenters will chime in and prove me wrong.
- mwcampbell 13y agoSo how do we programmers acquire the abstract reasoning skills that you say most people don't have? It came naturally to me; I started programming when I was 8 years old (in BASIC on an Apple II), and I don't think there was anything exceptional about my education up to that point.
- GuiA 13y agoThrough practice and repetition, like every other skill. BASIC certainly didn't come "naturally" to you - I doubt you were born with an innate notion of for loops, variables and methods. Rather, you played with it, put it together, you enjoyed it so you kept at it, and you became better over the months and years. It wouldn't have been any different if the skill had been playing an instrument, drawing, writing short stories, etc. - especially when you're 8. There's nothing special about the skills involved with programming themselves - it's just that they're hard to develop outside of mathematics/programming, and schools aren't that preoccupied with conveying them, so in the end very few people get to develop them from a young age (and those who do tend to all fall in similar buckets: upper middle class with enough money to own a computer, initiated by a programmer parent or relative, etc).
- dpeck 13y agoI think getting exposed to things early is a big part of it. Young minds are very malleable. Of course you're not able to understand things completely at a young age (or any age), but those things you can understand and continue to be exposed to become very ingrained in your mental processes and how you understand the world.
- scobar 13y ago