Senior Principal Engineer at Newfold Digital (formerly Endurance)
The remainder of this node is outdated.
Other places you may find me...
My Perl Book Library
All Perl books below are recommended unless otherwise noted.
|The Llama book
|Start here! You can't do better than this for an introduction to Perl
|The Alpaca book
|Previously known as Learning Perl Objects, References, and Modules. The current edition of Intermediate Perl also takes on topics such as testing, building a distribution, and contributing to the CPAN.
|The Camel book
|This book at one time was the source for learning Perl inside and out. The 3rd Edition is based on Perl 5.6. A lot has changed since then. While I still consider this book recommended reading, you might buy used for now, and get a shiny new copy when the 4th Edition is published.
|The Perl POD
|Perl's documentation (the Perl POD) is the most up-to-date source of information on Perl. It's easy to use, and comes free with every Perl distribution. Every aspect of Perl, and every CPAN module is documented with POD. It is required reading.
|Mastering Regular Expressions
|The Owls book
|This book covers Perl's regular expressions, but has also been expanded to cover those of several other languages as well. I cannot speak highly enough of this resource as a means of really understanding Regular Expressions.
|Advanced Perl Programming
|The Panther Book
|I wouldn't characterize this as an advanced syntax book, it's an advanced topics book. It provides discussions on templating tools, introspection and the symbol table, Unicode, POE, testing, and a wide range of other topics. It is pretty valuable as a resource for introducing some of Perl's extended capabilities. I'm glad I read it, as it helped to open up concepts I hadn't previously considered. Note: 1st and 2nd editions are quite dissimilar.
|The Perl Cookbook
|The Bighorn Sheep book
|This book is great for showing how to get things done with Perl.
|Programming the Perl DBI
|The Cheetah book
|You don't have to look far these days to see databases being used alongside Perl. Perl's DBI module is where you start, and this book is how to do it. It also covers Class::DBI, but not the newer DBIx::Class. It's a worthwhile read despite its age.
|CGI Programming with Perl
|The Mouse book
|So much has changed in the world of Web programming since this book was published in 2000. But even if you jump in headfirst with frameworks, you still will probably need an understanding of the Common Gateway Interface. If web development is your thing you owe it to yourself to pick up a copy (even if it's used). Topics include the CGI module, maintaining state, sessions, and security. If you buy one CGI book, buy this one. There are a lot of lousy choices out there. This book is won't lead you astray.
|Mastering Algorithms with Perl
|The Wolf book
|There's a reason universities offer degrees in Computer Science as opposed to just Computer Programming. Effective programming is only possible if one has a solid understanding of the science of computing, and that includes a firm grasp on algorithms both in theory, design, and implementation. This book is an excellent resource for learning how to think like a Computer Scientist, and how to apply those principles with Perl.
|Perl Best Practices
|The American Staghound book
|If every programmer read this book before diving into a project the world would be a better place. You may not agree with all of the "best practices", but at least this book will challenge you to consider how to develop clean, well written, maintainable code. This goes hand in hand with the Perl::Critic family of modules. Recently I was in the offices of a well-known web based company. One cubicle had a computer monitor propped up by two barely used door-stop-thick programming books (not on my list). Perl Best Practices was sitting right next to the mouse, well worn in, its pages darkened by the inevitable grime of heavy use. That just about says it all.
|Automating System Administration with Perl
|The Sea Otter book
|A large part of Perl's success is its adoption by system administrators as a means of making their lives easier. Perl comes with every major Linux distribution, and is available for just about every major operating system in use today. Its ubiquity, flexibility, and panache for rapid development make it an obvious go-to tool for sysadmins. (In other words, I read it so long ago I don't remember what I really liked about it.)
|Perl in a Nutshell
|The Dromedary Camel book
|This is a pretty good desk reference, which is what O'Reilly's "Nutshell" books aim to be. The best thing about this book is that it gives a sort of crash course in a lot of important topics such as LWP, DBI, CGI, and others. Its current edition is a little outdated, so buy used. I found it useful, but don't recommend it as a top tier book.
|Perl and XML
|The West African Green Monkeys book
|Perl is most useful if you learn to use it with other common tools. XML is not a lot of fun, but it's here, it's everywhere, and Perl's good at dealing with it thanks to an array of CPAN modules. This book is actually a better read than you might expect given the subject matter.
|Perl has evolved into a modern and mature programming language. Learn about the Perl Community, modern Regexp topics, Perl's new Moose object system, and more. Though the book discusses many topics of beginning to intermediate level, I don't see it as an introductory book. It's more like a book to help people who already know some Perl to become more 21st-century in their approaches. My preference: The Kindle edition.
|Perl Testing: A Developer's Notebook
|The Coffee Stain Book?
|I stumbled across this book when I was seeking a greater understanding of Test Driven Development. What a great book. It's an easy to use resource on testing. Two weeks after finishing reading it I saw it being recommended by the Thousand Oaks Perl Mongers group as part of a presentation on TDD too.
|Higher Order Perl
|Loved the chapters on memoization, currying, callbacks, closures, iterators and streams. The lexing and parsing chapters were a little painful, but gave me a degree of confidence in areas that previously were weak for me. A fantastic book, covering advanced topics in functional programming.
|I enjoyed this book, and found much of brian's advice well thought-out. A major sub-theme: You're a grown up now: Figure it out. That's good wisdom.
My Non-Perl Book Library
Choose as interest or need arises.
|HTML & XHTML: The Definitive Guide
|The Koala book
|For me the definition of eternity is reading a book on HTML. But we can't escape it, and since we've got to know at least a little HTML, this is the one book to own on the topic. My condolences. There's nothing wrong with the book, though it doesn't cover HTML5 yet. But studying HTML is less exciting than watching a sloth race. Hmm.... the Sloth book? ;) Not a Perl recommended book.
|The Rhino book
|The Blue Spotted Crow Butterfly book
|MySQL is found on most modern Linux distributions, and is available for many other platforms as well. While PostgreSQL is emerging as a more capable alternative, MySQL databases are everywhere. You can limp along, or you can really learn to use it. Topics include installation, maintenance, MySQL's flavor of SQL, as well as constructing joins and other more complex manipulations. I found the book helpful, though I still am looking for more.
|A Practical Guide to Ubuntu Linux
|I needed to get familiar with Ubuntu Linux, looked for a book that had a good Amazon rating, and came up with this one. In addition to basic Linux use and administration, it also covers setting up Apache, MySQL, an SSH server, and so on. It's a pretty good book, though not directly related to Perl. Not recommended as a Perl book.
|MySQL Pocket Reference
|After reading Learning MySQL I found that I was constantly needing to refer to the MySQL online documentation. But the online docs aren't all that easy to navigate, and often spread the information I need between several pages. This book was the answer; a concise reference.
|Starting Out With C++: Early Objects
|It's a text book. It's reasonably thorough. It's dry. Way overpriced. Not recommended.
|C++ Pocket Reference
|Hey, $5.00 on sale in digital format from O'Reilly: I couldn't say no. It's not terribly useful though. ;)
|This one is actually a good read, if you must read about C++. It even gets mentioned in Mastering Perl. (Update: a couple years later the newest edition that covers C++11 is still one of my favorite C++ books.)
|C++ Primer Plus
|Seems like it took forever to get through. It is disorganized, and poorly written.
|Excellent. So much so, I just had to buy the two sequels.
|More Effective C++
|Great, like the first from the series. These sort of remind me of PBP.
|Effective STL (C++)
|Full of really helpful advice. Probably my favorite of the "Effective" series.
|Version Control with Git (1st & 2nd Editions)
|The bat book
|I wish I had read this book a long time ago. But I wish I had read Pro Git first. It's an excellent treatment of getting the most out of git. I highly recommend it. However, be aware that it was written before github.com, so there is no discussion directly tailored to working with github.
|This book is available on github for free. While Version Control with Git is a very good book, I recommend reading Pro Git first. It does cover github.com.
|C in a Nutshell
|Not really the kind of book designed to be read cover-to-cover, but I did. It's a very good C reference. It's not a book on how to program with C.
|C++ in a Nutshell
|Another book designed not to be read cover-to-cover. And it's not intended to teach C++. What it does is provide a great reference on the language in an easy to look up format.
My (outdated) To-Do list of reading
- Structure and Interpretation of Computer Programs (done)
- Object Oriented Perl (done)
- The Definitive Guide to Catalyst (done)
- Perl & LWP
- Windows Programming with MFC (done, unfortunately)
- Extending and Embedding Perl
- Learning Vi and Vim (done)
- Perl Hacks (done)
- High Performance SQL (done)
- Mastering Perl 2nd, ed (Done. No surprises. A decent read.)
- MongoDB: The Definitive Guide (Done)
- RESTful Web APIs (Done)
- Version Control with Git, 2nd Edition (Done. Adds info on GitHub)
- Practical C Programming (done)
- Understanding and Using C Pointers (done. No real revelations)
Lately I've been using my Kindle for reading, and while it's mostly a
positive experience I find it frustrating that some of the books out there
on Perl are only available in non-Kindle-friendly formats. In particular,
PDF is a poor format for eBook readers as it doesn't do well with small
screens. Examples include Higher Order Perl, and The Definitive Guide
to Catalyst. And converting PDFs to eReader formats seems to be unreliable.
I am happy to buy books in .mobi format, but usually run the other way when
I see .pdf as the only option. Higher Order Perl is an exception to the
rule; I would read that on papyrus or stone tablets if I had to
-- it's that good.
I doubt that many authors or publishers will find this node, but if you
happen to be an author or publisher, I really encourage you to support
modern digital book formats such as ePub and mobi, and let pdf die a
slow death. If you're an avid reader and care about digital formats for
books, please be sure to express your interest by emailing publishers when
you find that a book you want to read isn't available in a e-reader-friendly
format. It actually works sometimes (particularly with O'Reilly).
08/05/2003 - L1: New account. 10/26/2003 - L10. 01/04/2004 - T100. 02/02/2004 - T75. 04/01/2004 - T50. 05/12/2004 - 10000XP. 05/15/2004 - T40. 07/17/2004 - 1000Posts. 07/18/2004 - T35. 08/05/2004 - 1 Year, 12945XP, T34, 1060Posts. 08/29/2004 - T30. 12/10/2004 - T25. 05/31/2005 - 20000XP.
Others surveying the Monastery:
(4)As of 2024-03-02 22:25 GMT