Every so often, someone will ask me for suggestions on learning a specific programming language. Sometimes I recommended that language, sometimes they just know that I'm familiar with it. I often have a couple of resources for them, but I never remember all of them. This is especially true when I spend some time learning a language and either know it well enough that I don't need to refer back to those beginner guides or I move on to something else and forget the language.
Many others have built lists of resources you should use to learn X, and I've even seen some like this repo where they kept a list of links for a large variety of things. I encourage you to search those out as well. This is my list, things that I recommend.
This set of links is MIT licensed. Individual resources linked to from here belong to their respective owners and are licensed as they see fit.
While I do use Windows for work and the occasional project, almost everything else I do is on some form of UNIX-like system. The Sysadmin's Unixersal Translator is an incredibly useful tool for finding the right command to do something on various UNIXes/UNIX-like systems.
In addition to my lists, I've used Added Bytes' cheat sheets for many things over the years.
- Ada
- C/C++
- C#
- Fortran
- Java
- JavaScript
- LaTeX (and TeX)
- Objective-C
- Pascal (incl. Delphi, Object Pascal)
- Perl
- PHP
- Python
- Ruby
- Visual Basic
Where available, I've added a link to the appropriate PLEAC page for each language. PLEAC, or Programming Language Examples Alike Cookbook, follows the Perl Cookbook in a number of other programming languages.