From: Jay Levitt Date: 2007-09-28T02:30:04+09:00 Subject: Re: Confession: I never learned CS On Thu, 27 Sep 2007 23:57:08 +0900, Ilmari Heikkinen wrote: > On 9/27/07, Jay Levitt wrote: > >> So - any recommended reading? What books will help me change the way I >> think about data? Wow! Thanks for the many great recommendations, folks. Some comments: * GoF: Yes, I have this one, and it's a classic; I've actually read both of the Alexander books cover-to-cover while I was building a house. But I also find that many of the GoF patterns are either unnecessary or greatly simplified in Ruby. I know there's at least one project to codify the Ruby equivalents, and I look forward to more work in that area. * C programming books: I guess I didn't mention that I've got over a dozen C and C++ books; I was following along on paper, I just never did much work in those languages, and the books didn't really "change my thinking". Great recommendation for someone who's truly jumped straight into Ruby, though. * Intro to Algorithms: I know it's the classic work, but I also see a huge number of complaints on Amazon about the lack of provided solutions and followup information; seems like it's intended more for a classroom setting than as a self-study guide. I also admit a bias against older books; technology writing has greatly improved as the field's expanded, and I find it difficult to go back and read something like Date or K&R today. (Well, Date was always tough.) Now, if Scott Meyers (Effective C++/STL) ever wrote an algorithms book, *that* would be a best seller. Any thoughts? * Data Structures and Algorithms (Preiss): I'm a little turned off by the hard-to-read pixelated LaTex GIFs, the lack of a print version or even the right to download it, the lack of a solutions manual, the web-0.5 FSF-style page navigation, and the fact that the first "Ruby" code I saw defines its own "abstract_method" declaration, which makes me think that the Ruby "version" is more like a Babelfish translation of the Java version. (My web site: Now in Senegalese!) OK, so I'm more than a little turned off. Probably bears reading anyway, though. * SICP, Programming Language Pragmatics (Scott), Purely Functional Data Structures (Okasaki), Concepts, Techniques and Models (Van Roy, Haridi): These look like must-reads! -- Jay Levitt | Boston, MA | My character doesn't like it when they Faster: jay at jay dot fm | cry or shout or hit. http://www.jay.fm | - Kristoffer