Beste Programmierhilfen für einen Tetraplegiker


125

Bevor Sie zu Schlussfolgerungen gelangen, hängt dies mit der Programmierung zusammen. Es behandelt eine Situation, die unter die Überschrift "Dort, aber für die Gnade Gottes, geh du oder ich" fällt. Dies ist ein brandneues Gebiet für mich, daher bitte ich hier um ernsthafte Hilfe.

Ein junger Mann, Honza Ripa , in einer nahe gelegenen Stadt machte zwei Wochen nach dem Abitur das klassische Dumb Thing - er tauchte im russischen Fluss in seichtes Wasser und machte eine C-4 / C-5-Pause , manchmal auch Schwimmen genannt Poolpause. Innerhalb von Sekunden wechselte er von einem außergewöhnlichen Golfer und Wrestler zu einem Tetraplegiker. (Lesen Sie die Geschichte ... wir hätten alle so viel Glück haben sollen, eine Freundin wie Brianna zu haben.) Das war vor 10 Monaten und er hat nur winzige Mengen an Kontrolle über seinen rechten Zeigefinger und ein paar andere Hände wiedererlangt. Fußbewegungen, keine von ihnen feinkörnig.

Seine vollständige Kontrolle über seinen Computer (derzeit läuft Win7, aber wir können dies nach Bedarf ändern) erfolgt über Sprachbefehle. Honza ist nicht dumm. Er hatte einen 3,7 GPA mit AP Mathematik und Physik.

Die Probleme:

  1. Da alle seine Eingaben über Sprachbefehle erfolgen, befürchtet er, dass das Überwiegen von Sonderzeichen in der Programmierung eine große Anzahl ausführlicher Befehle erfordert. Kennt jemand ein gut gemachtes Spracheingabesystem, das speziell für Programmierer entwickelt wurde? Ich denke über etwas nach, das modal sein könnte - z. B. Sie sagen "Python-Eingabe" und es geht in einen Makromodus, um Klassendefinitionen usw. durchzuführen. Angesichts des gesamten RSI im Programmiererland muss es etwas da draußen geben. Auf welchen Betriebssystemen läuft es?

  2. Ich habe vor, ihm Python beizubringen, meine bevorzugte Sprache zum Programmieren und Unterrichten. Gibt es Anwendungen / was auch immer, die in Python geschrieben sind und besonders gut dazu passen, ihn mental zu engagieren und gleichzeitig seine Behinderung zu unterstützen? Eines seiner ausdrücklichen Interessen ist das Investieren in Aktien, aber das ist möglicherweise kein guter Ausgangspunkt für einen brandneuen Programmierer.

  3. Es gibt viele Umgebungen (Flash, JavaScript usw.), die für Menschen mit Barrierefreiheitsproblemen nicht besonders geeignet sind. Ich erinnere mich vage an ein Forschungsprojekt (kann es aber nicht finden), bei dem im Grunde ein Overlay-System über einer Bildschirmumgebung erstellt und dann die Erstellung von Makrobefehlen über dem Bildschirmbild ermöglicht wurde. Wenn wir dieses System bekommen / trainieren können, können wir möglicherweise viele Hürden für die Nutzung des Netzes beseitigen.

  4. Ich bin besonders daran interessiert, Open-Source-Projekte für Python-basierte Robotik und Roboterprothesen zu finden, damit er gleichzeitig fortgeschrittene Programmierkonzepte erlernen und lernen kann, einige seiner unmittelbaren Probleme zu lösen.

Ich habe eine Menge gegoogelt, aber ich weiß, dass mir Dinge fehlen. Ich bitte die SO-Community, hier auf den Teller zu treten. Ich weiß, dass diese Gruppe die Antworten hat, also lass mich sie hören! Überwältigen Sie mich mit den Möglichkeiten, die jeder von uns nach solch einem lebensverändernden Ereignis noch haben muss / muss.

Update: Ich habe gerade computerforquads.org registriert und werde Seiten für alle Arten von Lösungen für alle Arten von Problemen erstellen. Vielen Dank für Ihre bisherige Hilfe und die Antworten!


4
Vielleicht haben die Guten bei superuser.com einen guten Einblick in die Barrierefreiheits-Software. Kann nicht für mehr programmierbezogene Tools sagen. Entschuldigung, dass ich nicht helfen kann.
zneak

3
Hmm, ich würde vorschlagen, lieber eine benutzerdefinierte Build-Sprache zu verwenden, als zu versuchen, etwas zu erstellen, das perfekt für Honza funktioniert. Es gibt Sprachen wie COBOL, die wirklich schlüsselwortbasiert und "lesbar" sind (und ausgesprochen werden können). Wie bei der Robotik, warum nicht mit LEGO beginnen? IMHO kann eine Sprache mit Schildkröten (Roboter - etwas, das sich durch den Bildschirm bewegt und Linien zeichnen kann) und einfache Syntax ziemlich gut sein. Ich habe einige Schwierigkeiten, mich selbst zu programmieren, und ich verstehe, dass es nicht viel ist, "anders" zu sein, aber in diesem Fall sieht es für mich vernünftig aus.
Gabriel Ščerbák

7
Wir haben bereits über das Programmieren per Sprache gesprochen (im Grunde ist es immer noch rau, experimentell und weitgehend nicht unterstützt). Siehe stackoverflow.com/questions/1408874/… und stackoverflow.com/questions/87999/… .
dmckee --- Ex-Moderator Kätzchen

4
Leider habe ich für das meiste keine gute Antwort. In dem Artikel stelle ich jedoch fest, dass die Zeigefingerbewegung ausreicht, um den kleinen Joystick an seinem Rollstuhl zu steuern. Vielleicht möchten Sie nach einer kleinen USB-Maus im Joystick-Stil suchen. Ich habe schon ein paar da draußen gesehen. Obwohl es nicht besonders billig ist (ein Artikel mit zu geringem Volumen), kann es sich als zusätzliches Eingabegerät als hilfreich erweisen.
Nicholas Knight

2
@ RCIX: Ich verstehe und ich schätze Ihre Begeisterung. Solche Online-Missverständnisse gehen zumindest auf PLATO IV Notes von 1973 zurück, wo wir erfuhren, dass das Tippen keine wichtige Körpersprache und keinen wichtigen Tonfall vermittelt. 1974 gab es einen FlameWar (der aus einem Missverständnis hervorging), der die Grundlage für die wahrscheinlich erste Masterarbeit über zwischenmenschliche Interaktion in einem computergestützten sozialen Umfeld bildete. Am 2. und 3. Juni findet im Computer History Museum in Mt eine PLATO @ 50- Konferenz statt. View, CA. Es werden viele Graubärte herumhumpeln. :-)
Peter Rowell

Antworten:


92

Ich habe Sportverletzungen und kann ohne ernsthafte Schmerzen nicht mehr als wenige Zeichen eingeben.

Stattdessen verwende ich Emacs zusammen mit Dragon NaturallySpeaking. Ich habe Makros und Skripte geschrieben, damit es zurechtkommt. Das System ist nicht perfekt, aber es funktioniert. Ich programmiere hauptsächlich in C ++, aber ich benutze auch Python.

Wenn Sie möchten, werde ich Ihnen dabei helfen. Ich muss Sie warnen, es dauert einige Monate, bis Sie sich daran gewöhnt haben, mit Textsoftware zu sprechen und sie zu trainieren. Außerdem bin ich kein englischer Muttersprachler, bin mir sicher, dass das im Weg steht

Verzweifeln Sie nicht, es gibt Lösungen.

hier ein Link zu Emacs und Dragon-Dateien (leider noch nicht dokumentiert)

http://code.google.com/p/asadchev/source/browse/#svn/trunk/home/Dragon

http://code.google.com/p/asadchev/source/browse/#svn/trunk/emacs/elisp

Wenn Sie weitere Informationen benötigen, ist meine Nummer 515 230 9363 (USA, Iowa). Ich werde Ihnen gerne helfen, wenn ich kann


1
Bitte lassen Sie dies nicht überprüfen, da die "Antwort" Sie davon abhält, weitere Möglichkeiten zu veröffentlichen. Ich werde auch hinzufügen, dass ich seit 1980 ein vi (und jetzt vim) Typ bin, also muss ich ein "vi-Makro-Set" erstellen, um die Arbeit zu ergänzen, die Andre bereits geleistet hat, und wahrscheinlich auch ein Notepad ++ - Set oder ein Aptana-Set (Eclipse + PyDev).
Peter Rowell

Wow, aaa, das wusste ich erst, als ich deinen Beitrag gelesen habe. Alle Ihre Beiträge, die ich bisher gesehen habe, zeigen es nicht ... zumindest weiß ich, dass Dragon NaturallySpeaking gut für Sie funktioniert.
Xavier Ho

19

Es lohnt sich, sich das Dasher-Projekt anzusehen, das es ermöglicht, Text auch für Schwerbehinderte relativ schnell einzugeben. Dasher basiert auf einem probabilistischen Sprachmodell, so dass es wahrscheinlicher ist, dass Äußerungen leichter in das System eingegeben werden können. Das Demonstrationssystem enthält eine ziemlich beeindruckende Sammlung natürlicher Sprachen. Es sollte einfach sein, eine große Anzahl von Programmen in Python zu schreiben, Dasher mit dem Korpus zu laden und eine spezielle Version für die Eingabe von Python-Programmen zu erstellen.


Hervorragender Vorschlag! Ich bin ein alter neuronaler Netzjock aus den 80ern und dieser Sound ist sehr vielversprechend.
Peter Rowell

8

Dies ist nicht Teil einer professionellen Software, aber als ich das sah, dachte ich, es wäre gut für die Texteingabe mit Augenbewegungsverfolgung oder minimaler Mausbewegung. Siehe Ken Perlins Verarbeitungsseite und sehen Sie sich die Applets für "Stifteingabe" an.


Vielen Dank! Toller Link! Dies kann besonders bei der Cursorsteuerung nützlich sein, was meiner Meinung nach immer noch eine Herausforderung für ihn darstellt. Erst wenn Sie sich tatsächlich mit diesen Problemen befassen müssen, beginnen Sie zu verstehen, dass einige dieser Menschen den Berg besteigen. Everest jeden Tag, nur um das zu tun, woran wir nichts denken.
Peter Rowell

5

Ich kenne jemanden in einem Dorf in Indien, der querschnittsgelähmt ist und Dragon Speech to Text- Software verwendet, um auf ihrem Computer zu schreiben. Ich weiß nicht, wie gut es für eine Programmiererin geeignet ist (sie ist keine Programmiererin), aber es ist ein Anfang.

Vielleicht möchten Sie auch einen Blick auf Natural Point werfen . Es ist eine augengesteuerte Maus, die Honza helfen könnte

Hoffe das hilft


Honza benutzt Dragon derzeit ziemlich gut. Wir haben uns besonders auf die ausführliche Art und Weise konzentriert, wie Sie die Sonderzeichen eingeben, die überall in der Programmierung vorkommen.
Peter Rowell

3

iPython mit Abschluss

Auf der Python-Seite zeigt iPython Parameter, Funktionen usw. an und verfügt über eine Befehlsvervollständigung. Vielleicht könnte es auch angepasst werden, um auch auf die verschiedenen Eingabegeräte zu reagieren?

http://ipython.scipy.org/moin/



1

Ich weiß, dass diese Frage jetzt ziemlich alt ist. Ich frage mich, wie es Honza in Bezug auf die Programmierung geht. Es wäre schön, zurück zu hören.

Für das, was es wert ist, leide ich unter RSI und versuche jetzt, die Verwendung der Tastatur und insbesondere der Maus zu minimieren .

Meine eigene Erfahrung mit der Spracherkennung ist, dass dieses Zeug funktioniert. Ich verwende die in Windows integrierte Spracherkennungssoftware für Windows 7 (WSR). Ich habe auch einen Sprachfinger (http://voicefinger.cozendey.com/) verwendet, um den Mauszeiger zu bewegen. Einige wichtige Punkte, die ich erwähnen möchte, sind:

Lernen Sie die Verknüpfungen. Mit Verknüpfungen können Sie fast alles tun, und das Sprechen funktioniert mit der Spracherkennung im "Tippmodus" (siehe unten) hervorragend.

Verwenden Sie den Tippmodus. Wenn Sie keinen Text diktieren, ist dies ideal, um Abkürzungen zum Computer zu sprechen oder um seltsame Wörter zu buchstabieren. Interessanterweise handelt es sich nicht um eine eindeutig "beworbene" Funktion von WSR.

Phonetisches Alphabet. Um den Schreibmodus gut zu nutzen, lernen Sie das phonetische Alphabet: http://en.wikipedia.org/wiki/NATO_phonetic_alphabet Ohne diese Form der Spracherkennung können Sie nicht realistisch auskommen.

VIM. (oder Emacs, denke ich - nicht sicher). Vim eignet sich hervorragend zum Bearbeiten von Text, ohne die Maus zu berühren. Dies macht es ideal für die Bearbeitung von Texten mit WSR. Ich bin selbst nur ein VIM-Anfänger, finde es aber unglaublich hilfreich.

Surfen im Internet. Nach meiner Erfahrung ist das Surfen im Internet ohne Maus immer noch äußerst schwierig. Es gibt einfach zu viele Situationen, in denen Sie mit der Maus schweben müssen, um zu den zugrunde liegenden Befehlen zu gelangen. Das ist eine große Schande. Trotzdem gibt es einige wirklich gute Firefox-Plugins, die das Surfen ohne Maus erleichtern.

  1. Mouseless Browsing: https://addons.mozilla.org/en-us/firefox/addon/mouseless-browsing/ Dies ist ein kleines Tool mit vielen Konfigurationsoptionen zum Platzieren von Zahlen neben allen Links. Sie können diese Nummern dann eingeben, um den Link zu aktivieren
  2. Vimperator: http://vimperator.org/ Dies geht weit über das mauslose Surfen hinaus. Es gibt Ihnen im Grunde eine vollständige Kontrolle über Firefox. Ich finde, dass dies besser funktioniert als das Surfen ohne Maus, kann aber in Fällen ärgerlich sein, in denen es das Standardverhalten von Firefox ändert.

Dies sind nur meine persönlichen Erfahrungen. Es wäre toll, wieder zu hören, wie es Honza geht.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.