(Working title)
4/29/08 - Added comments to othello and lights out. Placed a zip of all source and their py2exe compiled versions online.
4/28/08 - Added the forum to the website. Added comments to the sonar game.
4/27/08 - Finished code for Sonar. Some modifications to the other chapters. Completed a copy right page.
4/26/08 - Finished the Bagels chapter. Finished code for Lights Out. Some modifications to the other chapters.
4/25/08 - Added the Othello source code.
4/23/08 - Added a couple new chapters, against my better judgement. Bagels and Othello. Code is complete for Bagels. Also re-added the first secret code chapter, just to give a taste in this book. That pushes back my expected deadline a week or so.
4/22/08 - Better table of contents and glossary. Minor updates to various chapters. Resizing some images in Chapter 2. Experimenting with PDFCreator.
4/21/08 - Completed the Tic Tac Toe chapter. Beginning to go back and edit the earlier chapters and fill out the glossary.
4/20/08 - Another five pages done on the Tic Tac Toe chapter.
4/19/08 - More work done on the Tic Tac Toe chapter.
4/18/08 - Finished the rough draft of the Hangman chapter. Content-wise it is complete, though I still need to go through and edit it.
4/17/08 - Almost finished with the Hangman chapter. Minor code updates to Tic Tac Toe
4/14/08 - After a long pause, minor updates. Decided to cut out the remaining chapters and put those in a sequel book. This reduces my scope to the basics and keeps the book at a more digestible size.
2/28/08 - More updates to the hangman chapter. Man, this is getting to be a huge chapter. Added an estimated page count at the bottom of this page.
2/26/08 - More updates to the hangman chapter.
2/01/08 - Minor updates to the hangman chapter.
1/29/08 - Fixed traces (compatible with IE). Added flow charts for Dragon World and Hangman. (Hopefully this will help teach the reader how to design programs themselves instead of just copying them from the book.) Changed the CSS file for the book so that I use a serif font in general.
I have also finalized the chapters and Table of Contents. Which is good, because this book had a bad habit of feature creep. I can always add in new games & chapters later.
01/28/08 - Added trace of the Dragon World program.
01/24/08 - Added trace of the Jokes program, editted the trace of the second Guess the Number.
01/23/08 - Proof-read chapter 5. Minor edits and corrections. Improved the cover image.
01/22/08 - Created the cover art and proof-read chapters 1 to 4 (made minor edits and corrections).
01/14/08 - Uploaded the secret code & code cracker programs. Those chapters currently have no explanation, but I didn't want to sit on the code any longer. Square Dodge is a GUI game that requires PyGame to run. The code for these programs will probably need cleaning up before I write out the chapters for them.
Eventually, I would also like to add chapters on three things: 1) how to use the debugger, 2) how to plan out a program, and 3) a general study question chapter (simply "what is the output of this code", or "write a program that outputs xxx".
01/11/08 - More updates to the Hangman chapter. Got rid of the dialogs (they'll be too distracting without adding any real value. I'll use the animal graphics in some of the games though.) Also completed the javascript for a program stepper to let people see how the program executes step by step.
12/16/07 - Started on the Hangman and Tic Tac Toe chapters. Added a couple of "dialogs". The dialogs serve to review the content in the book through a socratic technique. Not sure if that adds to the book at all, and it may get axed later. But I liked the format in Godel Escher Bach, so I'm emulating it here.
12/10/07 - Finished Dragon World chapter. Starting the hang man and tic tac toe chapters (the source code is complete).
10/28/07 - Generally started on this project with outlines and brain storming.
(You can leave comments on the blog page for this book.)
I am putting together a book focused on teaching programming to children (around the age of 9 or 10, the same age I was when I started to program in BASIC). My own experience was finding Fred Dignazio's 1983 book, "Invent Your Own Computer Games". It gave my Nintendo-obsessed mind a very nice primer on programming in BASIC. I liked the format (each chapter gave the source code for a new game, and then explained the code afterwards) but found the content lacking (it did not go into action games with a program loop, or graphics and sound).
After looking on the web, I was dismayed by the lack of content in this area that was freely available. All the books and websites were either 1) teaching some made-for-kids programming language instead of a real language or 2) were boring adult programming books with kiddie cartoons added in.
I think the Hackety Hack project is in the proper spirit, and their manifesto embodies a lot of the ideas that I espouse. The Salon article, Why Johnny Can't Code touches on this as well.
My book will serve as the book I wish I had when I was young. It will cover game programming, teach by example, and use a real programming language (in this case, Python). The working title is "Invent Your Own Computer Games with Python" until I come up with something better.
I have a few of the chapters complete, and will be publishing more as they come about. The final book will be published as a PDF (as will the individual chapters when I get around to doing so).
I welcome any comments or criticisms.
Current estimated page count:
| Cover | 1 |
| Table of Contents | 1+ |
| Copyright info | 1 |
| Dedication, note to readers and programmers, etc.. | 0+ |
| Introduction | 8 |
| Hello World | 22 |
| Guess the Number | 25 |
| Jokes | 7 |
| Dragon World | 25 |
| Hangman | 56 |
| Tic Tac Toe | 32 |
| Bagels | 8 |
| Sonar | 12+ |
| Othello | 21+ |
| Secret Code | 4+ |
| Lights Out | 13+ |
| Glossary | 0+ |
| Total | 229+ |
|
|
"Invent Your Own Computer Games with Python" is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License. You are free: to Share - to copy, distribute, display, and perform the work to Remix - to make derivative works Under the following conditions: Attribution - You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work). (Visibly include the title and author's name in any excerpts of this work.) Noncommercial - You may not use this work for commercial purposes. Share Alike - If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one. |