Tag Archives: book review

Sharing a good read

by Joy Ito - CC-BY
Cory Doctorow by Joi Ito CC-BY

Reading books is one of life’s greatest pleasures. Losing yourself in a story and coming out with a sense of joy and wonder is fantastic. If you can learn something along the way it’s even better. (I love reading nonfiction, so if fiction can teach me something I’m really grateful.)

An author who brings me much happiness and satisfaction is Cory Doctorow. I find his books (both fiction and nonfiction) thoroughly enjoyable as well as rewarding. What’s more, I greatly admire how he markets and distributes his work.


The most important thing about any book is, “is it any good?” If it’s not an enjoyable read, then whatever it says doesn’t matter at all. I thoroughly enjoy Doctorow’s writing and find it gripping and engaging. I really can’t put his books down: once I get stuck into a story, I want to keep reading and find out what happens next.

I was sick of cars driving right past me. The next time a car appeared down Market Street, I stepped right out into the road, waving my arms over my head, shouting “STOP.” The car slewed to a stop and only then did I notice that it wasn’t a cop car, ambulance or fire-engine.

It was a military-looking Jeep, like an armored Hummer, only it didn’t have any military insignia on it. The car skidded to a stop just in front of me, and I jumped back and lost my balance and ended up on the road. I felt the doors open near me, and then saw a confusion of booted feet moving close by. I looked up and saw a bunch of military-looking guys in coveralls, holding big, bulky rifles and wearing hooded gas masks with tinted face-plates.

I barely had time to register them before those rifles were pointed at me. (Little Brother)

I’m a fan, but I’m not a fool. I realize that his style wouldn’t be to everyone’s taste. My wife would not enjoy his work. (Fair enough. Much of what she reads doesn’t appeal to me either!) You might not either. There’s really only one way to find out: pick up a book and try it out.

For me, any writer who describes a character as a “sucking chest wound of a human being” is well worth reading.


Besides my admiration for the man being able to create terrific literature, I also love the theme of creating that runs through his books. Many of his main characters are artists or creative types, building or making or composing. He’s got one book, Makers, that’s all about the creation process but his other books abound with movie makers , programmers, and more.

Apart from making his books more fascinating, the different takes on the creative process also makes creativity more real and more reachable. Doctorow writes many books for teens. By making his protagonists artists and creators, he encourages his readers to do the same.

That idea came from me. I created it. It wasn’t lying around, waiting to be picked up like a bunch of pebbles on the beach. It was something that didn’t exist until I made it, and probably wouldn’t have existed unless I did. That’s what ‘to create’ means: to make something new. (Pirate Cinema)

If just one teenager reads one of Doctorow’s books and decides that her own creative impulses are worth pursuing and makes something new and original, I’d say that he has achieved real success.


Doctorow goes into a lot of interesting and thought-provoking ideas in his books, and he explains them well. I’ve used this section from Little Brother in my programming classes to get students excited about the thrill of building programs:

If you’ve never programmed a computer, you should. There’s nothing like it in the whole world. When you program a computer, it does exactly what you tell it to do. It’s like designing a machine – any machine, like a car, like a faucet, like a gas-hinge for a door – using math and instructions. It’s awesome in the truest sense: it can fill you with awe.

Whether it’s creating programs, editing videos, using 3D printers, encrypting email, hacking security systems …or cold-brewing coffee, taking over abandoned buildings, finding free gourmet food, or any number of other interesting and fascinating real-life tasks, Doctorow’s books always leave me knowing more and wanting to try new things.


What really sets Doctorow apart from other good writers is how he distributes his books. He gives them away for free.

Yes. That’s correct: he gives them away for free. All his books are licensed with a Creative Commons license that retains his rights as author but gives permission for you (and me!) to download his books for free and share them with friends. He recognizes the reality of today’s internet-fueled sharing economy:

I can’t stop you from copying this book (even if I wanted to). I can’t force you to buy it in order to read it (even if I wanted to). All I can do is ask you to consider purchasing it if you enjoyed it. (Pirate Cinema)

To make a living from his writing, he encourages …no, he exhorts the reader to purchase a copy of the book. All his ebooks have “commercial interludes” between chapters with links to online bookstores and calls to buy a copy. (Sometimes – particularly in Pirate Cinema – these commercials are enjoyable enough to read in their own right.) He also encourages people to buy and donate copies of the books for people (usually teachers and librarians) who lack the budget to buy a copy of the book themselves.

These are effective commercial techniques. I’ve bought many copies of his books for others …and if you look at his “donate” pages, there are plenty of people out there like me.

Anyway, time to stop reading my thoughts about Doctorow. Go read one one of his books.


A recipe to build mobile apps with LiveCode

In this post, you will learn how to build mobile apps for both Android and iOS devices, using an easy and handy step-by-step cookbook.

Getting Ready

livecodecookbookBefore you can complete this recipe, you will need two main tools:

  1. You will need to download and install LiveCode, a cross-platform free and open source application development package.
  2. You will need to get the book, LiveCode Mobile Development Cookbook, by Dr Edward Lavieri

It will help to be a little familiar with LiveCode before accessing the cookbook. While an absolute beginner can use this book to get started, the cookbook style (with separate individual recipes) doesn’t give a holistic overview that would benefit an absolute beginner. At the very least, look at an overview video or skim the official beginner’s guide.

How to do it…

Once you’ve got LiveCode up and running and your cookbook handy, you are ready to use this recipe.

  1. Read through the preface for an overview of how the cookbook works, and the types of skills covered.
  2. Look carefully at the table of contents to see the skills covered and decide which recipe you will choose.
    1. Beginners to LiveCode may wish to work through the recipes sequentially. The cookbook is organized to support this, starting with installation and setup and then running through interface and basic tasks before delving into add-ons like MobGUI and Animation Engine.
    2. Those with a little more experience, or those with specific interests or needs can skip to the relevant recipe. Each recipe clearly walks you through the steps needed to accomplish a task.
  3. A sample recipe from the cookbook
    A sample recipe from the cookbook

    Pick a recipe to get started and work through it on your copy of LiveCode.

  4. Repeat these steps until you have worked through all the recipes in the book (or at least the ones that are relevant to you) and you’ll be able to start building your own mobile apps using LiveCode!

How it works…

The LiveCode Mobile Development Cookbook takes you step by step through many important tasks in building mobile apps using LiveCode.

There’s more…

It’s easy to build apps using LiveCode, as the cookbook shows. However, to build really excellent programs takes some time and effort. If you put the effort in to planning and developing a mobile app, LiveCode and the cookbook will help you to make it a reality. Check out the showcase of some of the amazing apps and programs which have been built with LiveCode.

See also…

  • PacktPub has several books to help you learn LiveCode. Besides the cookbook, there’s a beginner’s guide as well as a “hotshot” book to take you through several other projects.
  • RunRev (the company behind LiveCode) publishes online guides for beginners, mobile application and serious developers. There are also online tutorials on various topics.
  • There’s an active worldwide community of developers and schools and universities teaching students to program using LiveCode.

Wandering through a literary labyrinth of culture and code

I have an annoying habit that irritates my family. When we are on a relaxing beach holiday I like to read books that are dense, intellectually challenging works on esoteric topics. (Yes, I am a nerd.) I have fond memories of being scolded for constantly bringing up ideas from Douglas Hofstadter’s Gödel, Escher, Bach one summer. This Christmas, I’ve done it again – with a book that is so thought-provoking and intriguing that it is a real delight to read.

The book is a collaborative effort, with 10 authors, but it is a coherent piece. Each section looks at the topic from a slightly different angle, but together they form a book that has structure and focus. It’s a literary and cultural analysis work, analyzing a piece of writing through various lenses, including culture and history. This results in a far more detailed understanding and appreciation of the original work, as well as greater reflection on various aspects of education, commerce, and more.

The book has the unusual title of 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 because it is about the one-line BASIC program that is contained in the title. The program, referred to as 10 PRINT, was written for the Commodore 64 computer in the 1980’s and 90’s and generated a maze-like image on the screen using two characters from the C64’s extended character set.

I won’t attempt a full review of the book here. If you want a good review of it, do read Geeta Dayal’s piece in Slate, which led me to the book. It’s a great review and gives you a good picture of what the book is all about and what it’s like. (I’ll just say that it is a fascinating, eminently readable, and enjoyable book. Go buy and read it. There’s a CC-licensed PDF version available for free download.) For me, I appreciated the book in several different ways.

Firstly, as intellectual stimulation it was terrific. There was so much to learn. From its discussion of mazes in history and culture, I learned what the difference is between a labyrinth and a maze. An aside about screensavers and the famous Flying Toasters led me to learn about the Maillard process. The analysis of regularity and randomness in art not only got me thinking about the interplay between those two factors in effective art and design, but also got me rethinking the value of modern geometric super-abstract art. (I can’t say that I like it any more, but my knee-jerk antipathy has certainly eased.) The section about the origins of BASIC and various early versions discussed the differences between free and proprietary software and the cultures of Microsoft and various computer user/programmer groups – and the fact that there was no hero and villain in these two groups, but that both made valuable contributions. The book definitely got me thinking about a lot, and that spilled over into rumination on other subjects. (My family, relaxing by the pool, were not amused.)

It was also fascinating to read a book which looked at a computer program as a work of writing – could I say literature? Taking this code as the product of human creativity, with historical and cultural contexts, was a fascinating way to think about software. Most non-programmers view computer programming as a utilitarian, almost mechanical process. In reality, however, any good programming is the result of an individual’s creative response to a problem. The process of coding involves problem-solving and creative thinking. The resulting code is unique to the individual(s) who produced it: given the same problem, another programmer would come up with a different code. Analyzing the text of a program, therefore, focuses on the individuals who work to create programs and casts the art of coding in a completely different – and respectful – light.

But what got me really going was the book’s relevance to technology education and computer science, two subjects near and dear to my heart and work. 10 PRINT describes a time when computers were first sold for home use, and back then they were tools for building and creating. BASIC was built in to home computers’ ROM so that as soon as the computer was turned on it was ready to be programmed. Sure, there were programs for sale or share, but one of the first things that any new computer owner & user did was to learn to program. In that way, the user/programmer became more knowledgeable about how the machine worked, and also gained a sense of mastery and dominance over the tool. I remember my own first personal computer – an Apple IIe – and programming in BASIC. That experience gave me control over the computer. If I didn’t have a program to do something I wanted, I built my own. If a program stopped working, I hacked the code to see what was going on and tried to figure it out. Modern systems have easier but much more opaque interfaces, so that the level of control is much harder to achieve.

This causes a strange dichotomy in modern computer use. It is so much easier to use a computer that such use has become completely ubiquitous. (In my family on holiday, everyone from my 7 year old nephew to his 73 year old grandfather are using computers, iPod touches, etc.) However, modern computer users are just that: users. People don’t have mastery of the machine. If there’s no “app for that,” then it doesn’t get done. If the computer doesn’t do what the user wants, or doesn’t work the way the way they want, the user just accepts it. There’s no sense of control, no sense of mastery.

In its conclusion, 10 PRINT states that programming is “a process that can lead to a better understanding of and realationship with computation, in addition to leading to other aestheticallyinteresting and differently functioning programs.”

10 PRINT got me thinking about a lot of things during this holiday. Most important for me was how it brought fresh evidence – from a 30 year old computer program – of the value of teaching computer users how to read, analyze, write and value code.