4 ms·
The Most Unusual (and Best) Computer Language Book I've Ever Seen.
- siong1987 18y agoThis is my recommended book for every programmer who wants to start learning ruby. One of the why's product.
- jackowayed 18y agoI love the poignant guide! It (along with Ruby being an awesome language) got me into Ruby. It's great because you read it because you enjoy it, and then you happen to learn Ruby in the process. It also has some interesting analogies, examples, and ways to remember things. When talking about how block variables go inside |pipes|, he says: I like to think of the pipe characters as representing a tunnel. They give the appearance of a chute that the variables are sliding down. Much better at helping you remember the syntax than "block variables go in a comma-separated list which is enclosed by pipes" like you'd find in a normal book.
- brandonkm 18y agoIndeed. You get the sense when reading it, that the author was having a blast writing it, which makes learning Ruby fun. Also, the way its written is almost like a captivating book, so you can't help but dive further in. I remember picking up 'The Ruby Programming Language' written by Matz, got to the 2nd chapter before I hopped online and found the poignant guide. Made for a much more interesting time learning Ruby.
- jballanc 18y agoFor what it's worth, _why did the illustrations for Matz's book too...
- JimmyL 18y agoUnusual? Certainly. Best? Not for me. I had some time this past summer and decided that I wanted to experiment a bit with Ruby. I tried Poignant three or four times, and each time I would put it down after half an hour, with the same thought - "Why is this book, widely regarded as the One True Way to learn Ruby, fucking around so much? I don't want foxes and cartoons, I want syntax, rules, conventions, and information." Maybe it's just me, but the way I tend to learn a new language is with a bunch of docs on one screen, and an IDE/REPL on the other. I read some stuff from the doc, try it out on the other screen, and move one. After a few units of time doing that, I'll write up a trivial project to try and make the various bits I've learned work together. Once that's done, I'll have a sufficient grasp of the syntax and general themes of the language that I can dig deeper into various parts of it to learn what I need to keep going. You know what the "best" language book I've read is? K&R, ore more precisely, K&R2. It gets to the point, and tells you exactly what you need to know about what you looked up in very clear and exact language. It doesn't hold your hand, and it doesn't make you read about foxes. Poignant always seemed like it was designed for someone who had no idea what programming was and wanted to end up being somewhat fluent in Ruby. That's good and all - there's certainly a market for that - but not what I look for when I'm in the market for a book on a programming language. EDIT: Why the downmod - casual use of the f-bomb or contravention of established orthodoxy?
- rtra 18y agoSame. The first time i tried to read it I actually thought it was a joke.
- twopoint718 18y agoI don't think I even realized what it was.
- jballanc 18y agoWith all due respect, if you had such trouble with Poignant, the you probably also would have had a hard time with Ruby. Not to imply that you couldn't understand Ruby or write in Ruby, but just that Ruby has a very distinct character, a personality almost, and I suspect you and Ruby would not have gotten along. For me, it's that way with Python. Honestly, Python is not fundamentally different from Ruby except this: In Python, there is "one right way". For some programmers that's a saving grace, for others it's akin to a death sentence. To each his/her own...
- holygoat 18y agoI don't believe I agree. Ruby is straightforward; I don't have any trouble at all understanding it. I enjoy _why's cartoons. That doesn't mean that reading _why's cartoons is in any way a good way (for me) to learn Ruby, which is a counterexample to your "probably". Ruby is hardly difficult. (For the sake of anecdotes: I find Python to be stultifyingly simplistic, with a number of negative features, and generally poor libraries. I find Ruby to be the wrong balance between dynamism and performance. I find both of them to lack syntactic abstraction.)
- jballanc 18y agoI didn't mean to imply that Ruby was difficult (though I could see how you might read my reply that way). I merely meant that Ruby embodies a certain philosophy of programming and programming languages, and, while _why is an extreme example, he is still a very accurate embodiment of the Ruby philosophy.
- paulgb 18y agoIf you like this learning style (as I did), and you are interested in haskell, BONUS' Learn You a Haskell for Great Good is a good intro as well: http://learnyouahaskell.com/ http://learnyouahaskell.com/
- sgharms 18y agoI'm a bit surprised this is a top link off of HN, I remember it topping reddit many years ago – hardly hacker “news.” As I said about this product then, taking 3 tabs of LSD should not be required before reading a “how to program in this language“ book. The cartoons are great, but if they had some bearing on the content e.g. 3.times{ puts 'chunky bacon' } then I wouldn't feel so much like I was sitting through some performance from the gifted kid class which is sort of boring and semi-insulting: Why yes, imagining what it would be like to be a butterfly at Valley Forge is very creative, but is neither dramatic nor historically enlightening (cf. Beavis and Butthead watching Beck's “Pay no Mind”).
- leed25d 18y agoFrankly, I do not think very highly of _why's writing style. I find the book to be very difficult to read. If you want an example of excellent technical writing, consider Paul Graham's 'On Lisp' or 'ANSI Common Lisp'.
- arem 18y agoI think it's rubbish. Probably just fine for a complete novice into program design, but utter rubbish to learn anything substantial from.
- unalone 18y agoWow: a lot of people really have some dislike for this book. Not surprising, since Hacker News emphasizes the code-obsessed mind. I'm not somebody who lives in the world of programming, and this is the only guide to coding that I've ever read and learned from. _why phrases things in ways that make their concepts easy to grasp and he makes for a compelling read. People who insult that or call it drugged-up miss that he's not writing a technical guide. He's writing a poignant guide, and that means that the larger goal is getting people really emotionally invested in the language. You learn the bare minimum to the language, which is enough so that then you can go on and find technical manuals, understanding enough to not be instantly turned away. I hate tech manuals. I use a few reference books, but I can't pick up a "Guide To X Language" and get very much from it. A guide that makes coding fun is exactly what I need.
- bmelton 18y agoI recommend why's guide to every non-techie I know who wants to jump into programming. I had an HR friend of mine trying to make sense out of some data, and wanted to contract me to write a really simple script to make some sense out of his flat file data. I didn't have time, and since he wasn't an idiot, I figured he could take it on himself, and gave him a link to the poignant guide, which he claims worked like a charm. Now he's making me justify my salary to him. For people who already know programming concepts, and just need to know syntax and what's different about Ruby from what they already know, I think the poignant guide is the long way there. For this crowd, I understand the bitter reception.