Why you should learn to code
Wed, Feb 27, 2013 at 8:29 AM by Dave Winer.
  • I actually do think people should learn to code, at least a little -- just as you learn a little chemistry, biology and math in school. Learning how to program is imho easier than those things, but then I have a natural ability to program, so what do I know. :-)
  • But I don't like the way people at code.org are pitching it. And I don't like who is doing the pitching, and who isn't. Out of the 83 people they quote, I doubt if many of them have written code recently, and most of them have never done it, and have no idea what they're talking about.
  • If I were encouraging young people to learn to play basketball, at least I would have had the experience of playing a little myself when I was younger, and having watched a lot of it recently. I'm in awe of basketball players. How fast they charge at the basket with such reckless abandon for their own safety. They fall on hard wood at high speeed. That must hurt! But they get right up and play as if nothing happened. But there are plenty of basketball players to talk about basketball. So why aren't there very many programmers who can talk about coding? If I were a young person looking at this, I'd wonder what was up with that. They're telling me what a wonderful career it is. Where are the people who do it, and what do they have to say?
  • A picture named clyde.gifWhich brings me to the second problem I have with the way they pitch it.
  • These people don't themselves know how to do what they want you to do. So what they say makes no sense. It won't make you rich, but it will make them rich. And if you do it, they won't listen to you. And even worse, if you do what they want you to do, you'll be tossed out on the street without any way to earn a living when you turn 35 or 40. Even though you're still a perfectly good programmer.
  • It's a shitty system, and it needs to be fixed. And we have to get these spokespeople who don't know anytihng about what we do to stop speaking for us. To get out of the way. What we need to do, as programmers, is start helping young people become really good at what we do, so they can do it even if there are a lot of carpetbaggers trying to redefine it. (What's a carpetbagger? You should study a little history too!)
  • To be clear, you should learn to code if:
  • 1. You love writing and debugging and refining and documenting and supporting code.
  • 2. You love to see the working result of your labors.
  • 3. It excites you to empower other people (your users and other developers).
  • 4. You have modest financial needs.
  • 5. Don't mind spending a lot of time working by yourself.
  • 6. Don't mind being misunderstood.
  • Primarily you should do it because you love it, because it's fun -- because it's wonderful to create machines with your mind. Hugely empowering. Emotionally gratifying. Software is math-in-motion. It's a miracle of the mind. And if you can do it, really well, there's absolutely nothing like it.
  • I wrote a piece about programmers in 1997. "Successful programmers know how to ask questions, and they know how to ask the right question. You can't go forward until that happens. A programmer is a rigorous scientist determined to coax the truth out of the ones and zeros. There's the beauty."
  • BTW, I also think every student should learn to be a journalist and a lawyer and an accountant too. That way you'll be able to blog with authority. And will know when you're getting screwed. And keep your taxes down like rich people do. :-)