Fast Guide to Cubase 6 – Not so fast but packed with good info – #bookreview

Fast Guide to Cubase 6
By Simon Millward
(PC Publishing, paperback, list price $29.95)

I’m not sure a 474-page book should bill itself as a “fast guide.” For Simon Millward’s new work, a better descriptor would be “thorough.”

Steinberg Cubase 6 software is feature-rich and powerful software for music creation and audio recording. And this thick guidebook provides a thorough gathering of details, steps, tips and illustrations that show how to use the software’s many features.

The popular music software package has a reputation for being user-friendly and flexible. And it comes with a manual.

But Simon Millward’s book aims to provide readers with much more, including: (1) “the essential information to get you up and running in the shortest possible time”; and (2) descriptions of “advanced techniques and a wide range of theoretical knowledge which help you get better results.”

The major topics covered are:

  • Installing and setting up Cubase 6
  • Audio and MIDI recording and editing
  • Mixing, mastering and EQ (equalizers)
  • VST (Virtual Studio Technology) instruments and plug-in effects
  • Loop manipulation and beat design
  • Music production tips and tools
  • Media management

That is only a partial list, of course. The author cautions: “Before you can use Cubase you must have some idea of how to record and manipulate MIDI data, how to record and manipulate audio signals, how you are going to get an audio signal into the computer and how you are going to feed it back out into the real world.”

Fortunately, his well-written and helpfully illustrated book includes much of that crucial how-to information. It also provides a macro library, a heavy-duty glossary, and a useful list of Web resources. 

Computer-savvy musicians, music producers, sound recordists and audio professionals — and readers who aspire to be any of those — should consider owning and using Fast Guide to Cubase 6.

Si Dunn‘s latest book is a novel, Erwin’s Law. His other published works include Jump, a novella, and a book of poetry, plus several short stories, all available on Kindle.

A Bug Hunter’s Diary: A Guided Tour through the Wilds of Software Security – #programming #bookreview

A Bug Hunter’s Diary: A Guided Tour through the Wilds of Software Security
By Tobias Klein
(No Starch Press, paperback, list price $39.95; Kindle edition, list price $31.95)

If your passion or desire is to find and kill software bugs and fight hackers, you should check out this well-written how-to book.

Tobias Klein, an information security specialist, has tracked down many difficult bugs and identified security vulnerabilities in some of the world’s best-known software, including Apple’s iOS, the Mac OS X kernel, web browsers, and the VLC media player, among others.

Using a diary approach, plus code examples and illustrations, Klein describes a bug he has just discovered in a software package. Then he illustrates how it creates a security vulnerability that a hacker could exploit, and he describes how to fix or at least reduce its risks.

Chapters 2 through 8 each focus on separate bugs, and Klein includes a list of “lessons learned” for programmers who want to avoid creating similar problems.

Klein’s well-illustrated book is organized as follows:

  • Chapter 1: Bug Hunting – (a brief overview.)
  • Chapter 2: Back to the ‘90s – (shows how he discovered a bug and vulnerability in a Tivo movie file that allowed him to crash a VLC media player and gain control of the instruction pointer.)
  • Chapter 3: Escape from the WWW Zone – (illustrates how and where he found a bug in the Solaris kernel and the “exciting challenge” of demonstrating how it could be exploited for arbitrary code execution.)
  • Chapter 4: Null Pointer FTW – (describes “a really beautiful bug” that opened a vulnerability into “the FFmpeg multimedia library that is used by many popular software projects, including Google Chrome, VLC media player, MPlayer, and Xine to name just a few.”)
  • Chapter 5: Browse and You’re Owned – (discusses how he found an exploitable bug in an ActiveX control for Internet Explorer.)
  • Chapter 6: One Kernel to Rule Them All – (focuses on how he decided to search for bugs in some third-party Microsoft Windows drivers and found one in an antivirus software package.)
  • Chapter 7: A Bug Older than 4.4BSD – (how he found an exploitable bug in the XNU kernel OS X.)
  • Chapter 8: The Ringtone Massacre – (how he found an exploitable bug in an early version of the iPhone’s MobileSafari browser that enabled him to modify ringtone files and access the program counter.)
  • Appendix A: Hints for Hunting – (“…some vulnerability classes, exploitation techniques, and common issues that can lead to bugs.”)
  • Appendix B: Debugging – (about debuggers and the debugging process.)
  • Appendix C: Mitigation – (discusses mitigation techniques.)

Tobias Klein is the author of two previous information security books that were published in Germany. Because hackers use many of the same tools as those seeking to keep them out, there is an important limit on how much detail Klein is able to impart in this book.

As he notes in a disclaimer: “The goal of this book is to teach readers how to identify, protect against, and mitigate software security vulnerabilities. Understanding the techniques used to find and exploit vulnerabilities is necessary to thoroughly grasp the underlying problems and appropriate mitigation techniques. Since 2007, it is no longer legal to create or distribute “hacking tools” in Germany, my home country. Therefore, to comply with the law, no full working exploit code is provided in this book. The examples simply show the steps used to gain control of the execution flow (the instruction pointer or program counter control) of a vulnerable program.”

Si Dunn

Mac Attack! Three new books for Macintosh users – #bookreview

No Starch Press and O’Reilly Media recently have released three new books aimed at Macintosh users.

One is for Mac newcomers. Another is for those who want to learn a lot more about the Mac OS X Lion operating system without having to read “tersely written” Apple help screens. And the third is for programmers who want “to build native Mac OS X applications with a sleek, developer-friendly  alternative to Objective-C….”

Taking it easy first…

Doing ‘Simple Projects’ with a Mac

My New Mac Lion Edition: Simple Projects to Get You Started
By Wallace Wang
(No Starch Press, paperback, list price $29.95 ; Kindle edition, list price $9.99)

If you are computer newbie or switching over from Windows or other operating systems, here is a good book to help you put your new Mac to work in a hurry.

My New Mac Lion Edition shows how to do practical stuff such as connecting to the Web, playing and burning CDs and DVDs, pulling digital photos off your camera so you can edit and share them, and working with the Mac’s security features.

Given today’s risky Internet and office computing environment, it might have been better to describe the security features much earlier in the book, well before the working-online chapters. But as a practical guide to learning and using the Mac’s key features, this 472-page how-to guide is written well and has plenty of illustrations and clear lists of steps. It even describes several ways to eject a stuck CD or DVD.

The 56 chapters are grouped into seven parts:

  • Part 1: Basic Training – Everything from using the mouse to opening apps.
  • Part 2: Wrangling Files and Folders – Finding files, storing files, sharing files.
  • Part 3: Making Life Easier – Shortcut commands, controls, updating software, saving and retrieving contact information, using appointment calendar, and typing in foreign languages.
  • Part 4: Playing Music and Movies – Playing audio CDs, ripping and burning audio CDs, playing a DVD, listening to online programs and free college lectures, and editing videos with iMovie.
  • Part 5: The Digital Shutterbug – Transferring, editing and displaying digital photographs.
  • Part 6: Surfing and Sharing on the Internet – Numerous things web and email, plus instant messaging with iChat.
  • Part 7: Maintaining Your Mac – Energy conservation, ejecting stuck CDs/DVDs, password protecting  your Mac, encrypting your data, and configuring your firewall.

The author, Wallace Wang, has written several best-selling computer books. He’s also an ongoing career as a standup comic.

More IS Better: What to Do with 50+ Programs and 250 New Features

Mac OS X Lion: The Missing Manual
By David Pogue
(O’Reilly, paperback, list price $34.99)

David Pogue created the popular Missing Manual series, and the New York Times technology columnist definitely knows how to put together a good how-to book.

His 909-page Mac OS X Lion: The Missing Manual is exactly what you need to become (over time and with diligent effort, of course) a Mac power user. It’s also what you need if you’d rather settle for being a well-informed user who likes having a handy source  for looking up information about a Mac feature or program.

In this book, you begin well beneath the “Hello, World!” level by learning to say “oh-ess-ten,” not “oh-ess-ex.” Once you master that, you get to move into “The New Lion Landscape,” where you are informed that “Apple’s overarching design philosophy in creating Mac OS X was: ‘Make it more like an iPad.'”

Then, you quickly learn how to use “Full Screen Mode, Safari” and “Full Screen Apps, Mission Control.” And, by the way, you are still officially in Chapter 0 at this point (that’s “zero,” not “oh”).

Pogue’s book is smoothly written. (You don’t, after all, just luck into writing for the Times.) It has a good array of screenshots and other illustrations. And it offers plenty of tips and notes amid the instructional paragraphs.

The book’s six parts (with seven chapters each) are focused as follows:

  • Part 1: The Mac OS X Desktop – “[C]overs everything you see on the screen when you turn on a Mac OS X computer….”
  • Part 2: Programs in Mac OS X – Describes “how to launch them, switch among them, swap data between them, use them to create and open files, and control them using the AppleScript and Automator automation tools.”
  • Part 3: The Components of Mac OS X – “[A]n item-by-item discussion of the individual software nuggets that make up this operating system–the 29 panels of System Preferences and the 50-some programs in your Applications and Utilities folders.”
  • Part 4: The Technologies of Mac OS X – “Networking, file sharing, and screen sharing…” plus “fonts, printing, graphics, handwriting recognition…sound, speech, movies…” and even some looks at how to use “Mac OS X’s Unix underpinnings.”
  • Part 5: Mac OS X Online – “[C]overs all of the Internet features of Mac OS X.” Everything from email to chatting to working in the cloud, and even “connecting to, and controlling, your Mac from across the wires — FTP, SSH, VPN, and so on.”
  • Part 6: Appendixes – These include a Windows-to-Mac dictionary (for Windows refugees), information on installing Mac OS X, troubleshooting information, and “a thorough master list of all the keyboard shortcuts and trackpad/mouse gestures in Lion.”

If you’re serious about using your Mac and weary of opening endless not-so-helpful help screens, you should seriously consider owning this book.

A Programmer’s Guide to MacRuby

MacRuby: The Definitive Guide
By Matt Aimonetti
(O’Reilly, paperback, list price $39.99; Kindle edition, list price $31.99)

“MacRuby,” the author says, “is Apple’s implementation of the Ruby programming language on top of the Objective-C technology stack.”

His book is a straightforward, no-nonsense guide intended to show developers how “to write native applications for the Cocoa environment using the popular Ruby syntax as well as the well-known and robust Objective-C and C libraries.”

He declares his work “neither a Ruby book nor a Cocoa book,” but states that “it should provide you with enough information to understand the MacRuby environment and create rich applications for the OS X platform.”

MacRuby: The Definitive Guide is segmented into two major parts. Part 1 (“MacRuby Overview”) introduces MacRuby, including what it is, how it’s installed, how it works, what you can do with it, and how it relates to what you already probably know. Part 2 (titled “MacRuby in Practice”)  “covers concrete examples of applications you might want to develop in MacRuby.”

Using short, concise code examples, Matt Aimonetti helps the reader dive straight into MacRuby, beginning at the classic “Hello, World!” entry point, with a little twist.

In just 35 lines of code, you learn how to build a graphical user interface (GUI) application that displays the words “MacRuby: The Definitive Guide” in a window with a button. The window shows “Hello World!” within a box, and your computer speaks “Hello, world!” when you click on the button.

The first eight chapters focus on topics such as: introduction, fundamentals, foundation, application kit, Xcode, core data, and getting deeper into the process of “developing complex apps.”

The topics of the final five chapters are: (1) creating an Address Book example; (2) creating an application that “uses the user’s geographical location and a location web service”; (3) using MacRuby in Objective-C projects; (4) using Objective-C code in MacRuby apps; and (5) using Ruby third-party libraries. 

Before reading this book and tackling the code, the author recommends having some programming experience and basic familiarity with object-oriented programming. You also should get a basic overview of the Ruby language by visiting its main website.

Si Dunn 

Droid X2: The Missing Manual – #droid #bookreview

Droid X2: The Missing Manual
By Preston Gralla
(O’Reilly, paperback, list price $19.99; Kindle edition, list price $9.99)

Got, getting or giving a Droid X2 smartphone?

Consider adding this useful how-to manual to the mix. Droid X2: The Missing Manual bills itself as “The book that should have been in the box.” But it’s likely much bigger than the phone’s box.

The 399-page manual, written by veteran technology writer Preston Gralla, is nicely structured, well-illustrated and chock full of information on using the Droid X2’s many features. The book is organized into six parts.

 Part 1 covers “Android Basics.” It gives a guided tour of features and shows how to make calls, do text messages, manage contacts, use Caller ID, make conference calls, and handle other tasks.

Part 2 focuses on “Camera, Pix, Music, and Video” and how you can use a Droid X2 to take photographs, play and manage music, and record, edit and view videos.

Part 3, “Maps, Apps, and Calendar,” shows “how to navigate using a GPS, to find any location in the world with maps, to find your own location on a map, to get weather and news, to use a great calendar app, and to synchronize that calendar with your Google calendar, or even an Outlook calendar,” Gralla writes.

Part 4, “Android Online,” discusses “everything you need to know about the Droid X2’s remarkable online talents.” This includes getting online over Verizon’s network or a wi-fi hotspot, using your Droid X2 as a portable G3 hotspot, checking email, surfing the Internet and downloading and using apps.

Part 5 covers “Advanced Topics,” including syncing and transferring files between a Droid X2 and a Mac or a PC, using your voice to control your Droid, and using your Droid at your workplace. Part 5 also includes a nice listing of Droid X2 settings.

Part 6, “Appendixes,” has three “reference chapters” showing how to activate a Droid X2, which accessories are available, and how to troubleshoot various issues.

This “Missing Manual” includes a link to a website where you can keep up with updates and changes to the Droid X2, plus corrections to the book.

Meanwhile, a “Missing CD” web page link provided in the book gives clickable links to the websites that are mentioned in the text.

Many new users of the Droid X2 likely will find this book helpful. So will experienced users who have mostly focused on voice calls and text messages and now want to master some of their smartphone’s other features. 

Si Dunn

Programming Concurrency on the JVM – #java #programming #bookreview

Programming Concurrency on the JVM: Mastering Synchronization, STM, and Actors
By Venkat Subramaniam
(Pragmatic Bookshelf, paperback, list price $35.00)

“Faster!”

That’s the word pressuring many programmers today as modern multicore hardware makes it possible to perform numerous actions simultaneously.

“A concurrent program may download multiple files while performing computations and updating the database,” notes the author of this well-written introduction to programming concurrency on the Java Virtual Machine (JVM).

So speed increasingly is of the essence, but so is improving how well (and quickly) applications respond to users. 

In Programming Concurrency on the JVM, the focus is on introducing Java programmers to “three separate concurrency solutions—the modern Java JDK [Java Development Kit] concurrency model, the Software Transactional Model (STM), and the actor-based concurrency model.” And the goal is to help programmers learn the advantages and disadvantages of each and make the right choices for their applications.

The author states that “[t]here are three ways to avoid problems when writing concurrent programs:

  • Synchronize properly.
  • Don’t share state.
  • Don’t mutate state.”

He explains that “[i]f we use the modern JDK currency API [application programming interface], we’ll have to put in significant effort to synchronize properly. STM makes synchronization implicit and greatly reduces the changes of error. The actor-based model, on the other hand, helps us avoid shared state. Avoiding mutable state is the secret weapon to winning concurrency battles.”

Programming Concurrency on the JVM is adequately illustrated and divided into five parts: Strategies for Concurrency, Modern Java/JDK Concurrency, Software Transactional Memory, Actor-Based Concurrency, and an epilogue focusing on making the right choices.

The book, the author stresses, is not for Java newcomers. It is for “experienced Java programmers who are interested in learning how to manage and make use of concurrency on the JVM, using languages such as Java Clojure, Groovy, JRuby, and Scala.”

Most of the code examples are in Java, but he includes some examples in Clojure, Groovy, JRuby, and Scala, as well. And he has made extra effort “to keep the syntactical nuances and the language-specific idioms to a minimum.”

He adds: “Programming concurrency is hard, yet the benefits it provides make all the troubles worthwhile.”

Si Dunn

QuickBooks 2012: The Missing Manual – Solid Focus on Pro Edition – #bookreview

QuickBooks 2012: The Missing Manual
By Bonnie Biafore
(O’Reilly, paperback, list price $34.99; Kindle, list price, $27.99)

 In late September, Intuit released the 2012 versions of its popular QuickBooks financial software. Just a month later, O’Reilly Media was hot on Intuit’s heels with QuickBooks 2012: The Missing Manual, a new entry in O’Reilly’s popular “The book that should have been in the box®” series.

Written by veteran author and project management consultant Bonnie Biafore, this new guidebook provides clear, well-illustrated, step-by-step instructions on how to use the Windows edition of QuickBooks 2012 Pro, the most popular version of Intuit’s product, particularly in small businesses.

The 734-page book also gives some basic how-to information and advice on accounting – enough to get you past some confusing stumbling blocks as you set up a business and its accounts, but not enough to substitute for real training in accounting and keeping books.

“QuickBooks isn’t hard to learn,” the author says. “Many of the features that you’re familiar with from other programs work just the same way in QuickBooks—windows, dialog boxes, drop-down lists, and keyboard shortcuts, to name a few. And with each new version, Intuit has added enhancements and new features to make your workflow smoother and faster. The challenge is knowing what to do according to accounting rules, and how to do it in QuickBooks.”

Two words of caution: This book does not cover non-USA versions of QuickBooks 2012 Pro. And, the author points out, “QuickBooks for Mac differs significantly from the Windows version, and unfortunately you won’t find help with the Mac version of the program in this book.”

QuickBooks 2012: The Missing Manual is divided into five parts containing a total of 26 chapters and two appendices.

Part One covers “Getting Started.” It starts with “Creating a Company File” and “Getting Around in QuickBooks” and advances to setting up accounts, customers, jobs, vendors, items, lists, and managing QuickBooks files.

Part Two’s focus is “Bookkeeping,” and its chapters covers everything from tracking mileage to paying for expenses, invoicing, managing accounts receivable, generating financial statements and performing end-of-year tasks.

“Managing Your Business” is the focus of Part Three. The chapters cover managing inventory, budgeting and planning, and working with reports.

“QuickBooks Power” is the title of Part Four. It covers using QuickBooks with online banking services, configuring preferences in QuickBooks to fit your company, integrating QuickBooks with other programs (Excel integration has been improved in QB 2012), customizing QuickBooks, and keeping QuickBooks data secure.

Part Five contains two appendices: “Installing QuickBooks” and “Help, Support, and Other Resources.”

The book does not contain a CD, but it provides a link where “every single Web address, practice file, and piece of downloadable software mentioned In this book is available….”

QuickBooks 2012 Pro, according to the author, “is the workhorse edition” of a software package that is available “in a gamut of editions, offering options for organizations at both ends of the small-business spectrum.”

Her book is good enough that it can help you get a small business set up and off the ground while you are learning the QuickBooks 2012 Pro. But if you don’t have some solid background in bookkeeping and accounting, do not try to rely on the software alone to save you. Get the training any way you can, as soon as you can. And then, once you can afford it, hire good people to help you with the bookkeeping and accounting, while you focus on the bigger picture, using QuickBooks 2012’s budgeting, planning, forecast, report, contact synchronization, lead tracking, and to-do list features.

One other caution: QuickBooks has a specialized edition specifically for nonprofit organizations. It is more expensive than the Pro package. So some people try to save money and use the Pro package to manage a small nonprofit. But there can be confusions involving some of the terminology, transactions and reports. In this book, Bonnie Biafore provides “notes and tips about tracking nonprofit finances with QuickBooks Pro (or plain QuickBooks Premier)” and modifying the program’s standard reports to meet government requirements.

By the way, QuickBooks 2012: The Missing Manual can be used to learn features in earlier versions of QuickBooks. Of course, doing so and seeing what’s missing may convince you to upgrade.

Si Dunn

Head First HTML5 Programming – #javascript #html5 #programming #bookreview

Head First HTML5 Programming: Building Web Apps with JavaScript
By Eric Freeman and Elisabeth Robson
(O’Reilly, list price $49.99, paperback)

This is not your father’s turgid programming textbook.

Indeed, even if you are not interested whatsoever in messing around with JavaScript and learning how to be an HTML5 programmer, you may still enjoy reading this book and studying how it is put together.

Head First HTML5 Programming is a fun and entertaining mixture of graphics, text and coding examples. But, more than that, this “multi-sensory learning experience” has been put together “[u]sing the latest research in cognitive science and learning theory….”

How often have you heard someone say a computer programming book is “fun and entertaining”?

Yes, Head First HTML5 Programming is still a how-to book, and it is one that focuses on creating web apps using JavaScript — not exactly a fertile field for comedy.

But the book promises “to start by going from zero to HTML5 in 3.8 pages (flat)” — and delivers. By the third page, you begin using a whimsical “HTML5-O-Matic” to update standard HTML to HTML5. And by the bottom of the fourth page, you are “officially certified to upgrade any HTML to HTML5.”  (It takes just three steps and a bonus round to get there, by the way.)

Even the book’s table of contents is zany, amusing and informative, with funny graphics and snarky summaries of what you will find in each chapter and appendix. 

And don’t be intimidated by this book’s physical size. It has 574 pages, but it presents information in small, manageable chunks, surrounded by eye-pleasing white space and lots of illustrations that will make you grin or chuckle even as you learn something new.

By the way, you don’t have to know JavaScript to use this book. The first few chapters provide  an excellent and palatable JavaScript overview.

However, if you think you are serious about becoming an HTML5 programmer but don’t yet have any experience in  HTML markup and CSS  (cascading style sheets), the two writers recommend that you tackle one other book first: Head First HTML with CSS & XHTML (list price, $39.99 paperback. There is also a Kindle edition.)  

Whether you know HTML, CSS and JavaScript or not, however, you should plan on doing the book’s exercises. Cutting “class” is not an option with this book. “Some of (the exercises) are to help with memory, some are for understanding, and some will help you apply what you’ve learned,” the writers point out.

They add: “Most reference books don’t have retention and recall as a goal, but this book is about learning, so you’ll see some of the same concepts come up more than once.”

The software and hardware requirements for writing HTML5 and JavaScript code are minimal: “[Y]ou need a text editor, a browser, and, sometimes, a web server (it can be locally hosted on your personal desktop).”

They recommend that you use more than one browser while learning HTML5 and JavaScript. And, to use some HTML5 features and JavaScript APIs, you will have to “serve files from a real web server rather than loading a file….” But they explain how to do this.

Head First HTML5 Programming advertises that it will promises to help “load HTML5 and JavaScript straight into your brain,” and it seems to start doing that right after you open its pages — as long as you keep an open mind about using a programming book that is actually enjoyable and fun to read while it instructs.

Si Dunn

Revolution in the Valley: How the Mac Was Made (2nd Revised Edition) – #bookreview #macintosh

Revolution in the Valley: The Insanely Great Story of How the Mac Was Made
By Andy Hertzfeld
(O’Reilly Media, list price $24.99, paperback)

My wife swears by her Mac. I, however, just swear at it when I am forced to use it.

I have been using anything-but-Apple computers since the early 1980s, starting with a Sinclair ZX80 and moving up through a ragged assortment of Trash-80s, Osbornes,  Kaypros, PC-XTs, PC-ATs, and PCs that run Windows 7.

During a short semi-career in specialized hardware and software development, I tested programs that ran exclusively on machines running Windows. So I have that bias.

Nonetheless, Andy Hertzfeld’s book, Revolution in the Valley: The Insanely Great Story of How the Mac Was Made, is fascinating and entertaining reading, even for those of us who have avoided Apple computers and sometimes still bristle at the smug, superior attitudes exhibited by many Macintosh users. (Don’t tell my wife I said that.)

Hertzfeld was one of the main authors of the Macintosh system software, including the User Interface Toolbox and many of the Mac’s original desk accessories. He later joined Google and is one of the primary creators of Google +.

Originally published in 2004, Revolution in the Valley recently has been brought back into print again by O’Reilly Media as a second revised edition.

The book is drawn mainly from Hertzfeld’s adventures, misadventures, reflections and perspectives. But it is not All Hertzfeld All the Time. Refreshingly, it also includes stories written by “other key original Mac team members”—Steve Capps, Donn Denman, Bruce Horn and Susan Kare.

Their stories recount the chaotically creative and frequently high-pressured race to design and deliver “an easy-to-use, low-cost, consumer-oriented computer…featuring a revolutionary graphical user interface (GUI).”

Hertzfeld and his co-contributors focus on “the development of the original Macintosh computer, from its inception in the summer of 1979, through its triumphant introduction in January 1984, until May 31, 1985, when Steve Jobs was forced off the Macintosh team.

Revolution in the Valley is divided into five parts and follows a somewhat chronological path. However, it makes frequent and refreshing use of short anecdotes that are easy and enjoyable to read, no matter what your computer bias might be. It also has a nice assortment of photographs, drawings, screenshots and other illustrations from the development period.

Speaking (again) of smug attitudes, one amusing incident in the book involves the Macintosh team’s April 1981 encounter at a computer show with Adam Osborne, creator of the Osborne 1, “a low-cost, one-piece, portable computer complete with a suite of bundled applications.”

According to Hertzfeld: “As Macintosh elitists, we were suitably grossed out by the character-based CP/M applications, which seemed especially clumsy on the tiny, scrolling screen.” When Osborne realized he was talking to the Macintosh development team, he told them his Osborne 1 would outsell the Apple II “by a factor of 10” and added that they should “tell Steve Jobs that the Osborne 1 is going to outsell the Apple II and the Macintosh combined!”

When Steve Jobs heard what Adam Osborne had said, he called the founder of the Osborne Computer Company and left two messages. The first message was simple and basic, that Osborne was “an asshole.” Jobs’ second message was: “Tell him the Macintosh is so good that he’s probably going to buy a few for his children even though it put his company out of business.”

And the rest, of course, is computer history.

Revolution in the Valley has drawn strong praise from Steve Wozniak, who co-founded Apple with Steve Jobs in 1976.

“It’s chilling to recall how this cast of young and inexperienced people who cared more than anything about doing great things created what is perhaps the key technology of our lives,” he notes in the book’s foreword. “ Their own words and images take me back to those rare days when the rules of innovation were guided by internal rewards, and not by money.”

Si Dunn

Here’s the book scaring me this Halloween: America the Vulnerable – #bookreview #data #security

Subtitled “Inside the New Threat Matrix of Digital Espionage, Crime, and Warfare,” America the Vulnerable is written by Joel Brenner, former inspector general at the National Security Agency.

Brenner has recent experience at the highest levels in national intelligence, counterintelligence and data security. And he has studied firsthand many of the threats and attacks against our national, corporate and personal interests.

“During my tenure in government,” he writes, “I came to understand how steeply new technology has tipped the balance in favor of those–from freelance hackers to Russian mobsters to terrorists to states like China and Iran–who want to learn the secrets we keep, whether for national, corporate, or personal security.” He adds: “The truth I saw was brutal and intense: Electronic thieves are stripping us blind.”

Everything from Social Security numbers to technological secrets that cost billions to develop are being taken — stolen from military and corporate data networks and individual computers, possibly including yours.

His book will leave you wide-eyed and wondering who is surreptitiously poking around inside your computer right at this moment and what they are taking or “borrowing” for sinister purposes.

 Likely the Chinese and the Iranians and Russian mobsters and others, including hackers, are in there or have been there recently.

And Brenner explains how you may be unknowingly helping them find and transfer sensitive and vital information, even when you do something seemingly innocuous as plugging in a thumb drive to your laptop.

You won’t need to watch any monster movies to get scared this Halloween. Brenner’s book or its Kindle version can give you a very serious case of chills and frights. 

Si Dunn

CoffeeScript: Accelerated JavaScript Development – #bookreview #programming

CoffeeScript: Accelerated JavaScript Development
By Trevor Burnham
(Pragmatic Bookshelf, $29.00, paperback)

JavaScript was thrown together in 10 days and “was never meant to be the most important programming language in the world,” says Trevor Burnham, a web developer and founder of DataBraid, a startup focused on “developing data analysis and visualization tools.”

Yet, JavaScript was “understood by all major browsers,” despite their numerous differences, and it quickly became the “lingua franca of the Web,” he says in his well-written new book.

JavaScript also became a headache for many programmers struggling to learn it well enough to provide support and develop new applications.

“JavaScript is vast…[and] offers many of the best features of functional languages while retaining the feel of an imperative language,” Burnham notes. “This subtle power is one of the reasons that JavaScript tends to confound newcomers: functions can be passed around as arguments and returned from other functions; objects can be passed around as arguments and returned from other functions; objects can have new methods added at any time; in short, functions are first-class objects.”

Unfortunately, “JavaScript doesn’t have a standard interpreter,” he adds. “Instead, hundreds of browsers and server-side frameworks run JavaScript in their own way. Debugging cross-platform inconsistencies is a huge pain.”

Enter CoffeeScript, first released on Christmas Day, 2009 as “JavaScript’s less ostentatious kid brother.”

Coding in CoffeeScript requires fewer characters and fewer lines. And “the compiler tries its best to generate JavaScript Lint-compliant output, which is a great filter for common human errors and nonstandard idioms,” Burnham writes.

Another benefit: “CoffeeScript code and JavaScript code can interact freely,” he notes.

His book, aimed at CoffeeScript newcomers, assumes you have at least a little knowledge of JavaScript. But you don’t have to be a JavaScript Ninja, he assures.

He starts at the classic “Hello, world” level of CoffeeScript, including installing the CoffeeScript compiler, deciding which text editors are best, and learning how to write and debug simple CoffeeScript code.

From there, he moves quickly into showing you how to put CoffeeScript to work and develop a simple multiplayer game.

There are several different ways to run CoffeeScript, and there are different requirements, depending on whether your machine is Mac, Windows or Linux. Burnham describes these in his text and in an appendix, and he gives links to more information.

He also shows how to use a browser-based compiler for developing his book’s example application. But he does not recommend using the browser-based compiler for production work.

His book has six chapters and four appendices:

  • Chapter 1 – Getting Started
  • Chapter 2 – Functions, Scope, and Context
  • Chapter 3 – Collections and Iteration
  • Chapter 4 – Modules and Classes
  • Chapter 5 – Web Interactivity with jQuery
  • Chapter 6 – Server-Side Apps with Node.js
  • A1 – Answers to Exercises
  • A2 – Ways of Running CoffeeScript
  • A3 – Cheat Sheet for JavaScripters
  • A4 – Bibliography

CoffeeScript: Accelerated JavaScript Development offers a focused blend of examples and exercises to help speed up basic competency with CoffeeScript. In learning how to build the multiplayer game application, you use CoffeeScript to write both the client (with jQuery) and the server (with Node.js).

Since CoffeeScript and JavaScript are intertwined, you also can gain a better understanding of JavaScript by learning to code in CoffeeScript, ” Burnham promises.

In a foreword to the book, CoffeeScript’s creator, Jeremy Ashkenas, hails Burnham’s work as “a gentle introduction to CoffeeScript led by an expert guide.”

It lives up to that good billing, with many short code examples and many short tutorials and exercises that can lead quickly to building both a working app and a working understanding of CoffeeScript.

Si Dunn