I just found this 2013 article about two of my favorite things, Emacs and Ruby, on the fabulously opinionated ergoemacs.org site. When Yukihiro Matsumoto created Ruby in 1993, he was already a confirmed Emacs user and Emacs Lisp hacker. Matz explains in his 2012 LibrePlanet Conference presentation (slideshow) that his knowledge of the Emacs source code influenced his design of Ruby’s core features. Checkout the links below to get the whole story.
Programming Ruby, The Pragmatic Programmer’s Guide, First Edition (free) is one of my favorite Ruby learning books. Paired with Peter Cooper’s Beginning Ruby: From Novice to Professional, it’s a great resource for learning Ruby.
One thing missing from the online version of the book are the some of the figures that show how Ruby’s classes and meta classes work. Luckily I found these images online a few years ago. The image names are named according to their chapters. Enjoy. 🙂
Here’s the list of shell programming resources I recommend to my students.
Basic skills for Unix newbies
These tutorials cover the basic skills you need to perform basic tasks on Unix systems. Since 99% of all web sites are deployed on Unix/Linux, you really do need to know this stuff.
- Command Line Crash Course This tutorial stands above the others because it provide lots of examples and exercises. Best of all, it’s honest, and comes with a full blast of Zed Shaw.
- UNIX Tutorial for Beginners
- Learning the Shell
- Unix for Mac OS X Users
Once you learn basic Shell skills, you’ll want to learn about Shell programming.
- Shell Programming
- Advanced Bash-Scripting Guide
- Linux Shell Scripting Tutorial—A Beginner’s handbook
Unix Shell Programming by Michael Kochan is my go-to shell book.
The best course I know of is Greg Boyd’s face-to-face CS 160A and 160B courses at CCSF. Take them if your live in the Bay Area.