a companion discussion area for blog.codinghorror.com

Please Don't Learn to Code


Bloomberg might not have been the best example to prove your point. He has a degree in Electrical Engineering from Johns Hopkins and when he started his company he was spending weekends soldering together terminals to sell.


While I agree that Mr. Bloomberg shouldn’t be spending all his working hours coding, I strongly disagree that he shouldn’t learn to code a little. I don’t think the other benefits of coding (such as critical thinking) that others are mentioning are important in this case. Young learning might pickup critical thinking from learning to code but you’ve already established your thought process by the time you’ve becoming the mayor of one of the largest cities in the world.

All politicians should learn to basic coding (and computer) concepts (what is an API, what are different languages, compiled vs interpreted). If they don’t, how can they be expected to pass legislation that governs MY profession? Just look at the guys like Ted “tube” Stevens. Do you really want your activities as a programmer to be governed by people that think computers are magic boxes? Programming is just to intangible, you can’t expect someone to have a clue about it without direct experience. If someone can’t explain the difference between the Internet and Internet Explorer should they be ruling on Net Neutrality?


I’m a strong believer that learning a new language makes you better at the others, but I’m not a “learn to code” advocate, a foreign language or even music are equally beneficial.


Jeff, I fully disagree with your post. It assumes that ‘learning to code’ implies applying coding skills to a career. What if he wants to have a new hobby or broaden his thinking?

One should never broadly say ‘don’t learn to X’ to some useful activity. This is the same kind of thinking that brings on fear, dark ages, and lack of innovation.

BOC’s cooking analogy nailed what I’m saying.


Coding -inherently- creates more problems than it solves, and I think you end up acknowledging this on your own post. Computers were created because they are amazing, even though the world they make possible is messier (in an amazing way). This picture of the programmer as a “professional problem-solver” is a facade you (we) need to hold on to, living in a world where people have no idea of what a computer really is, even after witnessing almost 70 years of programming, because they never had the chance to learn how to code.


Aside from the point that’s been made here ad nauseum about learning to think or how to solve problems (all things I’m sure the exceedingly successful Mayor has learned by now through other means) there’s another fallacy in your argument:

That the man must spend every waking minute of his life devoted to his job with no room for entertainment or personal fulfillment. Perhaps he just thinks it’s cool.


I totally agree! It doesn’t make sense for EVERYONE to learn code. BUT it does make sense for professionals that work with programmers to know the more than just the basics. That way they don’t get lost in the conversation.


I wouldn’t want my mayor spending huge amounts of time trying to solve the n-queens problem in Java. Just like I wouldn’t want the mayor ignoring other duties to write a critique of the collected works of Frederick Douglas. But I would want the mayor to at least have heard of Frederick Douglas, to be able to have an informed conversation on the matter. Same with Java.


Actually I have encouraged others to learn programming, atleast a little bit. I’ve found that knowing a bit of JS/jQuery can go a long way if you know how to use Chrome Inspector–I’ve managed to automate a lot of stuff. Ditto with Excel+VB.

While it doesn’t make sense to “learn it just since you can” or whatever, people who have the capability should certainly learn enough to make life easy.

That being said, I do agree with most of the points on this post, just not with the view that non-programmers learning to code is always bad.


learning to code != becoming a better analytical thinker

And, whatever the skills that coding conveys, there are probably far easier and more efficient ways to attain them. It’s far more important if people spend their time learning general computer literacy.

Also, having people learn how to code just so they can deal with us professional coders better – while personally compelling – isn’t a good enough reason either and I question whether toying with some JavaScript really provides enough insight in what we do for a living.


In school I learned how to work with wood, metal, how to cook and sow.
Just because I was exposed to these skills does not mean that they would be a life defining talents.
later, in my first appartment I learned electrucity and plumbing. Does this help me in my job? heck no! Does it help me as a PERSON, HELL YES!

Should everyone be a programmer? Of coarse not! Should everyone get a glimpse of what it is? Perhaps a little fortran or pascal? For sure. If nothing else, just to aquire a sense of LOGIC which is very rare today.

Coding is plumbing, both make sure that all that is supposed to flow… flows.

So yes, woodshop, metal, cooking, sewing, coding, plumbing… should all be mandatory from grade 8 to 10.


So we complain about politicians passing stupid technology laws, and as soon as a politicians says he wants to learn something about the tech, a prominent programmer tells him “don’t bother?”

If you don’t know how to code, it probably seems perfectly reasonable to have a computer that you can’t program yourself, with everything locked down. If that’s the future you want, then sure, tell politicians to leave the coding to the professionals.

If you can code, you start to see the computer as a machine that can do anything you want, instead of just the things some app store makes available to you. That freedom is addictive. You start demanding it.

Cory Doctorow’s fears about the end of general computing will come true unless lots of people get addicted to that freedom. http://boingboing.net/2012/01/10/lockdown.html


I agree with everything you said but I think you got worked up over nothing.

Bloomberg is a businessman not a coder. This was obvious twitter spam. I hear he makes $14.99 per tweet.


I have to agree with Kiddushguy… regardless of your belief of the old person/politician stereotype of being technically clueless, Mr. Bloomberg knows his stuff, not just heading a tech startup but being hands on with development.

Though I can’t disagree with you trying to thwart others trying to learn code–that would just dilute our value as being knowledgeable developers, right? So I guess I’ll get mad too. Rabble rabble rabble!


Comparing plumbing to programming is a terrible analogy. 10-20 years out from now, what job market will exponentially grow and have a lack of people to fill the positions? (My bet is on programmers.)


It’s funny how quickly people point out the benefits of programming for kids. I wonder how many of these people even have kids?

I have kids, two of em. Yes, I believe math and science is incredibly important. But I also believe in art and music as well. I would rather my kids appreciate a good music and art before learning to code java. If my kids are interested in sitting in front of a computer screen on hours on end to make the next whatever - that’s fantastic! But I don’t really see a logic in saying that it’s a great foundation for science/math.


Great post.

For the posters who say everyone should learn to code so they know how the technology works around them, I’d say: there are many other ways, including a classical liberal arts education, to learn skills like problem solving, logic, and critical thinking. Well-designed software shouldn’t require a user to “know code a little bit” to understand it, it should help the user solve a problem. If a user had to know code to know what’s going on, there is something wrong with the software.


Your worst article ever. Where did he say he wants to learn coding for his job - why can’t someone learn to code (or play guitar, or plumbing, or anything else) just because they want to learn?


My favorite part of this was the ad at the bottom:

[advertisement] How are you showing off your awesome? Create a Stack Overflow Careers profile and show off all of your hard work from Stack Overflow, Github, and virtually every other coding site. Who knows, you might even get recruited for a great new position!


I find it funny that everyone is up in arms about the plumbing analogy arguing that not everyone needs to learn about plumbing. I had the exact opposite reaction, EVERYONE should learn the basics of plumbing. Many of us own our own homes, borrowing hundreds of thousands of dollars to do so, yet we don’t know anything about the internals of the house we bought. That’s just nuts.