2009 Natural User Interface Group Summer of Code Application
Tiago Serra / Tony Gonçalves
Abstract
Next generation surface computing platforms need a better way to input textual data. Currently the standard way of doing this is through a virtual keyboard that doesn’t offer any advantages in this enhanced environment by looking and behaving as its former physical counterpart.
The major goal of this application is to explore improved methods of text input and manipulation in a multi-touch surface, building a more efficient text editor that is core to a better human computer interaction for this task.
Features
New way(s) of inputting textual data in pyMT
Input widget
Text box widget supporting manipulation of text through gestures
Detailed description
The purpose of this project is to explore and implement some pyMT widgets that are capable of handling and manipulating user input. Some of these methods would include a faster virtual keyboard that makes sense in a multi-touch context (swype comes to mind) and a few methods for textual manipulation: Deleting characters, whole words, changing letter/word case, changing position of text blocks, etc.
Many have implemented text input methods in multitouch surfaces but no one has done it efficiently by leveraging the computing platform interaction advantages for this purpose, simply copying old methods to this new and unexplored paradigm.
Many have professed how unintuitive and unpractical a QWERTY keyboard can be in this environments since they lack haptic feedback and seems, although there’s no research on the subject, not really as efficient as a physical keyboard.
This research will help improve new methods of input for TUIs in general as well as contribute substancially to the pyMT framework and it’s future applications. Some of them can include word processors, chat programs and many other text input intensive applications.
Justification and why me:
pyMT is an opensource multitouch framework written in python that shows great potential for prototyping the next generation of multitouch applications.
I’ve been working with pyMT framework for a while in the development of a game and it seems the perfect fit for showcasing some widgets like the one I propose to develop. It’s architecture makes easier to build this functionality and make it accessible to every newcomer.
I like to prototype. I want to make this 3 month period a productive research in input methods and techniques in TUIs that exploit their true interaction possibilities.
What comes out of this research will be in pyMT for every other developer to use in their applications as well as supplement it with improvements.
Creating feature rich and often usable widgets in pyMT will benefit the project, all it’s users, and will be a great contribution to the human computer interaction and natural user interface communities.
