How I wrote Game Programming Patterns
journal.stuffwithstuff.com
journal.stuffwithstuff.com
The only detail I disagree with is the one about telling your friends and family what you're doing as a way to keep motivated. A few years ago I read a paper about the psychological effects of talking about goals. [0]
The takeaway was that, for most people, sharing a goal provides a sense of satisfaction and self-validation. While it is pleasing, the sensation makes us significantly less likely to accomplish goals such as writing books, losing weight, etc.
Again, I enjoyed the post very much and don't mean to nitpick. I just think this is another interesting perspective to consider when you're setting out to tackle a big goal.
[0] Unfortunately, my memory is failing me, but if anyone knows of the paper - or an article or paper along these lines - please feel free to contribute.
http://www.ted.com/talks/derek_sivers_keep_your_goals_to_you...
Yeah, I didn't mention this in the post, but it ended up doing nothing for me. I did it because at the time I saw some stuff recommending it, but I don't intend to do this again.
I believe it's normally referred to as the "Substitution effect", there's a paper by Gollwitzer et al called "When Intentions go Public"[1] that might be the one you're thinking of?
[1] http://www.psych.nyu.edu/gollwitzer/09_Gollwitzer_Sheeran_Se...
On not using a conventional publisher: my first two books were with mainstream publishers (Cambridge University Press and Princeton University Press). For my third book I decided to self-publish online only, because that makes it possible to integrate animations, interactive Javascript, and so on. Four publishers have asked about publishing paper editions of the book, but it's hard to imagine going back to the printed page as the primary target medium. Having the web as the primary target is so much more powerful.
Nielsen & Chuang is one of the bibles of my universities physics dept.!
[1] http://www.joelonsoftware.com/articles/fog0000000018.html
Ever since John Resig wrote about Write Code Every Day [1], I've fallen into the habit of writing some code on a new side project of mine. Every day, at least 30 minutes of work. Not saving up things to do for the weekend makes it a lot less stressful and has increased my productivity significantly. And whatever I've been working on is constantly on my mind instead of put aside until the weekend or some other period of free time. I'm definitely reaping the benefits of not "breaking the chain."
Also, you can put your own animal drawing on your cover now—and you get to choose which animal!
I'm looking forward to reading new posts about how you need to call your bank every few days to make more room in your account due to all the book sales. Congratulations on getting to done.
This is awesome!
I used to draw (hence the hand-drawn illustrations in the book), but it's one of the many hobbies that didn't make the cut after I had kids. As someone who spends way too much time staring at a screen, there's something really therapeutic about actually working with my hands in an analog medium.
Your post reminded me that I shouldn't be spending all of my time in code working on client projects. Yes, it pays the bills, but I should (need to) do a little drawing each day to keep that part of me alive. It's not as big as writing a book, but it will be fun to see how long I can keep the chain going.
I also agree with your comment about screens vs. paper—I have one of those fancy Wacom drawing tablets, but it doesn't come close to the feel of a nice sharp 4H pencil or Pilot v5 pen on copy paper.
Thanks again for the inspiration.
(Caveat: I've signed up but never used it.)
but i doubt it's the best change-tracking system for them.
too much irrelevant crap, and it doesn't cut to the heart of those things that actually need to be done for a book.
plus, most writers will never slog through learning github.
to make a system that is writer-friendly _and_ does what a book-writing change-tracking system ideally _should_ do, you'd have to hack github so much that -- in the end -- it would have been order-of-magnitude simpler (and better) to program a purpose-built system instead, from scratch.
and yes, i told loren this from day one.
he didn't believe me then.
but if you ask him now, i'll bet he won't be quite so sure.
and by the time he's done, i have no doubt he will agree.
yes, writers need a version-control system.
but no, it is most definitely _not_ github.
-bowerbird
On the other hand when using something ready like git allowed him to launch quicker. If he gets traction he can always write a new system later, if not then he has saved up on a lot of time.
indeed, what i said is, if you already know git/hub, use it, as you can sidestep its problem areas, to get what you need.
but in the long run, github won't work for most writers. so a purpose-built system needs to be built for them/us...
-bowerbird
if so, then yes, what i'm saying exactly is that _loren_ could have saved himself time and trouble, in the long run, by coding a purpose-built system, instead of hacking github.
what it would've cost him, however, is the huge "jumpstart" he received by proclaiming his goal as "github for writers".
the kneejerk response to that, from the tech circles, was something that created huge word-of-mouth and mind-share, not to mention a great starting user-base, of technoids.
but that was months ago, and now there's some sense of "whatever happened to penflip?" and when he goes out to sell the system to writers, the "github" label will not be a benefit at all. (if anything, it will be a liability; but i think in general writers are fully unaware of it.)
all of this is my opinion. you, like loren, may disagree.
-bowerbird
I've chosen Leanpub as the publishing platform for my first book. They only ask for 10% + 50c royalties and there iz zero lock-in with them.
and they only introduced the github integration this month.
so you can't really say that is "_exactly_ what it's about."
or even that it has yet had much of a shakeout in testing.
-bowerbird
That's one of the main reasons the list exists. :) The day the books are ready, you'll know.
wget -r gameprogrammingpatterns.comAh, you're that guy! I bought HHitPA because I read a reddit post by you (presumably) about it.
On a different note, welcome to the Pacific Northwest!
Please consider changing your site so it can be resized (two finger zoom) when viewed on an iPad. The font is on the border of being small. I often do my reading late at night. When tired I find it easier to make pages fill the screen side-to-side in landscape mode. Thanks.
(In particular, I learned much of what I know about bytecode VMs from Lua's implementation.)