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.
if interactive-fiction infocom hhgttg history scifi videogame article 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
will take.
zenos paradox technical stolen-thoughts boring progress zeno software math 2008 Apr 3, 10:38Produces a cool interactive graph of your friends on Facebook.
facebook nexus graph foaf me via:ethan_t_hein 2008 Mar 7, 10:03More videos and photos of megaphone in action. Neat idea.
megaphone video videos videogames game games social 2008 Mar 7, 10:03Big 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
video youtube megaphone software social games game videogames 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
Pig.
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
input.
zork frotz interactive-fiction zcode if technical uri fragment 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.
development if interactive-fiction java opensource 2008 Feb 25, 1:18An 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
judith-pintar if interactive-fiction interview cosmoserve game games 2008 Feb 15, 2:47AV Club reviews Lost Pig, the 2007 Interactive Fiction Competition winner.
game games if interactive-fiction humor 2007 Dec 17, 9:25Johnny 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
whiteboard system.
blog bluetooth wii wiimote remote free hardware hack ui howto interactive johnny-lee 2007 Oct 7, 7:33Interactive graph of name popularity over the years.
name statistics graph reference chart flash time visualization tool tools names 2007 Jul 26, 12:27My friend Chris' interactive fiction games.
friend chris-shelton if interactive-fiction 2007 Jul 22, 8:38Animated interactive graph of the FSM used to parse any regex and corresponding string you enter.
regex flash visualization fsm interactive howto language 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
it easy to do syntax highlighting. Next I added in some javascript to allow for closing and opening of elements. At this point my XSLT had the same features as the original XSL.
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
XPointer scheme which is an extended version of
XPath. So I named my first task as getting XPaths working.
Thankfully javascript running in the HTML document produced by running my XSLT on an XML document has access to the original XML document object via the
document.XMLDocument property. From this this I can execute XPaths, however there's no builtin way to map from the XML nodes selected by
the XPath to the HTML elements that I produced to represent them. So I created a recursive javascript function and XSLT named-template that both produce the same unique strings based on an XML node's
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
add an 'id' attribute to the HTML with the unique string of the XML node. Then in javascript when I execute an XPath I can discover the unique string of each node in the selected set and map each of
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
not available to the javascript.
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.
xml xpointer msxml res xpath xslt resource ie7 technical browser ie xsl 2007 Apr 17, 2:54Its a little ruby tutorial that runs in your browser.
ruby programming tutorial ajax browser code howto interactive shell script 2007 Apr 12, 2:34Blog on visual design and data visualization. Lots of neat things here.
art visualization analysis photo video social statistics interactive information graph data monthly chart blog 2007 Apr 8, 11:26A collaborative interactive map of the sky (as seen from Earth).
astronomy map earth science visualization collaboration 2007 Mar 12, 12:46An interactive map showing where Internet attacks are coming from by top level domain.
siteadvisor map malware exploit security visualization 2007 Jan 17, 2:10Example javascript that allows you to interactively modify Amazon product images.
amazon images hack howto article blog development reference uri ajax javascript script