Can I do this? Am I within HN etiquette to paste my post in another story? original here: <a href="http://news.ycombinator.com/item?id=3976688" rel="nofollow">http://news.ycombinator.com/item?id=3976688</a><p>=====<p>Please learn to code. Also, learn to change your oil and maybe your spark plugs; learn to cook; learn to replace buttons on your shirts; learn to fix your leaky sink and plunge your toilet; learn to plant flowers and tomatoes; milk a cow; shovel some dirt; experience driving a tractor, both the kind in a field and the kind that pull tons of cargo down the expressway ...<p>Get out of your comfort zone, live for a minute in someone else's shoes and maybe, just maybe, you'll learn to respect the work that other people do and be willing to pay them for it - they deserve to be paid for their Work. Yes, sitting behind a desk all day bringing brainpower to bear on saving the company money is Work. Driving 11 hours a day is Work. Grilling that steak and walking it to your table is Work. It's all Work because it takes us away from our families, because it's so well regulated that it adds stress, because we'd rather be doing other things but the bills have to be paid (i.e. we have to pay other people for the Work they do keeping our lights on, our Internet connected and our water reasonably clean.)<p>So, please, learn to program. Then, when you need software built, you'll know why you hired me for "so much" and how much trouble I'm saving you.
This point seems to make the same assumption I've been seeing across HN that programming is somehow more _special_ than other fields/creative outlets. All of his points are the same for people who lack a deep understanding of physics, which quite frankly is far more relevant to our every day world.<p>I don't think you should ever discourage someone who _wants_ to program, I just don't think it's knowledge that everyone needs. Getting a general understanding of the way computers work (high level) would be far more useful to the vast majority of people.
This author makes the point that general problem solving and programming are, in fact, the same thing, and you can't have one without the other.[1] I call foul on this: I bet programmers think in terms of loops, but because that's how they think. There are other ways to solve problems as well.<p>And many of the problems the author outlines really aren't problems. My Android app crashes, or my form doesn't submit. Yes, there's code underlying those problems, but SO WHAT. Why should a layman care about memory management?<p>Anyway, I find this a supremely short-sighted argument. But I think the crux of this whole series of discussions is around one question: Where on the spectrum of "things everyone should know" does "programming" fall?<p>We all agree that there are hundreds, if not thousands, of things about programming on that list. Reading, arithmetic, critical thinking, civil rights, personal finance, health, history, etc. And in a world where many people are illiterate, in debt, oppressed, and so forth, shouldn't we focus on those problems first?<p>[1] "If you don't know how to program, you filter out all parts of the world that involve programming. You miss the loops and divide-and-conquers of everyday life."
I actually like Atwood's example program:<p>10 PRINT "I AM THE MAYOR"<p>20 GOTO 10<p>If everybody on the planet could write and understand that program, the average level understanding of computer science on the planet would have increased exponentially.
How does that old saying go, 'If you have to ask, then the answer is probably no'. It's shocking the number of people that show up on this site and ask, 'Should I quit my job and create a startup?'. Probably not. Should you drop out of college? Don't. Should you learn to code? Not really.<p>The amount of learning resources we have in this day and age due to the Internet makes the question 'Should I learn (blank)' egregious. If curiosity hasn't compelled you to look up an intro tutorial/book, then just forget about it. The first question you ask on the internet should not be 'Should I learn to code?', it should be 'Why won't my hello-world program run?'.<p><a href="http://en.wikipedia.org/wiki/Analysis_paralysis" rel="nofollow">http://en.wikipedia.org/wiki/Analysis_paralysis</a>
I wanted to add this to my original post because I think it sums up my point nicely:<p>"That which interests us in a given situation, that which we are likely to grasp in it first, is the side by which it can
respond to a tendency or a need. But a need goes straight to the resemblance or quality; it cares little for individual
differences. To this discernment of the useful we may surmise that the perception of animals is, in most cases,
confined."
- Bergson from Matter and Memory<p>Constraints on what we broadly know and understand are constraints on our contact and perception of the world. We can't live in a digital world and be blind to the recursions and graphs in the furniture.
I would venture to guess that there are at least a couple dozen skills which would do the average person more good than learning to code: playing a musical instrument, learning to do order-of-magnitude estimations, operate a few power tools, basic carpentry, basic calculus, et so many cetera.<p>Hell, just learning to <i>spell</i> better than the average HNer.
He wants to know if there are Knuth posters. There are. See this one: <a href="http://laager.firedrake.org/wardrobe/nils_knuth.jpg" rel="nofollow">http://laager.firedrake.org/wardrobe/nils_knuth.jpg</a>
> If you don't know how to program, you filter out all parts of the world that involve programming. You miss the loops and divide-and-conquers of everyday life.<p>decomposing large problems into smaller ones is math. we all took 10 years of math in high school and college.<p>a broad education is good. coding, in particular, may or may not be relevant, but certainly more and more schools include a year or two of programming in high school or college. that's probably plenty. no need to get all worked up about this.
Depressing. Another HN attention grab. The original article was interesting. This one's just words for the sake of it. The most depressing part is that I've now validated it with a comment.