The Best of the Internets

Emulating Failure

Another beautifully-eloquent post about the potential perils of Web Components:

HTML has a problem. As implemented in browsers many interactive elements cannot be styled as desired by web developers, or developers as directed by designers, marketing or any of the numerous others whose wishes code cutters must abide by.

Now in 2015 we have web components re-inventing native HTML buttons, radio buttons and checkboxes, for relief from the scourge of divitis, perpetrated upon us by the as shipped inability to style a native HTML element as desired.

Is it just me, or are new web UI technologies continuing to try to solve the wrong problems?

Now, the Shadow DOM (and associated pseudo-elements) should allow us to control the style of these elements. The deeper problem is functionality. Take the datalist for predictive typing. What if you want fuzzy search instead of initial search when someone types. That’s not supported. This is where Web Components get interesting.

Accessible Timeout Notifications

I’m not generally a fan of session timeouts, but if you have to do it, Léonie Watson has outlined a pretty good route to go. My only nit might be using a role of “alert” or “alertdialog” instead of “group”, but that’s because it would trigger an audible chime and get read by assistive tech. But that’s pretty minor.

Pay particular attention to the keyboard focus stuff too.


Great post from Jeremy on Web components. I couldn’t agree more:

I was looking forward to getting really stuck into Web Components and figuring out ways of creating powerful little extensions that I could start using now. But if Web Components turn out to be an all-or-nothing technology—a “platform”, if you will—then I will not only not be using them, I’ll be actively arguing against their use.

Thoughts on Pagination

Pagination is pretty arbitrary. Could it be better? Probably.

For example, take your average photo site that displays the content in a reverse chronological order: that is, newest to oldest. Let’s say your friend has posted 2000 photos to this site. The site shows the viewer 10 things per page. With our prolific user, this gives us 200 pages.

Going to the middle of this content takes us to page 100. What does this mean, beyond we’re at the middle? Not much.

Why All Three Game Consoles Have Now Ditched the TV

I hadn’t really thought about it with respect to gaming, but this has definitely been an interesting trend:

More and more so, the programming we once watched on TV is migrating to our tablets and phones. Cable providers have apps that let customers access live television, and even the contents of their DVRs, on their personal devices. Comcast et al realize they must let you access that content where your eyeballs are, or you’ll find other content. Ditto Nintendo, Microsoft and Sony. Game consoles cannot be married to the TV.

WhatsApp Doesn’t Understand the Web

I am not a WhatsApp user, but I have long been impressed with the way they embrace operating systems others ignore. I think it has been a key to their success and speaks to the “accessibility” (in the broader sense) of their service.

I am completely baffled by the design decisions they made in their Web client, as is Andre Alves Garzia.

Inside Microsoft’s New Rendering Engine for the "Project Spartan"

This is Microsoft’s Jacob Rossi on how “Project Spartan” came to be and what is going on inside the browser that comes after Internet Explorer.

On that elated feeling of removing legacy code:

[S]wathes of IE legacy were deleted from the new engine. Gone were document modes. Removed was the subsystem responsible for emulating IE8 layout quirks. VBScript eliminated. Remnants like attachEvent, X-UA-Compatible, currentStyle were all purged from the new engine. The codebase looks little like Trident anymore (far more diverged already than even Blink is from WebKit).

On a faster dev cycle for the new browser:

[W]e’ll treat Windows 10 as a service—keeping users up to date and delivering features when they are ready (“auto-update”), not waiting for the next major release. This means the new rendering engine will always be truly evergreen.

On opening up the process:

Another welcomed change that we’ve been rolling out over the past year is a promise for increased openness about our web platform plans and roadmap. Over the last year, you’ve hopefully experienced some of this through our open standards roadmap15 (one of my personal side projects), our Reddit AMA16, regular dialog through @IEDevChat17, and sharing preview builds18 very early in our development process. You’ll see more of this over the next year.

Promising stuff all around. I am still wondering if we’ll eventually see the new browser appear on other operating systems (even if it’s just the browser chrome and not the rendering engine—like Chrome on iOS). Time will tell.

Flash of Faux Text

In his continuing exploration of font loading optimization, Zach Leatherman proposes loading a Roman (i.e. normal weight, non-italic) font first and letting the browser synthesize (i.e. fake) the bold, italic, etc. variants to reduce the load time and reflow of the document and let users start reading as soon as possible. Then he lazy loads the additional font weights and styles so the browser can swap out the synthesized glyphs for the actual ones.

Super clever stuff Zach!

All of This Has Happened Before and Will Happen Again

Another awesome post from Adrian Roselli on the perils of pushing for a one-browser (a.k.a. WebKit) world:

Everyone who calls for WebKit in Internet Explorer is exactly the same kind of developer who would have coded to Internet Explorer 15 years ago (and probably happily displayed the best viewed in badge).

If you are that developer, then it will all be your fault when it happens again. When WebKit is no longer the hot engine. When Chrome loses its dominance. When Apple’s market share falls to match the developing world. You will be to blame.

Do you think that won’t happen? Just look to Android browser fragmentation, or WebKit failing to support a standard that Firefox and IE have nailed, or Chrome introducing its own proprietary features (can’t find the link; it’s coming), or failing to use best practices as it tries to carry the next big thing forward, or the complete lack of developer relations from Apple. We’ve had over half a decade of warning signs.

It’s happening again, and every petulant, lazy developer who calls for a WebKit-only world is responsible.