Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror

Comment Re:You should be kissing the author's feet (Score 1) 64

Yvan256 gave the exact answer I had. Writing a cookbook for solutions using technologies that are not fully-baked and agreed-upon is risking delivering answers that may not work when the real world catches up. I much prefer having solutions that can be implemented now, rather than waiting for years for the various browsers to support the technologies. After all, how many copies of IE6 and IE7 are still operational across the web, compared to how long IE8 has been available (and now IE9)? Writing about these techniques now only creates a vision of a tantalizing future that may be years off (in which case this book will probably be in a new edition) or may never come-to-be as envisioned.

Submission + - JavaScript Cookbook

r3lody writes: I have enjoyed other cookbooks in the O'Reilly library of computer texts, so when I saw JavaScript Cookbook by Shelley Powers in the catalog, I jumped at it. The description mentioned that the book would cover HTML5 and ECMAScript 5, so I really wanted to learn the new capabilities of both. I did get to learn a lot, but I wonder if these new features are too new.

Like other cookbooks in the O'Reilly library, this one is organized as a series of specific problems, with their solutions neatly presented and grouped into the major chapters. Each solution has a discussion to flesh out the details. The website has downloadable copies of the examples in the book, which I used to test out the various recipes. ECMAScript 5 is fairly new, and HTML5 is still under development, so I made sure I had the latest stable versions of the major browsers (Firefox, Google Chrome, Internet Explorer, Opera, and Safari) to see how they would cope. The HTML5 features are very sparsely supported as of yet, so those portions of the book should be considered more of a sampling of things to come rather than a definitive set of solutions.

The first five chapters of the book are somewhat unremarkable. They start out easily enough with recipes for handling JavaScript strings. The discussion of String objects and literals obviously implies that the reader is already somewhat familiar with Object terminology and functionality. That makes this book unsuitable for beginners. The following chapter contains recipes for handling regular expressions. It starts off with an introduction to the basics, which are nothing that a somewhat savvy shell programmer should be familiar with. The remaining sections cover pretty basic problems. The only interesting ones I noted handled highlighted found phrases on a web page.

Chapter 3 covers dates, time, and timers. Handling dates is shown to be pretty straightforward, and one-shot and recurring timers are presented in a clear, easy-to-understand manner to wrap up the chapter. The next chapter, Working with Number and Math, consists mostly of basic mathematical solutions. The fifth chapter rounds up the basics with recipes for working with arrays and loops. As a Perl programmer, I found this to be familiar territory – especially the discussions of the splice and map method, and using associative arrays.

Chapters 6-10 provide the first real appetizing recipes in the JavaScript Cookbook. Shelley first discusses building reusability using function definitions, anonymous functions, recursion, scopes and memorization. It's starting with this chapter that you really begin to learn how to use JavaScript rather than just playing around with it.

Event Handling is the first major hurdle a procedural programmer needs to overcome to use JavaScript effectively. Various event triggers are discussed in the sections of chapter 7. While most of the code is easy to comprehend, I ran into problems when using the new HTML5 drag and drop was discussed. I had to ask myself could drag-and-drop be any more complicated? This example worked on all but Opera, but the solution is convoluted. Overall, if you really want to know how screwed up code must be to work in all different browsers, chapter 7 (Handling Events) will demonstrate it. Internet Explorer's differences is the reason for most of the odd workarounds in this chapter.

We would all like each browser to work just like another but, unfortunately, each one has its own quirks. Chapter 8 talks about the various ways browsers handle color support and page sizes. The chapter ends by dealing with dynamic pages and bookmarking their state.

The first time I worked with JavaScript was when I was coding some form handling. Chapter 9 covers the ways to handle forms and modify web pages. The most useful recipes (at least, for me) were the last two, which showed how to hide and display form elements on the fly, and how to modify selection lists based on other form element entries.

All programming involves error handling and usually some debugging. Chapter 10 describes the various ways to handle errors, followed by a well-written set of tips on how to use the debuggers and inspectors for the major browsers.

The following three chapters all deal with manipulating web pages. The first of these contained a lot of discussion of namespaces. Namespaces can be confusing, and I didn't really understand them much better after I was finished reading. In addition, you are presented with several boilerplate templates, with little information as to why you would use them. I also had problems with some of the downloaded samples not running correctly on my browsers. Chapter 12 contains lots of fun ways to manipulate page content, with specific instructions on how to handle IE and its different ways of doing things. Finally, chapter 13 provided some good basics of page manipulation, including creating collapsible sections, and creating tab pages.

Accessibility is the major topic of chapter 14, where you are introduced to ARIA (Accessible Rich Internet Applications). Many web pages are not built with accessibility in mind, so this chapter is very important for giving the web designer the tools for well-designed and usable pages. Some ARIA techniques are straightforward, but others (such as creating collapsible form sections) are much more complex to get right. This chapter does a marvelous job, even though it is somewhat hard to read.

The next chapter covers creating media-rich and interactive applications. This chapter was pretty deep, and the examples were not necessarily bad, but the techniques required need the coder to really think clearly about how to accomplish their goal.

Chapters 16 and 17 cover JavaScript Objects and Libraries. In the Objects chapter, there is quite a bit of discussion around ECMAScript 5, which is not yet well supported in the browsers normally available. As one example, Shelley does say regarding the preventExtensions feature "by the time this book hits the streets, I expect (hope) at least a couple of browsers will have implemented this feature". The Libraries chapter was more problematic in that I was not able to follow along and get the supplied samples working correctly. In addition, the coverage of jQuery was only a high-level overview, leaving the reader wanting more. In her defense, Shelley acknowledges the breadth of the jQuery topic and refers you to the jQuery Cookbook for more information. Overall, I found chapter 17 unsatisfying and abrupt in its coverage.

Communication via Ajax is the main topic for the recipes of chapter 18. Without a proper web server at my disposal, I could not properly evaluate the workability of the solutions. I was also somewhat amused that one of the solutions was described with the caveat that it's not a recommended procedure. I would ask why it was included in that case.

The Working with Structured Data chapter starts by covering JSON (JavaScript Object Notation), but then adds in recipes for handling hCalendar Microformat Annotations and RDFa. The transition was a little jarring, and not overly useful, in my opinion.

The penultimate chapter covered the issues around persistent information. While using URLs and cookies to maintain some state are discussed, much of this chapter revolves around new capabilities made available in the new HTML5 specifications. Unfortunately, most browsers either do not support, or only partially support these features, so the information is only useful as a "taste of things to come".

The final chapter covers the use of JavaScript in non-browser environments. Widgets and gadgets are simple JavaScript applications that are easily coded and disseminated. There are discussions of creating applications for the iPhone, Android phones, and Blackberry phones.

As I step back and reflect on this book, I think that many topics are solutions that cannot be implemented because the typically available browsers don't support the new features yet. If a web page designer wants their site to be available to users now, they need to focus on the features that are well entrenched across the internet. Having so many solutions based on features and capabilities that are still being defined is only useful as academic exercises. I would have preferred that the JavaScript Cookbook be more useful for the state of the web right now. That is why I'm rating it only 7 out of 10.
Book Reviews

Submission + - Windows 7: the missing manual

r3lody writes: It took me a little while after Windows 7 became available before I gave up my Windows XP desktop and purchased a new laptop with Windows 7 Home Premium pre-loaded. Like those who endured the change to Windows Vista, I found myself floundering around a little trying to figure out all of the new bells and whistles Microsoft had added to their operating system. Windows 7: the missing manual by David Pogue is meant to address the needs of people like me. The book, while readable by beginners, is written for users with some acquaintance with Windows. Advanced users will find the book too simplistic, but users up to the intermediate level will find it a handy reference to the new features in all of the flavors of Windows 7.

Writing for the multiple levels of Windows 7 is handled by including a little sub-heading "cheat sheet" after each major heading. Most will have "All Versions", but you may see a subset like "Home Premium ? Professional ? Enterprise ? Ultimate". Handling multiple levels of users is a little more difficult. The book is written for advanced beginners to intermediate users, but beginners to Windows have "Up to Speed" sidebars added to help them understand concepts regular Windows users already know. More advanced users have "Power User's Clinic" sidebars to provide additional information.

Windows 7: the missing manual is organized into 8 parts, comprising 27 chapters and 4 appendices.

After an introductory section describing the book's layout, Part One deals with the Windows 7 desktop. Comprised of 5 chapters, Part One gives the basics of manipulating windows, programs, and files. Chapter 1 describes the Start menu, jump lists (frequently used documents) and the Run command. Next comes Explorer, the Taskbar, and general window controls. Most of chapter 2 is devoted to the eye candy provided by Aero. The third chapter discussing searching and organizing files follows that, with a good discussion of the much-improved Windows Search. Chapter 4 covers personalization (wallpaper, color and sound themes, screensavers and desktop icons), and the last chapter of part 1 explains the ways you can get help (Microsoft's Help system, Remote Assistance, and getting help from Microsoft).

Part Two uses 3 chapters to cover Windows 7 Software. After talking about opening and closing programs, opening and closing documents, and dialog boxes, David Pogue explains how to install and uninstall software, as well as handling compatibility issues. Speech recognition and gadgets got thrown into this chapter, but seem a little out of place. The next chapter discusses various freebie applications supplied with Windows 7, and those available as part of Windows Live Essentials. Most of those are explained in sufficient detail to use, but a few are deferred to later chapters. This part is closed out with rather brief coverage of Control Panel.

The next 5 chapters comprise Part Three, which is devoted to Windows 7 Online. After chapter 9 explains how to get hooked up to the Internet, chapter 10 is dedicated to Internet security. Microsoft Security Essentials, the Action Center, as well as Windows Firewall and Windows Defender are all covered, along with methods of protecting your privacy while you surf. This all leads into the grand tour of Internet Explorer 8, which is talked about in detail in chapter 11. The last two chapters go over Windows Live Mail and Windows Live Services.

Part Four is the media-centric portion of the book. David broke the discussion into three broad chapters: Windows Live Photo Gallery, Windows Media Player, and Windows Media Center. Windows Live Photo Gallery is Microsoft's challenger to Google's Picasa. While Picasa is more mature, Photo Gallery is not shabby by any means, and chapter 14 gives excellent explanations on how to get the most from the program. The next chapter goes over Windows Media Player, which has been around for a long time. There have been some minor changes to it, including streaming media to other computers and handling of more types of audio and video files. Windows Media Center was originally designed for the Media Center Edition PC, but is now available for any version of Windows 7 from Home Premium on up. You get a lot of information on how to set it up and use it for all sorts of media. You'll also find out how to use your PC as a DVR (assuming you have a TV tuner card or USB tuner).

The next part is all about hardware and peripherals. First printing, then Windows Fax and Scan, and finally general device handling are each given their due. The third and final chapter of Part Five covers laptops, tablets, and touchscreen computers, and their special capabilities and limitations.

One thing all computer users need to handle are the inevitable problems. Part Six covers various maintenance and trouble-shooting topics across three chapters. First, general maintenance and speed tweaks, followed by an in-depth discussion of disks, compression and encryption, and finally a chapter on backup, restore and trouble-shooting. All have just enough information to be useful, and not too much to absorb.

The last main part covers networking and homegroups. Windows is the most useful when it's part of a network, and Part Seven explains how to connect it and use it. After discussing setting up accounts, workgroups and domains have their own chapters, so home and office users can focus on what they need. This part ends with chapters on sharing files and remote control (including VPNs and Remote Desktop).

There is a set of 4 appendices that comprise Part Eight. Included are how to install and upgrade to Windows 7, how to use Regedit, and my favorite two chapters – Where'd It Go?, and the Master Keyboard Shortcut List.

Overall, the book does assume you've at least seen a previous version of Windows, as a lot of text explains how Windows 7 is different. I personally would have preferred the author keep the focus on Windows 7 and less on the differences from prior versions. There are a lot of attempts at humor. On the plus side, it keeps the tone of this fairly large book accessible to the novice to intermediate user. On the minus side, the occasional joke usually seems out of place.

I found Windows 7: the missing manual a valuable reference to the many offerings in Microsoft's latest incarnation of Windows. While the writing style varies from simple reference to the occasional attempt at light-hearted guidance, it is a comprehensive, informative and (most importantly) useful manual of the ins and outs of using Windows 7 in all its flavors. With few flaws, I rate this a 8 out of 10.

Comment Two minor corrections... (Score 2, Informative) 107

Two minor corrections: (1) The downloadable content is available. The publisher's had a glitch on their web site that has since been corrected (but not until after I had finished the review - oh well!) If you go to http://www.informit.com/title/0672330970 and click the Download tab, you'll get it. (2) The link for purchasing goes to the 7th edition. This is the 8th edition, and the link to that book is http://www.amazon.com/Sams-Teach-Yourself-Hours-Coverage/dp/0672330970/ref=sr_1_1?ie=UTF8&qid=1265061056&sr=8-1.
Book Reviews

Submission + - Sams Teach Yourself HTML and CSS in 24 Hours

r3lody writes: Sams Teach Yourself HTML and CSS in 24 Hours 8th edition, by Julie C. Meloni and Michael Morrison, provides the beginning and intermediate web designer with the tools needed to create standards-based web sites. The major focus of the book is XHTML 1.1 and CSS 2, but HTML 5 and some XHTML 1.0 are discussed. Overall, the presentation and content are very good. One small minus was the publisher's site did not include downloadable examples from the book. I also noticed that there were no noticeable errata until the latter parts of the book. Published in December of 2009, the 8th edition provides reasonably current information.

Each "hour" of the book includes a "What You'll Learn in this Hour" section at the beginning, and Q&A, Quiz and Exercises sections at the end. Most chapters also include a "Try It Yourself" section, indicating what you should be accomplishing with your own web site. The examples have color coding for the various tags, comments, etc., and the book's examples work with a number of browsers. Specifically, Apple Safari, Google Chrome, Microsoft Internet Explorer, Mozilla Firefox, and Opera browsers were used to test the examples. If you use the coding standards espoused in the book, your web pages should appear properly formatted across most computers. Handheld browsers are only covered briefly, in the section discussing media-specific style sheets.

Overall, the book is divided into five parts: Getting Started on the Web, Building Blocks of Practical Web Design, Advanced Web Page Design with CSS, Advanced Web Site Functionality and Management, and Appendixes.

Part I: Getting Started on the Web provides the customary introductory material, suitable for beginning users. After describing the seemingly obligatory "history of the web", the first hour concludes with discussions of how to choose a web hosting provider – a topic rarely covered in the books I've read. The second hour teaches how to get web pages uploaded to a web server using FTP, and how to distribute content in a file-based structure without a server. The next two hours then cover the basics of XHTML 1.1 and CSS 2. For both XHTML and CSS, very clear instructions on how to validate your coding help insure that your pages follow the standards.

The next 9 chapters comprise Part II: (Building Blocks of Practical Web Design). This part goes into detail regarding web page coding. Starting with text alignment using paragraph tags and lists, the book has a good collection of text formatting tips using CSS as the preferred style methodology. Tables and links are covered in the next two chapters at a pretty standard level. I found the chapter on using color had a lot of good information, but I believe a beginning user would find it somewhat confusing – especially when hexadecimal notation is introduced.

The next three chapters of this part of the book cover images and multimedia. I liked the focus on getting the right sizing for photos and banners, and the tutorial on how to place the images on the web page (including wrapping text, image maps, and clickable images). I was disappointed in the limited coverage of tiling and GIF animation. The multimedia chapter was a pleasant addition – one I have rarely seen in web design texts. The discussion was tilted toward Microsoft technology, so my testing worked properly only under Internet Explorer at first, however I finally managed to get Firefox to deal with the embedded object. Some information was given for embedding YouTube links, also. I would have liked to have seen more information on the parameters for the WMP object coding. The last chapter in Part II covers frames – both framesets and iframes – with only basic information.

Advanced Web Page Design with CSS is the main topic of Part III. These six chapters dig into the important aspects of CSS alignment. One chapter focuses entirely on margins, padding, alignment and floating, and provides a nice introduction to the full discussion of the CSS box model in the next chapter. Reformatting lists was the principal target of the next chapter, leading to a discussion of navigation bars (horizontal and vertical) in the chapter after that. This is where I started picking up on some irregularities that escaped a review. For example, even though this was supposed to be standard XHTML, I noticed some list item ending tags missing from the examples. Granted, browsers still display the list properly, but this should have been caught before printing.

The last two chapters in this part cover modifying text display using mouse actions, and fixed versus liquid layouts. I liked the mouse techniques to modify a displayed image based on which thumbnail image the mouse is over. It's a simple little method that looks very nice on the page. The liquid layout chapter gave me some problems at first. My attempts didn't work the same under different browsers at first, but when I went back over them while writing the review, they worked just fine. I'm still at a loss to understand what was wrong, so I suspect those starting out may have a similar experience.

The final major part, Advanced Web Site Functionality and Management, wraps up some miscellaneous issues. First, they cover how to create a modified CSS profile to make the web page more print-friendly. The next chapter provides an introduction to JavaScript. Unfortunately, this is where I found some more non-standard XHTML code. Web-based forms are covered only at a high-level in hour 22. The authors do provide examples of each type of form field, with CSS code to neaten up the page, but it appears to be a very cursory handling of the topic.

The final two hours go over the basics of keeping your web site organized, and how to publicize the site on major search engines. The book wraps up with a final part for the two appendixes, containing useful links to further information and a general XHTML and CSS reference.

Teach Yourself HTML and CSS in 24 Hours appears to be a properly authoritative text that would help you create a standards-based web site. Like most texts of this type, it does not reference web design software such as DreamWeaver. Rather, it addresses understanding exactly what code standards-based browsers will handle, and how you can manipulate them to create exactly what you want. The two main disappointments with the book are the obvious errors in the later chapters, and the lack of downloadable examples from the publisher's web site. That said, the content is so worthwhile, I rated it an 8 out of 10.
Books

Submission + - Styling Web Pages with CSS

r3lody writes: "Styling Web Pages with CSS: Visual QuickProject Guide, by Tom Negrino and Dori Smith, helps the beginning web designer learn how to use CSS in a simple, easy-to-follow format. This being my first exposure to one of the Visual QuickProject Guides by Peachpit Press, I was both pleased and disappointed when I received this slim volume. I was pleased in the presentation and clear descriptions given to each aspect of Cascading Style Sheets (CSS). I was disappointed in the brevity of the text, and the lack of downloadable materials to use to follow the examples in the book.

Each chapter starts with a brief explanation of its subject, followed by the major topics introduced via large, colorful titles. Finally, any "Extra Bits" provide follow-up explanations or point to where you can get further information.

Before any CSS is discussed, there is a general introduction including how the book is structured, the sample web site to be created, and what tools will be useful to create the site. For the tools, the authors recommend at least a text editor (not a word processor) and your favorite browser. BBEdit and TextWrangler are suggested for Mac owners, while Notepad is okay for Windows. I personally use Notepad++, which has styling cues for both HTML and CSS (as well as many others), so I would recommend it for Windows users. To insure compatibility with the browser, Tom and Dori say you should have Internet Explorer, Firefox, and Safari. Strangely, Opera is barely mentioned in the book. I tested the examples using the first two. Finally, a true CSS editor might be useful, as it will provide you with your options. They suggested MacRabbit's CSSEdit for Mac users, or WesternCIV's Style Master for either Macs or Windows. I used Style Master 4.6 for Windows during testing.

After the introductory chapter, CSS is explained starting with a chapter on the basics, with simple guidelines for their use. Classes (which can be used many times) are contrasted with ids (which can be used only once per HTML file), and the benefits of using external style sheets versus internal styles is explained.

The next three chapters build upon each other to provide gentle instruction on how to layout and style the text and images. Formatting menus, tables and headings are tackled next, followed by a chapter devoted to browser differences. Finally, alternative menu and page formatting and CSS debugging is discussed.

All of the major concepts of CSS are presented so that a beginner can easily understand them. While some ways of utilizing CSS properly can be the subject of debate, the authors have chosen a rational approach that serves the basic web designer well. The result is a set of web pages that follow a simply understood design, yet ensures that the layout and format is isolated to the CSS style document, rather than the HTML.

Over and over, Tom and Dori provide useful links to web sites with additional information on the intricacies of CSS, as well as providing suggestions for programs to help you with massaging images and references to other books for more in-depth coverage.

The best way to fully understand what Tom and Dori are trying to explain is to replicate the example web site (Alpaca Repo). Unfortunately, there is no link in the book or on PeachPit's web site to a set of downloadable images and html files. The only way I was able to replicate most (but not all) of the examples was to look at alpacarepo.com. It has six pages, two style sheets, and two photos. The book shows other photos and more complete pages, so it's a partial solution at best.

Overall, Styling Web Pages with CSS: Visual QuickProject Guide is a nice introduction to the potentially confusing topic of the proper use of CSS. Many of the fancier techniques are avoided for the more common and useful ones. The short length of the book allows the beginner to avoid the feeling of intimidation that can accompany reading a 1,000 page text that covers everything you never wanted to know. Even so, I felt less than satisfied after I finished. I wanted a little bit more than I was given. Even if the book doubled in size, it would still be accessible yet it could then leave the reader with a feeling of contentment. As this is the first QuickProject book I've read, that may simply be the target they were shooting for.

One final wish for Peachpit: please include downloadable files that the reader can access to duplicate the Alpaca Repo website. I was continually frustrated when I wanted to replicate what I had just read about, yet was missing JPEG files or extensive text that I could use. Consequently, I never felt as though I had actually gotten the hang of CSS."
Books

Submission + - Beginning GIMP: From Novice to Professional 2nd Ed

r3lody writes: "An extremely large amount of the information we get on a daily basis comes from what we see. Imagery is therefore very important to those who want to communicate with us. When computers had advanced enough to be able to process images in a digital fashion, the market opened up for programs that could manipulate them in many ways. While many professionals would opt for the paid programs, there is a free alternative: GIMP (Gnu Image Manipulation Program). The only stumbling block is learning how to use it properly. That is where Beginning GIMP: From Novice to Professional, Second Edition by Akkana Peck comes in.

I first attempted to use GIMP to fix a photograph or two of mine, but was quickly bogged down in the many options available in the program. That is why I was happy to get my hands on a copy of Beginning GIMP. The book is based mainly on GIMP 2.4, but the author included a preview of GIMP 2.6 in Appendix D. When I downloaded the latest verson of GIMP from gimp.org, I received GIMP 2.6.0. So I used the PortableApps version of GIMP (2.4.6) on Windows XP while reviewing the book and found only minor variations from the text.

One thing that strikes you as you open the book is the extensive use of color. Most texts are black-and-white throughout, but here you are presented with a pleasantly colorful tome. To follow the examples as best as I could, I downloaded the images available on the gimpbook.com web site. Although the images are supposed to be for the 2nd edition, several of those shown in the text for demonstrations purposes are not included. It appears that the images for the tools new to GIMP 2.4 are missing from the web site. This is surprising, since the 1st edition of the book covered version 2.4, so you would expect the images to be there.

The book begins by giving the reader a brief tour of the three main windows of GIMP: the Toolbox window, the Layer/Channels/Path/Undo window, and the Image window. Some basic navigation is presented, along with tear-off menus and how to modify tool placement. It concludes with a simple project layering a small image onto a larger one was given. Unfortunately, the files supplied from the web site did not include the PNG file used in the text, so it's difficult to reproduce the picture as shown. I later found the missing image in a GIMP-format file called wilber.xcf.gz. Unfortunately, xcf files are not discussed until the next chapter.

After the simple introduction, the author, Akkana Peck, gets into the most common adjustments a beginning user might need: re-sizing, cropping, rotating, brightening and darkening, and fixing red-eye. Each manipulation is presented with careful step-by-step instructions. I was able to match the pictures shown in the book, providing me with a level of comfort that I was learning the right way to fix photos.

One of the most common and useful methods of altering photographs uses the concept of layers. Layers act like cinematic cels, being mostly transparent with some opaque portions to lay on top of other layers. Chapter 3 gives a clear description of how to use layers to make changes. Two sample projects use layers to add text and another image to an existing photo, and to create an animated GIF using a series of layers for each frame of the animation. While I found minor differences between the text and the version of GIMP I used, I had no real problem understanding how the concept is applied.

You will probably need to do some freehand drawing from time to time, and chapter 4 covers the tools you'll need. While these tools are familiar to anyone who has used a basic painting program like Microsoft Paint, there are enough differences in how they are applied to warrant their own chapter. After creating some basic shapes (rectangle and circles), outlining and filling them, the author explores various fills and patterns. The chapter ends with a tutorial of creating a tree in a planter box, using just the drawing tools.

Every tool you use in GIMP works on the current selection. Knowing how to select just the parts of the image you want affected is important to getting the results you want. The author devotes an entire chapter to the numerous ways to select areas, add to or subtract from the selections, and fine-tuning them to only touch the parts you want touched. Basic rectangle, ellipse, and free-hand selections are followed by more sophisticated methods including the intelligent scissors and SIOX (Simple Interactive Object Extraction). The book also shows how to save selections as channels, so you can return to them in future editing sessions.

Sometimes, however, all you really need to do is a little touch-up on a photograph. Is someone's face in shadow or too much sun? Did you wish to get rid of some little irritating extra in a photo? Maybe you just wanted to draw attention to one subject and blur out the rest. Chapter 6 provides the information on how to make these basic adjustments. Darkroom techniques called dodging and burning provide minor adjustments to brightness, while cloning and healing can completely eradicate unwanted portions of the image. To draw attention to portions of the picture, you can enhance it using the blur and sharpen tools.

In addition to simple adjustments, GIMP offers a plethora of various tools to modify or create images. Under the Filters menu, you will find a large selection of tools. When I first looked, I felt that there were so many, who would need all of them? In the Filters and Effects chapter, Akkana Peck goes through them all, showing how they can be used to enhance your image. Because there are so many, she does not provide examples of each effect, but each one is described and you are encouraged to play. Remember, Undo is your friend here!

Chapter 8 delves into a very important aspect of your photos and drawings — the colors. First, the concepts of the RGB (Red-Green-Blue) and CMY (Cyan-Magenta-Yellow) colorspaces are described, followed by the HSV (Hue-Saturation-Value) space. A lot of time is used reviewing how these different colorspaces are used, and how they can be manipulated. The tools for breaking the image into its component layers, and demonstrations on how manipulating them can enhance your photo follow. The chapter concludes with some discussion on color profiles.

Now that you've learned quite a few niceties of GIMP, you need to learn more advanced techniques. The next two chapters go into more detail about drawing and compositing. The chapter on Advanced Drawing covers three main topics: mask and layer modes, realism using perspective and shading, and making new brushes, patterns and gradients. The Layer Mode section is the most interesting, showing how blending layers using various modes other than simple overlays can produce interesting effects. There are a number of examples, all easily followed and replicated. Once you've got a basic understanding of the advanced drawing techniques, it's time to put them to use on photographs. The chapter on Advanced Compositing shows how to use layer modes to play with images to improve their looks. You can brighten images, improve contrast, create eerie landscapes, fix noisy photos, and create panoramas, all using various layer modes. Many examples are shown, so you can get a good feel for the technique.

GIMP plug-ins provide automated tasks for the user. In fact, a number of GIMP's tools are provided by plug-ins. A variety of languages is supported. Plug-in scripts can be written in Scheme (the default — always installed), Python, and Perl (if available on your computer). If you need greater speed, you can write a plug-in in C. Chapter 11 uses the sphere plug-in as an example. Xtns — Misc — Sphere creates a sphere on a solid background. Akkana explains how to modify the script to provide a transparent background. A full discussion of the programming of the original script follows. Each step is carefully explained so only a minimal amount of programming background is needed to understand the concepts. Finally, examples in Python, Perl and C round out the chapter. Also included are explanations of how to find plug-ins and help on callable routines.

Unfortunately, there is so much to GIMP that one medium-sized book cannot contain it all. There is a potpourri of topics in the final chapter, including printing, scanning, setting preferences and the configuration files. The chapter ends with information on where to go for more help, source code, and images.

The appendices offer information on how to get and install GIMP, how to install it on older systems, and how to build it from source. Naturally, GIMP is always evolving, and Appendix D offers a list of enhancements in GIMP 2.6 that were not incorporated into the main text.

Over the course of reading the book, I had very little trouble reproducing the examples as demonstrated. I must admit that, despite the book's subtitle: From Novice to Professional, I am now at best an intermediate user. The depth of the capabilities available within GIMP is much deeper than the author could provide in the text. At almost 600 pages, this book is just about the right size, and provides the right amount of instruction for most people. The Additional Topics chapter provides information and links for further study and training, for those so inclined. If you are a beginner to image manipulation, and want to get fairly proficient with GIMP, then definitely get Beginning GIMP. It's not leaving my desk any time soon."

Comment Re:IDS (Score 3, Informative) 137

Chapter 6 (Using Tools for Security Testing) goes into NMAP and Nessus in depth, then mentions a few additional tools at the end. dsniff, Ethereal, Ettercap, LIDS, Netcat, SARA, Snort, tcpdump, and Titan each have a one-paragraph writeup, with links to the websites for the tools.

Slashdot Top Deals

"Atomic batteries to power, turbines to speed." -- Robin, The Boy Wonder

Working...