Please, Don’t Learn to Code
The Mayor of New York City wrote, some time ago, on his Twitter account that his 2012 New Year’s resolution was to learn to code using Codecademy’s CodeYear which takes you through a journey of learning JavaScript (Later on HTML and CSS) that starts with all the basics.
Personally, I like the idea of Codecademy and Code Year as it will get someone who had wanted to learn some of this to do it, instead of struggling with a book and never learn by doing. It can be hard for people to start learning programming languages or just scripting languages, so this is a great opportunity for them to learn. When you have learned HTML, CSS, Javascript you can easily move on to PHP (this was what I did). In some cases I would recommend C# in ASP.NET, but that depends on the task given. C# in ASP.NET is of course a little trickier to learn compared to PHP and you don’t buy software licenses to develop PHP application, in addition the availability of PHP resources on the web are gigantic, it is every where online. You can, however, really do some neat stuff with ASP.NET with C# and in my opinion security is better using ASP.NET. I still use both languages depending on traffic, libraries, security and speed. As PHP is dynamic and interpreted, C# is static and compiled. I also like Visual Studio as an IDE. I will talk about advantages and disadvantages of PHP and ASP.NET C# at a later time.
Why should the Mayor of New York waste (compared to his profession as a politician) his time on learning how to code? Some people preach programming as an essential skill and that we should be teaching our children, right up there with reading, writing and mathematics. It is clear to me that skills such as reading, writing and at least fundamental high school mathematics are fundamental to performing the job of a politician, but understanding variables, functions, classes, pointers and memoization?
When you approach another person do you tell them you are a programmer? I do not consider myself a programmer. I mean, I am a person who writes code (and bunch of other stuff). The skill of coding is not who I am, it is just one of the many things that meakes me the person I am. Who am I? I don’t know, at least I can not describe it in words.
If you have the idea that everyone can become a software developer. You are totally wrong. Everyone can code. Heck, everyone can even become a programmer. But doing it well no. It takes more to it. Dedication, passion and get interested in programming.
So you want to be a programmer?
- Get interested in programming. And do it because it is fun.
- Program. Learn by doing. “The Most effective learning requires a well-defined task with an appropriate diffuculty level for the particular individual, informative feedback, and opportunities for repetition and corrections of errors” (p. 20-21, Cognition in Practice: Mind, Mathematics, and Culture in Everyday Life)
- Talk with other programmers; read other programs. Much more important than a book.
- “Computer Science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter” Eric Raymond, The New Hacker’s Dictionary
- Work with other programmers, be the best programmer on some projects, be the worst programmer on some.
- Work on projects after other programmers, thus understand a program written by someone else.
- Learn at least a half dozen programming languages.
- Get involved with language standardization. It could be the ANSI C++ committee, or could be deciding if your local coding style will have 2 or 4 space indentation levels. Learn about what other people like in a language.
With that in mind try to teach yourself programming in ten years. Alexander Pope once said: “a little learning, is a dangerous thing.”

