Book Review – Game Architecture and Design

Once upon a time the country was filled with teenage whiz-kids feverishly programming away in their bedrooms hoping to become the next Jeff Minter or Scott Adams. Back then an individual working on their own could produce a massive hit game bringing them fame and fortune. Alas, those halcyon days are gone. How can someone get to grips with the new look corporate driven game industry?

At over 700 pages, this may look like a scary book. However, the nuggets it keeps between its covers might just turn out to be priceless. Throughout this title there are case studies to show how well known games have dealt with different issues. Some worked, some didn’t. You’ll recognise most but others I suspect have had their names changed to protect the people concerned. Additional comments and thoughts from industry veterans such as Ian Bell, Peter Molyneux and Glen Corpes are used to illustrate key points.

Most games start with an idea. Turning that idea into a structured proposal and then on to a more concrete set of specifications is covered first. The thought processes involved with designing the mechanics of a game are examined in depth. By the end of the section you’ll have a feel for documenting the specification plus getting the game balance and look and feel right.

From this point on you may be forgiven if you thought you’d picked up a business management book by mistake. The authors look at team building and the different needs and drivers of the programmers, designers and artists. Good project management, testing and quality assurance all get examined in detail. One point that I feel might be contentious is that the authors feel a dress code is essential. They argue that allowing people to dress at work as they do at home fails to differentiate one environment from another. People can end up treating work time as home time and spend too much time playing and getting distracted. Having spoken to a few people who work in the industry about this I got the impression that being forced to wear a shirt & trousers would result in them changing firms pretty quickly!

Good software engineering principles and the concepts of re-use and the ‘software factory’ are discussed at length as are the best approaches to bug fixing. It costs up to 200 times more to fix a bug in the final code that it does to do it at design time. A sobering thought for those who like to jump in with the coding without designing the game architecture up front. Other examples cite projects which for the sake of an extra months design time at the beginning ended up taking an additional year to be finished. There’s even a few C++ coding examples to show good style and a few techniques for pro-active coding to help eliminate common bugs altogether.

As the game nears completion you’ll be at the mercy of feature-creep and getting small details like the internationalisation right. As an example, German tends to be 40% longer than English on average. If your initial design work up front wasn’t done properly you may find at this stage that text doesn’t fit the space allowed for it on screen or that the speech in video clips is longer than the clip itself runs for.

Once the game is complete, it’s not quite time to sit back and relax. The all important postmortem needs to happen where the project is dissected and examined to see what could have been done better, what the highlights were and what can be learned for next time.

The book finishes off with some samples of design documents plus a short bibliography.

Conclusion

This is a fine book. The experience of the authors shines through and the mix of good solid business and project management combined with themes specific to the games industry is skilfully handled.

Book Review – On the Way to the Web – The Secret History of the Internet and its Founders

Most people these days are reasonably familiar with the Internet although some get the Internet and the Web mixed up, thinking they’re one and the same. The reality is that there was an awful lot going on in the online world long before Tim Berners Lee formulated the ideas that became the World Wide Web.

On the Way to the Web by Michael A. Banks hopes to educate those who are more recent users of online services whilst providing a timely reminder of how it was for those of us who have been around ‘out there’ somewhat longer. Along the way it also corrects many of the urban myths and misconceptions about how it all came about.

The Internet itself started with ARPANET with the first moves towards its creation dating back to 1957. Not long after, various organisations such as NASA were starting to use primitive networks to share data and even hospitals had remote access to medical information as far back as the 1970’s.

Where this book really excels is the history of the different companies, which came (and usually went) over the years. It is also quite a depressing read in places to be reminded of how great Compuserve once was or how there was a downloadable game service (GameLine) for Atari 2600 consoles way back in the early eighties that started just as the first games industry collapse kicked in.

It will also come as a shock to many to find out how far back AOL’s roots go or how it started out. It certainly wasn’t on a PC. Other companies getting a namecheck include BIX, The Well, Delphi, Genie and my own path to the Internet – CIX in the UK proving the author was keeping an international handle on events. Even now people seemed surprised that email was available in the late eighties/early nineties and prior to the web, Usenet was a veritable treasure trove of useful information plus the occasional entertainingly weird people. Google? What was that?

It was also a salutary reminder of how expensive some of these services could be with their per minute or per hour charges. I remember logging into the Atari 8bit area of Compuserve via a transatlantic call in the mid eighties when the call plus Compuserve charges added up to some £40 per hour – a weeks salary back then.

As well as the history, development and timeline of the Internet and related online systems, the book throws in lots of interesting nuggets such as why we use @ in email addresses, wireless internet access in 1978 and how the music industry went nuts when someone tried to launch a digital music download service in 1981.

I really enjoyed this book. It can probably be considered the definitive history of those early years. The author manages to impart the excitement of those times, the great ideas and the freshness of it all in a way that makes it a real page turner. The index allows you to dip into bits that might catch your eye but I ended up reading it cover to cover in a couple of sittings and that’s rare! My only criticism is that I’d have liked a bit more – it was all over to soon at under 200 pages.

So, for all you youngsters out there, go buy this book and discover just what us crusties got up to back in the day. You might be surprised. For the older ones, buy, read, and enjoy the memories of those halcyon days.

Book Review: Beautiful Code

Beautiful Code, subtitled ‘Leading Programmers Explain How They Think’ is a collection of thirty plus essays by some of the top programmers around today. names like Charles Petzold and Brian Kernighan should be recognisable to any developer but many of the others may be less familiar but nonetheless have much to offer.

It’s also worth noting that all royalties from this book go to Amnesty International so hats off to all concerned for their generosity and efforts.

As the title suggests, this book is about code. It can be beautiful in any number of ways and each contributor explores a particular subject and provides code examples to illustrate a language construct, algorithm or principle that they hold to be beautiful. As an example of the developer’s craft at its finest, this book can’t help but impress.

Where it falls down somewhat for us is that much of the subject matter is rather esoteric and I suspect the majority of developers will go through their entire career without needing to worry about summing the bits in an arbitrary word. Self-taught programmers without the benefit of a Computer Science degree will probably struggle with much of the content but perhaps that’s not entirely the point of the book.

Firstly, this is most definitely not a book for reading through at the same pace you would most programming guides. The ideas, the code and the concepts usually require much thought and analysis on the part of the reader to really appreciate. This reviewer has twenty five plus years of commercial developer experience across dozens of languages and I found much of it pretty dense. It also gave me my first exposure to languages such as Haskell and MATLAB.

Even if much of the content may be somewhat heavy, what is far more accessible, in the main, is the discussion that accompanies it where the programmers describe their thought processes, reasoning and techniques for solving the problem. Here there is much great wisdom and for this alone, the book deserves close scrutiny.

Some of the simpler code examples were a revelation and it was astonishing to find a fully functional regular expression processor in a dozen or so lines as presented by Brian Kernighan. This was indeed beautiful code, compact yet still readable. As someone else noted, the art is not just knowing when to stop adding code but also when to stop removing it.

It’s certainly no lightweight book at 560 plus pages and it takes real effort to read although the nature of it means you can dip in to any chapter at random, following whatever interests you.

If you want to take your mindset as a developer to the next level, this is a good book. It’s also an interesting insight into certain programming problems and their solutions. You may also want to buy a copy just to support Amnesty International.

I would suggest though that this is a book you should browse at the bookstore first to be sure it’s something you’d enjoy although I’m confident that for many developers, it will be.

Book Review: Introduction to SQL Fourth Edition

Introduction to SQL is now in its fourth edition and this time around proudly displaying a 20th anniversary edition monicker. Weighing in at a shelf worrying 1000+ pages, it aims to provide everything you need to know about SQL from both the data manipulation and database creation angles.

The author, Rick F. van der Lans is well known on the lecture circuit as well as being an author and running his own consultancy at www.r20.nl.

After the obligatory introductory sections, the bulk of the first half is taken up by the SELECT statement and how to use it. The sample database used for all examples is based around a tennis club and serves to provide clear examples of how the SELECT statement can be phrased to produce different results.

Introduction to SQL covers all the expected areas including different types of join, null handling, subqueries and all the various aggregation and grouping variants. Being fully updated, it also includes newer features such as ROLLUP and CUBE that are becoming increasingly commonly used to analyse large datasets.

Most examples consist of SQL code, resulting rows and an explanation of what happened and why. Sometimes the author provides more than one way of doing things to show the pros and cons of each and there are the occasional Q&A sections to check understanding.

The book claims to cover SQL Server, Oracle, DB2 and MySQL but I found most of the code to be generic with only a few boxouts to cover alternative syntaxes. The style is rather dry and humourless which you may or may not prefer – certainly some IT books go too far the other way these days with pages of inane chatter. No such problem here.

The next section is a fairly short discussion on manipulating data – deleting and amending. This is only reasonable though as the bulk of difficulty in these areas is getting the SELECT part right. After that it’s on to creating database objects

Table and index creation, keys, constraints and views get fairly thorough coverage although I’d have liked a little more on referential integrity. I was pleased to see a good section on stored procedures which often get ignored in SQL books unless they’re server specific titles.

Another area that was welcome was the use of embedded SQL in other languages. Many developers will be using this method of access almost exclusively so this section plus the ODBC coverage will be of great help. The book also covers transactions and multi-user issues of which the latter is especially important. There is also some examination of Dynamic SQL and the important role of cursors when working with SQL in a programming environment.

The book finishes off with 3 appendices providing a reference to SQL syntax and a bibliography. A useful bundled CDROM containing a copy of MySQL 5.07 plus WinSQL a GUI front end so you can try the examples at home.

On balance I thought this was a good title, both as a tutorial and as a reference because of its fairly exhaustive coverage of all options. If there was a bit more on database design practices and building in data integrity, it would be a great book. Whether you’re new to SQL or need a useful memory jogger and reference, Introduction to SQL would be a good choice.

Book review: Digital Retro – Gordon Laing

Another reprint of an old review from PCBookReview.com

People of my age grew up during one of the most exciting periods in computing history. Computers were just moving from the business world of mainframes, time-sharing and minicomputers and in to the domain of the personal user. For the first time, it was feasible for a member of the general public to get their hands on a real computer and to be able to do new and exciting things with them. The roots of this movement can be traced back to the mid 70’s and the MITS Altair 8800 which could be bought in kit form or pre-assembled. Of course, others, especially at the Homebrew Computer Club in Silicon Valley were working on their own home made devices for no other reason than they could.

From these humble beginning, a huge industry was spawned that produced multitudes of different computers, none of which were compatible with each other the way the ubiquitous PC is today.

Anyone who was involved with microcomputers between the golden years of 1975 to around 1990 will remember the intense rivalry. Were you a Speccy fan or a Commodore C64 user? Were you allied to the Atari ST or Commodore Amiga? Did the Atari 800 or Apple II impress you?

Digital Retro by Gordon Laing draws on his regular retro column in the sadly now defunct PCW magazine and brings together some 44 machines, including key games consoles, that were released between 1975 and 1988. Along the way you can read about the Commodore Pet, BBC Micro, Oric 1 and Dragon 32 as well as lesser known or vaguely remembered machines such as the NASCOM 1, Tangerine Microtan 65, Jupiter Ace and the ill fated Mattel Aquarius which has the dubious distinction of having the shortest period on the market, being withdrawn after just 6 months.

Each machine gets an ‘overview’, ‘a company history’, ‘did you know?’ and what ‘happened next’ sections along with all new photography of each machine. This makes a nice change as many machines are always documented with the same old tired images. The new ones are often large, high quality and in many cases show how the machines have fared over the years – the PET had a few rust marks!

The text is fascinating and full of interesting snippets. I found the background information particularly absorbing, especially on some of the less well known machines. Gordon Laing has managed to interview a great many industry names including various Tramiels, Chuck Peddle and Joe Decuir and it shows in the resulting insights.

I noticed one typo where the Atari ST’s special features had been repeated for the Acorn Archimedes which was a pity but otherwise everything seemed accurate.

The machines are presented in release date order providing an interesting overview of computer development during the period. A side effect of this is that some machines appear so glaring underpowered compared to their peers that one has to ask ‘why did they bother?’. You may also do a double take on the original IBM PC – a cassette port?

Naturally there are some gaps, mainly due to a lack of example machines in good enough condition to photograph or simply for space reasons. I would have liked to have seen the Enterprise 128, Sord M5 and the almost unknown DAI which I seriously considered against the Atari 400 when I was looking for my first computer back in 1980.

Conclusion

Overall this is a fine book and Gordon Laing is to be congratulated on the breadth and accuracy of the material it presents. The all new photography is the icing on the cake. I can only hope that an expanded edition or a volume 2 appears at some point to mop up the remaining machines from the golden age of home computing.

Book review: The Myths of Innovation – Scott Berkan

I used to run a web site that featured reviews of IT/photography related books. It’s gone now but I thought I’d put the old reviews up here in case anyone finds them useful. Here’s the first.

We’ve always been led to believe innovation comes from super-talented people or small focussed teams having a eureka moment. Alas, the reality is all too often rather less romantic. Scott Berkan has produced a thought provoking new book on the subject that aims to clear away all our misconceptions about innovation and provides some new insights along the way.

What the book isn’t is a tutorial or magic bullet that will help you unleash a torrent of brilliant ideas. Instead, the author takes us on a fascinating journey through history providing background, stories and advice on what not to do and which supposedly tried and tested methodologies are in fact nothing of the sort.

Unlike many books in this field, The Myths of Innovation is a pleasantly light read. The author has a lucid writing style and plenty of anecdotes and stories that all help to illustrate the points he is making.

The book is divided in to ten chapters, each of which covers a particular concept or misconception. The first one, The Myth of Epiphany sets out the direction for the whole book and quickly destroys the story of Newton and his apple moment in the ‘discovery’ of gravity. The reality is if anything rather more impressive, years of study, multiple disciplines and ideas all being pulled together to produce a fully formed set of theories and formulae

For me, the real richness in the book is the wealth of stories both historical and contemporary, each of which illustrates a point. I certainly had many of my beliefs neatly demolished as tales of Einstein, Jeff Hawkins (founder of Palm), Steve Jobs and many more are told.

One concept I particularly liked was the importance of understanding the real problem. For instance, Edison didn’t want to create a lightbulb, he wanted something that could be wired up in cities that would make money. Equally, the Palm Pilot spec wasn’t for this function or that function, it was to fit in a shirt pocket, sync with a PC, be easy to use and cost less than $299. Everything else was just fluff.

I can safely say the book lives up to its title. It does a neat and surprisingly entertaining job of debunking almost everything you ever believed or hoped was true of innovation and the processes behind it. It will leave you hungry to explore new ways of trying to discover and created armed with the new insights it provides.

For such a compact book, I did feel the price was a little high (although Amazon’s prices are particularly keen on this book) but on balance, if you have an interest in innovation, either within yourself or by inspiring others, this is a fine read that will probably become a classic in its field.

Finally, I have to take my hat off to the writer of the colophon who went well above and beyond the call of duty with a bizarre page and a half that should worry anyone that deals with him or her on a daily basis.

Book Review: Atari Inc.: Business is Fun

Having been a hardcore Atari nut since the late 70’s when the VCS came out then moving through the various 8bits (400, 800, 130XE, 800XL), STs (520 STm, 4160STe, Mega STe, Falcon) etc, I was looking forward to this book immensely.

The authors are well known in the Atari community, particularly Curt Vendel who has a stunningly improbable collection of documentation, prototypes and source code. Heck, he even has one of their old mainframes. Marty Goldberg is also steeped in Atari-ness and well known amongst the hard core. Basically, if you wanted a book written by those who know, this is it.

First, the bad news. Whoever edited this book needs shooting. Some pages had as many as a dozen typos. Some sentences just don’t parse and the photos have various captioning issues. Oddly, great big chunks go by without so much as a missing apostrophe. Go figure.

Once you get past that, what you have is a stunningly thorough book that covers Atari’s history from the lead up to its inception as a company to the sale of the struggling once mighty entity to the Tramiels. (The next volume will cover their part of the story).

The authors have interviewed a great many Atari alumni, key industry figures and had access to Atari’s old email system, engineering notes and more. The result is a wide ranging, hopefully authoritative and detailed history. Along the way, the truth behind many long standing Atari stories/myths such as the cartridge burial in Mexico, the Amiga chipset saga and others are discussed, along with documentary evidence of the reality.

I thought I knew pretty much everything about this period of Atari but there were several projects discussed that were new to me. Machines I’d never heard of, even if they’d only made it as an on paper concept as well as ones that got to more functional states. There were also quite a few people I’d not realised were ex-Atari and it was fascinating reading what they did there. There are lots of good photos although as someone else noted, the reproduction quality isn’t always great. Maybe when this finally comes out on Kindle it will have better quality images.

One of the book’s stated aims is to recreate the atmosphere at Atari, which it does well and focuses on the people and internal ‘policies’ to a larger extent than most books of this type. It was also interesting to read the various problems the company had to deal with, the politics between them and Warners, Atari’s owners for much of this key period and the damage done by the marketing department at times.

The only thing I’d have liked more on was the development of the 8bit series. I was a huge fan of the Atari 800 and wanted more on the OS development, the chipset design process and the peripherals. There is a lot on these machines but it’s nothing that wasn’t already well documented elsewhere. It was only after reading this book I found out the OS was bought in, something not mentioned here.

Overall though, if you’re an Atari fan, particularly in their first incarnation (or two), this is an essential read. This will end up as a 3 volume set and with this book alone weighing in at almost 1,000 pages, Atari will end up one of the most thoroughly documented companies of this era. A fantastic piece of work. I’m looking forward to volume 2, I just hope the editing’s a bit better!

You can buy Atari Inc.: Business is Fun from Amazon UK or Amazon US