Programmieren kann durch Spracheingabemittel effizienter werden

Kommentieren Sie diese Meinung
Verfasst von rekrut am 17. November 2010 - 15:05.

Beim vereinfachten navigieren durch einen Quelltext kann die Entwicklungszeit verringert werden.

Hier stelle ich mir vor, Befehle per Spracheingabe an die IDE geben zu können:

 

Beispiele:

- Gehe zu [[Modul "Gruppenaufgaben"], Klasse "Termin"], Methode "getDatum"

- Gehe zu Kommentar "// hier könnte auch ein Funktionsaufruf stehen"

- Suche nach Wort "input"

- Zeige Verlauf von "Dateiname"

- Lösche|Entferne [[Modul "Gruppenaufgaben"], Klasse "Termin"], Methode "getDatum" (IDE sollte dann auch die Aufrufstellen auflisten)

- neue Methode "setText" [in Klasse "Termin", [Modul "Gruppenaufgaben"]] (IDE erzeugt automatisch Kommentare in JavaDoc-Syntax)

- Erstelle Klasse "Aufgaben" (in Datei "Dateiname"|Modul "Gruppenaufgaben")

 

 Bestimmte Eingaben sind über die Tastatur und Maus schneller erledigt, doch gilt es rauszufinden welche es sind.

 

 


Heute schon möglich?!?

Verfasst von ozon am 26. November 2010 - 19:59.

Ich würde glatt behaupten das einige der oben genannten Features schon heute umsetzbar sind.
Dabei sehe ich aber die Spracherkennung als Assistenten.

Beispiel "Suchen";
Mit einer Spracherkennung ist es möglich Tastenkürzel auszulösen. Hierbei kann z.b. das "Suchen & Ersetzen" Dialogfeld aufgerufen werden. Ob man nun den Suchbegriff selber einträgt oder hierzu auch wieder die Spracherkennung nutzt sei den Vorlieben des Anwenders überlassen.

Da aber die heute Spracherkennung noch sehr Fehleranfällig ist würde man wohl doch eher dahin tendieren diese nur als Assistenten zu verwenden. Wo ein Befehl "Suche nach" noch problemlos funktioniert, wird es bei einem "Suche nach $my_variable" doch eher zu Problemen kommen. Gerade komplexe "Wörter" und Kombinationen sehe ich noch als Problem von Spracherkennung.

Wie verflixt Spracherkennung sein kann, mag jeder Windows 7 Benutzer selber mal kennen lernen. In einigen fällen stellt man erfreut fest, das diese zwar super funktioniert - aber in vielen Fällen stellt man bitter fest das selbst dei einfachsten Dinge nicht funktionieren.

In diesem Zusammenhang möchte ich noch auf das Projekt http://www.simon-listens.org/index.php?id=122&L=0 verweisen. Auch hier macht man interessante Erfahrungen mit dem Thema Spracherkennung.

Spracherkennung wird meiner nach eher erstmal Zukunftsmusik bleiben und zuerst einmal nur als Assistent zu sehen sein. Und damit dieser Assistent noch ein produktiver Helfer wird, muss noch einiges in der Richtung geforscht werden. Hierzu müssen auch viele der heutigen Bedienkonzepte von Computern über Board geworfen werden.

Das sehe ich sehr ähnlich

Verfasst von rekrut am 26. November 2010 - 21:58.

Das sehe ich sehr ähnlich wie du. Ich glaube aber, dass die Spracherkennung hier genauer sein kann, da sie nicht unbedingt genau erkennen muss was gesagt wurde, sondern kann das Wort wählen, das am ehesten zutrifft.

Nehmen wir bspw. den Befehl "Gehe zu Klasse 'Gruppe'". Der Befehl "Gehe zu Klasse" kann sehr gut trainiert werden, weil er relativ kurz ist, und müsste somit nach kurzer Trainingsphase auslösen, wenn man ihn spricht. Wenn die IDE nun semantisch das Wort "Klasse" erkennt, 'weiß' sie, dass es sich nur um eine begrenzte Wortmenge handeln kann - eben die Klassennamen des Projekts in dem man gerade arbeitet. So könnte die IDE dann die am besten passenden Klassennamen zur Auswahl anbieten; Man wählt dann diejenige Klasse aus die man meint.
Nach diesem Prinzip müsste das Training der Spracherkennung sehr effizient sein.

Die IDE müsste also, meiner Meinung nach, sehr eng mit der Spracherkennung zusammenarbeit, um zuverlässige Ergebnisse zu erzielen.

Ok. Dieser Ansatz scheint

Verfasst von ozon am 27. November 2010 - 2:33.

Ok. Dieser Ansatz scheint sinnvoll. Leider würde dieses vorgehen speziell auf eine IDE zugeschnitten sein müssen. Damit meine ich, die IDE und die Spracherkennung müssen zusammen arbeiten. Genauso würde man das Thema auch auf andere Anwendungen übertragen können. Die Software muss also mit der Spracherkennung zusammen arbeiten. Und genau diese Ansätze gibt es meiner Meinung nach noch nicht.

Was ich auch sehr schade finde, das Systeme wie Sprachausgabe oder Spracheingabe für Menschen mit Behinderungen erstellt und optimiert werden. Das ist ein ehrenwertes und wichtiges Ziel - jedoch habe ich als gesunder Mensch auch das Bedürfnis von diesen Systemen zu profitieren.

Es gibt einfach keine Optimierungen und Berücksichtungen in den Programmen und Systemen um mit Spracherkennung oder Sprachausgabe zu interagieren.

Als Linux Anwender kann ich mir einfach ein Script schreiben um den Computer mal eben zu fragen wie Spät das ist. Und das ist kein Witz, das möchte ich wirklich. Ich würde meinen Computer auch gerne fragen ob ich neue E-Mail habe oder, um mal wieder zum Thema programmieren zu kommen, ob sich etwas im Revisionverwaltungsystem getan hat.

Möglich ist so etwas, es wird weder genutzt noch dem Nutzer zur Verfügung gestellt. Damit also die Spracherkennung mit einer Programmierumgebung interagieren kann, muss doch die IDE eine Schnittstelle haben.

Vielleicht sollte man mal den Author von Simon fragen ob er ebenfalls Probleme dieser Art festgestellt hat.

Vorschlag Kommunikation zwischen Spracherkennung und IDE

Verfasst von rekrut am 27. November 2010 - 14:11.

Es könnte also ein Weg sein, wenn folgende Interaktion zwischen Spracherkennungssoftware und IDE (stellvertretend für jegliche andere Software) durch technische Hilfsmittel (geeignete API) stattfinden kann:

- Die Spracherkennungssoftware (SPE) läuft als Deamon und erkennt das gerade fokussierte Programm (hier IDE).
- Es wird ein Befehl gesprochen
- Die SPE sendet eine abstrakte Signatur des gesprochenen an die IDE
- Die IDE erkennt durch die Signatur um welchen Befehl es sich handelt (Bspw. ein Klassenname ist gesucht) und sendet die mögliche Wortmenge und das daraus zu findende Wort als Signatur an die SPE
- Die SPE reduziert die Wortmenge und gibt sie wieder an die IDE
- Die IDE stellt die reduzierte Wortmenge zur Auswahl
- Der Benutzer wählt aus der Wortmenge
- Die IDE sendet zurück an die SPE und trainiert sie dadurch.

Ich bin leider noch nicht sehr Tief in der Thematik API einer Spracherkennung (wie Bspw. Simon-Listens) vielleicht geht das eine oder andere dieser Interaktion bereits

Bild von Schnittmenge

Beziehst Du dich dabei auf

Verfasst von Schnittmenge am 17. November 2010 - 17:22.

Beziehst Du dich dabei auf bestimmte Computersprachen? bzw. auf bestimmte IDEs?

Natürlich ist es

Verfasst von rekrut am 18. November 2010 - 22:28.

Natürlich ist es wünschenswert, wenn die Technik einer breiten Masse zur Verfügung gestellt werden könnte; Somit bietet sich hier eine Open-Source-IDE wie Netbeans oder Eclipse an. Die Sprache spielt hierbei eine untergeordnete Rolle, da die Spracheingabe-Befehle auf verschiedene Sprachen portiert werden können, da die meisten Sprachen die gleichen Strukturen verwenden (wie Module/Pakete, Klassen, Methoden, Prozeduren etc.). Ich stelle mir vor, dass zusammen mit der Realisierung von guten Refaktorisierungs-Werkzeugen und deren Verbalsteuerung eine effiziente Programmierung stattfinden kann (Z. B. "verschiebe Methode 'soundso' aus Klasse 'bla' in Elternklasse").
In erster Linie geht es aber zunächst nur darum, welche Befehle was bewirken. Also um die abstrakte Beschreibung von Navigation oder Änderungen im Quelltext.

Bild von Schnittmenge

Ich würde dann Entwickler

Verfasst von Schnittmenge am 18. November 2010 - 23:09.

Ich würde dann Entwickler und Anwender von Netbeans und Eclipse in den Diskurs einladen. Links oben im Diskurs-Consenser findest Du den Button "Weitere Teilnehmer einladen" http://de.consenser.org/ger/consenser/1623

Das könnte Sie auch interessieren!

Buch

  • Zum gewählten Schlagwort liegen keine Beiträge von dieser Zellen-Art vor.

Gruppen-Meinung

  • Zum gewählten Schlagwort liegen keine Beiträge von dieser Zellen-Art vor.