Smartial Wayback Machine Text Extractor



Live version of this page DOES NOT exist (#404)


This article contains 10 images. You will find them at the very end of the article.

This article contains 3677 words.

A Dao Revisited

The Dao of Web Design Revisited

John Allsopp @johnallsopp

This slide intentionally left blank.

Speaker notes for the presentation will appear here. It's not a transcript, but follows my reasoning, and it's probably more coherent than my rambling.

  • The path into the light seems dark,
  • the path forward seems to go back,
  • the direct path seems long,
  • true power seems weak,
  • true purity seems tarnished,
  • true steadfastness seems changeable,
  • true clarity seems obscure

Tao Te Ching; 41

In 1990, great corporations, some new, some decades old, dominated computing - hardware, operating systems, networking.

Companies like Microsoft, IBM, Hewlett Packard, Compaq, Novell.

If then, you had said in a decade, the world's computers would be connected by a global network, you'd likely have got little argument. Perhaps the timeline would have been considered a little ambitious, but other than that, spot on.

  • Decentralization
  • Tolerance
  • Truth
  • Hope

Tim Berners Lee;

The World Wide Web and the "Web of Life"

If you had then said this network would be built on open technologies, owned by no one, and founded on the principles of Unitarian Universalism – Decentralization, Tolerance, Truth and Hope – well, I expect you'd have been laughed out of pretty much any room.

  • Under heaven nothing is more soft and yielding than water.
  • Yet for attacking the solid and strong, nothing is better;
  • It has no equal.

Tao Te Ching; 78

But the web prevailed. Over Compuserve, AOL, Apple's eWorld, over networking giants like Novell, over the 1990s near monopoly powered Microsoft, and many others. Many of those then dominant entities no longer even exist.

It is a truly remarkable moment in the history of the world. And since then, the web has continued to grow and evolve in ways that confound. Uprooting centuries old media and business practices, helping bring down despotic regimes, and bringing the world closer together.

Time and again, companies have attempted to take over it, subvert it, supplant it.

Governments to restrict our use of it.

And yet, with no owner, no centralized advocate or champion, and little real guidance, these attempts all have come to little.

Today, as always, there are those expressing their concerns that this will change, is changing, due to the rise of the planet of the apps. But we'll return to that a little later.

Now, this is not, as some have suggested, an argument for complacency. The web's success is not because of lack of action, but rather a tremendous amount of effort on the parts of individuals, organizations, and indeed many companies.

But I believe there is something truly profound which underpins the success of the web, which has given it such potency, such longevity (let's face it, 20 years is a long time when it comes to technology). 20 years ago, the dominant PC OS was DOS.

A List Apart No. 58 April 2000

So today, I'd like to consider what it is that lies at the heart of the success of the web, and importantly how we can set our sails by its star. And I'd like to do so by returning to something I wrote well over a decade ago.

Now, if in 2000, you'd have told me that something I wrote then would have any relevance, would be remembered at all, I'd have thought you were completely wrong.

  • Well established hierarchies are not easily uprooted;
  • Closely held beliefs are not easily released;
  • So ritual enthralls generation after generation.

Tao Te Ching; 38 Ritual

When I wrote the Dao, I honestly thought that in short order, its central idea - which I still think is a simple one - would have come to have been widely adopted, and we'd have moved far beyond.

Which in some ways is what has happened.

The original article came out of a sense of frustration I felt about a common misconception about the web as a medium.

Back then, the CSS newsgroup was the center of the CSS universe, particularly for those learning this still new and evolving technology. Yep, a newsgroup!

Time and again, week in, year out, you'd hear the refrain that "the web is broken" or "CSS is broken", because designers couldn't fix font sizes and window sizes. Because fonts looked different on different operating systems. Because designers wanted control

  • [The Sage] accepts the ebb and flow of things,
  • Nurtures them, but does not own them

Tao Te Ching; 2 Abstraction

Web design had emerged from the world of print. Many, perhaps most, early web designers and developers had come from print, rather than a computer science backgrounds.

And so, used to the rigidly fixed medium of paper, to WYSIWYG, which gave the designer almost complete control over the final output, it makes sense that the web, with its laughably low DPI, small color palettes, restricted font options, not to mention variable font and canvas size felt wrong. Broken.

This was not a bug, I argued, but a feature of the web. This "Adaptability" as I termed the nature of the medium, brought with it the flexibility for our designs to meet the needs of people with disabilities, who could increase font size or change colors as needed. A flexibility for our designs to work on the huge range of screen sizes and color depths then used on the web (and the range has only increased phenomenally since then).

None of this is controversial now (though then indeed it was. Much vitriol truly was reserved for those who argued along these lines. Standards Nazis being one of my particular favorites).

  • The Way is shaped by use,
  • But then the shape is lost.
  • Do not hold fast to shapes
  • But let sensation flow into the world
  • As a river courses down to the sea.

Tao Te Ching; 32 Shapes

Ironically in time, this new approach to some extent took on a ritual-like nature of its own. It has become its own set of closely held beliefs. We need always be on our guard that we aren't replacing one established hierarchy with another.

But, is this more than simply a self indulgent walk down memory lane for me? A pat on the back that history has proved me right?

I hope so.

Let's fast forward to 2011.

In the last decade, while the web as an evolution of the medium of print has continued, we've see the largely parallel emergence of the web as an application platform.

Where sites a decade ago were largely static (the Dao predates even blogging in the modern sense, as well as applications like Flickr, Twitter, Facebook, and the endless list one could make) today many of the most heavily used sites are much more application like.

The web today is in many ways profoundly different from the web of 2000.

At least with native code you know you’ll have something that works. You have control of the conditions. Once you add the web to any app, you begin to lose that control and the viability of the product, schedule and budget

Brian Fling

But, once again, we are starting to hear that it is broken. From people I admire, who are smart, and have done much for the web.

Interesting to see the word "control" emerge, just as it did in the late 1990s.

The challenge of getting the scrolling physics right was nothing compared to the chore of making the animations as smooth and stutter-free as they are in native iOS apps

Joe Hewitt

It sounds a lot to me like "the web is broken because controlling font sizes is hard".

[Inertial scrolling is] really really hard in native content as well.

That's the main place where other platforms feel crappy compared to iOS. If the system didn't expose it, native apps would suck

Core iOS Engineer I know who will remain nameless

But, as an aside you know what?

I can easily see a world in which Web usage falls to insignificant levels compared to Android, iOS, and Windows, and becomes a footnote in history. That thing we used to use in the early days of the Internet

Joe Hewitt

Some of these folks, honestly, and in good faith, think this is deadly serious

Indeed, some folks think the web is dead already

Mind you, given Wired's track record in predicting the desmise of things, I'm not overly concerned.

And, I respectfully disagree. And here's why.

The truth is, using web technologies to build "native" apps is hard. But this is a feature, not a bug of web technologies.

Huh? 什麼?

Native platforms are a lot like paper. They are tightly constrained. Let's take iOS (because when folks say the web should be more like "native" technologies, they don't mean Android, or Windows Phone 7, they mean iOS.

With iOS, there are effectively 4 screen sizes to design for. iPhone portrait and landscape, and iPad portrait and landscape.

You might throw in the higher resolution of the iPhone 4, but the truth is, I suspect most developers pay scant attention to the iPhone 3GS or older.

  • There's basically one input method across this entire ecosystem. Touch (I doubt despite the hype around Siri we'll see voice ever much of an input technique).
  • There are a couple of levels of performance. A4 and A5 processors.
  • And we can assume a great deal of the time, where required, network performance will be reasonably fast.

Importantly, there are a small number of well defined user interaction patterns, exposed directly for developers to use through system-level widgets, events and APIs.

And, as we just saw, Apple pours enormous energy and resources into making specific aspects of the device as magical as possible.

But, it is a tightly constrained canvas developers and designers have to work with, tightly coupled with development tools specifically built to help build apps for that platform. It's in no small part this which makes developing for a platform like iOS "easier" than developing with web technologies.

And, it's not to be overlooked you get access to potentially as many as 130 million users. Mostly in the developed world.

  • Being and non-being create each other.
  • Difficult and easy support each other.
  • Long and short define each other.
  • High and low depend on each other.
  • Before and after follow each other.

Tao Te Ching; 2

These contraints are features of the iOS, which make the devices wonderful to use, and in many ways very nice to develop for.

But there is also a yang to this yin. Just as the contraints of the platform are a feature, they are also a bug. Because as a developer you must accept Apple's extraordinary control over what you may do on their platform, and the hoops they make developers jump through.

And these contraints also mean innovation on the iOS platform is largely a function of Apple's desires and efforts. A one way street, Apple (and Google and other platform owners) give, and developers receive.

How about the web?

  • Well, here we find screen sizes range from as small as 128 x 128 pixels, to WHUXGA (7690 x 4800px).
  • Performance differences range from low powered feature phones and 10 year old Wintel boxes, to, well, the fastest systems on earth.
  • Form factors range from small handheld devices, to giant projectors
  • Input methods from touch to mouse and keyboard to trackpad, kinect, wiimote, and beyond.
  • Network speeds can range from Kbps to Gigbits.
  • And all these features are constantly changing.
The power of the Web is in its universality. Access by everyone regardless of disability is an essential aspect

Tim Berners Lee

And over 2 Billion people regularly use the World Wide Web because of this.

The very fragmented, divergent nature of the web, what looks like a bug, gives rise to its greatest feature, indeed, its inherent nature. Its universality.

  • Giving birth and nourishing,
  • having without possessing,
  • acting with no expectations,
  • leading and not trying to control:
  • this is the supreme virtue.

Tao Te Ching; 8

The technologies at the heart of the web – HTML, CSS, JavaScript, SVG - are designed for interoperability, extensibility, to be malleable, ductile. For tolerance, and decentralization.

Innovation on the web is iterative, a virtuous cycle. The DOM is powerful, but hard to use. So folks like John Resig develop technologies like jQuery (in 2005). jQuery's concept of using CSS selectors with the DOM proves so popular, the W3C standardized it (the first draft of the spec is 2006), while browsers implement it.

Time and again, with features of CSS3, and HTML5, and elsewhere we've seen this iterative, open, collaborative cycle.

Afterall, the W3C can spend a decade on XHTML2, but if no one wants it, it withers on the vine.

On the other hand, Apple can develop a proprietary technology like canvas, and we see it implemented in other browsers, then become part of a standard like HTML5.

Or, we see a motley bunch of folks recognize the emergence of design patterns like using class to add semantics, and use this to create microformats.

In some ways it would be nice if everyone used a keyboard and mouse at a desk, with a minimum 1024 x 768 screen (but not too big mind you), and color, perhaps at a standard dpi.

Maybe we should have stopped innovating back in about 2003.

That would make our lives as professionals so much easier.

Which I think is the reason why developers have so embraced native app development, aboveall for iOS.

We are yearning for a simpler time.

For a time when we didn't have to worry about all that divergence. Because that's what we have. Not the convergence that has been long foretold (along with jetpacks and hovercars), but the increasing fragmentation of devices, networks, and use contexts.

But, while convergence and conformity might make our lives as professionals easier, it would make and our, and far more importantly everyone else's life so much more boring. And far less rich.

Don't get me wrong, this divergence is a problem. But. As professionals, it is our problem. Not other peoples. Not the users of the web's. Ours.

It's also a challenge, and opportunity, to make a lot of people's lives better. To do interesting work. And to do very well financially if that's your kind of thing.

And frankly, to me those challenges are much more interesting.

The Cretaceous Future

Scott Jensen know's a bit about user experience. He was "the first member of the User Interface group at Apple in the late 80s, working on System 7, the Apple Human Interface guidelines and the Newton".

He recently described our current era, fixated on apps as "Jurassic".

This is a paradigm that sees every possible mobile opportunity only as an exercise in creating an app. This is a rather useful myopia, to be sure, as some people are making lots of money selling apps, but it is beginning to feel like a local maximum and a paradigm that can only get us so far

Scott Jensen

Just as our desire for the web to be more like the familiar, comfortable paper in the late 1990s was an understandable, but ultimately myopic view of the web, one we transcended when we understood the capabilities that its apparent limitations had, I believe that's what we are seeing today, in the desire for the web to be more like native apps. Well established hierarchies are not easily uprooted.

And it's not just in the laments of developers struggling with web technologies. We are seeing it in the explosion of web appstores, like the Google Chrome Web Store.

  • ritual enthralls generation after generation

Tao Te Ching; 38 Ritual

and so, once again we see ritual enthralling yet another generation.

But, if we live in a Jurassic age of apps, what might the Cretaceous look like? What we should a new generation be building?

One of the things the web has done over the last 20 years has removed friction, from communication, conversations, transactions, interactions. By doing so, it has empowered and enriched the lives of countless people.

But the app model (whether native or web) creates enormous friction. It is a great leap backwards.

For users, from discovering an app, to installing it to using it is many steps.

  • For Developers, there's the development friction of different tools, languages, frameworks on different platforms
  • There's the friction of deploying to Appstores
  • There's the friction of needing users to upgrade when your app changes

The web does away with much of this friction.

Users only need load a single URL (perhaps in the near future via NFC, or location).

Developers can user a single code base, upgrades require zero configuration, and are instantly propagated to all users with no additional action on their part.

Applications are silos of pre-constructed, carefully curated functionality and user experience.

The designer and developer are in complete control of the users' experience.

But the promise of models like web actions (or web intents), and even the humble bookmarklet and browser extension, promise a far richer, more individualized, user centric experience. Something profoundly different from applications we are familiar with from the desktop and mobile contexts.

  • Giving birth and nourishing,
  • having without possessing,
  • acting with no expectations,
  • leading and not trying to control:
  • this is the supreme virtue.

Tao Te Ching; 8

Joe Hewitt recently called for web technologies to have owners. What they really need is custodians. Those custodians are of course the W3C. But they are also each one of us.

We can nurture and grow the web, and its potential by

  • Sharing our knowledge and skills with others, as so many do via blogs, and at conferences and through books and articles and elsewhere
  • We can contribute to the development of the underlying standards, formally, by participation in the standardization process, or less formally by creating use cases, critiquing, being early adopters.
  • We can test the boundaries of what these technologies enable, and inspire others to follow in those footsteps.

The a side effect of the medium of print was the control of the designer. Seen as a feature, it is also a bug. The medium of the early web was about enabling the user.

The strength of native platforms for developers is the control it puts back in their hands.

The strength of the web of today, and tomorrow is, and will always be how it enables and empowers its users.

  • Trying to control the future
  • is like trying to take the master carpenter's place.
  • When you handle the master carpenter's tools,
  • chances are that you'll cut your hand.

Tao Te Ching; 74

Even in its closing lines, the Tao Te Ching has much to teach us about the web. Nurture and enable it, but don't try to control it. Because

  • Trying to control the future
  • is like trying to take the master carpenter's place.
  • When you handle the master carpenter's tools,
  • chances are that you'll cut your hand.
  • The journey of a thousand miles
  • starts from beneath your feet.

Tao Te Ching; 64

let's not look to control the web's future, or look for a saviour in a benevolent dictator. Rather, let's nurture, and harness the web's adaptability. It's take us on a long extraordinary journey thus far, a journey which may yet prove a single step in a thousand miles.

@johnallsopp



Images:

The images are downsized due to limited space here. The original dimensions may differ.
Click on the image to open it on a new tab.



Please close this window manually.