The cheese has moved so to speak with mobile and touch. Screen sizes vary radically, but they have in the past. The difference is in the past we worried about 800x600 or 1024x786 or more recent a few higher resolutions. It was easy to create sites with fixed width, 960 being the most recent standard. Today however we have screen sizes from 380x420 all the way up to mega displays covering hundreds of diagonal inches with super high pixel densities. Web applications need to be full screen, use all the space available.
Mobility is also a game changer. Responsive web design is all the rage lately. But even it sacrifices context specific interfaces. Application consumers use our web applications in all sorts of situations. They can be driving down the Interstate just as easy as they could be snuggled up in bed drifting off to sleep. Do they really want to know about the feel good story on our home page or do they really just want the score for their favorite school's game? It's a guessing game. Telemetry helps, but for most there is simply not enough valid data to make an educated decision.
Touch is a very big difference to the way we design modern web applications. Fingers are not precision pointing devices. They also introduce gestures. Users can now swipe, pinch and rotate across the screen. This is why I wrote deeptissuejs last month. I needed a library to abstract these touch events.
No longer can we use small touch points with no space between. We can also make data more actionable, giving it a more intimate connection that in the past. You can no longer rely on hover to generate feedback. You need to consider other touch interactions to drive those experiences. Similarly there is no right-click, again find a new gesture to trigger that context menu.
But it is bigger than that. Developers and designers still put the web into yesterday standards, not modern, mobile, touch first. Then of course there is performance, maybe the most overlooked feature. Recently a survey found the largest e-commerce sites are actually getting slower. Users expect a site to be responsive within 3 seconds, but the average e-commerce site us surpassing 7 seconds. This is costing them business and lots of it.
Web sites need to be changed to web applications. Developers and designers need to adopt a three pronged approach; mobile, touch and performance first. I call this user first development and it needs to become the predominant approach for both consumer and enterprise applications.
The choice you need to make is are you going to continue to build for a medium that is fading away every day or are you going to create for the growing space that is what tomorrow's landscape looks like? I know I am ahead of the game, but I shouldn't be. I realized the tide was shifting a few years ago, around the time the iPad was introduced. I have already spent over two years learning and making mistakes. I want to help you avoid wasting time on those mistakes. Instead learn from my experiences and others like me. There are many great resources, blogs, books and videos. Attend a local user group or meet up. Get your boss to invest time and money in sending you to a conference for modern web like Breaking Development.
The consumer application space gets most of the press, but the enterprise market is larger and in need of even more updating. Attitudes, architectures and applications are all outdated, misinformed and degrading from entropy. Real application life cycles include capacity to adjust and be agile as the end user changes their lifestyle. It starts with the individual developer having courage to try something new. Learn a new technique every week. Be confident and know the answer is there, somewhere.
Yesterday's web is dying, don't die with it. Make the effort to build truly modern web applications, not yesterday's web sites.