Let’s divide the world web web into two categories.
These are the web sites that you must use because you are a captive customer. The web site for your primary bank would be one example.
These are the sites that play in industries like banking and travel, but all they have to attract you in is the site. They don’t own flying machines or safety deposit boxes. A site like this in the travel industry only exists to provide the best experience possible in searching for tickets and reservations.
Not surprisingly, the sites that want you typically have more fully featured websites that are easier to use than the websites of those who have you.
As an example, let’s look at zoomed out views of flight search results. The left hand side of the picture below is the search results on Kayak.com (just using them as an example). On the right hand side is the search results of a major U.S. air carrier (instead of naming names, let’s call them Unified Airlines).
The areas highlighted in green are flight options with details or general information to help select a flight.
The areas shaded in blue are search and filtering controls to help narrow in on the perfect flight.
The areas in red are advertisements, fee warnings, upsell opportunities, pitches for Unified Airlines credit cards, and wasted white space.
We can call the total amounts of green space even, though Kayak displays twice as many flight results as Unified Airlines does above the fold.
The blue space winner is clearly Kayak. Unified doesn’t provide nearly as many filtering and sorting controls as Kayak and the majority of the controls they do provide are not only at the bottom of the page, but they also aren’t as interactive and require the browser to render an entirely new search results page.
It looks like the priority for Kayak’s development team is to build a great website for finding flights. The priority given to the Unified development team is to sign up travelers for a credit card.
Let’s pick on another company, this one I’ll call Charriott Hotels. I frequently stay at Charriott properties and use their web site to book rooms. On slow WiFi connections, the desktop version of the site takes forever to load, and a quick peek at the network tab of the developer tools explains why (the image to the right is a zoomed out view).
Charriott’s home page sends out 57 network requests for more than 900KB of total payload. However, this is not bad. Most of travel sites, even the ones that want you, are making north of 50 requests for around 1MB of payload by the time all the destination vacation pictures and analytic scripts are finished. Plus, Charriott minifies most of their scripts and CSS, gzips and cache controls their static content, and bundles some (but not all) of their files together.
Still, even casual observation shows areas for improvement. The largest asset download is a 267KB download of minified script that includes:
I’m not a fan of optimizing script downloads just to save a kilobyte here and there, but for the home page of a major hotel brand I’d try to avoid loading two large script frameworks with overlapping functionality. The entire file must be downloaded and parsed before the home page is usable, and I’m certain it is possible to make this happen with less than 1/3 the amount of script currently in the page.
Unified and Charriott actually have good web sites for the large companies that they are. Time and time again I see large company web sites that are disasters, even technology companies that understand design and computers. I don’t believe this is the fault of the development teams. I believe bad web sites are the product of politics, design by committee processes, and the inherent difficulty in managing a large IT staff. The teams can make it happen, they just need the opportunity and an environment to make it happen.