Students and friends are always asking me, “How do I learn to program?”
I learned by reading books and YouTube (seriously) during my commute on the train every day in and out of NYC. Well now you have no excuse for not learning. Here are 24 free eBooks (I actually have a few of these, like What is HTML5?).
My peer in DC, Shahed Chowdhurri, extracted all of the links, so you can find them indivudally, below:
1. C: http://publications.gbdirect.co.uk/c_book/
2. C++: http://mindview.net/Books/TICPP/ThinkingInCPP2e.html
3. C#: http://www.csharpcourse.com/
4. PHP: http://www.techotopia.com/index.php/PHP_Essentials
5. Perl: http://www.perl.org/books/beginning-perl/
6. Python: http://www.greenteapress.com/thinkpython/thinkpython.html
7. HTML5: http://shop.oreilly.com/product/0636920021049.do
8. Java: http://introcs.cs.princeton.edu/java/home/
10. Lua: http://www.lua.org/pil/contents.html
11. Pascal: http://www.marcocantu.com/epascal/
12. Ruby: http://ruby.learncodethehardway.org/
13. CoffeeScript: http://autotelicum.github.com/Smooth-CoffeeScript/
14. Scala: http://chimera.labs.oreilly.com/…/1234000001798/index.html
15. Haskell: http://book.realworldhaskell.org/
16. Fotran: http://www.fortranplus.co.uk/resources/f77book.pdf
17. Forth: http://home.iae.nl/users/mhx/sf.html
18. Erlang: http://learnyousomeerlang.com/
19. R: http://cran.r-project.org/doc/manuals/R-intro.pdf
20. Lisp: http://www.cs.cmu.edu/~dst/LispBook/
21. Ada: http://www.adaic.org/…/add…/docs/craft/html/contents.htm
22. Assembly: http://programminggroundup.blogspot.co.uk/
23. Prolog: http://www.learnprolognow.org/
24. Scheme: http://www.scheme.com/tspl4/
A while back I wrote about where would I get starrted now, knowing what I do today.
What would I focus on now?
Looking back, I’m glad that I took that route. I’ve learned other languages along the way (C++ for Unreal Engine 4, UnrealScript for UDK), but I still come back to the same few over and over: HTML5 / JS and C#.
If I were a student or young person looking to get into the wworkforce I would focus on:
- The cloud (Azure)
C++ is not to be overlooked, either: It is high peformance, you learn the ins-and-outs of memory management, and it works on most platforms.
The world is moving towards the web. With HTML5 you can target nearly any platform, and I’ve given many talks on this. Start there.-----------------------