|Title:||Win32 Perl Programming: The Standard Extensions|
|Audience:||Beginner Intermediate Advanced||Rating:|
|Publication Year:||1999||Publisher:||Macmillan Technical Publishing||ISBN:||1578700671|
Just to be up-front about it, I was a technical reviewer for this book. Despite this, I feel that I can give an unbiased assessment of it.
In general, I like this book. It fills a gaping hole in the Win32 Perl world, as most of the standard extensions are not documented well. Important things are missing from the documentation, like acceptable values for constants, return values, etc.; very basic stuff. And most of the standard extensions simply wrap the Win32 API C/C++ calls directly, so naming and usage are very confusing and very, very un-Perl-like. Because of this, a book such as this one has been needed for quite a while.
Ultimately, I'd love to have someone create a set of extensions that do what the standard ones do, but which are consistent with each other and use standard Perl idioms. Until then, we'll need a translator, which Dave has provided. Unless you're coming from a Win32 API background, you'll be lost without this (at least I was). And if you are coming from a Win32 background and are just learning Perl, this book may help speed the process along, showing you how to do things you're already familiar with, but in a new language.
The technical information in this book is invaluable if you're trying to learn the extensions. As I mentioned above, the existing documentation is horrible, with lots of important information missing. Dave has researched the underlying API calls and exposed the stuff that, unfortunately, needs to be exposed, given the nature of the extensions.
Dave also explains how things operate in a Win32 world, at times contrasting it to the way things work in a Unix world. Not only does he explain how to find a PDC, he explains what one is. Not in exhaustive detail, but enough that if you're already somewhat familiar with the topic, you'll come away with a better understanding of it.
That said, I don't quite like the narrative style of the book. I'm more of a straightforward reference kind of guy. A list of function names, arguments, return codes, error conditions, etc., in a nice table format would suit me just fine. Or maybe have the narrative stuff up front in the chapter, with the detailed reference at the end. Having it all mixed together is somewhat distracting for me. In the end, though, the information needed is there; you just have to look a little to find it.
The core audience for this book is the NT sysadmin who is yearning for an easier way to do his/her job. The possibilities for automating administrative tasks using Perl are almost endless. If you're tasked with keeping your NT-based IT systems happy, healthy and secure, using Perl and the standard extensions will make your life much easier.
The book consists of 11 chapters and 3 appendices. This is a large book: 600+ pages. There are 3 large chapters on the administration of just about anything you can think of (networks, machines, domains, servers, users, the Registry & Event Viewer, shared resources, printers, files ACLs and shortcuts, just to name a few). There are also chapters on interfacing with OLE, IPC in the Win32 world, database access (primarily focusing on Dave's own Win32::ODBC module), and more. The appendices include a module reference section (not quite what I wanted, but it'll do), more detailed (and somewhat esoteric) Win32::ODBC information, and a list and explanation of Win32 Networking errors.
This book doesn't teach you Perl, nor does it teach you how to program. It assumes at least a basic understanding of Perl and its data types (scalars, arrays and hashes). Most of the standard Perl extensions don't use references or other advanced concepts, so if you have a basic understanding of Perl, you should do fine. If you need more of a Perl primer, I'd suggest starting with Learning Perl on Win32 Systems.
Intermediate & Advanced
If NT system administration is your job, this book and the extensions it covers are for you! You'll probably be frustrated with the extensions themselves, and their very non-Perl way of doing things, but that's all the more reason to get this book.
[Return to The Perl Book Buying Guide]
All book covers, products, product names and company names are trademarks or registered trademarks of their respective companies.