interactive page 2 - Dave's Blog


Search

Milliways: Infocom's Unreleased Sequel to Hitchhiker's Guide to the Galaxy - Waxy.org

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.PermalinkCommentsif interactive-fiction infocom hhgttg history scifi videogame article

Zeno's Progress Bar - Stolen Thoughts

2008 Apr 7, 10:09

Text-less progress bar dialog. Licensed under Creative Commons by Ian HamptonMore 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.

PermalinkCommentszenos paradox technical stolen-thoughts boring progress zeno software math

Nexus :: Dave Risney

2008 Apr 3, 10:38Produces a cool interactive graph of your friends on Facebook.PermalinkCommentsfacebook nexus graph foaf me via:ethan_t_hein

MegaPhone | Making Digital Signage Interactive | Media

2008 Mar 7, 10:03More videos and photos of megaphone in action. Neat idea.PermalinkCommentsmegaphone video videos videogames game games social

YouTube - Urban Screens 07: Megaphone

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 mobilePermalinkCommentsvideo youtube megaphone software social games game videogames

URI Addressable Text Adventure Games

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.

PermalinkCommentszork frotz interactive-fiction zcode if technical uri fragment

SourceForge.net: ZPlet: A Z-Machine for Java

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.PermalinkCommentsdevelopment if interactive-fiction java opensource

XYZZYnews Issue #11 A Conversation With Cosmoserve's Judith Pintar

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 gradePermalinkCommentsjudith-pintar if interactive-fiction interview cosmoserve game games

Lost Pig | The A.V. Club

2008 Feb 15, 2:47AV Club reviews Lost Pig, the 2007 Interactive Fiction Competition winner.PermalinkCommentsgame games if interactive-fiction humor

Johnny Chung Lee - Projects - Wii

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.PermalinkCommentsblog bluetooth wii wiimote remote free hardware hack ui howto interactive johnny-lee

NameVoyager

2007 Oct 7, 7:33Interactive graph of name popularity over the years.PermalinkCommentsname statistics graph reference chart flash time visualization tool tools names

Interactive Fiction by Christopher Shelton

2007 Jul 26, 12:27My friend Chris' interactive fiction games.PermalinkCommentsfriend chris-shelton if interactive-fiction

reAnimator: Regular Expression FSA Visualizer

2007 Jul 22, 8:38Animated interactive graph of the FSM used to parse any regex and corresponding string you enter.PermalinkCommentsregex flash visualization fsm interactive howto language

New XSLT - IE7 XML Source View Upgrade Part 2

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.PermalinkCommentsxml xpointer msxml res xpath xslt resource ie7 technical browser ie xsl

Try ruby! (in your browser)

2007 Apr 17, 2:54Its a little ruby tutorial that runs in your browser.PermalinkCommentsruby programming tutorial ajax browser code howto interactive shell script

data visualization & visual design - information aesthetics

2007 Apr 12, 2:34Blog on visual design and data visualization. Lots of neat things here.PermalinkCommentsart visualization analysis photo video social statistics interactive information graph data monthly chart blog

WIKISKY.ORG

2007 Apr 8, 11:26A collaborative interactive map of the sky (as seen from Earth).PermalinkCommentsastronomy map earth science visualization collaboration

gCensus: Free online GIS

2007 Mar 13, 1:42Use government census data on Google Earth.PermalinkCommentsmap google statistics census reference mashup gis government interactive visualization

Mapping the Malweb - Interactive Map

2007 Mar 12, 12:46An interactive map showing where Internet attacks are coming from by top level domain.PermalinkCommentssiteadvisor map malware exploit security visualization

Amazon Image Hacks

2007 Jan 17, 2:10Example javascript that allows you to interactively modify Amazon product images.PermalinkCommentsamazon images hack howto article blog development reference uri ajax javascript script
Older EntriesNewer Entries Creative Commons License Some rights reserved.