Also, there is a free online version of the wizard book (which is the nickname for the Structure and Interpretation of Computer Programs based on the cover with the guy in a crazy turban with the lambda symbol in the flash of light next to him).
If you want to jump in directly, my recommendation would be to download a Lisp or Scheme interpreter (like Gauche, for example), fire it up, and then read through the wizard book, typing in all the example code by hand. In my experience, practicing the manual production of code is critical to developing fluency.
Finally, I kind of feel bad about recommending this without a half-warning… Functional programming is beautiful, but depending on where you live and the rest of your educational background, it may be relatively hard to use it to pay the bills and you might be setting yourself up to always be dissatisfied with the tools you actually use day to day. Lisp has a minor reputation for appealing to a certain kind of person who is really smart and technically proficient, but not necessarily the best team player. I’m not sure, but I suspect the rarity of Lisp jobs is related to this.
If you want to earn money from coding, it may be better for you to learn a general programming language like C++, Java, Python, C#, Ruby, or maybe Erlang (which is rare, but has relatively high paying jobs because the coding for it is frequently associated with critical and expensive machinery like telephone networks). SQL is another kind of “code” that isn’t really a full blown programming language, but that can be useful for set processing using a language inspired by predicate logic.
Neat online classes! I didn’t know about those.
Also, there is a free online version of the wizard book (which is the nickname for the Structure and Interpretation of Computer Programs based on the cover with the guy in a crazy turban with the lambda symbol in the flash of light next to him).
If you want to jump in directly, my recommendation would be to download a Lisp or Scheme interpreter (like Gauche, for example), fire it up, and then read through the wizard book, typing in all the example code by hand. In my experience, practicing the manual production of code is critical to developing fluency.
Finally, I kind of feel bad about recommending this without a half-warning… Functional programming is beautiful, but depending on where you live and the rest of your educational background, it may be relatively hard to use it to pay the bills and you might be setting yourself up to always be dissatisfied with the tools you actually use day to day. Lisp has a minor reputation for appealing to a certain kind of person who is really smart and technically proficient, but not necessarily the best team player. I’m not sure, but I suspect the rarity of Lisp jobs is related to this.
If you want to earn money from coding, it may be better for you to learn a general programming language like C++, Java, Python, C#, Ruby, or maybe Erlang (which is rare, but has relatively high paying jobs because the coding for it is frequently associated with critical and expensive machinery like telephone networks). SQL is another kind of “code” that isn’t really a full blown programming language, but that can be useful for set processing using a language inspired by predicate logic.