Help Wanted with Open Source Project [long]

I got to know the people who run an IT support group for the disable during my recent sojourn in the UK (http://www.passiton.sco.net), and they recently wrote to me with a problem. I can't do much better than repeat their description:

"""
We have a client, John, who has profound learning difficulties, but who is starting to learn to make choices in his everyday life and to whom we are about to supply a PC. His mother would be thrilled if he could use his computer to help him with the choice-making.

Hopefully he is going to manage to use a trackball (perhaps with a switch), if not we will try somehow to find enough money to enable him to get a touch screen monitor.

There is some excellent software out there but, of course, at a price (eg ChooseIt Maker2 from Inclusive Technology at £64.88 http://www.inclusive.co.uk/catalogue/acatalog/ChooseIt__Maker_2.html).

AIM:

Example: For John to be able to choose what he would like for pudding.

- His carers can open a grid on-screen with (say) 4 squares visible – pre-loaded with pictures of 4 different puddings John likes.

- When John selects the square he wants (using mouse pointer, touch screen or even perhaps switch), that square becomes highlighted and a sound file is played (eg a recording of one of his carers saying “yoghurt”).

I found some freeware (attached) called CobShell Plus (from http://www.educ.umu.se/~cobian/obsolete.htm) which does almost exactly what we would like it to:

- you can assign an image (bmp only) to each of 6 squares arranged in a grid over the whole screen.

- when you select the square it can play a wav file and/or open a program.

The problems with CobShell are:

- you can only use bmps. John’s carers are using a digital camera to record the things he can choose from and it would be great if they could simply use jpgs, rather than having to learn the extra step of having to convert them to (probably ENORMOUS!) bmps & resize them etc.

- it can only have one set of options saved at a time – they are saved in the registry as the default options for the program. Ideally we would like John’s carers (some of whom are more computer-literate than others!) to be able to make up as many different grids for him as they liked, save them and recall them easily as needed. The simpler this is for them to do, the better. So for example John could have grids pre-made for many different types of choices, eg: colours / activities / items of clothes / drinks etc, etc.

- although his carers could obviously record spoken descriptions for each option, using Windows sound recorder for example, this means teaching them to use another program, how and where to save the sounds....

- there is not a very significant visual reward when a particular square on the grid is selected (ideally there would be a fairly wide frame round the square which changed colour when selected. Even more ideally each program user could decide what the highlighted colour would be!!).

- Thinking ahead to other clients, it would be fantastic if the program could optionally be accessed by switch (using either scanning or column & row selection – though this also involves all sorts of other parameters being settable – eg speed).

- From a pernickety ease-of-use viewpoint, it would also be very useful if you could a) set the default folders where it searches for images, sounds etc and b) record a wav file directly into the program for each square (but also be able to choose a pre-recorded sound if preferred!)

Does any of this make sense? If so, is it something you (or any other kind people you know) might be able to help us with? I can think of ways of creating it in HTML, or using a program such as GameMaker, but don’t have the skill to make it user-friendly for the carers to set-up, save and edit etc.
"""

I took a look at the cobshell program they sent me, and it really wasn't at all easy for a novice user to bang into shape, and it's very limited.

Truth to tell I have been very busy since my move back to the USA, but I know there are many fabulously skilled and noble-minded individual readers of this list, so I wondered if we could jointly manage to produce a well-engineered solution to John's problem, which hopefully could also help other disabled people.

Sorry this is such a long post. Would anyone be prepared to help me make this software a reality? I am thinking that it should allow someone without much sophistication to prepare menus by grabbing images from the screen (making any image available on the Internet accessible) or from files with simple scaling, and recording sounds to go with them, then adding sets of choices (possibly with a tree structure for complex choices?) to a menu that helpers can easily activate to allow John to make his own decisions.

regards
  Steve

···

--
Steve Holden +1 571 484 6266 +1 800 494 3119
Holden Web LLC/Ltd http://www.holdenweb.com
Skype: holdenweb http://del.icio.us/steve.holden
--------------- Asciimercial ------------------
Get on the web: Blog, lens and tag the Internet
Many services currently offer free registration
----------- Thank You for Reading -------------

I wrote a very similar application as an application launcher for my
kids games, based on some experience I had writing a kiosk app for use
with a touchscreen. I've never encountered the "switch" mentioned
though, so I'm not sure what would need to be done to support it.

Technically, it's relatively simple and it would make a good learning
project - the hard parts are in the "ease of use" that Steve mentions.
The grid editor will be more complicated than the grid itself.

I would certainly be willing to help, both with design and
implementation. Feel free to contact me either on or off list.

···

On 8/17/07, Peter Damoc <pdamoc@gmail.com> wrote:

On 8/17/07, Tal Einat <taleinat@gmail.com> wrote:
>
> Just to be sure, you're suggesting we create such an app from scratch,
correct?
>
> It's a great project to do, and probably quite simple. I'd be willing
> to pitch in, at least several hours of work.
>

Tal

You will finish implementing the application if you pitch in several hours
of work... at least the simple decision making.

This is a great project for someone wanting to lean wxpython!
Small enough to be manageable. Important enough to be motivating.

[request for help with choice-making software for disabled users]

Chris Mellon wrote:

Just to be sure, you're suggesting we create such an app from scratch,

correct?

It's a great project to do, and probably quite simple. I'd be willing
to pitch in, at least several hours of work.

Tal

You will finish implementing the application if you pitch in several hours
of work... at least the simple decision making.

This is a great project for someone wanting to lean wxpython!
Small enough to be manageable. Important enough to be motivating.

I wrote a very similar application as an application launcher for my
kids games, based on some experience I had writing a kiosk app for use
with a touchscreen. I've never encountered the "switch" mentioned
though, so I'm not sure what would need to be done to support it.

Technically, it's relatively simple and it would make a good learning
project - the hard parts are in the "ease of use" that Steve mentions.
The grid editor will be more complicated than the grid itself.

I would certainly be willing to help, both with design and
implementation. Feel free to contact me either on or off list.

This is terrific! I am copying the list (to make sure that we suck in anybody else who happens to want to join in) and each individual who has so far replied. I'm going to try and reply to all comments made so far. Please remind me if I miss anything.

Tal Enat wrote:

Just to be sure, you're suggesting we create such an app from scratch, correct?

It's a great project to do, and probably quite simple. I'd be willing
to pitch in, at least several hours of work.

Yes, I am proposing a brand new project to create this software. I will happily act as project manager, and arrange a Subversion code repository and Trac instance with Web Faction, who support open source projects with these facilities at no cost. I'm not sure if this will give us a mailing list or not, but I am confident I am well-enough connected to get the necessary access if it doesn't.

If anyone needs to learn the necessary technologies I will be happy to pitch in with instruction, possibly even developing videos of more general utility at ShowMeDo.com.

Thanks for being the first to offer help. My own circumstances are such that I have limited time for coding, but can certainly mentor the group and pitch in to the design and implementation discussions (and it's not like I *never* program, it's just that I spend so much time programming for a living and there are only so many hours in the day. So I have to try and contribute the bits nobody else easily can, such as knowing that the problem exists in the first place).

And of course I will pitch in any time I can answer a question to help get the project moving again, and even write code as I have time. This is a *really* worthwhile project, where open source will have a chance to shine.

Peter Damoc wrote:

Tal

You will finish implementing the application if you pitch in several hours of work... at least the simple decision making.

This is a great project for someone wanting to lean wxpython!
Small enough to be manageable. Important enough to be motivating.

I quite agree, the basics aren't too demanding. At the same time we need to be sure to make the quality control good enough that people with very limited computer skills find it both easy and natural to use (here I am thinking of the helpers who will bear the primary responsibility for creating the menus for the direct end-users).

You are correct in saying it's an important problem - otherwise people wouldn't be selling inadequate solutions for somewhat exorbitant sums :slight_smile:

Chris Mellon wrote:

I wrote a very similar application as an application launcher for my
kids games, based on some experience I had writing a kiosk app for use
with a touchscreen. I've never encountered the "switch" mentioned
though, so I'm not sure what would need to be done to support it.

Martha from PassItOn can tell us more about that once we have something that works with traditional pointing devices. That should be our first goal.

My limited understanding is that the program would need to implement a "cycling" mode where the choice automatically changes once every tick (the tick time should ideally be variable, as some users would be able to make a selection in a second, but others may need five seconds or more to activate the necessary muscles and trip the switch). The switch itself could be mechanical, or a "puff switch" for people with almost no motor abilities, and I am sure there are other modalities of which I am unaware. Essentially it's a self-moving mouse where the user only needs to be able to make some indication that can be interpreted as a mouse click.

Technically, it's relatively simple and it would make a good learning
project - the hard parts are in the "ease of use" that Steve mentions.
The grid editor will be more complicated than the grid itself.

That's certainly true, and so typical of many interesting problems! it doesn't seem insuperable to me, though, especially given that we can email this list for help when needed.

I would certainly be willing to help, both with design and
implementation. Feel free to contact me either on or off list.

How about both?

Seriously, thanks very much to all responders. I am going to go ahead and create the Subversion repository and Trac instance next week (unless someone else has time sooner, or wants to discuss alternatives). If anyone else wants to get in on this there is plenty of room, and of course we will all doubtless be asking questions here when we get out of our depth.

I'm looking forward to this project! Can anyone (this includes you Martha) think of a great name for the project?

regards
  Steve

···

On 8/17/07, Peter Damoc <pdamoc@gmail.com> wrote:

On 8/17/07, Tal Einat <taleinat@gmail.com> wrote:

--
Steve Holden +1 571 484 6266 +1 800 494 3119
Holden Web LLC/Ltd http://www.holdenweb.com
Skype: holdenweb http://del.icio.us/steve.holden
--------------- Asciimercial ------------------
Get on the web: Blog, lens and tag the Internet
Many services currently offer free registration
----------- Thank You for Reading -------------

Hi Steve,

···

On 8/18/07, Steve Holden wrote:

[request for help with choice-making software for disabled users]

Please feel free to include also myself in the list of programmers for
this project. I have written so many widgets till now but none of them
had the importance of this one. I would be very happy to contribute.

Andrea.

"Imagination Is The Only Weapon In The War Against Reality."
http://xoomer.alice.it/infinity77/

Tal Einat wrote:

···

On 8/20/07, Andrea Gavana <andrea.gavana@gmail.com> wrote:

Hi Steve,

On 8/18/07, Steve Holden wrote:

[request for help with choice-making software for disabled users]

Please feel free to include also myself in the list of programmers for
this project. I have written so many widgets till now but none of them
had the importance of this one. I would be very happy to contribute.

Andrea.

Hey man, welcome aboard!

I'm glad you're with us :slight_smile:

Me too! Andrea's many contributions to wxPython can be of inestimable value to this project (currently on the web as http://chuzer.org/ if anyone's interested: thanks to Paul McNett).

Welcome aboard indeed, Andrea!

regards
  Steve
--
Steve Holden +1 571 484 6266 +1 800 494 3119
Holden Web LLC/Ltd http://www.holdenweb.com
Skype: holdenweb http://del.icio.us/steve.holden
--------------- Asciimercial ------------------
Get on the web: Blog, lens and tag the Internet
Many services currently offer free registration
----------- Thank You for Reading -------------