EPUB 3 Best Practices – A solid guide to the EPUB digital publishing process – #bookreview

EPUB 3 Best Practices
Matt Garrish and Marcus Gylling
(O’Reilly – paperback, Kindle)

If you publish ebooks and other documents or hope to publish some soon, you definitely need to be aware of EPUB 3.

“EPUB is a format for representing documents in electronic form,” the two authors of EPUB 3 Best Practices point out. “Ebook, on the other hand, is just an abstract term used to encompass any electronic representation of a book, including formats such as PDF, HTML, ASCII text, Word, and a host of others, in addition to EPUB.”

They add: “EPUB is designed to be a general-purpose document format, and it can be used to represent many kinds of publications other than books: from magazines to newspapers to journals, and on through office documents and policies and beyond.”

This 345-page, 11-chapter book is not a digital publishing how-to guide that you can zip through in a weekend. Indeed, its contents are, by nature, a bit dense. But Garrish and Gylling do a fine job of explaining and illustrating each key aspect of EPUB. And their book contains essential information that you will need to know — or at least be aware of — if you intend to be a serious publisher of online publications.

You can, after all, hire the services of an EPUB consultant to help you with the technical details. Yet, it can be very beneficial to have a good sense of what you will be paying to have done.

Likewise, you should consider this book if you are thinking of becoming an EPUB consultant. The two authors are EPUB experts;  Gylling, in fact, led the development of the EPUB 3 specification.

“On a practical level,” they note, “EPUB defines both the format for your content and how reading systems go about discovering it and rendering it to readers….” And: “One of the most common misconceptions about EPUB is that its a ‘flavor’ of XML. (‘Should I use EPUB or DocBook?’ or, even worse, ‘Should I use EPUB or HTML5?’ Hint: EPUB (pretty much) = HTML5.)”

If you have little or no experience with EPUB, you may want to check out two ebooks–both free–before diving into EPUB 3 Best Practices. Those books are: What is EPUB 3?  and Accessible EPUB 3.

Si Dunn

Windows PowerShell 3.0: Step by Step – A huge guide to things you can do after you’ve found PowerShell – #bookreview

Windows PowerShell 3.0: Step by Step
Ed Wilson
(Microsoft Press – paperback, Kindle)


Wondering what the “Open Windows PowerShell” option does on your Windows 8 PC?

There’s a book for that: Windows PowerShell 3.0: Step by Step by Ed Wilson.

According to Wilson, “Windows PowerShell 3.0 is an essential management and automation tool that brings the simplicity of the command line to the next generation operating systems.” It is “included in Windows 8 and Windows Server 2012, and portable to Windows 7 and Windows Server 2008 R2” and “offers unprecedented power and flexibility to everyone from power users to enterprise network administrators and architects.”

Windows PowerShell is accessed as a command console that also offers a programming language. This means you can create files that will perform some automated actions using “cmdlets” (pronounced “command-lets”) at the PowerShell prompt. The cmdlets, Wilson writes, “are like executable programs, but they take advantage of the facilities built into Windows PowerShell, and therefore are easy to write.” cmdlets are not scripts, he adds, “because they are built using the services of a special .NET Framework namespace.”

In one basic, introductory example in Wilson’s book, you create a batch file — TroubleShoot.bat — that automatically enters four commands in sequence and pipes the results of each command to a text file:

ipconfig /all >C:\tshoot.txt
route print >>C:\tshoot.txt
hostname >>C:\tshoot.txt
net statistics workstation >>C:\tshoot.txt

Wilson’s book spans 666 pages, so there are many other features and uses for PowerShell that should please power users, technical staff, Windows network administrators, and Windows networking consultants. Some programmers also will relish its opportunities to write various types of PowerShell files and create functions, subroutines, modules, and other processes.

If you are studying to become a Microsoft Certified Solutions Expert (MCSE) or Microsoft Certified Trainer (MCT), you may know this already: Windows PowerShell is considered “a key component of many Microsoft courses and certification exams.”

Windows PowerShell 3.0: Step by Step is well written, and it is solidly illustrated with code examples, screenshots, and other graphics. The author is a senior consultant at Microsoft and a well-known scripting expert. Readers are not expected to have “any background in programming, development, or scripting.” So, it is a good (albeit hefty)  how-to guide for PowerShell beginners and intermediate users.

Si Dunn

Designing Games – A well-written, comprehensive guide to video game engineering – #bookreview

Designing Games
A Guide to Engineering Experiences
Tynan Sylvester
(O’Reilly – paperback, Kindle)

If you design video games, if you hope to become a game creator, or if you work for a company whose lifeblood is creating and maintaining successful video games, you need to read this excellent book.

 Tynan Sylvester provides a comprehensive overview of the design processes that are the heart of successful games. And he describes the day-to-day actions necessary to keep game projects on track to completion.

“A game can’t just generate any old string of events, because most events aren’t worth caring about,” Sylvester contends. He is a veteran designer who has worked on everything from independently produced games to big-studio blockbuster games. “For a game to hold attention, those events must provoke blood-pumping human emotion. When the generated events provoke pride, hilarity, awe, or terror, the game works.”

Unlike screenwriters, novelists, or choreographers, game designers do not focus on creating events, Sylvester explains. “Instead of authoring events,  we design mechanics [the rules for how a game works]. Those mechanics then generate events during play.”

In his view, “The hard part of game design is not physically implementing the game. It is inventing and refining knowledge about the design.” And successful game creation involves “inventing mechanics, fiction, art, and technology that interconnect into a powerful engine of experience.”

His 405-page book also shows why you should not try to spell out everything up front before beginning work on a new game. It is too easy to overplan, he emphasizes. But it is also easy to underplan. So you should aim for a process in the middle: iteration, “the practice of making short-range plans, implementing them, testing them, and repeating.” And that loop-like process is applied not just to the overall game. “We can iterate on a level, a tool, or an interface. On larger teams, there should be many different iteration loops running at the same time.”

According to news accounts emerging from the recent Game Developers Conference in San Francisco, much of the video game creation business is now gravitating toward independent developers and game companies with 10 or fewer employees. And the main focus within that movement is on creating games for tablet computers and smartphones–platforms with lower barriers to entry. But powerful new video game consoles are expected to appear soon, and they likely will drive the creation of new games, as well as upgrades for some successful existing games.

Whether you work alone, in a small shop, or on intercontinental game-development teams within big companies, you can learn important insights, processes, and skills from Tynan Sylvester’s Designing Games.  And if you are now in the process of trying to find a design job somewhere in the video game industry, you definitely need to read it.

Si Dunn

Windows 8: The Missing Manual – The reference guide you need to sort it all out – #bookreview

Windows 8: The Missing Manual
David Pogue
(O’Reilly – paperback, Kindle)

Okay, so Windows 8 is not exactly setting the digital world on fire these days. Many of us bought it anyway, because we have been using Windows machines at home and in office settings for a long, long time. And we like to keep up–if only out of curiosity and to hedge our digital bets. For example, I now have Windows 8 on one laptop, Windows 7 on another, and Windows XP on two other computers. And all versions have served me well, thus far. 

I have been using Windows since the days of IBM PC-XT clones in the early 1980s. Yet that doesn’t make me a Windows expert. I make good use of the features I need as a writer, editor, and occasional programmer. And I completely ignore the many other features, until I suddenly need details such as how to work with an ISO disk image or temporarily override a pop-up blocker or set up a remote desktop connection. 

That’s when I grab for a reference book. David Pogue’s new Windows 8: The Missing Manual now occupies a prominent spot on my reference shelf. At 905 pages and 3+ pounds, it’s hefty enough to double as a doorstop or workout weight. But I keep it within quick reach when I work with Windows 8. 

The book’s 28 chapters and three appendixes are divided into eight well-organized parts: 

  • Part One: TileWorld
  • Part Two: The Windows Desktop
  • Part Three: Windows Online
  • Part Four: Pictures & Music
  • Part Five: Hardware & Peripherals
  • Part Six: PC Health
  • Part Seven: The Windows Network
  • Part Eight: Appendixes 

“Let’s start with the elephant in the room: Windows 8 is two operating systems in one,” Pogue writes. “They have separate software programs, control panels, Help systems, Web browsers, application switchers–and separate ways of doing things.” Microsoft, he adds, strongly disagrees with that assessment and “certainly doesn’t use the term ‘TileWorld’….”

The familiar Windows desktop portion of Windows 8 “is basically Windows 7,” Pogue says. “It’s the familiar world of overlapping windows, the taskbar, and drop-down menus. It’s designed for use with a mouse and keyboard. In this environment, you can run any of the four million existing Windows programs…..”

Meanwhile, the TileWorld part of Windows 8 is, Pogue says, “a new environment for touchscreens, like tablets and touchscreen laptops. This environment looks completely different–and works completely differently. There’s no taskbar, windows don’t overlap, and there are no drop-down menus. For TileWorld, you have to buy and install a completely new kind of app.”

My Windows 8 PC does not have a touch screen, so I don’t make much use of TileWorld or its apps, yet. Sometimes I click on the Calendar app or tiles that bring up Google Chrome, Amazon, eBay, or the Kindle reader. Mostly, however, I just click on the tile that brings up the traditional desktop, where I feel much more at home. 

But once I am ready to venture deeper into TileWorld (and that day is coming soon), Windows 8: The Missing Manual  offers five full chapters of how-to information.

David Pogue’s new book covers all versions of Windows 8, including Windows RT. “There are no longer 17,278 versions of Windows, praise Ballmer,” he writes. “No more Starter, Home, Home Premium, Ultimate, blah blah blah. Basically, there are only two versions for sale to the public–Windows 8 and Windows 8 Pro–and the differences are minor.” (He does note that a third version, Windows 8 Enterprise, is available to corporate buyers only.)

“And then,” he warns, “there’s Windows RT. Be careful.”

He explains: “Windows RT does not run on computers with Intel processors and does not run traditional Windows software (Photoshop, Quicken, iTunes, and so on. It’s designed for low-powered touchscreen gadgets like tablets–notably Microsoft’s own $500 Surface tablet–and maybe a few simple laptops.

“Basically,” he continues, “Windows RT is all TileWorld. It runs only TileWorld apps.” It has such traditional Windows apps as the Calculator and Control Panel. And the Surface tablet runs RT versions of Word, PowerPoint, and Excel. “But otherwise,” Pogue cautions, “Windows RT doesn’t run ‘real’ Windows software.”

I download lots of stuff and run many programs, so my hard drives tend to get cluttered and fragmented fairly quickly. One of my favorite chapters of Windows 8: The Missing Manual focuses on “Maintenance, Speed Tweaks & Troubleshooting.” Among its tips are “Three Speed Tricks” that can help keep my Windows 8 PC forging ahead at reasonably full steam. There also are some cool tips in Appendix B, where I can have (dangerous) “Fun with the Registry” if I desire.

I have made a list of several chapters that I intend to revisit soon so I can spend some time hooking up and testing a few peripherals, updating some drivers, and making adjustments to some icons. Essentially, almost anything I want to know or need to know about using my Windows 8 PC appears to be covered in this well written, well illustrated, nicely organized book.

Everything, of course, except the recently leaked news of a Windows 8 upgrade called Windows Blue. (Yet Pogue does predict in his book: “Maybe Windows 8 is meant to be a transitional OS. Maybe the next one will be all TileWorld, all touchscreen, all the time.”)

Having experienced many run-ins over the decades with Microsoft’s legendary “blue screen of death,” I will not be quick to grab any Windows software product named Blue. Not as long as Windows 8, 7, and XP keep working well enough for what I do.

– Si Dunn 

Jump Start CoffeeScript – A quick guide for experienced programmers – #programming #bookreview

Jump Start CoffeeScript
Earle Castledine
(SitePoint – paperback, Kindle)

CoffeeScript is a fun yet “serious” computer language. It is, declares the coffeescript.org website, “a little language that compiles into JavaScript. Underneath that awkward Java-esque patina, JavaScript has always had a gorgeous heart. CoffeeScript is an attempt to expose the good parts of JavaScript in a simple way.”

And therein rubs a lie, to re-coin a very old phrase. Many beginners somehow get the notion that they can take up CoffeeScript as a cool way to avoid learning JavaScript.

It is not. Your compiled code from CoffeeScript is in JavaScript, and how, exactly, do you plan to debug it if you don’t know JavaScript? (Also, a key goal of CoffeeScript is to help you learn to write better JavaScript.)

Which brings us to Jump Start CoffeeScript by Earle Castledine. This is an entertaining yet serious programming book that promises, on its cover, to show you how to “get up to speed with CoffeeScript in a weekend.”

Repeat after me: This is not a book for computer beginners, nor anyone seeking to skate around a requirement to learn JavaScript.

Castledine’s 151-page book quickly takes you, in just one chapter, from “Hello CoffeeScript!” to beginning the process of building a computer game. And, the author promises, it’s “[n]ot just the outer husk of a boring space-based shoot ‘em up, but a complete, extensible HTML5 game with tile maps, particle effects, AI, and (of course) Ninjas.”

Despite the “weekend” tagline on the cover, the book is written in part as a story in which you have one week to develop and deliver the HTML5 game as a software product. But (spoiler alert!), you will, miraculously, finish the process one day early. (This seldom happens in real-life software development.)

If you are comfortable with JavaScript, HTML and computers, Castledine’s book can provide you with an enjoyable, challenging, and useful way to learn CoffeeScript. (You will also need to have Node.js installed, so you can use npm, Node’s package manager for modules, to download and install the coffee-script module — the hyphen is required here.)

If you are not comfortable with the aforementioned qualifications, here’s another warning. To keep the book short, almost every code example is presented as an excerpt. The full pieces of code are contained within a downloadable code archive. While using the book, you are expected to open specific files and add specific lines of code. And exactly where in the file you are supposed to add them seldom is spelled out in good detail. Basically, you are supposed to know this stuff already.

For example, in Chapter 1, you are told to “Plop a canvas element into your web page using a unique ID….”

First, you have to realize that the presented excerpt is part of a particular index.html file that will become an introductory project’s web page. And as for precisely where to plop that piece of code, you just have to know. In the very next sentence, you are told: “Now we need to grab a reference to its drawing context via CoffeeScript….” This is followed by another code excerpt, and: “If you’re compiling this code with coffee, it needs to be in a separate file, compiled, then included in the web page.” And so forth.

If you don’t know what to do without further instruction, prepare to be confused.

The author is a well-known JavaScript expert who’s very good with CoffeeScript, too. And, the goal of this SitePoint book is to quickly get you up to speed with CoffeeScript.

You will get up to speed–if you possess some programming experience, know some JavaScript and HTML, and can follow the author’s instructions without needing basic 1-2-3, a-b-c steps.

Si Dunn

NOOK HD: The Missing Manual – Tips and tricks for getting the most from your e-reader tablet – #bookreview

NOOK HD: The Missing Manual
Preston Gralla
(O’Reilly – Kindle, paperback)

Prolific and top-notch technical writer Preston Gralla is back again, this time with a handy “Missing Manual” that explains how to use two Barnes & Noble e-reader tablets, the NOOK HD and NOOK HD+.

His 18-chapter, 464-page book is divided into eight well-written parts containing generally good illustrations. The parts are:

  • Part  One – The Basics – A guided tour of the hardware, showing you how to use the NOOK as an e-reader and tablet.
  • Part Two – Reading Books and Periodicals – Shows how to use the NOOK’s many reading tools.
  • Part Three – Managing Your Library – How to buy books, newspapers, and magazines and track them in your personal library. Includes how to borrow and lend books from your NOOK, too.
  • Part Four – Apps, Media, and Files – Includes “how to find, download, install, and use thousands of apps…” and how to watch movies and TV shows and listen to Internet radio stations or play music from your own collection. Also, how to transfer files to your NOOK and use its built-in music player.
  • Part Five – The Web and Email – Shows “how to browse the Web and send and receive email using any email account.”
  • Part Six – Getting Social – How to keep track of your contacts, how to use the NOOK’s social features, including NOOK Friends. Also discusses using the NOOK on Facebook, Twitter and Google+.
  • Part Seven – Advanced Topics – Shows how to tweak some features and how to root your NOOK so it can “run like a standard Android tablet.”
  • Part Eight – Appendixes – These cover troubleshooting, accessories for the NOOK, file formats that a NOOK can handle, and things you can do with a NOOK at a Barnes & Noble store.

Gralla notes that the NOOK HD and NOOK HD+ can be used with microSD cards to expand the available memory for your stuff. The HD comes in 8 GB and 16 GB versions. The HD+ has 16 GB and 32 GB versions.

The HD’s screen is 7 inches.  The HD+ screen is 9 inches. The HD+, he adds, also “has a slightly faster processor than the NOOK HD–a 1.5 GHz dual-core speed demon. The extra oomph is needed to power the HD+’s larger screen.”

If you’ve gotten a NOOK HD or HD+ or are planning to get one soon, definitely add this book to your must-have list. Also, Gralla urges,  “strongly consider buying a cover or case. A cover protects your NOOK and its screen from damage, so they’re well worth the small investment.”

Si Dunn

The Definitive ANTLR 4 Reference – You, too, can be a parsing guru – #programming #bookreview

The Definitive ANTLR 4 Reference
Terence Parr
(Pragmatic Bookshelf – paperback)

The self-described “maniac” behind ANTLR — “ANother Tool for Language Recognition” — is at it again. Terence Parr has rewritten ANTLR “from scratch” and celebrated by bringing out a new edition of his book, The Definitive ANTLR 4 Reference.

Parr, a professor of computer science and graduate program director at the University of San Francisco, says his book is “specifically targeted at any programmer interested in learning how to build data readers, language interpreters, and translators. This book is about how to build things with ANTLR specifically, of course, but you’ll learn a lot about lexers and parsers in general. Beginners and experts alike will need this book to use ANTLR 4 effectively. To get your head around the advanced topics in Part III, you’ll need some experience with ANTLR by working through the earlier chapters.”

Also: “Readers should know Java to get the most out of the book.” ( Java 1.6 or later is required.)

According to Parr: “ANTLR v4 is a powerful parser generator that you can use to read, process, execute, or translate structured text or binary files. It’s widely used in academia and industry to build all sorts of languages, tools, and frameworks. Twitter search uses ANTLR for query parsing, with more than 2 billion queries a day. The languages for Hive and Pig and the data warehouse and analysis systems for Hadoop all use ANTLR. Lex Machina uses ANTLR for information extraction from legal documents. Oracle uses ANTLR within the SQL Developer IDE and its migration tools. The NetBeans IDE parses C++ with ANTLR. The HQL language in the Hibernate object-relational mapping framework is built with ANTLR.”

So…it’s out there in many different and big ways. But ANTLR also can be used for smaller projects.

Notes Parr: “…you can build all sorts of useful tools such as configuration file readers, legacy code converters, wiki markup renderers, and JSON parsers. I’ve built little tools for creating object-relational database mappings, describing 3D visualizations, and injecting profiling code into Java source code, and I’ve even done a simple DNA pattern matching example for a lecture.”

Parr’s 305-page, 15-chapter book is divided into four major parts:

  1. Introducing ANTLR and Computer Languages
  2. Developing Language Applications with ANTLR Grammar
  3. Advanced Topics
  4. ANTLR Reference

This latest version of ANTLR “has some important new capabilities that reduce the learning curve and make developing grammars and language applications much easier. The most important new feature,” Parr adds, “is that ANTLR v4 gladly accepts every grammar you give it (with one exception regarding indirect left recursion….)”

To properly understand that exception and how it must be dealt with, you will need to read “Dealing with Precedence, Left Recursion, and Associativity” in Chapter 5.

This is not a book for programming beginners. But Terence Parr is a good writer who injects both clarity and occasional humor into his descriptions. And he provides numerous code examples and illustrations to help guide you along the way to becoming a parsing guru and mastering ANTLR v4.

Si Dunn