Softpanorama

May the source be with you, but remember the KISS principle ;-)
Contents Bulletin Scripting in shell and Perl Network troubleshooting History Humor

Best Perl Books for System Administrators

News

Selected Computer Books

 Classic Computer Books

Top Books

Introductory

Advanced

O'Reilly Perl bookshelf

Best books about Regular Expressions
HTML JavaScript Reference Unix Administration Windows
administration
Win32 LAMP Best Python books for system administrators

Nikolai Bezroukov. Introduction to Perl for Unix System Administrators

Best Red Hat Books

Best books about Unix Shells

Best books about SSH

WEB Design

Softpanorama Book Reviews Collection

Humor Etc

Introduction

It is very difficult to write a good intro book for such language as Perl. Contrary to the popular opinion, the introductory O'Reilly books on Perl are no longer the best. For some reason O'Reilly attracts complexity junkers, who use complexity for the sake of complexity. There is actually no good introductory Perl book from O'Reilly. I really do no not recommend buying Learning Perl as your first book, or second or even third book (unless you buy it on company money with a half-don of others ;-).

Perl is huge language and the way to learn it for system administrator is to learn relevant subset. Some parts of the language like OO-related parts can and should be initially omitted from study. The same is probably true for modules. You need just to learn to use modules with CPAN, but on introductory level I would recommend initially skip all this complex mechanics. For small to medium scripts you can structure your program using Perl 4 libraries almost as well as with modules with minimal additional complexity. If you want separation of namespaces just use package statements and explicit naming (like in $html_functions::string_length )

Although the core of the language is very stable, Perl 5 is still a moving target and for non-introductory books the age of the book still matter.  In general, I recommend Perl books that are less than five years old (the last edition of Programming Perl was printed in 2012, Intermediate Perl was printed in 2012,  Effective Perl Programming in 2010) , but every rule has its own exceptions.  Please note that CGI-related books not included in this section. They are covered elsewhere.

Books that are 5 or less years old are preferable, but there are exceptions to this rule...

The exception are based on the fact that talented authors are very rare and the same author can produce books of very different quality. So good books by talented authors are twice as rare ;-). As such they have value despite their age.

In RHEL 6 version is 5.10 is used and that means that the book should cover new constructs introduced in this version ( "state" variables). Generally state variables is a valuable addition to the language and that makes this version of Perl somewhat better then previous versions (the major one were 5.8, 5.6 and 5.0). At the same time many Unixes still ship Perl 5.8 by default, so excessive hurry in switching to version 5.10 might hurt compatibility with older version of Unix/Linux.

Please note that a major revision of the language (version 6.0) is in works, but due to overcomplexity and errors in language design chances of displacing of the version 5 are pretty slim. Recent version 5.10 incorporates some ideas from version 6 into version 5 framework. I think that version 6 is at least another decade from implementation; that means that buying Perk 5.8 or Perl 5.10 book is a pretty safe bet.

You need a good development environment in order to program in Perl and first of all you need "Perl aware" editor.  See Absence of good development environment

Some books recommendations

Beware all second editions of Perl books from O'Reilly ;-). Paradoxically most of them are disappointing (BTW Learning Perl is more than disappointing -- it's simply weak and only the first edition has, mostly historical now, value). A reader can save money by getting other better books instead. There is several books that are better as an introductory books

If you know some HTML and want to learn Perl mainly for use with the Web then you probably will be better off with a CGI book like CGI Programming 101 (see also cgi101.com ; the first six chapters of CGI Programming 101 are available free on this site), or, for those who like illustrated books, Perl and CGI for the World Wide Web Visual QuickStart Guide, Second Edition  Perl has a very good library called LWP

The books that have e-text freely available or at least have it on accompanying CD have a better value and you can put with some minor shortcomings due to the advantages of having full e-text (for example that value of index is less important -- one can search e-text instead). Old David Till's book (see below open books ) was a good introductory book that used to be freely available from the http://www.informit.com/ -- Macmillan online library and might still be found somewhere on the Internet...

Although the quality is very uneven and the CD lucks any good intro book, older, cheaper versions of Perl CD Bookshelf from O'Reilly might be an interesting alternative to buying printed version of Cookbook from O'Reilly as it is a reference. It's more convenient to have it in HTML than in a printed edition...

There are also some underestimated books on Perl. Personally I like Perl Programming Companion by Nigel Chapman. This is not very popular book among Amazon.com readers, but I think that here (like in some other cases) they are wrong ;-). "Lemming effect" quite pronounced in reviews of Learning Perl on Win32 and several other horrible but highly praised by conformists O'Reilly books. Bias  probably is present here too but with a negative sign. Programmers with experience in any other language can definitely benefit from this nice book.

Please note that old, but still available on the Web Camel Critiques -- Tom Christiansen's reviews of Perl book are biased and from my point of view reviews are unfair to non-O'Reilly authors. Please take them with a grain of salt -- even with disclaimer that he has a vested interest in promoting O'Reilly books. Here is my (slightly skeptical ;-) opinion about on one of books that was highly praised by Tom Christiansen in Camel Critiques -- Learning Perl on Win32. In short this was junk book.

Amazon.com readers reviews can provide you with a balanced opinion if you can understand that extremes meet, pay attention to whether people reviewed other books or this is their first review and whether they bought the book from Amazon or not. Also some people trash books just to prove themselves -- for the same reason as other people overpraise mediocre  books. I recommend discarding way too positive ("brilliant")  and way too negative opinions unless a reviewer provides facts that substantiate his/her point of view. Also useful is checking the reviewer other reviews. Cheap trick with asking friends of the author to write glowing reviews is easily detected this way.

And last but not least -- please question my own reviews too. My background and priorities can be different from yours and I learned Perl after several other languages. That means that books that are optimal for me can be sub-optimal for you. Even i as teacher I am biased toward books that reflect my own, Spartan preferences. For example I do I think that for Unix system administrators Perl 4 subset of Perl 5 is pretty adequate. Moreover I can confess that my opinion about books is changing with time and with the level of success of the class when I use them in teaching Perl courses. Sometimes substantially.

A pretty entertaining and educating test for Perl books

P.S. Here I would like to reproduce One Minute Perl Book Reviews -- pretty entertaining and educating test for Perl books ;-). If a large number of elements in array test fail that the book is really highly suspect. I am not sure about the value of positive results (actually most of elements discussed in the test are probably absent in any introductory book). For the actual marks of a number of book including Medinets' book see the paper.

"Its not about the acid in the paper, its about the Crack in the author."

Seems like everyone is writing a Perl book. The most disturbing part is that they're being written by people who have nothing to do with Perl. How to decide what's crap and what's not?

Worry no more! After many mirth-filled hours of flipping through many an awful Perl book, I have come up with a simple one-minute litmus test to determine if the book you're holding is worth the tree its printed on.

Historical Note: This page was written back in 1999 when the flood of Perl books hit the market.

The Perl Book Litmus Test

Remember, the point of this test is to find bad books and there can only be negative results with this test. A book which passes all the tests put forth here CAN STILL SUCK.

The following tests check the five things books and beginning Perl programmers most commonly screw up. Its by no means intended to be canonical, just a quick way to look for read flags. So flip to the index. Look up the following tidbits and answer the questions.

  1. localtime Due to localtime's ahem "vintage" interface, date generation is usually botched in Perl. Its important that a book has a good discussion of localtime and its caveats. Does it [explicitly] state that it returns the number of years since 1900? Does it mention that when used in scalar context it returns a nicely formatted date? Does it avoid things like `date`?
  2. open || die $! "Why doesn't $line = <FILE> work?" is one of the most common newbie questions. Its extremely important that a book drills it into the reader's head that all system calls should be checked and proper error messages returned. This means putting some sort of error checking on all system calls (not just open()), using and discussing $! and other good error messages.
  3. srand Not a common problem, but something often gotten wrong. If a book does drag out srand(), it often fails to point out that it should be called only once. (If srand is never mentioned, that's okay.)
  4. array size Does it clearly say that an array will return its number of elements in scalar context, or does it use/imply $num = $#array + 1;
  5. flock Any CGI program writing to a file is going to run into file corruption issues pretty fast. If the book covers topics which will lead to concurrent file access, it should talk about flock(). Does it discuss and use flock instead of lockfiles? (ie. setting some .lock file instead of using flock()).
  6. Portable Constants When performing flocking, socket operations or sysopens does it use the constants defined by Perl (LOCK_SH and friends), or do they define their own unportable constants? If the subject never comes up that's ok.

O'Reilly Perl Bookshelf

Perl Bookshelf exists in 4 editions. They do not contain identical set of books so it make sense to buy several (they are really cheap now). See details in description below. The last one is probably the best is you want to buy just one.

Softpanorama Reviews

Dr. Nikolai Bezroukov


Top Visited
Switchboard
Latest
Past week
Past month

NEWS CONTENTS

Old News ;-)

[Oct 14, 2017] In December 18, 2017 Perl turns 30 by Ruth Holloway

Notable quotes:
"... there is more than one way to do it ..."
"... Perl version 5.10 of Perl was released on the 20th anniversary of Perl 1.0: December 18, 2007. Version 5.10 marks the start of the "Modern Perl" movement. ..."
Oct 14, 2017 | opensource.com

Larry Wall released Perl 1.0 to the comp.sources.misc Usenet newsgroup on December 18, 1987. In the nearly 30 years since then, both the language and the community of enthusiasts that sprung up around it have grown and thrived -- and they continue to do so, despite suggestions to the contrary!

Wall's fundamental assertion -- there is more than one way to do it -- continues to resonate with developers. Perl allows programmers to embody the three chief virtues of a programmer: laziness, impatience, and hubris. Perl was originally designed for utility, not beauty. Perl is a programming language for fixing things, for quick hacks, and for making complicated things possible partly through the power of community. This was a conscious decision on Larry Wall's part: In an interview in 1999, he posed the question, "When's the last time you used duct tape on a duct?"

A history lesson

... ... ...

The Perl community

... ... ...

... ... ...

As Perl turns 30, the community that emerged around Larry Wall's solution to sticky system administration problems continues to grow and thrive. New developers enter the community all the time, and substantial new work is being done to modernize the language and keep it useful for solving a new generation of problems. Interested? Find your local Perl Mongers group, or join us online, or attend a Perl Conference near you!

Ruth Holloway - Ruth Holloway has been a system administrator and software developer for a long, long time, getting her professional start on a VAX 11/780, way back when. She spent a lot of her career (so far) serving the technology needs of libraries, and has been a contributor since 2008 to the Koha open source library automation suite.Ruth is currently a Perl Developer at cPanel in Houston, and also serves as chief of staff for an obnoxious cat. In her copious free time, she occasionally reviews old romance... "

[Sep 18, 2017] The Fall Of Perl, The Webs Most Promising Language by Conor Myhrvold

The author pays outsize attention to superficial things like popularity with particular groups of users. For sysadmin this matter less then the the level of integration with the underling OS and the quality of the debugger.
The real story is that Python has less steep initial learning curve and that helped to entrenched it in universities. Students brought it to large companies like Red Hat. The rest is history. Google support also was a positive factor. Python also basked in OO hype. So this is more widespread language now much like Microsoft Basic. That does not automatically makes it a better language in sysadmin domain.
The phase " Perl's quirky stylistic conventions, such as using $ in front to declare variables, are in contrast for the other declarative symbol $ for practical programmers today–the money that goes into the continued development and feature set of Perl's frenemies such as Python and Ruby." smells with "syntax junkie" mentality. What wrong with dereferencing using $ symbol? yes it creates problem if you are using simultaneously other languages like C or Python, but for experienced programmer this is a minor thing. Yes Perl has some questionable syntax choices so so are any other language in existence. While painful, it is the semantic and "programming environment" that mater most.
My impression is that Perl returned to its roots -- migrated back to being an excellent sysadmin tool -- as there is strong synergy between Perl and Unix shells. The fact that Perl 5 is reasonably stable is a huge plus in this area.
Notable quotes:
"... By the late 2000s Python was not only the dominant alternative to Perl for many text parsing tasks typically associated with Perl (i.e. regular expressions in the field of bioinformatics ) but it was also the most proclaimed popular language , talked about with elegance and eloquence among my circle of campus friends, who liked being part of an up-and-coming movement. ..."
"... Others point out that Perl is left out of the languages to learn first –in an era where Python and Java had grown enormously, and a new entrant from the mid-2000s, Ruby, continues to gain ground by attracting new users in the web application arena (via Rails ), followed by the Django framework in Python (PHP has remained stable as the simplest option as well). ..."
"... In bioinformatics, where Perl's position as the most popular scripting language powered many 1990s breakthroughs like genetic sequencing, Perl has been supplanted by Python and the statistical language R (a variant of S-plus and descendent of S , also developed in the 1980s). ..."
"... By 2013, Python was the language of choice in academia, where I was to return for a year, and whatever it lacked in OOP classes, it made up for in college classes. Python was like Google, who helped spread Python and employed van Rossum for many years. Meanwhile, its adversary Yahoo (largely developed in Perl ) did well, but comparatively fell further behind in defining the future of programming. Python was the favorite and the incumbent; roles had been reversed. ..."
"... from my experience? Perl's eventual problem is that if the Perl community cannot attract beginner users like Python successfully has ..."
"... The fact that you have to import a library, or put up with some extra syntax, is significantly easier than the transactional cost of learning a new language and switching to it. ..."
"... MIT Python replaced Scheme as the first language of instruction for all incoming freshman, in the mid-2000s ..."
Jan 13, 2014 | www.fastcompany.com

And the rise of Python. Does Perl have a future?

I first heard of Perl when I was in middle school in the early 2000s. It was one of the world's most versatile programming languages, dubbed the Swiss army knife of the Internet. But compared to its rival Python, Perl has faded from popularity. What happened to the web's most promising language? Perl's low entry barrier compared to compiled, lower level language alternatives (namely, C) meant that Perl attracted users without a formal CS background (read: script kiddies and beginners who wrote poor code). It also boasted a small group of power users ("hardcore hackers") who could quickly and flexibly write powerful, dense programs that fueled Perl's popularity to a new generation of programmers.

A central repository (the Comprehensive Perl Archive Network, or CPAN ) meant that for every person who wrote code, many more in the Perl community (the Programming Republic of Perl ) could employ it. This, along with the witty evangelism by eclectic creator Larry Wall , whose interest in language ensured that Perl led in text parsing, was a formula for success during a time in which lots of text information was spreading over the Internet.

As the 21st century approached, many pearls of wisdom were wrought to move and analyze information on the web. Perl did have a learning curve–often meaning that it was the third or fourth language learned by adopters–but it sat at the top of the stack.

"In the race to the millennium, it looks like C++ will win, Java will place, and Perl will show," Wall said in the third State of Perl address in 1999. "Some of you no doubt will wish we could erase those top two lines, but I don't think you should be unduly concerned. Note that both C++ and Java are systems programming languages. They're the two sports cars out in front of the race. Meanwhile, Perl is the fastest SUV, coming up in front of all the other SUVs. It's the best in its class. Of course, we all know Perl is in a class of its own."

Then came the upset.

The Perl vs. Python Grudge Match

Then Python came along. Compared to Perl's straight-jacketed scripting, Python was a lopsided affair. It even took after its namesake, Monty Python's Flying Circus. Fittingly, most of Wall's early references to Python were lighthearted jokes at its expense. Well, the millennium passed, computers survived Y2K , and my teenage years came and went. I studied math, science, and humanities but kept myself an arm's distance away from typing computer code. My knowledge of Perl remained like the start of a new text file: cursory , followed by a lot of blank space to fill up.

In college, CS friends at Princeton raved about Python as their favorite language (in spite of popular professor Brian Kernighan on campus, who helped popularize C). I thought Python was new, but I later learned it was around when I grew up as well, just not visible on the charts.

By the late 2000s Python was not only the dominant alternative to Perl for many text parsing tasks typically associated with Perl (i.e. regular expressions in the field of bioinformatics ) but it was also the most proclaimed popular language , talked about with elegance and eloquence among my circle of campus friends, who liked being part of an up-and-coming movement.

Side By Side Comparison: Binary Search

Despite Python and Perl's well documented rivalry and design decision differences–which persist to this day–they occupy a similar niche in the programming ecosystem. Both are frequently referred to as "scripting languages," even though later versions are retro-fitted with object oriented programming (OOP) capabilities.

Stylistically, Perl and Python have different philosophies. Perl's best known mottos is " There's More Than One Way to Do It ". Python is designed to have one obvious way to do it. Python's construction gave an advantage to beginners: A syntax with more rules and stylistic conventions (for example, requiring whitespace indentations for functions) ensured newcomers would see a more consistent set of programming practices; code that accomplished the same task would look more or less the same. Perl's construction favors experienced programmers: a more compact, less verbose language with built-in shortcuts which made programming for the expert a breeze.

During the dotcom era and the tech recovery of the mid to late 2000s, high-profile websites and companies such as Dropbox (Python) and Amazon and Craigslist (Perl), in addition to some of the world's largest news organizations ( BBC , Perl ) used the languages to accomplish tasks integral to the functioning of doing business on the Internet. But over the course of the last 15 years , not only how companies do business has changed and grown, but so have the tools they use to have grown as well, unequally to the detriment of Perl. (A growing trend that was identified in the last comparison of the languages, " A Perl Hacker in the Land of Python ," as well as from the Python side a Pythonista's evangelism aggregator , also done in the year 2000.)

Perl's Slow Decline

Today, Perl's growth has stagnated. At the Orlando Perl Workshop in 2013, one of the talks was titled " Perl is not Dead, It is a Dead End ," and claimed that Perl now existed on an island. Once Perl programmers checked out, they always left for good, never to return. Others point out that Perl is left out of the languages to learn first –in an era where Python and Java had grown enormously, and a new entrant from the mid-2000s, Ruby, continues to gain ground by attracting new users in the web application arena (via Rails ), followed by the Django framework in Python (PHP has remained stable as the simplest option as well).

In bioinformatics, where Perl's position as the most popular scripting language powered many 1990s breakthroughs like genetic sequencing, Perl has been supplanted by Python and the statistical language R (a variant of S-plus and descendent of S , also developed in the 1980s).

In scientific computing, my present field, Python, not Perl, is the open source overlord, even expanding at Matlab's expense (also a child of the 1980s , and similarly retrofitted with OOP abilities ). And upstart PHP grew in size to the point where it is now arguably the most common language for web development (although its position is dynamic, as Ruby and Python have quelled PHP's dominance and are now entrenched as legitimate alternatives.)

While Perl is not in danger of disappearing altogether, it is in danger of losing cultural relevance , an ironic fate given Wall's love of language. How has Perl become the underdog, and can this trend be reversed? (And, perhaps more importantly, will Perl 6 be released!?)

How I Grew To Love Python

Why Python , and not Perl? Perhaps an illustrative example of what happened to Perl is my own experience with the language. In college, I still stuck to the contained environments of Matlab and Mathematica, but my programming perspective changed dramatically in 2012. I realized lacking knowledge of structured computer code outside the "walled garden" of a desktop application prevented me from fully simulating hypotheses about the natural world, let alone analyzing data sets using the web, which was also becoming an increasingly intellectual and financially lucrative skill set.

One year after college, I resolved to learn a "real" programming language in a serious manner: An all-in immersion taking me over the hump of knowledge so that, even if I took a break, I would still retain enough to pick up where I left off. An older alum from my college who shared similar interests–and an experienced programmer since the late 1990s–convinced me of his favorite language to sift and sort through text in just a few lines of code, and "get things done": Perl. Python, he dismissed, was what "what academics used to think." I was about to be acquainted formally.

Before making a definitive decision on which language to learn, I took stock of online resources, lurked on PerlMonks , and acquired several used O'Reilly books, the Camel Book and the Llama Book , in addition to other beginner books. Yet once again, Python reared its head , and even Perl forums and sites dedicated to the language were lamenting the digital siege their language was succumbing to . What happened to Perl? I wondered. Ultimately undeterred, I found enough to get started (quality over quantity, I figured!), and began studying the syntax and working through examples.

But it was not to be. In trying to overcome the engineered flexibility of Perl's syntax choices, I hit a wall. I had adopted Perl for text analysis, but upon accepting an engineering graduate program offer, switched to Python to prepare.

By this point, CPAN's enormous advantage had been whittled away by ad hoc, hodgepodge efforts from uncoordinated but overwhelming groups of Pythonistas that now assemble in Meetups , at startups, and on college and corporate campuses to evangelize the Zen of Python . This has created a lot of issues with importing ( pointed out by Wall ), and package download synchronizations to get scientific computing libraries (as I found), but has also resulted in distributions of Python such as Anaconda that incorporate the most important libraries besides the standard library to ease the time tariff on imports.

As if to capitalize on the zeitgiest, technical book publisher O'Reilly ran this ad , inflaming Perl devotees.


By 2013, Python was the language of choice in academia, where I was to return for a year, and whatever it lacked in OOP classes, it made up for in college classes. Python was like Google, who helped spread Python and employed van Rossum for many years. Meanwhile, its adversary Yahoo (largely developed in Perl ) did well, but comparatively fell further behind in defining the future of programming. Python was the favorite and the incumbent; roles had been reversed.

So after six months of Perl-making effort, this straw of reality broke the Perl camel's back and caused a coup that overthrew the programming Republic which had established itself on my laptop. I sheepishly abandoned the llama . Several weeks later, the tantalizing promise of a new MIT edX course teaching general CS principles in Python, in addition to numerous n00b examples , made Perl's syntax all too easy to forget instead of regret.

Measurements of the popularity of programming languages, in addition to friends and fellow programming enthusiasts I have met in the development community in the past year and a half, have confirmed this trend, along with the rise of Ruby in the mid-2000s, which has also eaten away at Perl's ubiquity in stitching together programs written in different languages.

While historically many arguments could explain away any one of these studies–perhaps Perl programmers do not cheerlead their language as much, since they are too busy productively programming. Job listings or search engine hits could mean that a programming language has many errors and issues with it, or that there is simply a large temporary gap between supply and demand.

The concomitant picture, and one that many in the Perl community now acknowledge, is that Perl is now essentially a second-tier language, one that has its place but will not be the first several languages known outside of the Computer Science domain such as Java, C, or now Python.

The Future Of Perl (Yes, It Has One)

I believe Perl has a future , but it could be one for a limited audience. Present-day Perl is more suitable to users who have worked with the language from its early days , already dressed to impress . Perl's quirky stylistic conventions, such as using $ in front to declare variables, are in contrast for the other declarative symbol $ for practical programmers today–the money that goes into the continued development and feature set of Perl's frenemies such as Python and Ruby. And the high activation cost of learning Perl, instead of implementing a Python solution. Ironically, much in the same way that Perl jested at other languages, Perl now finds itself at the receiving end .

What's wrong with Perl , from my experience? Perl's eventual problem is that if the Perl community cannot attract beginner users like Python successfully has, it runs the risk of become like Children of Men , dwindling away to a standstill; vast repositories of hieroglyphic code looming in sections of the Internet and in data center partitions like the halls of the Mines of Moria . (Awe-inspiring and historical? Yes. Lively? No.)

Perl 6 has been an ongoing development since 2000. Yet after 14 years it is not officially done , making it the equivalent of Chinese Democracy for Guns N' Roses. In Larry Wall's words : "We're not trying to make Perl a better language than C++, or Python, or Java, or JavaScript. We're trying to make Perl a better language than Perl. That's all." Perl may be on the same self-inflicted path to perfection as Axl Rose, underestimating not others but itself. "All" might still be too much.

Absent a game-changing Perl release (which still could be "too little, too late") people who learn to program in Python have no need to switch if Python can fulfill their needs, even if it is widely regarded as second or third best in some areas. The fact that you have to import a library, or put up with some extra syntax, is significantly easier than the transactional cost of learning a new language and switching to it. So over time, Python's audience stays young through its gateway strategy that van Rossum himself pioneered, Computer Programming for Everybody . (This effort has been a complete success. For example, at MIT Python replaced Scheme as the first language of instruction for all incoming freshman, in the mid-2000s.)

Python Plows Forward

Python continues to gain footholds one by one in areas of interest, such as visualization (where Python still lags behind other language graphics, like Matlab, Mathematica, or the recent d3.js ), website creation (the Django framework is now a mainstream choice), scientific computing (including NumPy/SciPy), parallel programming (mpi4py with CUDA), machine learning, and natural language processing (scikit-learn and NLTK) and the list continues.

While none of these efforts are centrally coordinated by van Rossum himself, a continually expanding user base, and getting to CS students first before other languages (such as even Java or C), increases the odds that collaborations in disciplines will emerge to build a Python library for themselves, in the same open source spirit that made Perl a success in the 1990s.

As for me? I'm open to returning to Perl if it can offer me a significantly different experience from Python (but "being frustrating" doesn't count!). Perhaps Perl 6 will be that release. However, in the interim, I have heeded the advice of many others with a similar dilemma on the web. I'll just wait and C .

[Nov 18, 2015] Beginning Perl

**** the author tried to cover way too much for the introductory book. If you skip some chapters this might be book introductory book. Otherwise it is tilted toward intermediate. Most material is well written and it is clear that the author is knowledgabe in the subject he is trying to cover.
Sept 19, 2012 | Amazon.com
Athelbert Z. Athelstanon July 31, 2014

Nice attempt; flawed implementation

Utterly inadequate editing. e.g. In the references chapter, where a backslash is essential to the description at hand, the backslashes don't show. There are numerous other less critical editing failures.

The result makes the book useless as a training aid.

Craig Treptow, June 13, 2013

out of 5 starsA Great Book to Learn About Perl

Preface
I have been dabbling in Perl on and off since about 1993. For a decade or so, it was mostly "off", and then I took a position programming Perl full time about a year ago. We currently use perl 5.8.9, and I spend part of my time teaching Perl to old school mainframe COBOL programmers. Dare I say, I am the target market for this book?

Chapter 1
The author takes the time, to explain that you should ever use `PERL', since it's not an acronym. I find it funny that the section headings utilize an "all caps" font, so the author does end up using `PERL'. That's not even a quibble, I just chuckle at such things.

The author covers the perlbrew utility. Fantastic! What about all of us schmucks that are stuck with Windows at work, or elsewhere? Throw us a bone!! Ok, I don't think there is a bone to throw us, but the author does a great job of covering the options for Windows.

He covers the community! Amazing! Wonderful! Of all things a beginner should know, this is one of them, and it's great that the author has taken some time to describe what's out there.

One other note are the...notes. I love the fact that the author has left little breadcrumbs in the book (each starts with "NOTE" in a grey box), warning you about things that could ultimately hurt you. Case in point, the warning on page 13 regarding the old OO docs that came with 5.8 and 5.10. Wonderful.

Chapter 2
An entire chapter on CPAN? Yes!!! CPAN is a great resource, and part of what makes Perl so great. The author even has some advice regarding how to evaluate a module. Odd, though, there is no mention of the wonderful http://metacpan.org site. That is quickly becoming the favorite of a lot of people.

It is great that the author covers the various cpan clients. However, if you end up in a shop like mine, that ends up being useless as you have to beg some sysadmin for every module you want installed.

Chapter 3
The basics of Perl are covered here in a very thorough way. The author takes you from "What is programming?" to package variables and some of the Perl built-in variables in short order.

Chapter 4
Much more useful stuff is contained in this chapter. I mean I wish pack() and unpack() were made known to me when I first saw Perl, but hey, Perl is huge and I can understand leaving such things out, but I'm happy the author left a lot of them in.

Herein lies another one of those wonderful grey boxes. On page 106 you'll find the box labeled `What is "TRUTH"?' So many seem to stumble over this, so it is great that it's in the book and your attention is drawn to it.

Chapter 5
Here you'll find the usual assortment of control-flow discussion including the experimental given/when, which most will know as a "switch" or "case" statement. The author even has a section to warn you against your temptation to use the "Switch" module. That's good stuff.

Chapter 6
Wow references so early in the book!?!? Upon reflecting a bit, I think this is a good move. They allow so much flexibility with Perl, that I'm happy the author has explored them so early.

Chapter 7
I do find it odd that a chapter on subroutines comes after a chapter on references, though. It seems like subroutines are the obvious choice to get a beginning programmer to start organizing their code. Hence, it should have come earlier.

Having said that, I love the authors technique of "Named Arguments" and calling the hash passed in "%arg_for". It reads so well! I'm a fan and now tend to use this. Of course, it is obvious now that references needed to be discussed first, or this technique would just be "black magic" to a new Perl person.

There are so many other good things in this chapter: Carp, Try::Tiny, wantarray, Closures, recursion, etc. This is definitely a good chapter to read a couple of times and experiment with the code.

Chapter 8
As the author points out, an entire book has been written on the topic of regular expressions (perhaps even more than one book). The author does a good job of pulling out the stuff you're most likely to use and run across in code.

Chapter 9
Here's one that sort of depends on what you do. It's good to know, but if you spend your days writing web apps that never interact with the file system, you'll never use this stuff. Of course thinking that will mean that you'll use it tomorrow, so read the chapter today anyway. :)

Chapter 10
A chapter on just sort, map, and grep? Yes, yes there is, and it is well worth reading. This kind of stuff is usually left for some sort of "intermediate" level book, but it's good to read about it now and try to use them to see how they can help.

Chapter 11
Ah, yes, a good chapter for when you've gotten past a single file with 100 subroutines and want to organize that in a more manageable way. I find it a bit odd that POD comes up in this chapter, rather than somewhere else. I guess it makes sense here, but would you really not document until you got to this point? Perhaps, but hey, at least you're documenting now. :)

Chapter 12 and 13
I like the author's presentation of OO. I think you get a good feel for the "old school" version that you are likely to see in old code bases with a good comparison of how that can be easier by using Moose. These two chapters are worth reading a few times and playing with some code.

Chapter 14
Unit testing for the win! I loved seeing this chapter. I walked into a shop with zero unit tests and have started the effort. Testing has been part of the Perl culture since the beginning. Embrace it. We can't live in a world without unit tests. I've been doing that and it hurts, don't do that to yourself.

Chapter 15
"The Interwebs", really? I don't know what I would have called this chapter, but I'm happy it exists. Plack is covered, yay!!! Actually, this is a good overview of "web programming", and just "how the web works". Good stuff.

Chapter 16
A chapter on DBI? Yes! This is useful. If you work in almost any shop, data will be in a database and you'll need to get to it.

Chapter 17
"Plays well with others"...hmmm....another odd title, yet I can't think of a more appropriate one. How about "The chapter about STDIN, STDOUT, and STDERR". That's pretty catchy, right?

Chapter 18
A chapter on common tasks, yet I've only had to do one of those things ( parsing and manipulating dates). I think my shop is weird, or I just haven't gotten involved with projects that required any of the other activities, such as reading/writing XML.

Including the debugger and a profiler is good. However, how do you use the debugger with a web app? I don't know. Perhaps one day I'll figure it out. That's a section I wish was in the book. The author doesn't mention modulinos, but I think that's the way to use the debugger for stepping through module. I could be wrong. In any case, a little more on debugger scenarios would have been helpful. A lot of those comments also apply to profiling. I hope I just missed that stuff in this chapter. :)

Chapter 19
Wow, the sort of "leftover" chapter, yet still useful. It is good to know about ORMs for instance, even if you are like me and can't use them at work (yet).

Quick coverage of templates and web frameworks? Yes, and Yes! I love a book that doesn't mention CGI.pm, since it is defunct now. Having said that, there are probably tons of shops that use it (like mine) until their employees demand that it be deleted from systems without remorse. So, it probably should have been given at least some lip service.

I am an admitted "fanboy" of Ovid. Given that, I can see how you might think I got paid for this or something. I didn't. I just think that he did a great job covering Perl with this book. He gives you stuff here that other authors have separated into multiple books. So much, in fact, that you won't even miss the discussion of what was improved with Perl's past v5.10.

All in all, if you buy this book, I think you'll be quite happy with it.

[Nov 15, 2015] Unescaped left brace in regex is deprecated

Here maintainers went in wrong direction. Those guys are playing dangerous games and keeping users hostage. I wonder why this warning is installed but in any case it is implemented incorrectly. It raised the warning in $zone =~/^(\d{4})\/(\d{1,2})\/(\d{1,2})$/ which breaks compatibility with huge mass of Perl scripts and Perl books. Is not this stupid? I think this is a death sentence for version 5.22. Reading Perl delta it looks like developers do not have any clear ideas how version 5 of the language should develop, do not write any documents about it that could be discussed.
Notable quotes:
"... A literal { should now be escaped in a pattern ..."
www.perlmonks.org

in reply to "Unescaped left brace in regex is deprecated"

From the perldelta for Perl v5.22.0:

A literal { should now be escaped in a pattern

If you want a literal left curly bracket (also called a left brace) in a regular expression pattern, you should now escape it by either preceding it with a backslash (\{) or enclosing it within square brackets [{], or by using \Q; otherwise a deprecation warning will be raised. This was first announced as forthcoming in the v5.16 release; it will allow future extensions to the language to happen.

[Nov 15, 2015] Perl LWP

LWP is a better deal that CGI.pm.
June 30, 2002 | Amazon.com

Read sample chapters online...

The LWP (Library for WWW in Perl) suite of modules lets your programs download and extract information from the Web. Perl & LWP shows how to make web requests, submit forms, and even provide authentication information, and it demonstrates using regular expressions, tokens, and trees to parse HTML. This book is a must have for Perl programmers who want to automate and mine the Web.

Gavin

Excellent coverage of LWP, packed full of useful examples, on July 16, 2002

I was definitely interested when I first heard that O'Reilly were publishing a book on LWP. LWP is a definitive collection of perl modules covering everything you could think of doing with URIs, HTML, and HTTP. While 'web services' are the buzzword friendly technology of the day, sometimes you need to roll your sleeves up and get a bit dirty scraping screens and hacking at HTML. For such a deep subject, this book weighs in at a slim 242 pages. This is a very good thing. I'm far too busy to read these massive shelf-destroying tomes that seem to be churned out recently.

It covers everything you need to know with concise examples, which is what makes this book really shine. You start with the basics using LWP::Simple through to more advanced topics using LWP::UserAgent, HTTP::Cookies, and WWW::RobotRules. Sean shows finger saving tips and shortcuts that take you more than a couple notches above what you can learn from the lwpcook manpage, with enough depth to satisfy somebody who is an experienced LWP hacker.

This book is a great reference, just flick through and you'll find a relevant chapter with an example to save the day. Chapters include filling in forms and extracting data from HTML using regular expressions, then more advanced topics using HTML::TokeParser, and then my preferred tool, the author's own HTML::TreeBuilder. The book ends with a chapter on spidering, with excellent coverage of design and warnings to get your started on your web trawling.

[Jun 8, 2000] Perl Developer's Guide Ed Peschko (Editor), Michele Dewolfe,

**** New edition of old book. Some Perl 5.6 elements are covered (return of an array in subroutines, etc.).

Amazon price: $47.99

Paperback - 912 pages (June 8, 2000)
Osborne McGraw-Hill; ISBN: 0072126302

Here is a very good Amazon Review:

5 out of 5 stars A much better second edition , July 20, 2000
Reviewer: Andrew Fernandez (see more about me) from Boulder, Colorado USA

This book is the much needed update to the first book by Ed and Michelle, published in 1998 that went by a different name, "Perl 5, Complete". The first book came out way too early with too many errors. Ed acknowledges this in his preface to the second edition. I enjoyed his first book, because catching errors made me learn the material better, but the second edition is soo much better.

High points for this second edition include:

  1. a good tutorial for object-oriented programming starting with creating modules up to full object-oriented programming with perl/tk.
  2. a great section on data-structures like arrays-of-arrars, and hash or hashes, etc... that are essential if you want to do intermediate or above Perl programming.
  3. A great chapter on real-world examples using perl/tk and OLE programing with Perl for Microsoft Windows plus other code samples.
  4. Some great new appendixes for Perl "grammer and structure" that weren't in the first edition. Basically a concise reference for symantics that would benefit anybody.
  5. A much improved index that was practically non-existent in the first edition.

All in all, I would say the second edition would be a good edition to learning and even improving your Perl skills since it is a huge tome of Perl information that can be both used as a reference and as a tutorial.

I have only the first edition that was called Perl 5 Complete. I even wrote the first review about the first edition of the book on Amazon.com. I also used it in one introductory e-commerce class. As usuall, you love a textbook much less after you use it a class -- errors and omissions became more evident :-(.

Still, most my students were able to grasp details of the language from the book, but now the book looks a little bit watery -- each chapter can be compressed into half without losing any useful content. So the number of pages can probably reduced in half. Also examples in the first edition are not that great and somewhat buggy.

All-in-all this is a good intro Perl 5 book with some well thought examples and multi-OS coverage.

Chapter 9 on regular expressions is not bad and many readers on Amazon like it. I was not impressed, but still I agree that it's OK, especially for novices.

Last seven chapters actually constitute a good intermediate book. They contain detailed treatment (with good examples) of interesting topics like PerlTk, interfacing Perl to Win32 applications, databases and more.

Attention: CGI coverage is very weak. File operations are much better covered in other books.

Even with problems mentioned above it is probably one of the best introductory Perl book. It is more suitable for those who have some programming experience in other language.

For people without programming experience no book can probably help ;-), but Jon Orwant's book might to be an alternative. The main problem with it is that it overstresses regular expression (at least more than I like in the beginner-oriented book). If you have some experience with other high level languages this book is a reasonable choice, although nothing is perfect in this world ;-)

[Jan 1, 2000] Object Oriented Perl by Damian Conway

***+ The first two chapters of this book is not a usual junk OO book it cut thou OO hype and reveal how to make components ;-). After that it is regular OO junk.

Jake

1.0 out of 5 stars Surprisingly Disappointing, August 13, 2003

After reading so many positive reviews of Damian Conway's "Object Oriented (OO) Perl," I decided to buy a copy and increase my understanding of said subject. Unfortunately, after about two months of thoroughly dissecting each chapter in the book, I must admit that I was surprisingly disappointed.

I consider the first two chapters ("What you need to know first" and "What you need to know second") to be well written and quite useful. These chapters effectively and succinctly expressed the non-OO aspect of Perl programming. When I delved excitedly into chapter three, however, it seemed to me that Damian Conway lost his interest in teaching Perl, in lieu of underlining his own mastery of the language. Too many times I recall his overly complicated one-liners getting in the way of a clear explanation of the point he was trying to convey. I bought Damian Conway's OO Perl because I wanted to learn more about object orientation in Perl-not to view obfuscated code. A *lot* more clarity would have the made the book much more useful.

A second frustrating point about the book is how Damian writes a given class, and then fails to provide even a simple example of how to use said class. As a programmer reading the book, I found it quite annoying that I had to so often write my own "class calling" scripts. Of the many classes contained in the contents of the book, I recall only one or two working examples of how to use said classes! This baffled me throughout the book. I kept wondering, "Are examples of how to use these classes available on a website or something?" Even as I write this review now, I'm shaking my head at the lack of examples provided in the book.

In my opinion, the most appropriate title for Damian Conway's book is "Obfuscated Object Oriented Perl." The solid first two chapters aren't worth the ...cost of the book, and the OO chapters (3-14) are practically worthless-both as a reference, and as a means of instruction. The freely available OO Perl tutorials are of much more value than Damian's book. Said tutorials will not only save you money, but they will also bolster your understanding of OO Perl, which is something I so greatly wanted, but so widely failed to receive, from Damian Conway's OO Perl.

[Aug 1, 1998 ] Perl Cookbook

**** (HTML text of this book id available on Perl CD) Generally this is a good book. But the author is too preoccupied with finding shortcuts and Perl idioms and that negatively influence the book in some places. Recommended as a useful reference or second book on Perl. E-text is available from Perl CD only (not with the book). In some ways demonstrate the flaws of Perl -- after reading 100 recipes one can think whether it is necessary to spend time on mustering all this complex and arcane things and whether there is a better way to do this in TCL ;-)
This book is more a reference that a textbook. When you start reading this book as a textbook the first dozen recipes is really exiting, after than it became boring and then annoying ;-).
Again this is a reference. It's difficult to read it as a book: just too much recipes and one can start thinking that Perl has some inherent flaws that can probably be solved by better design of the language...
Jeffry Scott on December 4, 1998
After dog-earring (sic) the pages of the first edition of Programming Perl (the Camel book), I quickly glommed on to the second edition, thinking that they'll have even more informed narrative and great examples. The enhanced narrative WAS worth purchase of the second edition, but, as mentioned in the Amazon.com review, the "Command Tasks with Perl" and "Real Perl Programs" chapters had been dropped... it's been the closest I've ever come to letter-bombing a book publisher. Little did we know that there was a cunning plan by the Perl wizards and O'Reilly to produce The Perl Cookbook.

While in this world of instant communication some say that two years was a long time to wait for the Cookbook, the wait was definitely worth it. The Cookbook is a treasure trove of examples, and should be considered a mandatory companion to Programming Perl AND Advanced Perl Programming on the bookshelf of intermediate and advanced perl programmers.

The Cookbook is also a great place for the novice to feed after cutting their teeth on Learning Perl. Each section is a mini-tutorial with nice examples to enter and ponder. Combined with the Camel book as general background and reference, you'll go a long way in finding quick solutions to common problems.

I'm not sure what was the problem of one reviewer regarding typographical errors. I've been using the first edition of the Cookbook, and have not encountered any serious difficulties. It seems that any typographical errors (and I haven't seen any, but then I haven't been looking) would have at worst lost one star in rating the Cookbook. Benefits of the Cookbook seem to far outweigh the nits on which this reviewer has focused. I do agree with the reviewer's final note: buy copies from the second and third printings, as I'm sure the first edition has already sold out! (... and some perl book geek will view this as an opportunity to collect a "first edition.")

It's not often I'm moved to write an online review. The Perl Cookbook is a superb reference for any serious perl programmer and especially for the novice and intermediate wanting to improve their skills. Buy this book! Bon appetit!

[Jan 9, 1998] Effective Perl Programming: Writing Better Programs With Perl by Joseph N. Hall

**** Highly recommended
  • Paperback: 288 pages
  • Publisher: Addison-Wesley Professional; 1 edition (January 9, 1998)
  • Language: English
  • ISBN-10: 0201419750
  • ISBN-13: 978-0201419757
  • Product Dimensions: 7.4 x 0.8 x 9.2 inches

Barry Brown on November 5, 2000

Pearls of wisdom for the Perl progammer

The day I got this book, I turned to page 1 and started reading. Two hours later, I had made it only to page 80. Why? Because this book is DENSE and FULL of tips and tricks that will expand the horizons of the intermediate programmer. I spent a lot of time studying the numerous examples in order to soak up all the information that was being presented.
I've been programming with Perl since 1992 and teach it at a community college. And yet with every turn of the page, I learned something new. Examples:
Making regular expressions more efficient

Using map() and grep()

How to call a subroutine from inside a string

Great stuff! The techniques I've learned from this book have been incorporated into my new Perl scripts and they are shorter and faster than ever before.
I can't lavish enough praise on this book. Authors Joseph Hall and Randal Schwartz should be commended. If you have been using Perl for some time and want to hone your skills, get this book now.

[Aug 11, 1997] Advanced Perl Programming (Nutshell Handbook) by Sriram Srinivasan

****(also included in HTML form included in Perl CD bookshelf, first edition). A very old but still valuable book on advanced topics. One chapter is even devoted to the programming Tetris in Perl ;-). Examples and corrections (this is the first edition) are available from O'Reilly web site. Should not be your first or only book on Perl and probably one should first read Effective Perl Programming. But I do recommend you to read or at least browse this book. In my opinion this is one of the best book that explains the namescapes in Perl more or less well. That also means that you can understand what modules in Perl are really about and do no need rely of superficial hype of some other books ;-) I Also like the author style. He really understands a lot about software engineering not only about Perl and that colors the book.

A Customer

A real outdated masterpiece that may not appeal to everyone, June 7, 2000

This is, as the title implies, a book for advanced programmers. You are not supposed to be reading it until "Learning Perl" seems really basic to you and when you are ready to make the progression from browsing "Programming Perl" (the Camel book) -a reference guide to ALL of Perl- to writing a real & complex application. This book serves then as an introduction to several complex topics (DBI, data structures, Tk, OO, & Perl C internals) and gives a better explanation in some areas where the Camel book falls short or becomes too complex (here the explanations are better, but don't expect full tutorials from A to Z). I warn you.

It is the perfect companion to introduce you to a new subject while reading the online docs or other. You also might want to browse thru it if you are an experienced programmer with other scripting languages like TCL, Java or Python, since the comparisons at the end of each chapter is really excellent. As anything that was once considered advanced (and therefore, cutting edge), the book has aged.

Things like the persistent data manipulation module presented in the book have since been improved upon by newer ones. Some of the TCL comparisons are not entirely fair anymore (although mostly still correct). Tom Christiansen's perltoot for OO included with Perl is a much better and thorough introduction than the one offered here.

Also, if you are the type of programmer that reads every single little piece of documentation that comes with Perl, then well, you won't find anything new here --but some concepts that could have been unclear might be clarified here (the ideas presented are still correct, even if some of the code is not anymore).

Steve Wainsteadon July 17, 2000

But one of the great things about this book is its overall passion for programming and computer science

Compared to "Programming Perl" the explanations of references and complex data structures are worth the price alone. They are clear and concise.

The OOP chapters are a little thick, but if you are new to OOP they are a decent introduction.

But one of the great things about this book is its overall passion for programming and computer science; you can tell the author loves his work. It really shows. I bought "Programming Pearls" (not "Perls") as a result of this, and there's a neat chapter on dynamic code generation, an essential tool for the web developer's toolbox. All Perl hackers need this one.

Jack D. Herringtonon, December 13, 2003

Best way to learn references

This is one of the four critical books you need to learn Perl; Programming Perl, Learning Perl, Perl Cookbook and Advanced Perl Programming.

This book provides a deep understanding of how references (pointers) can be used to increase performance. In addition the book gives you a deeper understanding about how to make better use of hash tables as data structures.

The section on code generation using templates is great as well.

Open Books

****+ Beginning Perl Perl Cd Bookshelf Teach Yourself Perl 5 in 21 Days Perl 5 Interactive Course : Certified Edition Perl by Example

Reilly Perl bookshelf contains several Perl books in HTMl format. I would like to name this type of publishing "parallel publishing" and it has several very important advantages over pure electronic e-text or pure paper publishing. First it's much more than "try before you buy" although the best introductory book depends on your background and it's worth to shop about for the best match. Still the availability of a regular "paper" book is much for convenient for studying as you cannot compare the resolution and quality of text on the paper with that on the screen. Actually the cost of printing it a sizable book on the laser printer exceeds the cost of buying a pri in contrast to the vague, theory ridden texts IT is plagued with.
We cover dynamic programming, lambda abstraction, and other techniques
with the same approach.
Moderate through advanced experience level. Similar to "Design Pattern" books
for Java, C++, influenced heavily by "A Pattern Language", Christopher
Alexander.
At the time of this writing, approximately 100 pages worth of content exist, entirely covering the traditional, expected patterns. A snapshot can be fetched from http://wiki.slowass.net/assemble.cgi?PerlDesignPatterns.
Browsing the Wiki directly at http://wiki.slowass.net/?PerlDesignPatterns directly has the advantage of allowing you submit questions, corrections,
ideas, and amendments directly, as well as browse non-linearly. CVS access is
available as well, in some cases.

Embedding Perl in HTML with Mason

Mason is a tool for embedding the Perl programming language into text, in order to create text dynamically, most often in HTML. But Mason does not simply stop at HTML. It can just as easily create XML, WML, POD, configuration files, or the complete works of Shakespeare.

*** The Perl CD Bookshelf

This is an old hat now, but you bac buy it really cheap. Six O'Reilly books on one CD-ROM in HTML format. Only one book is really good (cookbook). Advanced Perl can be useful too. CD includes:

Perl in a Nutshell; Programming Perl, 2nd Edition; Perl Cookbook(very good); Advanced Perl Programming(good); Learning Perl(outdated and weak); and Learning Perl on Win32 Systems(this is just a bad joke). As a bonus, the almost useless printed version of Perl in a Nutshell is also included.

Teach Yourself Perl 5 in 21 Days by David Till

*** This tutorial assumes no prior programming knowledge or experience. It starts with basic concepts, and then builds upon them. Each chapter contains a Q&A section, summary, quiz, and a series of exercises which allow the reader to practice using the language features which were just learned.
Teach Yourself Perl 5 in 21 Days, Second Edition is the ideal book for beginning - and intermediate - level users who want to gain a solid understanding of this programming language. Using step-by-step tutorials and the easy-to-follow approach, you can Teach yourself Perl 5 in 21 Days! Through various teaching elements, you'll learn everything you need to know about this popular programming language. You'll discover how to manipulate text, generate reports, and perform system tasks. Through practical, hands-on instructions, logically organized lessons, and helpful Q & A sections, you'll master Perl functions and concepts and be developing robust programs in no time. Plus, Do/Don't boxes show you how to avoid potential programming pitfalls, illustrations explain constructs such as associative arrays, and tables serve as handy references.
This well-structured book is actually both a good introductory text and a reference. For more obscure example one can use some examples form the David Medinets' book. It assumes that you are familiar with the basics of using the UNIX operating system. It is good for Linux users but will be extremely useful for Windows users too. Contains exercises after each chapter, "Do and Don't" boxes and unlike other books it does contain a chapter on Perl debugger !

Paperback, 870 pages,/ Published by Sams 16-May-1996 (second edition)

ISBN: 0672308940 ;

Avg. Customer Review: ***+ Number of Reviews: 38

From Amazon readers reviews:

A reader from San Diego, CA , January 28, 1999 *****
The Best PERL Book Available!
This is both an excellent way to learn Perl and a great reference book. The book is easy to read, really teaches the essentials of the language, and has a great index for reference (although not as good as the previous Perl 4 version of the book)...

*** Perl 5 By Example (ecopy from David Medinets Web site is available and contains corrections.)

David Medinets./ Que's October 1996/658 pages/CD-ROM/ISBN: 0789708663 Paperback - 658 pages Bk&Cd-Rom edition (October 1996)
Que Corp; ISBN: 0789708663 ; Dimensions (in inches): 1.74 x 9.04 x 7.37
Currently it's probably the secondary choice among the open introductory books on Perl. I do not recommend it as an introductory book. Simon cozens and David Till's books are a better introductory books and I realized it hard way -- by teaching a class using Perl5 by Example. My experience suggests that it should not be used in the university environment but probably can be OK for self-study, especially if one have some experience with other languages. As an introductory book it's pretty weak -- the author uses too much obscure Perl idioms and many examples are weak and poorly thought out. In case you decided to use it, the book probably should be used only as a reference with Teach Yourself Perl 5 in 21 Days as a primary text.

The main advantage of the book is that the full text is available both on the CD-ROM and online from the Web(for example here Perl 5 by Example -- try to search Yahoo! for the mirror nearest to you; ).

See also the author interview

David Medinets "... has been programming since 1980, when he starting with a Radio Shack Model 1.". He has written also Visual Basic Script Quick Reference, and HTML Quick Reference, 2nd Edition for Que and also co-authored books on such topics as Lotus Notes, C++, Visual Basic, and Microsoft Office. In past he used REXX that probably is an advantage for any Perl programmer/writer as REXX (although a weaker scripting language) has some features that are difficult to program in Perl. This seems to be his first scripting language book. He is also a co-author of Using Lotus Notes 4 (1996). The book is conveniently structured into four parts:

Part I: Basic Perl

Part II: Intermediate Perl

Part III: Advanced Perl

Part IV: Perl and the Internet

There are also 5 appendixes:

A - Review Questions
B - Glossary
C - Function List
D - The Windows Registry
E - What's On the CD?

Strangely enough most of readers reviews in the Amazon.com website are quite positive. Here is one example:davepamn@ieighty.net from Utah , January 30, 1999 ******

The Best Perl Book I've studied
Perl 5 by example is the best Perl book I've studied. I use the Perl 5 book along with the 'CGI For Windows' book to teach an internet/multimedia class, at an University level. 'Perl 5 by example' has an excellent teaching format: Definition, explanation, and hundreds of sample code fragments, to illustrate the point. 'Perl 5 by example' combines beginning concepts, intermediate, and advance Perl programming practices. One of the most valuable sections in 'Perl 5 by example' is the creating reports section. The second most valuable section is the regular expression explanation. I keep the 'Perl 5 by example' book close as a valuable language reference. Database is also a key interest for me. Combining Perl with Sybase and using the reporting capability helps students start learning how to create enterprise wide solutions. Write to me for details on some of the Perl projects that were created using the book. Upon studying this book and reader should have the knowledge to write numerous cgi scripts, create Perl modules, and understand at an intermediate level the Perl language.

???? Perl 5 Quick Reference (Quick Reference Series) -- no longer available from inform.it

Michael O. Foghlu, / Paperback / Published by Que 1996 / ISBN: 0789708884
Amazon price: $15.99 ~ You Save: $4.00 (20%)

The complete Perl reference - useful for finding the syntax for the most common and obscure Perl commands.

???? Special Edition Using Perl 5 for Web Programming -- no longer available from inform.it

David Harlan, Michael O'Foghlu / Paperback / Published by Que 16-Oct-1996 /ISBN: 0789706598

Categories: Web Development, Programming, Perl

Covers Perl OOP structure, socket programming, HTML conversions, building Internet search utilities, and more!

???? Web Programming With Perl 5 -- no longer available from inform.it

Bill Middleton, et al / Paperback / Published 11-Mar-1997/ISBN: 1575211122
Amazon price: $23.99 ~ You Save: $6.00 (20%)


Introductory books

Beginning Perl
(Covers Perl 5.6)

Perl Developer's Guide
(Covers Perl 5.6)

Perl Black Book

Perl 5 Interactive Course : Certified Edition
(has e-text and support site)

Perl Power! A Jumpstart Guide to Programming in Perl 5

Elements of Programming With Perl

Finding a decent introductory Perl books is not that difficult as there are several excellent books on the subject. Selecting between them is a little bit more tricky ;-). At the same time probably does not make much sense to buy two introductory books. I recommend Effective Perl Programming as your second book. In no way Learning Perl should be your first Perl book. Perl 5 Interactive Course : Certified Edition has e-text and support site but does not cover Perl 5.6.

****+ [Open] Beginning Perl by Simon Cozens
See my review of the book: Beginning Perl
Paperback - 700 pages 1st edition (May 25, 2000)
Wrox Press Inc; ISBN: 1861003145
Avg. Customer Review: 4 out of 5 stars [Note this is an open book. PDF in available from http://learn.perl.org/library/beginning_perl
TOC
Introduction	
Chapter 1: First Steps In Perl	
Chapter 2: Working with Simple Values	
Chapter 3: Lists and Hashes	
Chapter 4: Loops and Decisions	
Chapter 5: Regular Expressions	
Chapter 6: Files and Data	
Chapter 7: References	
Chapter 8: Subroutines	
Chapter 9: Running and Debugging Perl	
Chapter 10: Modules	
Chapter 11: Object-Oriented Perl	
Chapter 12: Introduction to CGI	
Chapter 13: Perl and Databases	
Chapter 14: The World of Perl	
Appendix A: Regular Expressions	
Appendix B: Special Variables	
Appendix C: Function Reference	
Appendix D: The Perl Standard Modules	
Appendix E: Command Line Reference	
Appendix F: The ASCII Character Set	
Appendix G: Licenses	
Appendix H: Solutions to Exercises	
Appendix J: Support, Errata and P2P.Wrox.Com	
Index	

Beginning Perl Second Edition (Paperback) by James Lee

*** This is an update of Simon Cozins book. Junk.
Great for Teaching Perl, February 14, 2007 F. L. Fabrizio

I use this book to teach Perl in a university course. I feel it does a very good job at exposing just enough of Perl to make it useful without confusing beginning students. I chose this over O'Reilly's Learning Perl (also a good book) because this book goes into References, Modules and a bit of OO Perl, and also has what I feel is slightly better treatment of shortcuts like $_ as well as lexically-scoped variables with 'my'. O'Reilly has broken these topics across two books (Learning Perl and Intermediate Perl), both fine books but I only want the students to have to buy one book. I feel that Perl is not very useful without references, so that was the major reason for switching to this book for a beginning Perl course. I highly recommend it.

Beginning Perl, 2nd Edition, October 6, By T. Barr (Mt. Prospect, IL United States)

Beginning Perl, 2nd edition, by James Lee, et al., is a splendid
introduction to the Perl programming language, version 5.8.3. The flow
of the book is logical, straightforward, and highly readable. Text is
heavily sprinkled with program examples that the reader can easily try
out along the way, as well as exercises at the end of most chapters,
with solutions in the appendix. Chapters are short, clear, and
engaging.

After a brief discussion of the history of Perl and a listing of
numerous helpful online resources, the book quickly moves on to the
logistics of running a Perl program, followed by descriptions of basic
program elements and control flow. Then it's ahead to more
sophisticated data elements - lists, arrays, and hashes - and finally
functions and subroutines.

After a solid and seemingly effortless explanation of these "basics,"
the book moves to one of the most powerful features in Perl - regular
expressions - and how these can be used to access files and data. From
there, the discussion expands to string processing and references. The
book concludes with discussions of more "advanced" Perl features,
including object-orientation, modules, and use with webservers and
databases.

Regardless of topic, the writing style stays crisp, clear, and
example-filled, making this book a highly effective and enjoyable way to
get a jump-start into Perl programming for the novice or a quick
refresher for the expert wanting a Perl 5 update.

Perl 5 Interactive Course : Certified Edition (both e-text and support site are available !!!) by Jon Orwant

***+ Nikolai Bezroukov's review: A very good introductory book with exercises and quizzes. Slightly outdated (not Perl 5.6).
Jon Orwant used to publish Linux Journal. This is second or third edition. Probably should be your first book on Perl, especially if you try to study it by yourself.
I like the illustrations. The book contains very useful quizzes and exercises after each lesson -- the best of any introductory book I read. Web site www.waite.com/ezone (or http://www.mcp.com/distance_learning/frame_ezone.html )contains e-text, additional materials, quizes that can be graded automatically and the reader can ask questions about the book. Good typographic quality, far superior in comparison with O'Reilly books. e-text and on-line quizzes are available from the support site. This is just great !
Negative points -- the author too much emphasize regular expressions at the expense of more procedural operations on string (substr, index, pack, etc.) and that might be a problem for beginners. Some tests are pretty obscure and actually teach wrong practice (see tests for control structures and subroutines as an example). The book does not provide enough warning about problems with Perl and how to avoid them.

Jon Orwant / Paperback, 2-d edition / Published 1997

Paperback - 860 pages Bk&Cd-Rom edition (November 1, 1997)
Waite Group Pr; ISBN: 1571691138 ;
Avg. Customer Review: *****
Number of Reviews: 11


Here are some reviews from amazon.com that probably worth reading:

Irina@oven.com from New York, USA , July 15, 1999 *****
It is a great book!
When I read other people's reviews, I always wonder what kind of background these people have in programming. Well, here is my background: I know HTML, JavaScript, C++, a little bit of Java, DHTML, and databases. When I found out that I had to learn Perl, I was scared because, after 4 years of college, that is the first language that I had to learn completely on my own. However, this book made my learning experience as easy as possible. The book provides very good explanations, a lot of examples, and an EXCELLENT reference section. I think this is one of the best programming books I have read so far.

A reader from New Jersey , January 30, 1999 *****
A Strong Learning Tool for the Perl Language
As far as books that claim they will teach you Perl in any number of days / lessons, this book is by far the best. The lessons, exercises and on-line quizzes are structured very well to make sure you understand the material in the lesson. The lessons are short and sweet and cover only a few topics at a time, which makes it easy to master a lesson at a time.

The examples in the book are effective and can be used immediately to help you solve those simple real world problems. The book does fall short in helping you easily conquer more complex issues quickly. However, the online resources are great for helping you address these problems.

Perl Black Book

**** A pretty good book.

Steven Holzner / Paperback / Published 1999
Amazon price: $39.99 ~ You Save: $10.00 (20%)
Average Customer Review: 4 out of 5 stars

4 out of 5 stars A good quick-reference as well as having sufficient depth , April 3, 2000
Reviewer: gooberboy (see more about me) from Australia
As an electrical engineer with a reasonable programming background, I needed a book that would allow me to come up to speed in Perl quickly without having to first plough through endless tutorials or mindless banter that those 'Dummies' books (or similar) offer. The Black Book meets this need using a unique format -- 'quick solutions' to common programming problems, like data storage, flow control, formatting, etc, ordered in a well indexed and logically laid out volume. I found this format facilitated the learning of the language rapidly while I was developing my first Perl applications. The Black Book's only negative aspect is the author's annoying little 'stories' at the beginning of each section involving the reader and fictional characters like the 'Big Boss' and the 'Novice Programmer'. These stories don't suit the otherwise excellent format of the book and only distract. Ignore the first paragraph of each section that contains them and the Perl Black Book is a handy reference you'll certainly keep near your computer.

5 out of 5 stars Ideal Reference Material , July 26, 2000
Reviewer: A reader from Mt. Pleasant, USA
Perl Black Book is probably the best technical book I have ever read. This book will save you time through its organization, concise explanatory style, and content. The "Black Book" enables a programmer to quickly access information, especially keyword syntax. Each chapter begins with an overview of what will be covered including page numbers for "immediate solutions" to those problems you need a quick answer to. I don't know how many times I have spent more time than I would like sifting through pages of text looking for the correct syntax for the 'if' construct, or playing back-and-forth with the glossary trying to locate a specific function to manipulate a string. This book will help you find answers quickly. The book covers nearly every major aspect of beginning/intermediate level Perl programming in a consistent, fluent, and well-organized manner. Regular expressions, cgi programming w/ Perl, OO, and Perl/Tk are all covered. If you have an understanding of the basic elements of programming, this book serves as a valuable reference, and helps to further explain and clarify some of the more difficult aspects of the language without being too verbose. This book does not provide very many references to additional information, however.

Perl Power! A Jumpstart Guide to Programming in Perl 5 by Michael Schilli

*** Another rather short book on Perl ;-). You should be comfortable with general programming concepts to get the best use out of it.

Textbook Binding - 438 pages Bk&Cd Rom edition (January 1999)
Addison-Wesley Pub Co; ISBN: 0201360683 ;
Amazon.com Sales Rank: 130,251
Avg. Customer Review: 4.5 out of 5 stars
Number of Reviews: 6

Here are some relevant Amazon reviews:

***** Excellent book, well-written with lots of valuable info. October 4, 1999

Reviewer: Michael Tacelosky (see more about me) from Washington, DC

Although my bookshelves are already full of 700-page Perl books of the "Teach Yourself" variety, I was unable to find any good explanations of the LWP module. When I found a chapter devoted to LWP in Perl Power, I was thrilled and immediately bought the book.

What I didn't expect was the bonus of someone finally providing a good explanation of Perl 5 and object-oriented Perl. That section ALSO would have been worth the price of the book.

Even the first chapter had all sorts of insights and explanations I found invaluable. I've been using Perl off and on for about 3 years, mostly writing quick utilities, and I'll credit this book with wanting to make me use Perl more.

*****Perl power December 30, 1999 Reviewer: Dennis Krystowiak from Detroit, Michigan

Excellent book that gets you started with lots of areas of Perl. Most of the code I have tried works fine with Activestates's 523 build and with the Perl development kit 1.2.4. Having code that work is rare with these books especially with Windows. I use 98 and NT and unix. This book is not a definitive guide to Perl but it gives you a good summary in most of the important area's and enough code to get started quickly. It gave me lots of ideas on things I could use Perl for. I also like "Perl 5 complete" for theory, but the code for that book is very buggy and hard to get to work. I like its detailed explanation of how things are suppose to work. "Perl Cookbook" is also excellent for how to solve problems various kinds of problems. These are the best of the Perl books I have.

Bill Frischling (frisch@cais.com) from Arlington, VA , July 20, 1999 *****
A Must-Have Perl Reference

This book is a must have, and an excellent addition to the shelf of any Perl programmer, beginner or otherwise. You should be comfortable with general programming concepts to get the best use out of it. Great use of examples in here, and a very, *very* good read in comparison to other, denser volumes that cover this topic. Writing style does make it far easier to get the gist in this book, and Mr. Schilli does not bore you to tears with geek prose, thank heavens. You get the info you need with a snappy style to boot.

jneely@netten.net from Memphis, TN , February 13, 1999 *****
A "Perl of great worth"!
Somehow the phrase "jump start" seems a little feeble when Schilli's energetic style catapults you into Perl. I didn't expect to be impressed by a "jump start guide" to a language with which I'm already familiar, but a brief thumb-through quickly changed my mind.

The first hundred pages or so provide a lightening-strike introduction to the basics of Perl. Best-suited for a reader with prior programming experience, the first chapter illustrates the most important Perl concepts efficiently, but also includes enough subtleties and effective examples that it's worth a look by a non-beginner.

After equally vigorous introductions to Perl objects and modules, Schilli focuses on two exciting areas where Perl's unique strengths are well-suited, Tk-based graphical user interface development and internet programming. Although Perl has many important uses beyond these two, they make an effective introduction to the breadth and power of the language.

Even the appendices contain a surprising variety of useful information, from the instructions for installing Perl from the included CD, to the quick references to HTML and POD, to the links to a variety of resources available through the 'Net.

Clearly, a "jump start guide" can't cover every detail of a language as eclectic as Perl; nevertheless, Schilli has done a very good job of selecting topics that will get the reader up and running quickly, while leaving them prepared to learn even more. I also consider this book nearly ideal for the reader who is already familiar with Perl as a rapid-development text-processing and scripting language, and who is now ready to move into full-blown application development in Perl.

[Oct 1, 1999] Elements of Programming With Perl by Andrew L. Johnson

***+ A good book. It's more about programming in Perl that elements of Perl ;-) In total number pages it's close to Learning Perl, but quality is higher. This is Perl 5 book, not Perl 4 book like Learning Perl I think that it's an excellent replacement for the outdated Learning Perl.
The author manage to produce very solid introductory programming text that covers a lot of ground but still is accessible for novices. Some points are very realistic like the fact that comments often obscure the text of the program more than they help to comprehend it. The book covers a lot of introductory material and is less watery than Perl Complete.
In general this is a solid introduction to the programming in a pretty difficult and large language. I would like to stress the word "programming". Language constructs are not the primary focus of the book and probably one needs an additional reference of tutorial book that focuses on that topic. What is especially good is that the author pays proper attention to the debugging issues.
No book is without its flaws, and my biggest complain would be chapter 2 content and the absence of the introduction of Perl features (the latter can be compensated by using WEB books). The usual "level zero" Perl tutorial section is missing and the author starts to discuss programming issues in Chapter 2 and use complex language constructs like regular expressions without any warning. This chapter dives in too fast for beginners without explaining little, but very important bits that would aid greatly in achieving a solid foundation. Such an approach might put some people off the book. I recommend to use an additional online book to compensate for this. One may try my Introduction to Perl for Unix System Administrators Anyway I would have expected a better introduction, given that Perl isn't as well known as C.
My other complaint is that the book is too small for such a huge language. Just 350 pages in comparison with 1K pages in Perl 5 Complete and 860 pages in Perl 5 Interactive Course.
Well, no -- it's just right actually if you want the book that competes with Learning Perl, but the book try to cover so many topics that readers might feel lost and feel that the author should have used a bit more in-depth treatment, or more extended examples. The author might have felt the same way, since at the end of most chapters, there are pointers to further information, which are usually pretty useful.

Average Customer Review: 4 out of 5 stars

Table of Contents

Paperback - 350 pages (October 1999)
Manning Publications Company; ISBN: 1884777805 ; Dimensions (in inches): 0.78 x 9.23 x 7.39

**** Too much spread out too thin
Reviewer: Andy Lester from McHenry, IL April 5, 2000
This book doesn't feel like a Perl book. It feels like Johnson is a C programmer at heart, trying to write a book about Perl.

Worse, it's such a wide survey of Perl as to be incongruous. He's got pages devoted to the thought process behind how to structure a program, which is fine for an introductory text; but then he gets into anonymous hashes and different sorting algorithms. Is this an introductory book or not?

The chart on page 184 of all the regex elements is completely useless. It shows all the elements, but doesn't explain at all what they do.

It sure LOOKS great. I love the visual internal style of all the Manning books.

I haven't seen anything that's incorrect, and he writes clearly enough. It's just poorly organized and feels like it was thrown together.

***** Emphasis on Programming
Reviewer: A reader from Syracuse, NY April 4, 2000
I came to this book with some experience in Javascript and Lingo, but no foundation in programming concepts and a desire to learn Perl. This book was perfect for me.

It focuses on programming practices from the beginning, using Perl code for examples of major concepts. By the time it deals directly with the language, you're already familiar with the way Perl looks and works.

For me, some of the early material wasn't necessary, but the author's style is transparent enough not to become obsequious. It's refreshingly free of "now let's do ____; but first let's do ____" idioms that insult and baffle simultaneously.

Anyone who wants to learn programming, but doesn't plan to actually use Visual Basic in the future, should consider this book. It makes a primer on programming concepts unnecessary, and it give a solid introduction to a widely useful language.

**** Excellent reading
Reviewer: PHO January 26, 2000
I am pleased to recommend this book. As another reviewer wrote, I have also read Learning Perl and looked through Programming Perl, but while I was able to learn a fair amount from them, I kept feeling a bit lost when it came to things like how exactly do I use regexes and the types of data structures etc. I took a programming course in Pascal and Fortran too long ago (21 years), I think. At any rate, this book helped me feel a lot more confident with Perl - how to use CPAN, the abundant Perl documentation etc. I don't think that it would be the best book for a first-time programmer without an instructor, but if you have the stamina and perserverance to learn on your own, then this book is a must. Further, the book reads well. In addition, all errata in the first edition can be found at the publishers website, and are generally minor corrections.

Cross-Platform Perl by Eric Johnson

***+ The book has a web site at http://www.pconline.com/~erc/perlbook.htm, but it's not very useful for Perl (but contains a good links for Linux).
I owned the first edition. The first edition was pretty decent and contained some examples that you can use in your own development, especially related to Perl/Tk.
Parts of Perl like regular expressions are treated superficially.
See also a review by Donald Bryson in UnixWorld Online. The book does not have a e-text online (or at least beta as Perl 5 Complete).

Eric Johnson

Amazon Price: $31.99
Paperback - 500 pages 2nd Bk&cdr edition (September 2000)
IDG Books Worldwide; ISBN: 0764547291
See also his book Perl Modules
The book has a web site at http://www.pconline.com/~erc/perlbook.htm, but it's not very useful for Perl (but contains a good links for Linux).

I owned the first edition. The first edition was pretty decent and contained some examples that you can use in your own development, especially related to Perl/Tk.

Parts of Perl like regular expressions are treated superficially.

See also a review by Donald Bryson in UnixWorld Online. The book does not have a e-text online (or at least beta as Perl 5 Complete).

Eric F. Johnson is a prolific writer and authored several books including:

and a book Perl Modules (1998).

He co-authored a large number of books on Unix(including several on Linux) and X Windows including:

Learning Perl (Nutshell book) by Randall L. Schwartz,

**+ (Junk) The main advantage of the book is that it is short. It covers only Perl 4. The second edition is not much different from the first one and if you like to buy the book you can save some money buying the first edition -- it still can be found 50%-75% off.
Again -- buyer beware it's just an introduction to Perl 4 not to Perl 5. Perl 4 is a reasonable subset of Perl to master at the beginning level, but the the problem is that some Perl 5 features simplify programming of typical algorithms and you learn the wrong language.
The first edition was one of the first books on Perl published and this it has definite historical value.
The second edition is simply disappointing. It's kind of Randall L. Schwartz fiasko. The "Just Another Perl Hacker" as any hacker should be lazy, but probably not to such an extent: the only one new chapter (brief overview of CGI) and one new appendix (listing of standard Perl modules) were added (probably by Tom Christiansen, as the team now includes him). The examples and exercises are identical to the the first edition. You may try Perl Complete instead, if this is your first book. Skip this book if you already have at least one introductory book on Perl.
If you like Randal Schwartz convoluted "hacker" style with excessive emphasis on Perl idioms, Effective Perl Programming might be a better deal...

Randall L. Schwartz, Tom Christiansen / Paperback, 302 pages / O'Reilly, July 1997/ 2-nd edition

*** Poorly organized and difficult to use April 8, 1999
Reviewer: A reader from Illinois

As an experienced systems administrator and script writer I was extremely offput by this book. Of course it's an ORA book and thus the quality is there, but I swear I have no idea how the authors got this poorly organized, confusing amalgamation past the editors unless they were simply too baffled to reject it and gave up. For starters, the footnotes often contradict the text which references them. The writing is thick and assumes too much. The authors' sense of humor apparently dictates the presense of smart-alecky and totally irrelevant commentary at random spots, just to make sure that the reader is absolutely lost. And the index! The index references such important aspects of Perl as "Astro [from "the Jetsons"], pronouncing 'Windex'" and "Max Headroom," yet if you look up the keyword "hash" -- which has an entire chapter devoted to it -- there is no listing at all in the entire index. You can look up associative arrays (a deprecated term) though. I found this book to be hostile to the learning process. In fact, I picked it up no fewer than three times trying to learn basic perl from it, only to toss it down in frustration after pulling my hair out. Compare the ORA Korn shell book, which is beautifully instructive, concise and clear, and with a wonderful index with nearly every important function listed. This was the first ORA book I wished I hadn't bothered to purchase. One could argue that perl5 is simply too complex to be gently introduced, yet I learned more about perl from reading Webmonkey's quickie six page tutorial than I did from "Learning Perl." I was quite disappointed with this book. Buy a copy if you must, but plan to use it as a (poor) reference because its teaching abilities are limited.

Learning Perl on Win32 Systems by Randal L. Schwartz

* (junk) I bought it and had found that it completely missed the target. Words "W32 Systems" in the title is a joke. Content is essentially the same as in Learning Perl so this book is a self-plagiarism. Do not buy this book unless it is discounted 50% or more.

Paperback / Published 1997

*** Generic perl topic are OK, Win32 and NT specifics are poor, March 30, 1999

rwloerakker@arminus.xs4all.nl from Gouda, Netherlands

I bought this book as starter to learn more about Perl in general (and for Win32 systems). I found the very first chapters to be of good service, though I spotted these elementary Perl programming techniques in other O'Reilly books too. The Win32 part is in my opinion very poor, it doesn't explain things very well like OLE, reading/writing the Event log and other rudimentary system administration tasks. If you have a lot of free time on your hands like I sometimes tend to have, take some time to search for example scripts for Win32, and together with this book you will be able to understand. Though I think a new edition would be a good idea, covering specifically Win32 platform (people should buy other books to learn Perl in general, I do not like to see the same 3 chapters in every book over again).

Intermediate books

Mastering Perl 5 (Mastering)

Eric C. Herrmann / Paperback / Published 1999
Amazon price: $31.99 ~ You Save: $8.00 (20%)
Several positive reviews on Amazon.com
Table of Contents


Reference books

***+ Programming Perl (Nutshell Handbook) (e-text on Perl CD only; manpages contain a lot of similar material)

by Larry Wall, Tom Christiansen, Jon Orwant
Amazon Price: $39.96
Paperback - 1067 pages 3rd edition (July 2000)
O'Reilly & Associates; ISBN: 0596000278 ; Dimensions (in inches): 1.70 x 9.21 x 7.04
Avg. Customer Review: 5 out of 5 stars
Number of Reviews: 3

Pretty average book and I'm a little bit surprised by the generosity of the reader reviews. Perl is something of a cult, so I think in a lot of cases a positive review means "I like Perl" more than it means "I like 'Programming Perl.' book ". There is something like "Lemmings effects" here. People hesitate (understandably, I think) to insult a book that's closely associated with a great open-source language.

This is not a textbook, this is a reference pretty close to Perl man pages. Should not be your first or only book on Perl. IMHO neither Perl nor REXX became much better with introduction of OOP features, so you could probably benefit from getting the first edition of the book if you can find it. Anyway it make sense to learn procedural style before trying to master OOP stuff. You also can try to get the first edition if you can as it contains some chapters that were moved to the Cookbook in the second and third editions.
See some reviews of the second edition:

3 out of 5 stars A "don't have to" read, May 30, 2000
Reviewer: Joseph N. Hall (see more about me) from Chandler, AZ
The official reference for the Perl language did not improve in its second generation. The original "purple Camel" is, in my opinion, a true classic where books about programming and programming languages are concerned--I rank it right there with The C Programming Language, Anatomy of Lisp, Algorithms + Data Structures = Programs, and so forth. It was a classic because it was filled with lucid expressions of the thoughts of Perl's quintessentially pragmatic creator, Larry Wall. It was a classic because it provided a literate and thoroughly reasoned counterpoint to arguments in favor of more formally based languages and programming styles.

But ... somewhere in the extensive revisions, additions, extensions, and deletions that transformed the first Camel book into this, the second Camel book, the magic went away. And some very suspicious stuff went in. The book lost its digressive, essayic feel and became more of a perfunctory reference work. Additionally, some of the completely new material turned out to be just a little ... strange. The discussion of object-oriented programming based around the term "thingy" just doesn't do it for me. (Ignore all that and read Damian Conway's book instead.)

Preferences of style and tone aside, an unavoidable flaw of an infrequently-updated book like this one is that it inevitably refers to an obsolescent version of Perl. If you want current Perl documentation, you need to read the man(ual) pages that came with that version of Perl. What's in this book is generally but not completely accurate for newer versions of Perl. And because it's intended to be a more or less complete reference covering even small details, it can't help but be dead wrong on some points as the language continues to evolve. Bear in mind, also, that much of the material in this book comes STRAIGHT from the man pages. (Just not the up-to-date versions.)

A third edition is in the works, which will no doubt be at least a temporary improvement. If the newer version restores the insight and charm of the original, it will certainly deserve a place on your programming bookshelf. But as a reference work intended to cover a constantly-evolving language, Programming Perl will always suffer by being out of date.

If you are the type who dislikes reading electronic documentation, by all means, buy a copy of this book. But you'll find that you have to use the online documentation anyway.

4 out of 5 stars Badly Organized, but a Great Reference, February 3, 2000
Reviewer: Dan Budowski (see more about me) from Israel
The book itself, used as a Reference and for mastering Perl, is a five star book. But there are a quite a few disadvantages:

1. The book is not intended to the ones who have no programming experience at all. The read should be at least an intermediate programmer, because the basic programming concepts of the language (Variables, Subs and etc..) are badly explained.

2. Because of Perl's C Like Syntax, it is recommended that the reader will know C, Awk, or Grep and Some experience in the Unix Environment.

3. The Book itself is badly organized, certain complicated things are shown in examples and explanations, and those things are taught many pages afterwards. For Example: An Example of a perl program is shown on page 10, and that example contains subs and pattern matching, which are taught 100 Pages later!

These are the 3 Main Disadvantages. For Conclusion, if you're new to programming, or want to learn Perl easliy, buy "Learning Perl", but if you're a somewhat experienced programmer, and want to master Perl, this book is the best one you'll find for that purpose.

**** Perl Black Book ~ Usually ships in 24 hours

Steven Holzner / Paperback / Published 1999
Amazon price: $39.99 ~ You Save: $10.00 (20%)
Average Customer Review: 4 out of 5 stars

4 out of 5 stars A good quick-reference as well as having sufficient depth , April 3, 2000
Reviewer: gooberboy (see more about me) from Australia
As an electrical engineer with a reasonable programming background, I needed a book that would allow me to come up to speed in Perl quickly without having to first plough through endless tutorials or mindless banter that those 'Dummies' books (or similar) offer. The Black Book meets this need using a unique format -- 'quick solutions' to common programming problems, like data storage, flow control, formatting, etc, ordered in a well indexed and logically laid out volume. I found this format facilitated the learning of the language rapidly while I was developing my first Perl applications. The Black Book's only negative aspect is the author's annoying little 'stories' at the beginning of each section involving the reader and fictional characters like the 'Big Boss' and the 'Novice Programmer'. These stories don't suit the otherwise excellent format of the book and only distract. Ignore the first paragraph of each section that contains them and the Perl Black Book is a handy reference you'll certainly keep near your computer.
5 out of 5 stars Ideal Reference Material , July 26, 2000
Reviewer: A reader from Mt. Pleasant, USA
Perl Black Book is probably the best technical book I have ever read. This book will save you time through its organization, concise explanatory style, and content. The "Black Book" enables a programmer to quickly access information, especially keyword syntax. Each chapter begins with an overview of what will be covered including page numbers for "immediate solutions" to those problems you need a quick answer to. I don't know how many times I have spent more time than I would like sifting through pages of text looking for the correct syntax for the 'if' construct, or playing back-and-forth with the glossary trying to locate a specific function to manipulate a string. This book will help you find answers quickly. The book covers nearly every major aspect of beginning/intermediate level Perl programming in a consistent, fluent, and well-organized manner. Regular expressions, cgi programming w/ Perl, OO, and Perl/Tk are all covered. If you have an understanding of the basic elements of programming, this book serves as a valuable reference, and helps to further explain and clarify some of the more difficult aspects of the language without being too verbose. This book does not provide very many references to additional information, however.

Perl : Programmer's Reference ~ Usually ships in 24 hours

Martin C. Brown / Paperback / Published 1999
Amazon Price: $13.59 ~ You Save: $3.40 (20%)

Perl : The Complete Reference (Complete Reference) ~ Usually ships in 24 hours

Martin Brown / Paperback / Published 1999
Amazon Price: $39.99 ~ You Save: $10.00 (20%)

???? Perl 5 Quick Reference (Quick Reference Series) e-text is available

Michael O. Foghlu, / Paperback / Published by Que 1996 / ISBN: 0789708884
Amazon price: $15.99 ~ You Save: $4.00 (20%)

The complete Perl reference - useful for finding the syntax for the most common and obscure Perl commands.

Online version __ Rex Swain's HTMLified Perl 5 Reference Guide
An HTMLified version of the Perl 5 Desktop Reference.
ISBN 1-56592-187-9, by Johan Vromans.

**** Perl 5 Pocket Reference ~ Usually ships in 24 hours

Johan Vromans, Gigi Estabrook (Editor) / Paperback / Published 1998
Amazon price: $5.56 ~ You Save: $1.39 (20%)

**** Teach Yourself Perl 5 in 21 Days (available electronically from http://www.mcp.com/personal/)

David Till / Paperback, 870 pages / Published by Sams 16-May-1996 (second edition)/ ISBN: 0672308940 ;

This well-structured book is actually a reference and as such it might complement David Medinets' book, which is also an open book.

It assumes that you are familiar with the basics of using the UNIX operating system. So it is good for Linux users. Books contain exercises after each chapter, "Do and Don't" boxes and unlike other books it does contain a chapter on Perl debugger.

Avg. Customer Review: ***+ Number of Reviews: 38

From readers reviews:

This is both an excellent first book on Perl. The book is easy to read, really teaches the essentials of the language, and has a great index for reference (although not as good as the previous Perl 4 version of the book).

***+ Perl 5 How-To : The Definitive Perl 5 Problem-Solver ~ Usually ships in 2-3 days

Stephen Asbury(Editor), et al / Paperback / Published 1997
Amazon price: $39.99 ~ You Save: $10.00 (20%)

Actually this book is a competitor to Cookbook. It also contain implementation of several algorithms in Perl

Here is one review from Amazon.com:

Great book premise/very helpful
I just bought this book today after much Perl book researching. This book is well organized/layed out and every example shows how to accomplish a real world task. Normally I go for the O'Reilly books, but this book illustrates how to do so much (dynamic HTML, sockets, forking processes, etc.) in one volume. I do wish that the book did touch more on SQL database access modules. Very happy I found this book.

???? Perl Core Language Little Black Book ~ Usually ships in 24 hours

Steven Holzner / Paperback / Published 1999
Amazon price: $19.99 ~ You Save: $5.00 (20%)

Steven Holzner is a professional who have wrote a several dozens of books. So he definitely know the ropes of a language textbook writing. Here are some reviews from Amazon.com

A reader from Texas, USA , August 18, 1999 *****
Will Wonders Never Cease?
The first Perl book I've seen that is truely great for beginners, great for people who are already Perl programmers, has a lot of example code, is a great reference, has a good reference section, and also seems to not leave any important details/sections out. The fact that it is very well organized/divided is definately a plus! Any person who wishes to learn Perl or have a great reference, MUST have this on their bookshelf.

A reader from usa , April 15, 1999 ****
Good Book for Perl. Lots of Example Code

I think this is a great reference book for perl. It covers all the major topics with examples on each of the minor details. Chapters are divided by topics such as hashs,arrays,cgi. Excellent reference. Biggest draw back is sometimes the examples are too short so that it becomes difficult to figure out how it would operate in a large program.

Perl : Annotated Archives ~ Usually ships in 24 hours

Martin C. Brown / Paperback / Published 1998
Amazon price: $39.99 ~ You Save: $10.00 (20%)

Perl : The Complete Reference (Complete Reference) ~ Usually ships in 24 hours

Martin Borwn, Martin Brown / Paperback / Published 1999
Amazon price: $39.99 ~ You Save: $10.00 (20%)

Perl Programmer's Reference ~ Usually ships in 24 hours

Martin Brown / Paperback / Published 1999
Amazon price: $13.59 ~ You Save: $3.40 (20%)

***+ The Perl 5 Programmmer's Reference : Windows 95/T, MacIntosh, OS/2 & Unix (the CD includes a hypertext version of the book)

R. Allen Wyke, Luke Duncan / Paperback, 428 pages +CD / Ventana Communications Group, October 1997 /ISBN: 1566047501

The CD includes a hypertext version of the book which make it definitely above average. Some readers complained about errors in reviews on Amazon.com.

**+ The Perl Resource Kit With CD-ROM - ???

By Larry Wall, Nate Patwardhan, Ellen Siever, David Futato & Brian

Jepson 1st Edition November 1997 1-56592-370-7, 1812 pages, $149.95, Includes 4 books & CD-ROM

Overpriced and not very useful: avoid it, unless you really need it

**+ Perl in a Nutshell : A Desktop Quick Reference

Ellen Siever, et al / Paperback / Published 1998
Amazon price: $19.96 ~ You Save: $4.99 (20%)
Weak, no examples; use Cookbook instead

Perl Developer's Reference

John Orwant / Paperback /Advice Press, as of May 25, 1998 not yet published

???? Perl/Tk Pocket Reference ~ Usually ships in 24 hours

Steve Lidie, Stephen Lidie / Paperback / Published 1998
Amazon Price: $7.96 (20% off)


Advanced issues

**** Advanced Perl Programming (Nutshell Handbook)

Sriram Srinivasan / Paperback / Published 1997 -- a very good book on advanced topics. One chapter is even devoted to the programming Tetris in Perl ;-). Examples and corrections (this is the first edition) are available from O'Reilly web site. Should not be your first or only book on Perl and probably one should first read Effective Perl Programming. But I do recommend you to read or at least browse this book. In my opinion this is one of the best book that explains the namespaces in Perl more or less well. That also means that you can understand what modules in Perl are really about and do no need rely of superficial hype of some other books ;-) I Also like the author style. He really understands a lot about software engineering not only about Perl and that colors the book.

**** Object Oriented Perl

Damian Conway, Randal L. Schwartz (Foreword) / Paperback / Published 1999
Amazon price: $25.77 ~ You Save: $17.18 (40%)
Average Customer Review: *****
This book not a usual junk OO book ;-). It really worth reading.

***+ Perl: The Programmer's Companion

Nigel Chapman / Paperback / Published 1997.

Paperback - 292 pages (September 1997)
John Wiley & Sons; ISBN: 047197563X ; Dimensions (in inches): 0.73 x 9.08 x 7.44
Amazon.com Sales Rank: 26,637
Avg. Customer Review: ****+
Number of Reviews: 10

This is the only book on Perl that I know that was written by the author of a C++ book. IMHO this book is most useful, if you already know Perl a little bit, so it should not be your first book. The text is not available electronically, but to have some idea about the book you can read an introduction online (see Introduction) The book suffers from Pascal style syntax diagrams ;-), but I really like the author's style -- a very intelligent style indeed.

The book greatly benefited from the author background and understanding of C++ and thus it provides some insights into Perl that other books on Perl do not offer. Chapman explains how to use Perl effectively, along with the language's nuances. He also devotes some effort in describing good Perl programming style.

This is the only book on Perl that discuss trade offs made by Larry Wall in designing the language. The style is more European that in other Perl books. This is not surprising as the author is British. The British generally seem to be more articulate than Americans, so the language reflects that difference. Malcolm Beattie, release manager for 5.005 and the author of the Perl code-generator is listed a reviewer of the final draft.

On the negative side I would like to note that Pascal-style diagrams are not very useful. The layout and typography could be better.

The author also has written The Late Night Guide to C++ -- an introductory book on C++ (1996, see review in CB and pretty honest interview with the author about the book ) and LR Parsing: Theory and Practice (1988). The last two definitely attest him as an expert in the programming language field.

This book has positive readers reviews on www.amazon.com. See also Reviews

**** Effective Perl Programming: Writing Better Programs With Perl -- Several chapters are available electronically

Joseph N. Hall, Randal L. Schwartz / Paperback / Published 1998

Paperback - 288 pages 1st edition (January 1998)
Addison-Wesley Pub Co; ISBN: 0201419750 ; Dimensions (in inches): 0.63 x 9.17 x 7.34
Amazon.com Sales Rank: 3,991
Avg. Customer Review: *****
Number of Reviews: 10


A useful intermediate to advanced level book on Perl. Explains a lot of idioms and pitfalls of the language. Not all recommendations should be taken for granted. Highly recommended as a second book on Perl. I prefer it to the Cookbook, but you is involved with the language on daily basis you probably should think about buying both. Like Tom Christiansen this guy is obsessed with finding shortcuts in Perl, but if you ignore this perversion the book is pretty much OK.

The author cares about his book. The Joseph Hall's website http://www.effectiveperl.com/ contains some chapters in PDF format. I also like his growing Perl Recipes area. In general the quality of the web site distinguish this book from others even more.

Like Scott Meyers' Effective C++, on which it is modeled, Joseph Hall's Effective Perl Programming is not for the novices. In some way it demonstrates Perl design flaws. Text contain 60 topics (called items), grouped into 10 sections, that illuminate difficult parts of the language. For example assigning undef to an array creates an array with one element -- uninitialized arrays in Perl have value (), the empty list. Sometimes show useful idioms like ($i, $j)=($j, $i) for exchanging two elements. It also includes several tips on using the debugger effectively and submitting modules to the Comprehensive Perl Archive Network (http://www.perl.org/CPAN/).

Here is one amazon.com review:

A reader from Seattle, WA , June 30, 1999 *****
code with style . . .
One beauty of perl is that there are so many ways to do any given task. This can also make life hell when you have to maintain other people's code, or even your own code several months later. While this book doesn't tell you 'one right way' to do things, it does show you how to do things with style. Not only will you feel cool for writing pretty code, you'll be much happier with it in the long run.

***+ Mastering Regular Expressions : Powerful Techniques for Perl and Other Tools (Nutshell Handbook)

Jeffrey Friedl / Paperback / Published 1997

The book is not limited to Perl. Perl just over-rely on them in parsing the text. Regexs are also used in such languages as Python, TCL, Expect, AWK, Lex, in utilities like Grep Egrep, and most editors including Emacs, vi, and sed. See also WEB site Mastering Regular Expressions that contains links to the additional material from the book.

Regular expressions are a mixed blessing. Like other functional languages using regular expressions is not that difficult after you have (a lot of) experience, but at the beginning learning is usually very frustrating. People just do not understand that regex evolved in a very complex language. To make things worse you just cannot accomplish simple things without learning a lot of stuff. Semantic of some characters in regular expressions is different from Perl and is dependent upon context (for example the meaning of "^" in /^a/ and /[^a]/ ).

To make things worse documentation about regular expressions is usually bad and uncompleted. There is no regular expression debugger. So the best way to go is to create a list of typical regular expressions that you may need and debug them beforehand (cookbook approach). Generally the best way out is to avoid complex regular expressions (KISS principle) and use non-greedy matching whenever possible. And here the book can help a lot as it contains many useful examples, although there should be more. Among them:


[0-9]+(\.[0-9])+ -- regular expression for matching IP addresses

<H[1-6]> * \\H[1-6] -- HTML headers

^(From|Subject|Date): -- line in the e-mail message header (it is important to understand that the alteration is not greedy

See also review in DDJ

*** Software Engineering With Perl : Prototyping & Toolsmithing for Better Software-Sooner/Book and Disk

by Carl Dichter, Mark Pease

Paperback, 282 pages/Published by Prentice Hall: May 1995/ISBN: 013016965X

An interesting approach to Perl. See the contents of the book for more details. This book uses Perl as a sample language to explore the practical aspects of Toolsmithing, prototyping, and reuse. Topics like metrics, configuration management and portability are also discussed. But the book does not have a Web site (there is a page http://www.primenet.com/~peasem/ but it contains nothing interesting).

Perl Modules

Eric Johnson / Paperback -- see also his book Cross-Platform Perl

Paperback - 429 pages (March 1998)
IDG Books Worldwide; ISBN: 1558515704 ; Dimensions (in inches): 1.20 x 9.28 x 7.45
Availability: This title usually ships within 4-6 weeks. Please note that titles occasionally go out of print or publishers run out of stock. We will notify you within 2-3 weeks if we have trouble obtaining this title.
Avg. Customer Review: 3 out of 5 stars
Number of Reviews: 1
3 out of 5 stars Good book, but the print is too big, June 24, 1999
Reviewer: A reader from Sacramento, CA
The book has some quite useful code and good examples of how OO works in Perl. I think they could have shrunk the font size down alot and saved a tree when they published it, though. It does have some real good source code that came with it, as well.


Algorithms and Data Structures

???? Mastering Algorithms With Perl

Jon Orwant, et al / Paperback / Published 1999
Amazon price: $27.96 ~ You Save: $6.99 (20%)


Win32

Actually I do not know what to recommend to the reader who wants to master Perl in Win32 environment other than Scott McMahan book. I have more or less positive experience with Perl Complete that is a really good introductory book, but it's not Win32 specific.

**** Automating Windows with Perl With CDROM

Scott McMahan / Paperback / Published 1999
Amazon price: $27.96 ~ You Save: $6.99 (20%)


R & D Books; ISBN: 0879305894 ; Dimensions (in inches): 0.70 x 9.25 x 7.40
Amazon.com Sales Rank: 6,094
Avg. Customer Review: *****
Number of Reviews: 2

Web site: Automating Windows With Perl

Probably the first book completely devoted to the using Perl in Win32 environment Paperback - 350 pages Bk&Cd Rom edition (September 1999)

The author has an impressive site: The Cyber Reviews. See his Resume. Two reviews about the books (I usually am suspect about the first one, but once I manage to write the first review myself (for Perl Complete), so not all of them are written by the author friends ;-) are positive. Here is the second review:

rdoe@worldnet.att.net from Seattle, WA , September 28, 1999 *****
How To Use Perl With Windows To Get A Big Fat Raise
This book should be titled "How To Use Perl With Windows To Get A Big Fat Raise Raise".

Imagine the following on your annual review form:

"Automated my daily build to occur off-hours, thereby saving a hour per day for more productive activities. Provided free software and training to my colleages to automate each team member's daily build, providing a net increase of useful development team time of 12-1/2 percent."

Don't you think ought to be worth an easy 10-15% raise? (If not, then you really need to find a new employer.)

If that is not enough, try this:

"Implemented Automation interfaces in developed code to facilitate automated testing of code off-hours. Automated test procedures provided email report of nightly test results to all concerned parties."

I can not recall any book packed with more useful, relevant, and exciting information. As the title states, it shows how to use Perl to automate mundane tasks such as daily builds and nightly back-ups. In addition, it shows how to use COM/OLE Automation to advantage in your Perl scripts. Need a quick UI element and you don't want to use Perl/Tk? This book shows how to use Visual C++ to create an Automation DLL for the purpose of executing dialogs from your script, with, of course, native look-and-feel. Need to do some heavy lifting in C++? Need to drive the Automation interface of MS applications? This books shows how to use COM Automation to do the heavy lifting, drive DevStudio, and drive some of the Office applications.

The content of this book drips with pragmatism. It seems to emphasize using the right tool for the job, and avoids unnecessary heroics. There are some very thoughtful sections concerning anti-Microsoft sentiment, as well as what is good and bad about both Windows and Unix. This book manages to avoid both bashing or cheerleading, it just informs. It shows you how to use the strengths of the combination of the Windows platform and Perl, and highlights some weaknesses in the Windows platform that a developer needs to be aware of. (In particular, read the section on distributing a VC++ 6.0 Automation Server on page 125. This section illuminates a problem that would be truly dreadful to debug.)

The Perl used in this book is at a level that anybody who read the O'Reilly Gecko or Llama books should understand. The author seems to forego the geeky Perl power one-liners common in other Perl books in the interest of clarity.

Quit wasting any more time reading this review. Buy the book and get back to work!

???? Win32 Perl Programming: The Standard Extensions (The MTP Network Architect and Developer Series) ~ Usually ships in 24 hours

Dave Roth / Paperback / Published 1999
Amazon price: $40.00

Paperback - 614 pages 1 edition (January 1999)
Macmillan Technical Publishing; ISBN: 1578700671 ; Dimensions (in inches): 1.59 x 8.96 x 5.99
Amazon.com Sales Rank: 15,655
Avg. Customer Review: ****
Number of Reviews: 12.

Pretty expensive. But there is not much competition in this area to keep prices down. Also you can usually buy it with 30% or better discount. Here is one review that I like:

The creator of most of the Win32 extensions of Perl provides numerous proven examples and practical uses of Perl to solve everyday Win32 problems.

Mixed feelings about this book. Some chapters are fine - others leave a lot to be desired. Overall it is worth having as it does clear up some issues and the chapters on writing your own extensions, file management, data access and processes are very good. There are some errors and typos that would stump a novice Win32 perl programmer however.

I got the impression that the author concentrated on the extensions he developed very well but only gave the other (more useful?) extensions a decent explanation if he was interested in them.

The book starts off well detailing error handling and system administration for Perl on the Win32 platform. It started to dissapoint here as, in places, much more detail is included on the authors own web pages. There is a lot of detail on the more esetoric details of Win32 Perl such as Com & OLE, consoles and sound. This stuff is interesting but not as important as the more common and useful extensions dealing in, say, system administration.

The author (not surprisingly!) treats the extensions he has written himself in most detail - ODBC in particular. This is fine but glaring omissions are even here. For example the chapter on communication mentions the win32::pipe and win32::message extensions but nowhere does it explain that these are additional extensions that need to be downloaded and installed first (in most cases at least). I know from first hand experience that this would fox a newcomer to Win32 Perl builds.


Unix Administration

**** Perl for System Administration Managing multi-platform environments with Perl

By David N. Blank-Edelman

1st Edition July 2000 1-56592-609-9
400 pages,

Amazon price $34.95

Good book. See also:


Windows Administration

See also Perl for Win32 books.

Essential Windows NT System Administration ~ Usually ships in 2-3 days

Aeleen Frisch / Paperback / Published 1998
Amazon price: $27.96 ~ You Save: $6.99 (20%)

Contains a lot of useful Perl scripts.

Windows Nt Administration Using Win32 Perl (The Landmark Series)

Mike McMillan / Paperback / Published 2000
Amazon price: $32.00 (Not Yet Published)


Perl/Tk

Perl/Tk Pocket Reference ~ Usually ships in 24 hours

Steve Lidie, Stephen Lidie / Paperback / Published 1998
Amazon Price: $7.96 (20% off)

Learning Perl/Tk ~ Usually ships in 24 hours

Nancy Walsh, Linda Mui (Editor) / Paperback / Published 1999
Amazon Price: $26.36 (20% off)


Random Findings

**** Perl Black Book ~ Usually ships in 24 hours

Steven Holzner / Paperback / Published 1999
Amazon price: $39.99 ~ You Save: $10.00 (20%)
Average Customer Review: 4 out of 5 stars

Essential Perl 5 for Web Professionals ~ Usually ships in 24 hours

Micah Brown, et al / Textbook Binding / Published 1999
Amazon price: $23.99 ~ You Save: $6.00 (20%)
Average Customer Review: 3.5 out of 5 stars

Essential Perl for Web Masters (Essential Series for Web Professionals) ~ Usually ships in 24 hours

Micah Brown, et al / Paperback / Published 1999
Amazon price: $23.99 ~ You Save: $6.00 (20%)

Programming Web Graphics With Perl and Gnu Software ~ Usually ships in 24 hours

Shawn P. Wallace, Richard Koman (Editor) / Paperback / Published 1999
Amazon price: $23.96 ~ You Save: $5.99 (20%)
Great advanced book in a very interesting area

Book Review Website Automation Toolkit

Learning Perl/Tk ~ Usually ships in 24 hours

Nancy Walsh, Linda Mui (Editor) / Paperback / Published 1999
Amazon Price: $26.36 (20% off)

***+ Teach Yourself Perl 5 for Windows NT in 21 Days

David Till, Tony Yantao Zhang / Paperback, 868 pages + CD

See discussion of **** Teach Yourself Perl 5 in 21 Days

***+ Perl 5 How-To : The Definitive Perl 5 Problem-Solver ~ Usually ships in 2-3 days

Stephen Asbury(Editor), et al / Paperback / Published 1997 (second edition)
Amazon price: $39.99 ~ You Save: $10.00 (20%)

Paperback - 894 pages 2 edition (September 1997)
Waite Group Pr; ISBN: 1571691189 ;
Amazon.com Sales Rank: 83,073
Avg. Customer Review: ***
Number of Reviews: 5

Actually this book is a competitor to both Cookbook and Mastering Algorithms With Perl and falls somewhere between two.

It does contain implementation of several algorithms in Perl (sorting, trees, etc.)

Here is one review from Amazon.com:

Great book premise/very helpful
I just bought this book today after much Perl book researching. This book is well organized/layed out and every example shows how to accomplish a real world task. Normally I go for the O'Reilly books, but this book illustrates how to do so much (dynamic HTML, sockets, forking processes, etc.) in one volume. I do wish that the book did touch more on SQL database access modules. Very happy I found this book.

**+ Unix Shell Programming Tools (Unix Tools) ~ Usually ships in 24 hours

David Medinets / Paperback / Published 1999
Amazon price: $31.99 ~ You Save: $8.00 (20%)


Actually it's not about Perl -- it contains TCL and shells part as well.



Etc

FAIR USE NOTICE This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available in our efforts to advance understanding of environmental, political, human rights, economic, democracy, scientific, and social justice issues, etc. We believe this constitutes a 'fair use' of any such copyrighted material as provided for in section 107 of the US Copyright Law. In accordance with Title 17 U.S.C. Section 107, the material on this site is distributed without profit exclusivly for research and educational purposes.   If you wish to use copyrighted material from this site for purposes of your own that go beyond 'fair use', you must obtain permission from the copyright owner. 

ABUSE: IPs or network segments from which we detect a stream of probes might be blocked for no less then 90 days. Multiple types of probes increase this period.  

Society

Groupthink : Two Party System as Polyarchy : Corruption of Regulators : Bureaucracies : Understanding Micromanagers and Control Freaks : Toxic Managers :   Harvard Mafia : Diplomatic Communication : Surviving a Bad Performance Review : Insufficient Retirement Funds as Immanent Problem of Neoliberal Regime : PseudoScience : Who Rules America : Neoliberalism  : The Iron Law of Oligarchy : Libertarian Philosophy

Quotes

War and Peace : Skeptical Finance : John Kenneth Galbraith :Talleyrand : Oscar Wilde : Otto Von Bismarck : Keynes : George Carlin : Skeptics : Propaganda  : SE quotes : Language Design and Programming Quotes : Random IT-related quotesSomerset Maugham : Marcus Aurelius : Kurt Vonnegut : Eric Hoffer : Winston Churchill : Napoleon Bonaparte : Ambrose BierceBernard Shaw : Mark Twain Quotes

Bulletin:

Vol 25, No.12 (December, 2013) Rational Fools vs. Efficient Crooks The efficient markets hypothesis : Political Skeptic Bulletin, 2013 : Unemployment Bulletin, 2010 :  Vol 23, No.10 (October, 2011) An observation about corporate security departments : Slightly Skeptical Euromaydan Chronicles, June 2014 : Greenspan legacy bulletin, 2008 : Vol 25, No.10 (October, 2013) Cryptolocker Trojan (Win32/Crilock.A) : Vol 25, No.08 (August, 2013) Cloud providers as intelligence collection hubs : Financial Humor Bulletin, 2010 : Inequality Bulletin, 2009 : Financial Humor Bulletin, 2008 : Copyleft Problems Bulletin, 2004 : Financial Humor Bulletin, 2011 : Energy Bulletin, 2010 : Malware Protection Bulletin, 2010 : Vol 26, No.1 (January, 2013) Object-Oriented Cult : Political Skeptic Bulletin, 2011 : Vol 23, No.11 (November, 2011) Softpanorama classification of sysadmin horror stories : Vol 25, No.05 (May, 2013) Corporate bullshit as a communication method  : Vol 25, No.06 (June, 2013) A Note on the Relationship of Brooks Law and Conway Law

History:

Fifty glorious years (1950-2000): the triumph of the US computer engineering : Donald Knuth : TAoCP and its Influence of Computer Science : Richard Stallman : Linus Torvalds  : Larry Wall  : John K. Ousterhout : CTSS : Multix OS Unix History : Unix shell history : VI editor : History of pipes concept : Solaris : MS DOSProgramming Languages History : PL/1 : Simula 67 : C : History of GCC developmentScripting Languages : Perl history   : OS History : Mail : DNS : SSH : CPU Instruction Sets : SPARC systems 1987-2006 : Norton Commander : Norton Utilities : Norton Ghost : Frontpage history : Malware Defense History : GNU Screen : OSS early history

Classic books:

The Peter Principle : Parkinson Law : 1984 : The Mythical Man-MonthHow to Solve It by George Polya : The Art of Computer Programming : The Elements of Programming Style : The Unix Hater’s Handbook : The Jargon file : The True Believer : Programming Pearls : The Good Soldier Svejk : The Power Elite

Most popular humor pages:

Manifest of the Softpanorama IT Slacker Society : Ten Commandments of the IT Slackers Society : Computer Humor Collection : BSD Logo Story : The Cuckoo's Egg : IT Slang : C++ Humor : ARE YOU A BBS ADDICT? : The Perl Purity Test : Object oriented programmers of all nations : Financial Humor : Financial Humor Bulletin, 2008 : Financial Humor Bulletin, 2010 : The Most Comprehensive Collection of Editor-related Humor : Programming Language Humor : Goldman Sachs related humor : Greenspan humor : C Humor : Scripting Humor : Real Programmers Humor : Web Humor : GPL-related Humor : OFM Humor : Politically Incorrect Humor : IDS Humor : "Linux Sucks" Humor : Russian Musical Humor : Best Russian Programmer Humor : Microsoft plans to buy Catholic Church : Richard Stallman Related Humor : Admin Humor : Perl-related Humor : Linus Torvalds Related humor : PseudoScience Related Humor : Networking Humor : Shell Humor : Financial Humor Bulletin, 2011 : Financial Humor Bulletin, 2012 : Financial Humor Bulletin, 2013 : Java Humor : Software Engineering Humor : Sun Solaris Related Humor : Education Humor : IBM Humor : Assembler-related Humor : VIM Humor : Computer Viruses Humor : Bright tomorrow is rescheduled to a day after tomorrow : Classic Computer Humor

The Last but not Least


Copyright © 1996-2016 by Dr. Nikolai Bezroukov. www.softpanorama.org was created as a service to the UN Sustainable Development Networking Programme (SDNP) in the author free time. This document is an industrial compilation designed and created exclusively for educational use and is distributed under the Softpanorama Content License.

The site uses AdSense so you need to be aware of Google privacy policy. You you do not want to be tracked by Google please disable Javascript for this site. This site is perfectly usable without Javascript.

Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.

FAIR USE NOTICE This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available to advance understanding of computer science, IT technology, economic, scientific, and social issues. We believe this constitutes a 'fair use' of any such copyrighted material as provided by section 107 of the US Copyright Law according to which such material can be distributed without profit exclusively for research and educational purposes.

This is a Spartan WHYFF (We Help You For Free) site written by people for whom English is not a native language. Grammar and spelling errors should be expected. The site contain some broken links as it develops like a living tree...

You can use PayPal to make a contribution, supporting development of this site and speed up access. In case softpanorama.org is down you can use the at softpanorama.info

Disclaimer:

The statements, views and opinions presented on this web page are those of the author (or referenced source) and are not endorsed by, nor do they necessarily reflect, the opinions of the author present and former employers, SDNP or any other organization the author may be associated with. We do not warrant the correctness of the information provided or its fitness for any purpose.

Last modified: October, 01, 2017