Monday, September 26, 2011

How Can These Books be Banned?

I know this is a little off topic for this blog, but when I "re-invented" it, my intention was to broaden its scope. I came across a link to libraryland on NPR this morning and followed the link to the 2011 Banned Books List. I've read a lot of these books. I seriously doubt they're banned in the U.S (unless we're talking about public school libraries and such). or in many western nations. Too bad NPR or Libraryland failed to run even a small explanation about where these books are banned and under what conditions people are forbidden to read them.

Wednesday, September 14, 2011

Recovering from the Windows 7 Red Screen of Death

OK, this isn't really how my Windows 7 Professional screen looked last Sunday evening after "the disaster", but I'm not really an artist. The screen looked more or less like the usual desktop except everything had a reddish cast and it resembled an out-of-tune TV image from the 1960s (back in the day when you had to manually fine tune your TV to better pick up a local station).

Here's the background.

I was doing some work in my home office under my desk in the nest of power and network cables when I accidentally hit the power switch to one of the surge protectors. Among other devices, my Windows 7 machine was connected to this unit. No big deal. I've done this a thousand times. I turned the surge protector back on, hit the power button on my Windows 7 machine, and figured all was well.


I got an message saying a serious error had occurred and that I should boot into system recovery using the Windows 7 install disc to repair the damage. Fool that I am, I just rebooted to see if that would fix the problem. It didn't. Since I could still get to the desktop, I accessed System Restore and rebooted back in time a couple of days figuring that would do it.


I broke down and got the repair disc and used it to reboot the machine.

When I got to the System Recovery Options screen, I clicked Startup Repair as the most logical option. It went through its routine saying that it might fix the problem and reboot once or need to reboot several times before the error was fixed. After the first reboot, the problem was still with me. I tried again, but had no better luck. I was cursing the fact that I had no backups of my machine to restore it in case it was completely hosed.

I powered the unit down and opened up the box. I made sure the SATA drive connections were solid and that all of the RAM sticks were firmly in place. This proved to be a vain effort, but it was worth a shot.

Rebooted using the disc and ran Startup Repair again, looking for the "Startup Repair could not detect a problem" message, but no such luck. Finally, at the end of the routine, I clicked the "View diagnostic and repair details link". All of the tests were OK except one. The machine couldn't find a valid boot partition.


I copied the exact error message down and Googled it, which lead me to

Basically, forum user SIW2 saved my ass with this:
Boot 7 dvd to system recovery options command prompt. Type:


lis vol

( find the vol letter e.g C or partition number e.g. 1 for the system partition )

sel vol C ( or sel vol 1 , obviously use the correct letter or number)


I followed his advice step-by-step praying all the time that God would be merciful. After I was finished and closed the command prompt, I removed the disc and rebooted the machine.


It's alive!

Moral of the story is that bad things can happen under mundane circumstances and back up your frigging computer! The other moral of the story is never, ever throw away, lose, or misplace all of the discs that come with your computer. You never know when you'll need to lay your hands on them quickly.

Oh, there really is a Windows 7 Red Screen of Death, but it's not exactly what I experienced.

Wednesday, September 7, 2011

Book Review: HTML5 Media

By Shelley Powers
Paperback: 138 pages
Publisher: O'Reilly Media; 1 edition (August 17, 2011)
ISBN-10: 1449304451
ISBN-13: 978-1449304454

I understand that O'Reilly is publishing a series of hardcopy and ebooks that sport a rather modest page count in order to get the material to market very quickly. Shelley Powers' HTML5 Media is one of them. Please keep in mind this book isn't intended to teach you everything you want to know about HTML5 but rather, to show web developers how to insert HTML5 media elements into web pages using the new video and audio elements.

The book's front matter states that the target audience is web developers, authors, and designers who need to ramp up to using HTML5 video and audio elements fast. Hence the size of the book. No one wants to read through 800 pages when they need to do anything fast. Powers' book, with its scant 138 page count, is guaranteed to be a fast read...maybe. Actually, that depends on how much you already know. While the book doesn't require you have a lot of experience with actual video and audio files, you will need a background in CSS and JavaScript for this to make the most sense to you. Of course, if you are a designer or developer, that should go without saying.

While sample code is available, sample video and audio files are not. It's sort of a BYO...F (for files) affair. This is to keep the size of the downloadables manageable, so be prepared to have video and audio material of your own available (if you don't have much on hand, don't worry. Powers provides a number of resources where you'll be able to access what you need).

It's not just about the's about the browsers. You can be fabulous HTML5 designer but if your browser (or your customer's browser) doesn't support the audio and video elements, you might as well not bother. IE9 or later is required, but you can also work with Firefox 3.5 or Chrome 6 and do just fine. If you keep your browsers current, you have nothing to worry about.

I got to work right away with what I learned on page 2, creating a basic audio page and, by adding the controls attribute to the audio element, I could play a sample mp3 I had on my computer (Sleep Away by Bob Acri using Chrome 9.0 on Windows 7, in case you wanted to know).

With my first minor success completed, I decided to download the sample files for the book and went back to the preface to look for the link...and didn't find it. I found the usual boilerplate text under "Using Code Examples" and while Powers says in the "Examples" section that there is a downloadable, I couldn't see where she provided the URL. Fortunately, I had already looked up the book's site at and easily found the correct zip file (and remember, when you try to work with these files, you'll need to provide your own video and audio material and change the default names to the names of the files you're working with in the sample code).

The book presents its content in four chapters which covers the default use of the video and audio elements, customizing the media elements (this is where CSS and JavaScript experience starts to come in handy), and other, more advanced material, including media elements in SVG documents.

Frankly, I found working with this book to be a blast. It's short enough to not be overwhelming to the reader and to impart a real sense of accomplishment very quickly, but dense enough to provide practical information that can be leveraged into actual, real-world web projects (not all books do this). Doing a bit of research, I took a look at some of the other books Powers has written including Learning JavaScript, 2nd Edition and JavaScript Cookbook. HTML5 Media is another fine example of her writing and another fine book from O'Reilly.

If working with media files in HTML5 sounds like something you want or need to do, I'd recommend picking up a copy of this book.

Tuesday, September 6, 2011

Book Review: Learning Perl, Sixth Edition

Paperback: 390 pages
Publisher: O'Reilly Media; Sixth Edition edition (July 1, 2011)
ISBN-10: 1449303587
ISBN-13: 978-1449303587

It's been around awhile...the Learning Perl book I mean. Now in its sixth edition, this O'Reilly classic is still going strong. But first things first.

Who is this book for? You don't find out until the first page of Chapter 1, but it's called "Introduction", so I guess that's OK. Is this book for you? Depends. According to page 1, "This is not a reference book. It's a tutorial on the very basics of Perl, which is just enough for you to create simple programs mostly for your own use." In other words, you'll learn Perl but not much more. The reader is presumed to know some programming and is someone who specifically needs to learn Perl. Beyond the basics, don't expect much out of Learning Perl, but that's not a fault of the book. That's its nature. Anything else you need to know, you'll have to get somewhere else. That said, you start learning Perl here.

Why a Sixth edition? That's easy to find in the front matter of the book. The changes are all laid out in the "Changes from the Previous Edition" section. The book's been updated for Perl 5.14, but that's on the cover. Keep in mind that some of the book's sample code will only work with 5.14, so if something seems "broken", check the version of Perl you're using (this section in the book tells you how to do that). Not all of the sample code requires the latest version of Perl, though. A lot of it will work with older versions.

I loved the line in the Preface that said, "We can't give you all of Perl in just a few hours. The books that promise that are probably fibbing a bit." That's the reality of learning how to program in Perl or any other language. I love the honesty. Like Edna says, "I covered the basics." (If you don't know who I'm quoting, turn in your geek badge now).

Now that you know who this book was written for and what it won't teach you, what will it do for you? If you're at all familiar with the prior version, you can expect this book to maintain the same level of excellence as edition five. About the only complaint about that book was that it was too basic, but I've explained that already. The sixth edition is an update on a time-honored Perl book that is designed to just open the door to programming in Perl.

Each chapter provides the conceptual information for the topic at hand and ends with a set of exercises allowing the reader to practice what they've learned. The book doesn't leverage each chapter to allow the reader to build a larger project as they progress through the book. That's often the frustration when I go through beginners books, because I want the programming to actually do something. If you get that feeling, remind yourself about the book's caveat and then keep going.

If you are an experienced coder, this book might seem a little elementary for you, even if you don't know Perl, so there may some parts you'll skim through, but if you need a ground level foundation, Learning Perl is the place to come.

Not much more to say. What you see is what you get. If you want to learn Perl and already know a little about programming, buy this book. It's a good investment in your precious time and your hard earned dollars.