While I was working on the documentation for PieCrust 2, I decided I
might as well do something proper, like support for translations and versioning.
The documentation is now in the same repository as the code, and it’s easy to
bake the documentation pages for each release.
To do this, I needed a simple tool that could do the basic work of cloning a
repository, syncing back to given points in times, and do something. In
theory, this would be a simple
bash script or something, but I also wanted it
to do nothing if it already did something for that same specific point in
Thus September was born (if you don’t get the reference, even with the
picture above, I can’t help you).
It’s a simple Python script that still packs some goodness to it. It basically
lets you roll your own readthedocs kinda website (in a very basic way of
course), with appropriate hooks to your repositories.
You run it from inside your repository (Mercurial or Git at the moment) and it
will sync back to each tagged changeset and run a command of your choice. You
can specify a bunch of stuff in a configuration file, like the command itself
(which supports interpolation with a few useful values), the oldest tag to start
from (in case you don’t want to go all the way back to the first release), and a
couple of other things. It will work out of a temporary directory in which it
clones your repository, and stores a cache file that describes what it’s doing.
If you keep that temporary directory around, it won’t re-do the work it
previously did (so it will only rebake my documentation pages if I moved a tag
or added some new ones, and it will re-use and update the repository clone).
It’s still all new and a bit squeaky, so make sure to file some bug reports if
you see anything wrong. Oh, and it’s on Github too for you Git kids.
It had to happen eventually, but PieCrust 1.x is now officially
deprecated. It was deprecated more or less unofficially before, as you can see
from the lack of activity on the repository, but, well, here it is.
The PieCrust 2 help pages are now showing up by default at the official
URL, and that’s where I’ll be focusing from now on.
If you want to upgrade your existing 1.x website to 2.0, you can follow the
installation and upgrade instructions. And of course, please contact
me if you have issues or feedback!
After the nice one-shot “The Murderer of Thomas Fell“, my new gaming group decided to continue with the 1930s
horror genre and we played through roughly a third of the Realm of Shadows
campaign for Call of Cthulhu.
It ended with a near-total-party-kill.
You can read the actual-play for “Kith and Kin” (the first chapter) and
“Provender of the God” (the second chapter) over in the RPG section.
One thing that I realize now that I’m writing those things up is how often I
feel the need to explain why, as a GM, I’m doing this or that — making the
bad guys attack here, adding some clues there, etc. Most of the “actual plays”
out there only focus on what happened around the players’ side of the table. But
I’m finding it more interesting to also include what’s happening behind the GM’s
This is especially interesting because investigative adventures rely a
lot on the GM improvising events and moving around clues to keep the story
going, as opposed to, say, a dungeon crawl, where most of the design decisions
can be done upfront during the preparation phase, and the improvisation is
mostly about adjusting enemies to keep combat balanced.
Adding the GM side of the game makes it easier for me to see what I did right
and what I did wrong, and may even get me some constructive feedback on some of
those decisions. I’ll try to keep adding things like that in the future reports.
This week-end in Vancouver was FanExpo, with the shopping frenzy, celebrity
line-ups, cosplay contests, and friendly comic-book sketching that you’ve come
to expect from such conventions, albeit at a smaller scale for our relatively
young Vancouver edition.
Here’s my artist-commission-focused loot this year:
Nadia (from Kukuburi) by Ramon Perez, Conan by Cary Nord,
and Iron Fist by Kaare Andrews. And a nice Thundercats t-shirt
because I always need a new t-shirt.
After the jump you can see some cosplay pictures I took, although you can
probably see better ones elsewhere on the internet.
Sarah Baird talks about what us left-handed people have put up with all our
lives, and all the way back through history:
Day in and day out, though, the biggest hurdle faced by lefties isn’t
discrimination — it’s mundane, basic functioning. Almost all facets of
society, from ink pens to urban design, are crafted and structured to support,
abet and cater to the right-handed majority. For lefties, functioning means a
constant, conscious consideration of how they can reverse or modify their
natural behavior in order to most effectively move around in the world.
The funny thing is that most of the time, I’m not even thinking about it. I’ll
be, say, getting hot air blowing all over me from holding the vacuum-cleaner
“the wrong way”, and not really realize that this wouldn’t happen if I was
right-handed. It’s just like living in a world that’s slightly less
Generally speaking, I’ve probably encountered less hurdles growing up in France
than most North-American lefties: spiral notebooks were not used a lot (we had
properly bound notebooks) and student chair/tablet combinations were pretty much
The last time I really felt the pain of being part of a market minority was when
I was shopping for a new computer mouse. Being a palm gripper, I ideally need a
so-called “ergonomic” mouse. But those mice are only ever manufactured for
right-handed people. The only left-handed ergonomic mouse that I’ve been able to
find is the Razer Death-Adder Left-Handed Edition. Many people dislike
Razer for their annoying configuration software but I figured I still
needed to vote with my money. And, you know, I needed a mouse.
As expected, the configuration software is annoying, but the mouse is really