The best way, and reason, to learn a programming language is to do something with it. Here's a book that describes itself thus:
The Bastards Book of Ruby is an introduction to programming and its practical uses for journalists, researchers, scientists, analysts, and anyone else whose job is to seek out, make sense from, and show the hard-to-find data.
This does not require being "good at computers", having a background in programming, or the desire (yet) to be a full-fledged hacker/developer. It just takes an eagerness to be challenged.
This practical focus (also mentioned in comments on HN by people who have read/used the book), along with the fact that it's designed for people who don't know how to program, and also along with the fact that Ruby is a delightful language to program in (a completely non-controversial statement!), makes it a great starting point for people who are willing to shun Jeff Atwood's terrible advice and instead follow Sacha Greif's, Zed Shaw's, or even mine.