Saturday, August 14, 2010

The Indie BookShelf

Last month @GeorgeSealy posted on his blog an interesting article (The Game Developer’s Bookshelf) about which book is on his bookshelf and I though I should also share mine. I wouldn't go thru all my bookshelf as its going to take ages and they are not all relevant to the iOS development (Hmm I wonder if I could put those X11 or Amiga books to any good use for iOS ;-p).

For a little brief history of that bookshelf, it started its life while I was still living with my parent in the early '90 and I was still in college studying computer science.  Since I started to bought several books either about computer or manga (this is another bookshelf all together) my parent decided to give 2 bookshelf as a birthday present.

The first book that went in that shelf were about the Amiga, 680x0 machine language.  Then some PowerPC books came along once I started development on the BeBox/BeOS with books also for that platform specifically and some C++.  Once it was defunct I went to look for PC development books about graphics, OpenGL and so on.  At some point Linux & Open Source became hot so also had to learn about it too ;-).

Of course the latest addition to that bookshelf are books about iOS development.  So now let find out what are my recommendation for starting a smaller bookshelf (maybe books that can fit on your coffee table or nightstand).

Game Architecture and Design
This was my first book about Game Design that I ever own, several years ago I was involved in another start up that was looking to build at that time a revolutionary virtual machine systems (which involved hemispheric display projection systems + submarine racing game).  So I was looking for a book that could help me in this project with different aspect of what we had to do.  Which it did very well as the first part of the book is about game design itself, then the second part was about building a team & project management (which we were looking to do eventually) and the last section was about game architecture.  I found a lot of valuable advices in that book and I would recommend that book for people interested in learning more about game development.  Sadly this version is out of print, but fear not another updated edition is available here.

Andrew Rollings and Ernest Adams on Game Design
After reading the first book from Andrew Rolling about Game Architecture and Design I was interested in learning more about Game Design specifically so when I saw this new book that came out I grab it quickly. The first section of the book explain the different elements of game design which I think is a good introduction to them.  On the second section it explore common game genre and what is involve for the designing of each specific genre.  In the second section you can easily choose which chapter you want to read as if they are some game genre you aren't interested in you can simply skip them.  It also include in the appendix section some design document template which could become handy.

A Theory of Fun for Game Design
The 2 previous books while very interesting they sometime tend toward more for technical people, which isn't bad but maybe you want something more easy to approach.  Then this book from @raphkoster is perfect for this as it take a more lighter approach to explain what game are and what make them fun.  I really enjoy reading this book and its also something that you can re-read often as its not that thick and only one page contain text since the opposite page always contain an image to help visualize some of the concept/topic from the previous page.  The way it was written you could easily pass this book around to anyone in your family or your friends and it should help them understand a bit more what are game and what you are trying to accomplish (doing game development).

Beginning iPhone 3 Development
Definitely the book to get for any new iOS developer, as this book introduce you to the wonderful world of the iPhone SDK.  I found the book to have a good progression from very basics tutorial to more advanced as you gain more knowledge of the iOS in general.  In the first series of chapter you will tackle basic UIKit stuff such as setting UIView, UIViewController, UIButton, etc... while in the later chapter you start to learn about more advance topics such as OpenGL ES, Quartz.  I think @jeff_lamarche and @davemark did a great job in introducing the iPhone SDK, also if you are interesting in learning more ill recommend you to check @jeff_lamarche blog as he often post some very useful article.

iPhone Advanced Projects 
Maybe you're not an iOS beginner developer anymore and would like to try new thing, well this is a good book for you.  It use a totally different approach then the Beginning iPhone Development book, as each chapter is written by a different author and tackle a different topics (OpenGL ES, networking, debugging, audio, etc...).  So you could easily decide which chapter interest you the most and read those first, while reading those other chapters later on.  Another interesting fact about the book is that @snappytouch wrote the chapter about doing Environment Mapping with OpenGL ES while @owengoss wrote the chapter about debugging.

The Business of iPhone App Development
After mastering everything about iOS development and  have completed your first app you might wonder how to do marketing for it.  Look no further, check this book and I will even advice you to start to read it now!  As you will find out in the first introduction chapter that they are thing you should consider and start to do/prepare even before you start building your app, since its not just about marketing.  In this book you will learn about doing market research, Intellectual Property, different business models in the AppStore, testing, etc...  After reading this book you should have a good grasp on what you need to do as a business to have a chance of success on the AppStore.  I am glad that Dave Wooldridge (@ebutterfly) took the time to wrote that book so it can help us all with the business side of iOS development.

Objective-C Pocket Reference
I always felt that a pocket reference can often come handy when you just want to verify something or just re-read quickly about some topic.  Of course for an iOS developer an Objective-C pocket reference can be quite useful,  I know this little book is always on my desk for a quick browse and it will also often find its way in my bag while commuting to work or traveling somewhere.  The only thing I wish that book would have so it could be perfect is to cover the few addition from Objective-C 2.0 which sadly aren't covered in this edition.

As you probably saw above my bookshelf is bigger than this, but most other book are about other platforms (some of them are even defunct such as BeOS, AmigaOS well the original hardware).  But those are the book that I feel are most pertinent for any iOS developer.  Also people might wonder why so many paper books and why I don't go all digital, well maybe its my love for old stuff (retro, antique, etc...).  But I always felt more appealing to read a book in paper format then the digital one,  also a book I can bring it around anywhere so don't need a computer and internet.  Doing a 45 minutes commute (one way) everyday to go at work also let me read more often.  If you have other interesting book that I didn't mention above, feel free to give your suggestions in the comment section.

This post is part of iDevBlogADay, a group of indie iPhone development blogs featuring two posts per day. You can keep up with iDevBlogADay through the web site, RSS feed, or Twitter.

No comments:

Post a Comment