A Squeak PDA

Kevin Fisher kgf at golden.net
Sun Nov 11 12:19:44 UTC 2001


On Fri, Nov 09, 2001 at 01:24:45PM -0600, Aaron J Reichow wrote:
> On Fri, 9 Nov 2001, Kevin Fisher wrote:
> 
> > I was working on my own home-grown PDA for squeak, but I've put
> > it on the backburner for various reasons (not happy with my own
> > design being one...my current code needs serious refactoring, if not
> > a complete rewrite).
> 
> I'd be quite interested in playing with this code, if you're up to showing
> me.  FileOut or an image works fine. Promise not to make fun of
> not-yet-factored code or redistribute it. :)

:)
Well, what I'm ashamed of most is my blatant disregard for models in that
particular code.  I've learned better since, which is why I've grown to
dislike my old code so much.  I'll send you the work-in-progress...it
doesn't do much though, I'll warn you...there are cross dependancies all
over the place.

> 
> > Personally I'd go for the newer iPaq, if any...lots more RAM to play
> > with, which means more fun Squeak goodies to experiment with.  However,
> > battery life is a good thing to shoot for.  My iPaq can't hold a candle
> > to my old Palm in terms of battery life (both are colour...the palm can
> > go weeks of 'regular usage' without needing a recharge, while my iPaq can
> > only go a couple days).
> 
> As much as I'd like to, I'm on a budget.  $150-200 is a lot more
> affordable (and rationalizable when I have a perfectly function Newton for
> real-world use) than $400-500 for the color model.  I take donations
> though, and with such a hardware donation would pledge to get Something
> Done.

Heh..I agree about the price.  The iPaq alone might make one look twice...
when you start looking at the accessories then things really get a bit
expensive for a PDA. :)

> 
> > > 2. A soft-keyboard morph
> >
> > This would be handy, although I prefer Genie myself.
> >
> > And that brings up another question--are you planning on using a
> > gesture recognizer of any kind?  Genie is very good.
> >
> > Of course, then you have to decide on what kind of gestures you want
> > to train--Grafitti?  Jot?  Or, something home-grown?
> 
> I've not played with genie much (any sort of char recognition is a pain on
> a trackpad), but have a little with CharRecog.  I've read a bit about your
> experiments with Genie, and it sounds like it's fast enough for the iPAQ,
> which is a good thing.  A soft-kb is still usually needed for minor
> editing, or to train CharRecog on the iPAQ itself.

Some people like the gesture stuff, and some people like the soft keyboard.
I think variety is good.

> 
> I hadn't drafted anything up, but was thinking something mostly like Jot,
> fixing things that seemed awkward.  Having used Grafiti on a Newton and
> Palm and Jot on the Helio, Jot seemed to make a lot more sense.
> 
> > I guess the big question I have is, for a PDA do you -really- want a
> > window manager at all?  Look at the Palm, or WinCE...in most cases, the
> > application takes up the entire display (with the exception of popup
> > error dialogs, usually).  On the Linux-iPaq list, at one point they were
> > discussing how to change a window manager in such a way that every
> > application would be 'full screen'.
> 
> PicoGUI works by making all app full-screen.  It's hard to get a feel for
> how it manages windows without trying it, and a compile isnt' that hard
> and runs under SDL.  If you start two applications, default action is that
> they're tiled, side by side.  You can move the divider, giving one a
> higher proportion of the screenspace.  I've used it some on a VTech Helio
> (http://picolinux.sf.net) and found it quite usable.  The Newton uses a
> mostly full-screen only policy, and opening and closing teh Extras drawer
> to do some multi-tasking is a pain.

That sounds neat...I've played with Oberon's interface a few times...it
takes a little getting used to, but it seems quite efficient once you
get the hang of it.

> 
> I tend to expect a PDA to be a handheld computer more than a really
> expensive daybook.  I don't want a desktop OS, but I would like to have
> some sort of convenient multi-tasking.

This is true.  For me, I've been stuck in the whole "PDA as application
launcher" mindset for so long.  My iPaq has expanded my horizons quite a bit.
I like the idea of it being more a computer than an app launcher, I think.

> 
> > In my original design, I was going to keep things as Smalltalky as possible.
> > The PDA app was going to be a "browser" not unlike the class browser..
> > In one pane, you'd select the category (Addresses, Notes, whatever), which
> > would expand into the list of objects in that category.  The large "bottom"
> > pane would be the playfield on which the interface for the selected object
> > would be drawn.
> >
> > There were no windows..the entire screen is filled by the "browser" morph,
> > which contained all the display elements.
> 
> That sounds really cool.  Was there any multitasking? Or would you just
> have to switch app-to-app?  What percentage of the screen (vertically) did
> the data-browser take up?

No, it was more of a single-tasker, whatever app was in the 'forefront'.
I basically had things divided up into Palm-style portions...the main
playfield was roughly square, with the rest of the display taken up by the
chooser.

There was no dedicated "writing" space...Genie is active everywhere.  If
there is a Text morph present anywhere on the screen, you can write on it.

> 
> The more I think about this, the cooler it seems.  A possibly interesting
> exercise:
> 
> In the browser, you select your data object.  This could be a document
> (like someone's contact info or a note) or an application.  This object
> would have a flag saying whether or not to hide the browser pane when it
> was selected.  Games that would be better taking up the entire screenspace
> would have have the browser hidden when it's opened, but a person's
> name/address wouldn't (doesn't require the full screen to Get the Job
> Done).  You could map one of the iPAQ's hardware buttons to pop the
> browser back down when you're down playing the game or editing tyhe note.

Yes, I had thought about this although it's not implimented.  This is a good
idea...QPE lets you hide the "writing" area at any time to get maximum
screen real estate.

> 
> > Argh..this makes me want to kick the dust off the mess and re-do it.
> 
> Perhaps we could work together, not duplicate work.

Certainly..

> 
> > My datastore was the UNIX filesystem. :)  I just stored individual entries
> > in their own files.  The Q Palmtop Environment stores all it's data
> > in XML files as well.
> 
> Looking to the Newton, the soup-system of datastores seems to have been an
> incredibly great idea.  A big problem I see it solving is that of syncing.
> If you have a standard way of storing data, you don't need to do anthing
> special to accomadate a new application with it's new data.  It's all
> stored in a central soup.  To sync, the sync-app just says
> "SoupStore allSoups do: [ :soup | soup sync]".  It would avoid a lot of
> inconsistency, especially when you've got traditional unix types wanting
> to store stuff in every different format (serialied objects, xml, plain
> text, deliminated text, binary formats) in random places (/home/foo,
> /root/, /usr/pda/data).

This is one area I've always been a little worried about...there's lots of
work being done out there to recreate PDA UI's, but I'm not aware of any
projects working on the not-so-glorious act of synchronization.  I know someone
is working on reverse-engineering ActiveSync, and the pilot-tools are
already open sourced, so I suppose one or the other could be used...

> 
> > Hmm...there is the default PIM application that comes with Squeak, as well.
> > It's too wide for the iPaq's screen, but I'm sure a new view could be written
> > to accomodate.
> >
> > To make migration easier we'd also need some way to convert Palm (or whatever)
> > addressbooks/contact lists to the whatever format you envision.
> 
> 
> > I've started using QPE (qpe.sourceforge.net) as my PDA front end for the
> > moment..as a result I hacked together an ad-hoc Palm to QPE converter
> > in Squeak...all it does is convert CSV to XML.
> 
> I just had another look at QPE.  I remember playing around with it a
> little when it first came out and it looks like it's come a long way.  How
> well does it run on the iPAQ?


I did the same thing, originally...it has come a -long- way.  The original
QPE was more of a proof-of-concept demo that didn't work that well in 
practice...the latest version is very polished and very functional.  I'm
quite impressed with how far they've gone...the recognizer is fully trainable
as well (although not near as flexible as Genie).

> 
> Regards,
> Aaron
> 
>   Aaron Reichow  ::  UMD ACM Pres  ::  http://www.d.umn.edu/~reic0024/
>   "the question is no longer between violence and non-violence; It is
> between non-violence and non-existence."  :: martin luther king junior
> 
> 
> 
> 
> 




More information about the Squeak-dev mailing list