Undoubtedly you have heard about the great RIA war raging between Apple and Adobe. Apple claims that HTML5 is all you need for web applications and Flash has no future. Adobe shoots back that Flash is the best choice today and claims (not entirely convincingly) that it will remain relevant 5-10 years from now. So how do we make sense of this brouhaha as it relates to our own work designing SaaS and Rich Internet Applications for the Enterprise?
The enterprise desktop of 2010 relies on non-HTML5 desktop browsers
Regardless of what the future will hold, the reality is that in 2010, there is an enormous installed base of IE 6, IE 7, and IE 8 on the desktop - particularly in the Enterprise (with governments typically frozen on IE6!).
Consequently, for Rich Internet Application design work intended for Enterprise desktop web browsers, it is a non-starter to design solutions that don't run on IE7 at the very least. For this RIA market, HTML5-related technologies (see below) are simply not yet viable.
RIAs designed with Flex for the desktop user
For Enterprise web and SaaS applications, by far the majority of RIA work that we do is in Flex (Adobe's RIA platform based on Flash). It is predictable, has a good development environment, is scalable, and provides good performance.
What about Silverlight?
I should also note that we do a growing amount of work in Silverlight 4, particularly for desktop/surfaces/large display multi-touch and gesture applications.
RIAs on the mobile devices of 2010 = HTML5
But when it comes to mobile devices, it is a completely different story. On mobile devices over 90% of the smartphone and tablet market in the US (Apple, Android, WebOS, Rim soon) use the HTML5-savvy WebKit framework for the browser. Consequently our RIA and UI design work for mobile (smartphones and tablets) is increasingly HTML5 and associated technologies.
Key Features of HTML5 and associated technologies
For those who are interested, I just want to quickly note some of the most compelling aspects of HTML5 and the collection of technologies that almost always go with it (Note: I'm not breaking out which are core HTML5 vs associated tech). This list is not at all complete - it just references some of the things I think have intuitive appeal to both technical and non-technical audiences.
- Semantic Tags - for more meaningful markup that is great for search, accessibility and coders
- Audio and Video Tags - for plug-in-less audio and video with native controls
- 2D Canvas and Animations - for rich dynamic Flash-like graphics, animations and effects
- Geolocation/Location Awareness - makes the mobile device's geographic location available to a web application
- Offline Application Caching - cache an entire Web application for offline use so mobile users can access and interact with a Web app even outside of a coverage area
- Web Storage - allows information to pass between pages in a session or even across sessions
- Web Workers - enable developers to parallelize web application tasks for multi-core processors (mutli-core are not yet the standard for mobile devices but probably will be within a year or so)
Android, iPad, iPhone and Beyond
As a rule, Catalyst is technology agnostic. We design applications and UI for our clients using the technology that is optimal for their market and that is manageable by the organization's development team. For web applications intended for desktop users in 2010, this typically means Java, Flex or Silverlight. For applications and web applications intended for mobile users on the iPhone, iPad, Android devices, WebOS, and soon Rim and Nokia, this typically means HTML5 ( with fallback content adaptation for other mobile devices).
Sustainability is one of Catalyst Resources primary areas of practice (along with Financial Services and Biotech/Healthcare.) We design rich internet interfaces, SaaS applications, mobile apps and instrument control UI for environmental and energy optimization solutions - a.k.a. sustainability.
Organizations increasingly recognize that sustainability will be critical to the future success of their business. But moving to sustainability can be disruptive and managers are likely to confront organizational rigidities as they try to implement initiatives. It is therefore essential to identify and expose the core values that sustainability offers to the user and to the organization.
"Doing the right thing for the planet" is laudable, but from a business perspective there needs to be other monetary, social and legal drivers to motivate action. Addressing these drivers is what will make sustainability initiatives succeed over the long term.
What are the some of the drivers behind organizational sustainability initiatives?
Each organization will have a unique set of business factors that drive their sustainability initiatives. When we design applications and application UI, much of our early work is to understand and design to expose these key drivers. We then anchor functionality reflecting these drivers, right in the primary RIA workspace. This makes the sustainability application (typically SaaS) inherently engaging and tuned for the real work.
Listed here are several of the common drivers we have identified with our clients that are undertaking sustainability initiatives:
- Financial ROI
- Decreasing expenditures by improving energy efficiency and recycling materials
- Increasing supply chain efficiency & connectedness (e.g. fewer sources, integration and collaboration with suppliers, shippers, partners)
- Using location intelligence (GIS) for things like vehicle re-routing to reduce gas consumption, or optimizing locations for warehouse/distribution centers
- Using more efficient transport modes/vehicles, use video/tele-conferencing when appropriate
- Reducing packaging
- Green procurement and near sourcing
- Government compliance / impending tighter regulation
- Decreasing risk
- Improving investor relations and pricing sustainability into long-term valuations
- Increase brand value as a market leader and innovator
- Attract customers/consumers who care about going green
- Achieving corporate responsibility agenda
- Environmental stewardship (people really do care!)
Most organizations identify and respond to multiple drivers. Our job at Catalyst to make it efficient and engaging for managers or teams to assess the risks/costs of resource consumption related to these drivers, identify sustainability initiatives and allocate capital, collect and manage data, manage the execution and track the progress of sustainability capital projects, run ROI/cost-benefit analyses and provide the required internal and external reporting.
Remember David Byrne from the rock band Talking Heads? I recently listened to a talk he gave at the Ted conference, on how architecture helped music to evolve. Byrne's premise was eloquently simple. Artists create a style of music that works for the environment in which it will be heard.
Artists evolve musical styles to fit the playback environment
Byrne gives the example how West African music, with its intricate rhythms works outdoors in the open, but would be a disaster in a Gothic cathedral where reverberation would confuse everything. On the other hand, music that works in a Gothic cathedral (long notes, little rhythm) sounds flattened in outdoor environments.
Bach wrote music for playback in a room that was smaller and not as vaulted as a Gothic cathedral. Consequently his work could be more intricate and could change keys without risking large dissonances. His music was an evolution from previous styles, but also something completely new, designed to fit the context of the room.
Opera houses like La Scala, helped evolve yet another kind of music. Two hundred years ago, opera patrons did not listen in hushed silence. Instead they would eat, drink and yell out to people on stage and to each other. The dramatic and repeating melodies of operatic music evolved in response to this opera experience.
Today's music reflects the environment very clearly. Microphones enable soft personal sounds and complex inflections. Pop music is written for the MP3 player, capable of extreme detail but a limited dynamic range (too much dynamics could blow out your eardrums or at least force you to adjust the volume).
All of these examples illustrate the point that the context for playback determines the kinds of music that works and that evolves.
UI Design firms evolve information & tasks to fit the presentation environment
Now love of music aside, why did this all interest me?
Potential clients often approach us about developing mobile apps for the iPhone/Android phones or for the iPad. This is a high growth area for us. Most of these requests are from clients who already provide desktop or Web-based SaaS solutions and now want to scale this experience to a smaller screen and capture a slice of a very fast growing market.
Many UI firms quote the mantra "simplicity, consistency and usability are the keys to great mobile applications". While this is indeed true, it is not sufficient. Like music that evolves to fit its playback context, the user experience must evolve to fit its presentation context. This means looking at what people do in that environment and changing the very nature of the application and UI so that it takes advantage of the context.
Mobile application design as extensions to existing apps, not stand-ins
Good mobile UI design is not just about creating simpler and more streamlined interfaces (such as virtual keyboards that change depending on the kind of data you are entering), it is also about understanding how the context changes what makes for effective activities.
For example, on mobile devices, people are in extreme multi-task mode. The UI design needs to shift from being entirely focused on linear task completion (as in traditional desktop applications), to applications that are easy to enter and exist. They need to keep the user's mental and physical attention by being clear, visually rich and integrating gesture, touch and sound into the interface.
Mobile devices also provide unique behavioral and sense information such as motion and orientation via accelerometers, GPS data (location awareness), and the physicality of gestures. These can be used to refine the experience, anticipate needs and deliver options that are contextually relevant.
The most effective mobile applications act as extensions to existing web or desktop apps, not as stand-ins until the user can get back to a "real" computer.
The music of Mozart was not a stand-in for Gregorian Chants
So back to the David Byrne Ted talk; the music of Mozart was not a stand-in for Gregorian Chants performed in Gothic cathedrals. The musical styles were completely different to take advantage of the unique aspects afforded by the context.
The same is true with user experience design across different devices. The interface enables unique and valuable behaviors that can engage users in completely different ways. Whether it is a fit-in-the-palm-of-your-hand smartphone, a gesture-based tablet like the iPad, an instrument control interface like a fuel gauge, a desktop SaaS application or a speech-recognition-controlled security system, each context offers unique opportunities and the user interface should evolve accordingly.
I’ve written extensively about user experience characteristics that define a successful and profitable SaaS application. I’ve talked about performance, connectedness, conceptual models, monitoring, on-boarding and the essential requirement to design for the complete customer life cycle.
I’d even argue that the user experience of a SaaS application can be more important to its ultimate profitability then the features provided by the core application. Because the SaaS business model relies on service subscriptions (which are perishable!), continued customer retention is essential for profitability. Continued customer retention depends on user experience.
This is in contrast to traditional on-premise software. With on-premise software, profitability is defined by the intellectual property of the code and the value that it can command on a per-seat license. The vendor’s goal is to sell as many licensed copies as possible. The list of features is what makes the sale. Once the software is sold, the revenue is recognized. Retention or even long-term use or user satisfaction, is not the primary focus (the 10%-20% maintenance fees traditionally charged by big enterprise on-premise software vendors does not change this focus).
With SaaS, value is defined by the user experience that leads to customer retention and a predictable recurring revenue stream.The engagement process (sign-up, provisioning, social networking), the ease of use, the timed/frequent updates, a focus on high value scenarios, user monitoring, agile pricing, etc. are what engenders sign-ups and retention (i.e. the recurring revenue stream for the application). Modular, reusable UI and mutli-tenant design enable scalability without linearly increasing costs.
This radically alters what defines successful application design. In on-premise software, the sale of the application license defines the value. With SaaS, a scalable user experience around the entire customer life cycle defines the value.
This year Catalyst has seen a significant shift in areas of practice and the kinds of applications and interfaces we are engaged to develop. Part of this reflects changes in our own areas of interest, in particular, our work to support and develop sustainability initiatives. But I believe the shifts area reflective a larger move in the industry itself.
Compared to the last several years we have seen dramatic growth in the demand for application design services in sustainability and health care. There has also been continued growth in specific delivery styles of applications, such as SaaS and RIAs. Desktop apps growth is relatively stable and flat, except in the area of health care, where this is an uptick in growth. None of this is too surprising.
More interesting has been a rapid surge in interest for mobile application and gesture based interface design, as well as an increase in the requests for instrument control interfaces (perhaps reflecting the growth in embedded processors and remote monitoring).
For my own conceptual understanding of these trends I created color-coded matrix that shows the high growth areas relative to the lower growth areas. It presents a heatmap-style view of application design trends with red representing hot areas and blue representing cool areas.
I recently attended an event on social media and application design. I got into a conversation with another attendee and asked him what he did for a living. He paused and then answered “I help good companies let others know how good they really are”.
It was an odd answer, so I asked more: “How do you do that?”. He then went on to explain how he developed web sites, wrote content, optimized SEO, and did the whole social media thing. It sounded like all of the mechanical things that so many other consultants and agencies say they do. But his initial description intrigued me because his description gave me his purpose for what he did, the ‘why’ rather than the ‘what and how’.
It started me thinking about Catalyst Resources and the way that we describe what we do. Sure we design Rich Internet Applications and efficient, aesthetic interfaces. We even refine this further by specifying our focus on mission critical applications and modular, reusable UI. But this ‘what and how’ is not the motivator that actually makes us wake up every morning and go to work. It is not the ‘why’ we do what we do. It is not the essence of our DNA as a company.
Why we do what we do at Catalyst Resources is because we believe that we can fundamentally improve the efficiency and the “pleasurability” of any business activity. The ‘what and how’ is by optimizing business processes, streamlining workflows, creating user-validated, high-performance, modular user interfaces and designing beautiful, intuitive and streamlined Rich Internet Applications.
When I am brought in on a new project I don’t immediately start thinking about what I am going to do from a UI or an application design perspective. I think “what does this company need in order to be more successful”. Coming up with this takes a lot more work and a lot more creativity then coming up with a well-designed set of UI elements. But it is this goal that is the real inspiration behind every project that Catalyst undertakes.
Maybe we need to come up with a tag line: Catalyst Resources - we make the world better, one application at a time. Kind of has a nice ring.
Many of our recent engagements have been around designing instrument control for mission critical applications. These interfaces enable workers to interact with equipment via an interface rather than mechanical gauges, switches and levers.
For example, for a biotech firm we designed and validated the user interface that controls diagnostic systems for analyzing tissue sample pathologies and drug discovery. For an energy optimization and management company we designed the user interface for instrumentation that controls and monitors real-time fuel inventories and environmental compliance. For a security system we designed the user interface that controls security cameras and alarm controls.
The user interface for these kind of instrument control is the link between the operator and decisions that affect critical infrastructure or even life and death medical situations.
So what are some of the challenges when designing these kinds of interfaces?
- Displaying data is not the same thing as displaying information
Just because you think the interface shows it, doesn't mean operators see it, understand it, know how it correlates with their behavior, or feel motivated to take action.
- It isn't always obvious what to measure
Determining what exactly are the critical pieces of feedback and environmental cues that operators really on can be challenging. You need to translate the operators "intuitive" understanding of the real world process and cues into an abstracted software interface. Since operators adjust systems according to the information they receive, if you're measuring the wrong thing, their decisions may have less impact or even the wrong impact.
- How do you optimally communicate the information
Which type of displays are more effective for conveying information for particular tasks? Words, flashing lights, animations, charts and graphs, images, auditory cues, etc.? Different information requires different presentation modes and can engender measurable difference in reaction times.
- What are the most effective ways for the user to interact with the information
Touch interface, gestural input, mouse, keypad, speech recognition? Which is going to be appropriate so the user interacts more with the task and less with the equipment?
- What are the social and collaborative possibilities
How can the interface be designed so that it is easy to get outside feedback or collaboration. Can comparison data quickly be pulled for "expert" validation?
- How do you make the interface more engaging than the real world
Instrument Control Interfaces are primarily about increasing productivity. But to achieve a real productivity gain, operators must use the new interface preferentially over existing systems. A poorly designed and validated interface could very easily be viewed as "Yet another damn display". So it is essential to make the display natural, workflow-useful, and engaging. Otherwise operators will find workarounds and the interface will be of much less value.
- How do you make the interface responsive
If an instrument control interface is perceived as slow to respond, it will not be optimally used. Actions must be cancel-able, screens should load incrementally, the number of actions to complete a task should be streamlined, etc.
The above just scratch the surface of the challenges that are unique to instrument control user interfaces and application design. Biotech, manufacturing, and energy production/management are the areas where we are seeing the greatest growth in the demand for instrument control interfaces. We design these interfaces using modular, reusable UI, so that they can be re-purposed to other equipment or enhanced without code rewrites. As more and more devices gain embedded processors, the market for interface control will continue to expand at a rapid pace.