Editor’s Note: At press time, Ext JS changed its name to Sencha Inc.
Touching is not like clicking. With a bumper crop of touch-based mobile phones and tablet devices arriving this year, Sencha decided to build a framework specifically for fingers. The company announced the availability of its new CSS 3- and HTML5-based framework for building mobile applications for touchy-feely interaction.
Michael Mullany, vice president of products at Sencha, said that developing applications for fingers instead of mice requires some changes in thought. “The thing that’s different about touch is that a lot of the UI components people are used to on the desktop just don’t work anymore,” he said. “First, controls have to be bigger. Second, you don’t get a lot of precision.”
Mullany said that traditional interface elements, such as the expandable directory or items tree, just don’t fit the touch-screen paradigm. “In touch, you can’t get enough fine-grained control,” he said. “You want to start adding multiple behaviors to UI objects; behaviors that used to be unintuitive and difficult on desktop, items like drag-and-drop, are completely natural on touch devices, particularly in the larger format devices.”
That means interactions need to be limited. Mullany said that the iPad is a terrific device for consuming and manipulating information, but it is a bad platform for inputting information due to the on-screen keyboard. As such, he said, applications built for touch devices should limit the amount of interaction required from the user.
Thus, Mullany advocates the use of other online services, like Facebook, for the harvesting of user data. If a user simply has to log into Facebook, and the application can then glean the necessary information from his or her Facebook account, then the user won’t have to enter dozens of fields of text. Another trick Mullany suggested was to give users multiple choice options rather than a blank text-box in which to type a response.
Mullany said each interface element is built on top of CSS, and can therefore be skinned and modified by designers after creation. He also said this limits the size of the code that must be embedded in each page with Ext JS elements.