HyperShoes
So Shoes is for writing desktop apps. But the deal was that Shoes was supposed to be more like the web than regular desktop appy wares. Hmm? How so?
Well, a big reason is that every window inside a Shoes app has a path (a URL.) If you’re writing a simple app, then that window is simply the root window and you don’t need to think about URLs. Only if your app jumps around between windows.
And, so, why does Shoes bother using URLs? Well, I found that URLs came in really handy when I was writing Hackety Hack the first time around. Basically, the URL lets you refer to a window by a string, which is great if you need to save place. Hackety Hack has an interactive tutorial that walks around the app and saving the URL of a window ended up saving me a lot of time.
And making a page of links becomes as simple as it is on the web. Here’s samples/book.rb:
However, even though I’m using URLs, I’m not using HTTP methods like GET or POST. I’m not sure if they have their place yet. I know these verbs are a big deal right now, but I’m not sure I see them being as potent in Shoes, you know?
Now begin the comments …
The Talking Watch
I want to know what happened to the watch. Seriously, thanks for keeping up the good work.
-Tim
Judofyr
I think the story is here: http://code.whytheluckystiff.net/shoes/browser/trunk/samples/book.yaml?rev=117
nertzy
Are these really URLs? The U in URL is “universal” but these “resource locators” seem to be “relative” to your application.
I think you have an RRL!
zerohalo
Cool idea! How about instead of using HTML for the formatting, to instead use Markaby, or similar? Less typing, plus would be in keeping with the program structure.
roberthahn
I’m not sure if using HTTP’s verbs would necessarily be good either, but if you’re promoting accessible hacking (in the sense of ‘accessible to every skill level’) I wonder if designing the app so that you’re exposing the same set of verbs for all classes would be good? IOW, follow a Resource Oriented Architecture—just not on http…
Matt Katz
At my job I’ve stumbled on a similar pattern. We want to make contextual help easy to generate and easy to take folks from place to place in our application.
We’re going to be emulating urls for the different control panes in our app. I think the metaphor can be extended to also reference each control through maybe a query string.
So pane://add_stocks?new_symbol_text=GOOG&price_override_text=10.50 could send you to a new part of the app and help fill in the values of various fields. How to handle more complex things? More complex urls?
netghost
This is starting to sound more and more like HyperCard, at least in the the metaphors. In HyperCard, there was a stack of cards, their uri was essentially a card index number. This seems like a very good idea to me, it gives a clear means of traversing from one piece of an application to another.
jashkenas
Hey why, I’m working on a web application for writing hypertexts, and I’m also using Incidents (the Kharms ones) for practice material. That’s funny. Take a peek:
A peek:
Leon
^^ that is damned pretty.
RubyPanther
You only need verbs if you want apps to be able to talk to each other. Which would be neat.
MenTaLguY
If _why can merely create the HyperCard of the 2000s, he will have the gratefulness of so many. But he’s doing more besides!
Comments are closed for this entry.