2008 Apr 18, 12:58
"I found myself in possession of the "Infocom Drive" - a complete backup of Infocom's shared network drive from 1989." He posts emails from that backup w/o consulting those involved who show up for
luke warm debate in the comments.
2008 Apr 7, 10:09
More of my thoughts have been stolen: In my
previous job the customer wanted a progress bar displayed while information was copied off of proprietary hardware, during which the software didn't get any indication of progress until the copy
was finished. I joked (mostly) that we could display a progress bar that continuously slows down and never quite reaches the end until we know we're done getting info from the hardware. The amount
of progress would be a function of time where as time approaches infinity, progress approaches a value of at most 100 percent.
This is similar to Zeno's Paradox which says you can't cross a room because to do so first you must cross half the room, then you must
cross half the remaining distance, then half the remaining again, and so on which means you must take an infinite number of steps. There's also an old joke inspired by Zeno's Paradox. The joke is the prototypical engineering vs sciences joke and is moderately humorous, but I think
the fact that Wolfram has an interactive applet demonstrating the joke is funnier than the joke itself.
I recently found Lou Franco's blog post "Using Zeno's Paradox For Progress Bars" which covers the same
concept as Zeno's Progress Bar but with real code. Apparently Lou wasn't making a joke and actually used this progress bar in an application. A progress bar that doesn't accurately represent
progress seems dishonest. In cases like the Vista Defrag
where the software can't make a reasonable guess about how long a process will take the software shouldn't display a progress bar.
Similarly a paper by Chris Harrison "Rethinking the Progress Bar" suggests that if a progress bar speeds up towards the end
the user will perceive the operation as taking less time. The paper is interesting, but as in the previous case, I'd rather have progress accurately represented even if it means the user doesn't
perceive the operation as being as fast.
Update: I should be clearer about Lou's post. He was actually making a practical and implementable suggestion as to how to handle the case of displaying progress when you have some idea of how long
it will take but no indications of progress, whereas my suggestion is impractical and more of a joke concerning displaying progress with no indication of progress nor a general idea of how long it
2008 Apr 3, 10:38
Produces a cool interactive graph of your friends on Facebook.
2008 Mar 7, 10:03
More videos and photos of megaphone in action. Neat idea.
2008 Mar 7, 10:03
Big screens in public places host video games you call in and control with your cell phone: "Jury Hahn and Dan Albritton talk about their creation Megaphone - an interactive software that allows
users to control Big Screen game elements with their mobile
2008 Mar 2, 9:18
This post is about creating a server side z-code
interpreter that represents game progress in the URI. Try it with the game Lost
I enjoy working on URIs and have the mug to prove it. Along those lines I've combined thoughts on URIs with interactive fiction. I have a
limited amount of experience with Inform which generates Z-Code so I'll focus on pieces written in that. Of course we can already have URIs
identifying the Z-Code files themselves, but I want URIs to identify my place in a piece of interactive fiction. The proper way to do this would be to give Z-Code its own mimetype and associate
with that mimetype the format of a fragment that would contain the save state of user's interactive fiction session. A user would
install a browser plugin that would generate URIs containing the appropriate fragment while you play the IF piece and be able to load URIs identifying Z-Code files and load the save state that
appears in the fragment.
But all of that would be a lot of work, so I made a server side version that approximates this. On the Web Frotz Interpreter page, enter the URI of a
Z-Code file to start a game. Enter your commands into the input text box at the bottom and you get a new URI after every command. For example, here's the
beginning of Zork. I'm running a slightly modified version of the Unix version of Frotz. Baf's Guide to the IF Archive has lists of IF games to try out.
There are two issues with this thought, the first being the security issues with running arbitrary z-code and the second is the practical URI length limit of about 2K in IE. From the Z-Code
standard and the Frotz source it looks like 'save' and 'restore' are the only commands that could do anything interesting outside of the Z-Code virtual machine. As for the length-limit on URIs I'm
not sure that much can be done about that. I'm using a base64 encoded copy of the compressed input stream in the URI now. Switching to the actual save state might be smaller after enough user
2008 Feb 25, 2:09
"ZPlet is an interpreter for programs using the Z-Machine virtual machine invented by Infocom for their interactive fiction." Used by to let you play the Hitchhiker's Guide to the Galaxy IF game.
2008 Feb 25, 1:18
An interview with Judith Pintar famed I.F. game writer. FTA: "While I was writing CosmoServe, I worked as a children's theatre director, and for the ten years before that I was a actress, storyteller
and concert musician." She worked with my third grade
2008 Feb 15, 2:47
AV Club reviews Lost Pig, the 2007 Interactive Fiction Competition winner.
2007 Dec 17, 9:25
Johnny Lee has a couple of projects involving the Wii remote. In the first he uses his fingers as his pointers Minority Report style and in the second he uses an LED pen and a projector to create a
2007 Oct 7, 7:33
Interactive graph of name popularity over the years.
2007 Jul 26, 12:27
My friend Chris' interactive fiction games.
2007 Jul 22, 8:38
Animated interactive graph of the FSM used to parse any regex and corresponding string you enter.
2007 May 11, 8:55Last time, I had written some resource tools
to allow me to view and modify Windows module resources in my ultimate and noble quest to
implement the XML content-type fragment in IE7. Using the resource tools I found that MSXML3.DLL isn't signed and that I can replace the XSLT embedded resource with my own, which is great news and
means I could continue in my endevour. In the following I discuss how I came up with this replacement for IE7's XML source view
At first I thought I could just modify the existing XSLT but it turns out that it isn't exactly an XSLT
, rather its an IE5 XSL
. I tried using the XSL to XSLT converter
linked to on MSDN, however the resulting document still
requires manual modification. But I didn't want to muck about in their weird language and I figured I could write my own XSLT faster than I could figure out how theirs worked.
I began work on the new XSLT and found it relatively easy to produce. First I got indenting working with all the XML nodes represented appropriately and different CSS classes attached to them to make
Next was the XML mimetype fragment which uses XPointer
, a framework around various different schemes for naming parts of an XML document. I focused on the
which is an extended version of XPath
. So I named my first task as getting XPaths working.
. From this this I can execute XPaths, however there's no builtin way to map from the XML nodes selected by
position in the document. For instance 'a3-e2-e' is the name produced for the 3rd attribute of the second element of the root element of the XML document. When producing the HTML for an XML node, I
them to their corresponding positions in the HTML.
With the hard part out of the way I changed the onload to get the fragment of the URI of the current document, interpret it as an XPath and highlight and navigate to the selected nodes. I also added
an interactive floating bar from which you can enter your own XPaths and do the same. On a related note, I found that when accessing XML files via the file URI scheme the fragment is stripped off and
The next steps are of course to actually implement XPointer framework parsing as well as the limited number of schemes that the XPointer framework specifies.
2007 Apr 17, 2:54
Its a little ruby tutorial that runs in your browser.
2007 Apr 12, 2:34
Blog on visual design and data visualization. Lots of neat things here.
2007 Apr 8, 11:26
A collaborative interactive map of the sky (as seen from Earth).
2007 Mar 13, 1:42
Use government census data on Google Earth.
2007 Mar 12, 12:46
An interactive map showing where Internet attacks are coming from by top level domain.
2007 Jan 17, 2:10