<M <Y
Y> M>

[Comments] (2) Metaphor Milestone: I forgot to mention that recently was the first time I've ever heard someone at work say "at the end of the day" and actually mean at the end of the day.

Subscribed to Seth: Seth's diary is now on NewsBruiser, after an evening of rewrite rule magic and Apache configuration frustration. Now you too can subscribe to his RSS feed, or just enjoy the superior navigability of NewsBruiser over... HTML files. Yeah, that was hard to beat.

[Comments] (15) Godzillopoly: Here's a first stab at my ideal Monopoly game, based on an idea of Kevan's. This version makes a couple small changes, all in the spirit of the existing rules, and evens the game out a little by making the endgame less depressing and hopeless for the players who aren't winning. However it does not inject any additional element of skill into the game, so it's not perfect.

Basically you add Godzilla(tm), or my non-licensed, freely-usable character Freezilla... uh-oh, let's call him Lizardbeast and get rid of the spikes on his back. There, we're perfectly safe! Anyway, as I was saying. you add the loveable and completely original character Lizardbeast as a player in your Monopoly game (tiny metal Lizardbeast tokens sold separately). When the first building is placed he is placed across the board diametrically opposite that building. For instance, if you build a house on New York he is placed on Boardwalk. Subsequently he rolls the dice (actually, the banker rolls for him) and moves as any other player, after the last player has moved. The only differences between him and a human player are:

If Lizardbeast lands on a square that makes you do one of these things, he stays on that square and does not do them. When he passes Go, he does not collect $200.

If Lizardbeast rolls doubles he gets to move again, just like a human. If he rolls three doubles in a row, he does not move the third time, but neither does he go to jail. How is that supposed to work anyway? "Ladies and gentlemen of the jury, the facts are clear. The puppy dog you see before you rolled two threes. Then he rolled two ones. Then, in the presence of numerous witnesses, he rolled two sixes. The state rests." Anyway.

If Lizardbeast should ever land on your property, woe betide you! He will crush one building on your property. If your property has no buildings on it, nothing will happen. You may collect rent as usual while Lizardbeast is on your property.

"I noticed you said 'one building'," you say tenatively. "Does that mean--" Yes! Build a hotel, if you dare, in your hubris! When Lizardbeast checks in, your hotel does not check out! He will stomp it as easily as he would a single house!

Should Lizardbeast succeed in destroying all buildings on the board, he becomes bored (so you don't become bored moving him around all the time when he can't do anything) and leaves until such time as someone once again dares to develop their property. At that point he is reintroduced opposite the first erected building, as before.

Discussion: This variant alleviates some of the rich-get-richer that makes a Monopoly endgame infuriating if you're losing and boring if you're winning. However it does this by simply disrupting the endgame at random and moving you back into the middle game. It doesn't solve the fundamental problem of the endgame where it turns into a stochastic grind and you just want to make the computer finish it, but you're not playing on the computer. My current thinking involves buying Lizardbeast bait to leave on your opponents' properties, but it is as yet unformed.

Crap, I forgot to change the name of the game.

Take That, Lousy Buffalo!: In Alberta there's a prehistoric buffalo jump, a cliff off of which ancient Native Americans herded buffalo, making use of the buffalo's potential energy in addition to all its other parts. Nowadays buffalo are too smart to fall for that trick, so all that's left is an animated GIF, a UNESCO World Heritage Site, and one of the best names ever: the Head-Smashed-In Buffalo Jump Interpretive Center.

: The Technorati API is very useful; so useful that its 500-a-day limit on API calls is incredibly frustrating to me. And don't even get me started on Google's API. I much prefer APIs like the Amazon API that just limit how often you can make a call.

Does anyone have any suggestions of how to get more getCosmos()-like behavior without actually cheating? All I can think of is to scrape del.icio.us instead, but that puts me in a del.icio.us ghetto. I may end up building my own private mini-Technorati.

[Comments] (6) We'll Leave A Light On For You (But Why?): My neighbors leave their porch light on all night. I am not sure why. Are you supposed to leave your porch light on all night? It seems like a waste of electricity. Does it deter burglary?

[Comments] (3) Software Endorsement: If you're writing a database application in Python and you need a object-relational mapping (ie if you're writing a nontrivial database application in Python), I recommend SQLObject, written by NYCB reader Ian Bicking. I tried most of the ones on this list and SQLObject was the least frustrating of the lot. NOW YOU KNOW.

The Ass-Kicking Laser Algorithm Is Making Sense: More sense than it was making before, anyway. I changed it to turn relative times into absolute times, and got rid of the weird "URLs I've seen before" cutoff in favor of a time-based cutoff. It's still over here.

Fly Me To The Moon, Alice!: Check out this emulator of the Apollo guidance computer.

[Comments] (6) : My grandfather, Roy Dalton Richardson, has died. Like my father and myself, he was stubborn and emotionally quiet. But he was passionate, and he worked his whole life, and when he couldn't work anymore it hurt. Every since I've been able to formulate the thought, he's been my image of how I would be when I was older. He was the first person I saw grow old. I loved him, and now he's gone, from my life and many others. May he rest in peace.

Lesson Learned: If you're messing around with del.icio.us and your intentions are honorable, resist the temptation to hit that hidden link at the bottom of various pages. It does exactly what you think it does.

[Comments] (3) Porch Light Followup: Consensus is that leaving the porch light on does deter burglary. Reader Vince Janis also wrote in with a suggestion to deter burglary by writing an intimidating name on a dog bowl and putting it by the back door. Why say BEWARE OF DOG when you can say BEWARE OF DOG WHO EATS FOOD?

I turned on the light on Sunday night to see how it would go. The only thing that happened was I forgot to turn it off Monday morning. I should have seen that one coming. I like the idea in principle, but I need a timer or (as Sara suggested) a motion detector.

Vindication: For probably months now I've been waiting to see if my House of Representatives RSS feed would get automatically updated when the members returned from campaigning vacation. Well, yesterday they came back, and so did the RSS feed!

Of course, all they did yesterday was give fancy names to post offices. Maybe we should be grateful for that, actually.

Impressive: Now this is what the area surrounding a black hole should look like. One of the best APODs ever.

[Comments] (4) The party! It's ruined!: Who knows why it took me so long to come up with this, but I finally did last night while talking to Sumana (who is coming home tomorrow). Continuing my love of randomly generated entertainment, Dadasaurus Rex does for Dinosaur Comics what Dada Pokey did for Pokey the Penguin (or, to look at it another way, what Pokey the Penguin did for itself). Every minute it puts together a new comic using the hard-to-install-on-non-Debian-systems but wonderful Python Imaging Library.

Eventually this system will expand to consume Dada Pokey and its spin-offs, and I'll also add a Five-Card Nancy style game and more different webcomics, and everything will be happy because I'll have finally gotten rid of that horrible 1998 Dada Pokey code. For now, at least most is happy; love those comics!

Update: in personal communication, Ryan North says Dadasaurus Rex is "FANTASTIC".

: New on the WB: Jack & Bobby. What is this, the Quicksilver show?

[Comments] (1) : Today's my day for publicity, as Beautiful Soup gets a favorable mention in Uche Ogbuji's xml.com column, which is actually about converting HTML into XML. Beautiful Soup tries to reduce the number of times you have to convert HTML into XML, but if you do have to there are tools for it.

libxml2's tree object looks like something I could use as a model for a future version of Beautiful Soup (I do need to rewrite a big chunk of it; I'm painfully aware of numerous embarassing flaws, but it's still the best screen-scraping library IMO).

[Comments] (1) Now Boarding The Sleep Train: But first, the official word from Ryan North about the Dinosaur Comics/The Diamond Age connection first noted here in January:

People have mentioned this to me before, but I haven't read the book yet. It's on my list, because it's an incredible coincidence. Especially with the Utahraptor: it's such an obscure dinosaur! The dinosaurs were actually picked because I liked the way they looked. I had to go back and look up what they were when it came time to name them.

There you have it. Most amazing coincidence I've seen in a while. I left my copy of The Diamond Age in Arkansas (actually I gave it to Geoff, which means it's probably in San Francisco but I don't know where), so I can't go back and check, but my half-recollection is that it's really very similar to the archetypal plot of Dinosaur Comics.

[Comments] (4) : Can someone please go to Japan and find out what the Hakone 3D Space Dinosaur World/Fairy Tale Aquarium is? Sumana went near enough to it to get a brochure that mentions it in a big list of attractions, but not near enough to it to find out if it really is the most awesome thing in the world, or just a bunch of meaningless words strung together.

[Comments] (4) Funeral: Johnny Cash played at my grandfather's funeral (in the form of the "My Mother's Hymn Book" CD), leading me to declare that I want Johnny Cash at my funeral too. No one else seemed to appreciate this; Sumana says she will ensure that only the really silly Johnny Cash songs are played at my funeral, like "Chicken in Black" and "Sam Hall".

I read the eulogy, and everyone said I did great, but I just tried to make eye contact instead of just reading off the paper.

In addition to the eulogy, the Californian ran a news piece on my grandfather.

: Weird recipe-theoretic entry coming later tonight, so enjoy these giant lizard pictures while you can.

[Comments] (2) How to think about recipes: I have a brilliant plan to make money off of the ideas I'm going to synthesize in this entry, but others are catching up to me on the basics and I still haven't done anything with my alleged plan that's so great. So this is kind of my admission of defeat; I'm going to try to formalize and make obvious the part that's about to become well-known anyway.

Let's think about recipes. Every time you make a recipe you perform a ritual corresponding to the recipe. A recipe is generally written as a narrative, but except in very simple cases you never make the recipe simply by reenacting the narrative. If you want to get it done in a reasonable time (and, if heat is involved, if you want it to work at all), you have to set multiple things going simultaneously, the ordering merely hinted at by the use of words like "meanwhile" in the recipe.

Even when the recipe is divided into sub-recipes, you need to read the recipe as a whole and figure out how best to use your time, what the prerequisites are, and how the recipe will take shape. The idea of mise en place is, in my opinion, partially a hueristic to make this step easier by moving a lot of the decisions to the front so you don't have to place them elsewhere.

That's the state of the art. Now imagine writing a recipe for a hypothetical cooking robot, something that knows about ingredients and cooking techniques but lacks planning skills. You'd get a representation similar to one you'd find in an MMORPG cheat-sheet. This representation describes the recipe in terms of the ritual, depicting a series of steps in which you combine and transform old items to get new items. I bumped into this idea a year ago, the way a ship might bump into a mola mola, but didn't actually understand that it could be used to represent real recipes until I played Kingdom of Loathing.

These recipes look like trees. The vertices of the tree are items of food. The leaves are the ingredients, and at the root lives the finished dish. The edges of the tree are operations. Some of them are unary (melt the butter), some are binary (brush the dough with butter).

This is the cool part. You can do all sorts of things with a tree representation of a recipe. Some of them have to do with the fact that your representation represents the cooking ritual, and some have to do with the fact that the ritual is now computer-parsable.

The more complicated actions now naturally correspond to a longer branch of the tree, making it easier to get a feel for how the recipe ritual is going to go. If you have times associated with each operation, you can calculate which actions you need to start first. You can, if you know enough about ingredients and their properties, perform a transformation on the recipe. (This is the part I am really excited about.)

As far as I can tell, this idea originated in Computerized Cooking, a gloriously cranky but un-ignorable document from the '80s which reminds me of Ted Nelson's stuff. Recently it found new life in insta-hit weblog Cooking for Engineers, which does a lovely tree presentation that is a tree but doesn't look like a tree, or RPN, or have a lot of internal cross-references. The ugliness of the recipes was my main problem with Computerized Cooking, and I really admire the way CfE solved it.

So that is how, in my opinion, you should think about recipes if you want to make money from recipes (as opposed to food) in the twenty-first century. On a higher level of abstraction lives the meta-recipe of the culinary design pattern, which I think looks like a templatized recipe. And above it in a different direction you have the meta-recipe of the meal, which I still have no clue about. I think it would look like a set of recipes with interconnected techniques and ingredients, but I'm starting to sound like Frank Chu so I'll leave that alone until I figure it out.

[Comments] (6) Yum Yum Yam Yam Walla Walla Couscous: This is my reverse-engineering of a dish by that name that Seth had heard about when he was young. I'll present it in lovely CfE format.

3 yams, peeled and diced Bake on sheet for 30 minutes at 325 degrees combine
1 cup mixed dried fruit (eg. cranberries, raisins)
1 cup nuts (eg. walnuts) toast
2 Walla Walla or other sweet onions, diced saute in olive oil
ground cinnamon
2 cloves garlic, diced
2 cups water or broth boil combine and fluff
2 cups couscous

Discussion: I added more stuff to the recipe than to the dish I actually made, because the awesome expansion power of couscous made the end result look like a desert of couscous which expeditions of yams and cranberries had unsuccessfully tried to cross. Couscous can hold a lot of other stuff. I also added some garlic to the recipe because the couscous I made was too sweet and lacked bite. Put in the garlic when your saute is almost done so it doesn't burn; that's just a general rule of garlic. I used Hawaiian sweet onions because I couldn't find Walla Walla onions.

Not bad, for a first couscous recipe. And until I find a better one, I declare that this has the best name of any dish ever created.

Google Memewatch Demands: Move over!

Update: Rianna contributes "All your meme are belong to us".

: Turn POST requests into GET requests with AutoPOST. From 1996 via Toph.

[Comments] (2) Not Invented Here: If you think there are too many skinnable MP3 players or Python web frameworks, whatever you do don't look at this list of HUMAN LANGUAGES.

[Comments] (1) : There is now Twinkie tiramisu, in accordance with NYCB prophecy. It uses ice cream for the filling, which is kind of weird; Twinkies already have filling. I guess just soaking Twinkies in coffee sounds too much like some peoples' breakfast.

[Comments] (3) Clickolinko bonanza!: Not to be confused with a Clickolinko juncto. Heh, heh, a little Baroque Cycle humor there. Okay, I'll stop. Ow! I said I'll stop! But now, I'll have to retaliate so as not to show weakness!

Okay, where was I? Here are three things in recent Clickolinko history that caught my eye.

This one was directed toward me by name: Google Memewatch dares to ask: What are you cooking with?

websay does what eCow (which doesn't even work anymore due to various venue changes) does, only it actually works and has a better interface. This is my ultimate win; I come up with an idea and get the credit, and eventually someone else does the same thing and I can pass off the mantainance duty on to them.

Finally, it turns out that The Onion generates its headline graphics with a PHP script. A nice, juicy, usable-by-anyone headline graphic generation script. The API is pretty simple, as this API demonstration.... demonstrates.

[Comments] (1) Star Trek Reductio:

"Is he an alien or does he just have a big wart on his forehead?"
(Me to Sumana, about the hoity-toity weapons dealer in DS9 "Business as Usual".)

[Comments] (4) Scroungeup Game Roundup: I'm busy doing other stuff, but I have a bunch of game reviews lying around so I figured I'd turn them into a Roundup for you, my discerning readers. What is it you discern, anyway?

Herbivore Update: Went to Herbivore again, and had the lentil loaf. Okay, but not as good as I'd been hoping.

[Comments] (3) Deadbeat UPS: I bought a UPS a while ago at a yard sale for $10, and I thought it was a pretty good bargain. But then it got lazy or something, because it embarked on a campaign designed to get me to stop using it. Every once in a while it would pretend the power had gone off and beep, beep, beep. Real annoying. The only way to get it to stop was to push the button on the front, which... turned off the power. So instead of a machine that protected my computer in the event of power outages, it was a machine that simulated localized power outages affecting only my computer.

Since I'm not afraid of power outages due to ext3, it's now sitting on my computer room floor enjoying an undeserved retirement. That's the story of the deadbeat UPS.

[Comments] (3) : Neal Stephenson defends the endings of his books from ending-naysayers like myself by saying that his endings are written to conform to his ideas of a good ending, not ours. Okay, fair enough. He's the writer. But that leaves unanswered the question: what is his idea of a good ending?

If we can learn to take Stephenson's works on their own terms, our appreciation of them can only be enhanced. But his aesthetics are in this respect foreign to mine, or there wouldn't be a problem (this is especially bizarre because in most other respects his aesthetics are aligned with mine). So what is the deal?

[Comments] (1) : Next Passover, try a delicious plague of cookies.

You Paid For It: CoolGov is the more readable, more weblog-like, more interesting on average version of the GPO document site (plug for my RSS feed of same).

My nominee for interesting government site is Microgram, the bulletin of the drug war, which features in every issue a roundup of new ways drug entrepreneurs have come up with of smuggling drugs into the country. This includes innumerable "Put cocaine inside random object" schemes, but also weird things like fake Viagra that's really an amphetamine (didn't I get spam for that? And isn't the attempt to get spam past a spam filter analagous to smuggling something into a country that doesn't like it?). Also hilarious implausible-deniability marijuana products with stoner parody labels like "Splif" peanut butter, labels probably designed by the same people who design those stupid stoner parody logo T-shirts and trucker hats.

: Like lists? You'll love the Wikipedia list of lists.

[Comments] (4) : I like these Pac-man paintings from cognitive scientist Jim Davies. They remind me of, but are better than, the paintings I did in high school when I thought painting was an effective way for me to express things without actually thinking them through or knowing how to paint. Excellent work, especially Pokey's Problems One Through Three. The ghosts' different Pac-man-chasing algorithms turn them into symbols.

[Comments] (4) : Man. Writer's block! What should I write about?

[Comments] (4) Previous Entry Does Not Count: Nobody told me what to write about, though some people emailed in to gloat, so I'll write about the Radio Habana Social Club, where I just ate dinner with Sumana and friends. I went to get away from my writer's block and companion algorithm designer's block (I need to read some papers or something). Its selling points are that it's incredibly small, and the walls are crammed full of stuff, including a set of "Heroes of the Blues" trading cards (four or five different bluesmen took the "blind" praenomen, according to the cards, and for all I know they were really blind). These selling points are better than they sound.

However, I think the food is pretty bad. I had a tamale which in retrospect felt like just a big chunk of lard, and I was not happy because I ate lard. The menu said you could get the tamale with chile, which I misread as saying you could get it with chili, and I was very excited until my tamale came with a line of red sauce down the middle, dashing my hopes of a Doe's-esque tamale. It also came with black beans, which were pretty lackluster despite having intermingled onion slices; spanish-rice-tasting basmati rice, which was very good, and the generic California Random Greens Salad that makes you think you're having a fancy dinner.

I had cocoa which, as happens in some restaurants, wasn't sweet at all; it's like they make the traditional Aztec cocoa and you have to dump in a bunch of sugar from the sugar container to make it taste like cocoa, and you feel un-hip. But hey, that's me to a T.

The signature dessert was rice pudding; I didn't have any because I'm trying to get rid of this peach cobbler in my fridge, but it's probably good. My verdict: come for the atmosphere, leave for the atmosphere.

[Comments] (3) Apology: Oh yeah, I've been meaning for a while to publicly apologize to Taina Prusti, Jarno's girlfriend wife, for consistently calling her "Prusti" the whole time we were all together in Europe, and then afterwards on this very website. When Jarno introduced me to her, all I heard was her surname. She probably thought I operated under some weird American notion of chivalry. In my defense, I thought and still think "Prusti" is a great first name for a woman.

The Nethack Mad Scientist: "I've created a monster! With my scroll of create monster!"

[Comments] (2) How do they cram all that hologram?: I read The Physics of Star Trek, which is actually a low-level primer on modern physics with Trek references interspersed, which is fine with me. Anyway there's a section on holograms and how they work, and I was reminded of a while ago when Kris complained about not being able to buy a full-color hologram. Well, I'm here to tell him he can buy a little dinky hologram for $99, or a larger one for $149, at the CafePress of holograms.

The Stomper of Meaning: Monster attack DHTML!

: Man, whatever its flaws, I gotta admit that The Weekly World News has managed to do The Onion better than The Onion. It achieves this by walking a tightrope, setting up dumb jokes and deliberately ruining them: that beautiful girl of comedic tropes that The Onion wants to approach, someday, but never has the guts. The great advantage of the WWN, I'm beginning to realize, is that it doesn't care about anything, and that can be liberating. Unfortunately, it usually means setting up the dumb joke and then going through with it.

Many readers have written in to ask why am I so hostile towards The Onion in these pages. It's because the founders of The Onion are incredibly wealthy, whereas I am merely moderately well off. It's inflation-adjusted class warfare!

Link found via Dog Bites Dog, which I can't tell from one minute to the other whether or not it needs to have its algorithm rewritten for more yuks per headline.

[Comments] (3) : Hi, I'm Seth David Schoen. Not really, but let's say I was. Today would be my birthday! And my friend Leonard would be racking his brain trying to think of a gift that would top 2002's floating-head-fest ksethdavidschoen. And failing, because he totally forgot until the last moment that he needed to think of a present for Seth. Yes, the same problem that befalls people who buy presents also lies in wait for those who write pieces of software to use as presents. He'd have to fall back on the old "I'm Seth David Schoen" gag, that tired prune of a joke.

But wait! Surely the fact that it's such an old joke is the key to how best to use it. In this computerized age, can we not automate the rituals that, while not actually giving us satisfaction, give a sort of second-order satisfaction when we see that others still perform them? Do we dare treat a running gag not with the deference due to age but with the surgeon's eye of the seasoned refactorer?

Indeed we do. Now that I [still Seth] use Leonard's NewsBruiser weblog software, all sorts of crazy plugins are within my reach. If only Leonard would write a NewsBruiser plugin that implemented this bizarre in-joke! Then my [Seth's] birthday would be complete!

Well, far be it from me [Leonard] to interfere with the completeness of Seth's birthday. The Birthday Incompleteness Theorem notwithstanding, I present NB-SethDavidSchoen, the most useless NewsBruiser plugin ever, and the first to come in a standalone package (the two are related). Furthermore, I've flipped the switch on my own weblog for the remainder of Seth's birthday.

As are we all, I'm Seth David Schoen.

[Comments] (3) Flash! Floo-od! You'll kill ev'ry one of us!: One of my irrational fears is flash floods (irrational not because flash floods are not dangerous but because I never go anywhere they occur). One minute you're hiking along a gully with your camping stove and the next you're under twenty feet of water like in O Brother, Where Art Thou?. That's how it works in my imagination anyway. Today's Earth Sciences Picture of the Day is a chilling close-up glimpse at a flash flood in the offing. ESPOD, by the way, is the best companion I've so far found to the venerable APOD.

Man, if only the power of flash floods could be turned to some useful purpose. Like setting up encounters between flash floods and flash mobs.

[Comments] (2) About bookmarklets: I'm starting to get into bookmarklets, and I have a question. Can I write a bookmarklet that activates when you drag and drop a link onto it? I realize that this question, like the question of how to programatically access a browser's open tabs, lies on the line between the browser as an application environment and the browser as an application in its own right. A lot of the stuff I'm starting to think is interesting lies on that line, which I find very strange. This is the first time in my life I've ever cared about drag or drop, much less the two combined.

Separated At Birth: Ziggy and Dick Cheney.

Think about it.

[Comments] (7) : Keep your eye on Mount St. Helens; it's been acting like it did the last time it erupted.

<M <Y
Y> M>


Unless otherwise noted, all content licensed by Leonard Richardson
under a Creative Commons License.