
Tuesday session
Tuesday session
Crash!
Did somebody drop something?
Why, yes! It’s a new episode of The Clearleft Podcast. The episode that just dropped is all about onboarding:
How do you introduce users to product features without alienating or patronising them?
It’s a tidy fifteen and a half minutes long, featuring words of wisdom from product designer James Gilyead, content designer Jo Dimbleby, and of course UX designer Krystal Higgins, who literally wrote the book on better onboarding.
I interviewed James and Jo, and used snippets of a talk that Krystal gave at one of our UX events a little while back. Have a listen:
James and Jo talk worked on a project together for Sage where thy prototyped patterns for onboarding users to product features. You can find out more about the project:
The folks at Sage had a hunch that an overview screen might be valuable for their customers. They asked Clearleft to help them test this hypothesis.
Another Clearleftie, Chris How, wrote a chapter for the Customer Onboarding Handbook published by CX Lead. You can get the book and read his chapter called Ongoing Onboarding.
That idea of ongoing onboarding is something James talks about on the podcast, calling it “longboarding”:
We ended up coining the term longboarding to describe a transition from a new user to an established user.
He goes one better with the term “non-boarding”:
Some products you don’t realize have onboarded you. And I think that’s a huge compliment.
Listen to the whole episode to get the full story. And while you’re at it, subscribe to the podcast feed or subscribe on Apple, Spotify, or wherever you get your podcasts.
The arc of the web is long and bends towards flexibility.
Reading Julia by Sandra Newman.
An excerpt from First Steps: How Upright Walking Made Us Human by Jeremy DeSilva.
There’s a time for linguistics, and there’s a time for grabbing the general public by the shoulders and shouting “It lies! The computer lies to you! Don’t trust anything it says!”
💔
Checked in at Coffee@33. Flat white — with Jessica
Checked in at The Edge Community Centre. Learning a new tune — with Jessica
It is a universal law.
I would spend the time to thoroughly research this law and write up my findings but, well, you know.
As seen in such newsletters as…
https://tinyletter.com/clearleft/letters/dconstruct-from-clearleft-designing-design-fiction
Playing Langstrom’s Pony (jig) on mandolin:
Noodles in the sunshine.
On Monday, I linked to Tom’s latest video. It uses a clever trick whereby the title of the video is updated to match the number of views the video has had. But there’s a lot more to the video than that. Stick around and you’ll be treated to a meditation on the changing nature of APIs, from a shared open lake to a closed commercial drybed.
It reminds me of (other) Tom’s post from a couple of year’s ago called Pouring one out for the Boxmakers, wherein he talks about Twitter’s crackdown on fun bots:
Web 2.0 really, truly, is over. The public APIs, feeds to be consumed in a platform of your choice, services that had value beyond their own walls, mashups that merged content and services into new things… have all been replaced with heavyweight websites to ensure a consistent, single experience, no out-of-context content, and maximising the views of advertising. That’s it: back to single-serving websites for single-serving use cases.
A shame. A thing I had always loved about the internet was its juxtapositions, the way it supported so many use-cases all at once. At its heart, a fundamental one: it was a medium which you could both read and write to. From that flow others: it’s not only work and play that coexisted on it, but the real and the fictional; the useful and the useless; the human and the machine.
Both Toms echo the sentiment in Anil’s The Web We Lost, written back in 2012:
Five years ago, if you wanted to show content from one site or app on your own site or app, you could use a simple, documented format to do so, without requiring a business-development deal or contractual agreement between the sites. Thus, user experiences weren’t subject to the vagaries of the political battles between different companies, but instead were consistently based on the extensible architecture of the web itself.
I know, I know. We’re a bunch of old men shouting at The Cloud. But really, Anil is right:
This isn’t our web today. We’ve lost key features that we used to rely on, and worse, we’ve abandoned core values that used to be fundamental to the web world. To the credit of today’s social networks, they’ve brought in hundreds of millions of new participants to these networks, and they’ve certainly made a small number of people rich.
But they haven’t shown the web itself the respect and care it deserves, as a medium which has enabled them to succeed. And they’ve now narrowed the possibilites of the web for an entire generation of users who don’t realize how much more innovative and meaningful their experience could be.
In his video, Tom mentions Yahoo Pipes as an example of a service that has been shut down for commercial and idealogical reasons. In many ways, it was the epitome of what Anil was talking about—a sort of meta-API that allowed you to connect different services together. Kinda like IFTTT but with a visual interface that made it as empowering as something like the Scratch programming language.
There are services today that provide some of that functionality, but they’re more developer-focused. Trys pointed me to Pipedream, which looks good but you need to know how to write Node.js code and import npm packages. I’m sure it’s great if you’re into serverless Jamstack lambda thingamybobs but I don’t think it’s going to unlock the potential for non-coders to create cool stuff.
On the more visual pipes-esque Scratchy side, Cassie pointed me to Cables:
Cables is a tool for creating beautiful interactive content.
It isn’t about making mashups, but it does look something that non-coders could potentially use to make something that looks cool. It reminds me a bit of Bret Victor and his classic talk on Inventing On Principle—always worth revisting!
We have a tendency in our line of work to assume that what benefits us as developers translates to a benefit for those who use what we make. This is an unsafe assumption.
A free and open source neutral sans-serif typeface, released as part of version two of the design system for the US federal government.
- Morality is not always relative.
- You’re a web professional.
- The web is accessible out-of-the-box. We break it.
- It’s not on people with disabilities to tell you how you screwed up.
- It should be easier. This is our job.
Procedurally generated murmurations of starlings.
Here’s a handy interface if you want to get your head around named areas in CSS Grid, also known as doing layout with ASCII art.
I’ve been digging into CSS Grid a lot during the past week, so this post from Eric is very timely. On the surface it looks like a fairly simple use case but as you read through the explanation, it starts to become clear that the underlying thinking could be used in a lot of situations.
And, yes, like Eric, I too have been bitten by the Grid bug:
I’m working on my first redesign in a dozen years. If that doesn’t give you some sense of the power of Grid, well, I just don’t know what will.
Before leaving Brighton to head back to Sweden, Siri describes how Codebar helped her get started with front-end development:
I went along every week to work on my site, and was overwhelmed by the support and dedication of the mentors. Seeing the talented and diverse programmers in action made me re-think my preconceptions, and I soon realised that anyone can learn to code, from a 68-year-old retired teacher, to a twenty-seven-year-old female career-changer like me.
Chris rounds up the discussion that’s been happening around container queries, for and against.
Personally, I’d like to see about 100 different use cases fleshed out. If it turns out some of them can be done sans container queries, awesome, but it still seems highly likely to me that having container queries available to us would be mighty handy.
If you’re at all interested in public speaking, this is a great insight by Lara into what it’s like on the day of a talk.
Pizza!
Rainier McChedderton!
Hanging out with @MarcySutton and @MikeIndustries.
The past is still here—it’s just not evenly distributed.
Steven Johnson has oft waxed lyrical on the benefits of keeping a spark file—the modern equivalent of a nineteenth century commonplace book.
I started keeping a spark file. But I was keeping it the late lamented Editorially so my experiment was cut short. This is far as I got…
The transatlantic telegraph cable :: the space elevator.
The web :: the patent that never was.
The Mechanical Turk as design fiction, influencing Babbage.
These are the ramblings of a madman. But I might be able to use some of this—I need to prepare a new talk for later this year.
#HonoringWebFolk John Wilkins, Gottfried Wilhelm Leibniz, Jorge Luis Borges, Paul Otlet, Vannevar Bush, @TheTedNelson, @TimBerners_Lee.
Roasted butternut squash with sweet spices, lime and chili.
Sharpies’n’post-its.
Found it!
Time to get to work, says @boxman.
I finally got around to reading Red Men by Matthew De Abaitua recently. It’s like Nick Harkaway crossed with Jeff Noon.
Here’s hoping that this short film will be developed into a full-length feature.
A great article by Susan on getting started with creating a styleguide for any project.
I’ve seen firsthand how style guides save development time, make communication regarding your front end smoother, and keep both code and design consistent throughout the site.
This looks like a handy little bit of JavaScript for progressively enhancing navigation lists to show/hide them on smaller screens. And it’s not a jQuery plug-in!
The lovely and talented Paul and Kelly from Maxine Denver were in the Clearleft office to do some video work last week. After finishing a piece I was in, I suggested they keep “rolling” (to use an anachronistic term) so I could do a little tongue-in-cheek piece about the Clearleft device lab, a la Winnebago Man.
It reminded me of something, but I couldn’t figure out what. Then I remembered.
Andy points one of the potential pitfalls in linearising your content for small screens.
This post by Jason Fried is three years old but it’s more relevant than ever.
What a loss. Is that the best the next generation can do? Become part of the old generation? How about kicking the shit out of the old guys? What ever happened to that?
Even more historic significance than blue plaques.
Kittens, puppies, and other baby animals on continuous rotation.
A person-specific portal generated using Google's Social Graph API. And it's less than 5K!
They never taught this in my school.
This article first appeared in issue 253 of A List Apart magazine. Two weeks later, Microsoft reversed their position on the default behaviour of version targeting.
Note: Two weeks after this article appeared in A List Apart, Microsoft reversed their position on the default behaviour for version targeting in Internet Explorer.
Proprietary innovations by browser vendors are nothing new. Internet Explorer alone has given us XMLHttpRequest
, innerHTML
, and colored scrollbars. In each instance, we were free to use or ignore these non-standard extensions. Now Internet Explorer is introducing a new proprietary technology in the shape of version targeting. But this time, the only way to opt out of using the technology is, perversely, to use it.
When I first read about version targeting here in the hallowed pages of A List Apart, one point confused me. At the end of Eric’s heartfelt article detailing his reaction to the proposal, the final section seemed to suggest that IE8 would, by default, behave identically to IE7. That can’t be right,
I thought. Surely I was misreading Eric’s words. To clarify the situation, I asked Chris Wilson what would happen if IE8 were to encounter a valid, well-formed document with a strict DOCTYPE
. My worst fears were realized when he confirmed that the browser would behave exactly as if it were its predecessor.
This is gobsmackingly audacious. Imagine a new version of Word that behaves exactly like the old version of Word unless the document it is processing contains a hidden instruction to unlock any new features. That’s what Microsoft is demanding that web developers implement. Unless you explicitly say otherwise, IE8 (and IE9 and IE10, ad infinitum) will behave exactly like IE7.
My incredulity couldn’t be assuaged by the obvious explanations for this behavior—that Microsoft was being stupid or “evil.” The Internet Explorer team is made up of good standards-savvy developers. They must have a good reason for proposing a solution which, on the face of it, appears so crazy.
Microsoft’s proposal was triggered by a traumatic event: the upgrade from IE6 to IE7. Internet Explorer 6 languished in the doldrums of non-development for many years. Eventually, spurred on by the encroaching market share of rival browsers, Microsoft released Internet Explorer 7 sporting far better CSS support than the previous version.
Because IE6 stagnated for so many years and because it remained the market leader, a whole generation of websites had emerged that were coded to the quirky but predictable vagaries of that browser. These websites appeared to “work.” That is, they looked fine in the most popular browser on the market. But when IE7 was released, these websites were inevitably rendered differently. IE7, with its improved support for Web Standards, rendered these sites in much the same way as any other standards-compliant browser. Despite a concerted campaign to encourage developers to use conditional comments instead of browser-specific hacks, Microsoft received a barrage of complaints from website owners upset at the way that IE7 had changed the game. This is what the Internet Explorer team are referring to when they talk about “breaking the web.”
That’s a loaded phrase that doesn’t stand up to closer scrutiny. Firstly, what’s at issue here is not “the web” but “some websites”. Secondly, rather than “breaking”, it’s more accurate to say “displaying differently.” Finally, it’s important to remember that we are talking about how websites are displayed in one browser: when the IE team talk of “breaking the web,” what they really mean is that their browser will display documents in much the same way as other modern browsers do. Would that really be such a bad thing?
On the face of it, being the market leader is something to aspire to. But think of how much responsibility that entails. Would you really want to innovate and push the boundaries when even the smallest changes could cause disruption for thousands of your customers? This is exactly the kind of paralysis that Microsoft is trying to break out of. The version targeting proposal is a good solution to this deadlock. With the addition of one meta
element, websites can specify exactly how they should be rendered (in one browser).
Furthermore, had Microsoft implemented the X-UA-compatible
instruction in IE7, they could have saved themselves a whole mess of trouble. Instead of requiring developers to revisit their style sheets and strip out their browser-specific hacks, they could have instead told website owners to simply add one line to the head
of their documents. While it’s hard to imagine that the move from IE7 to IE8 will cause the same upheaval, it’s reassuring to know that Microsoft has thought ahead. Version targeting allows site owners to freeze rendering (for one browser) to a specified browser version. That’s a good thing. While it probably won’t affect standards-savvy developers like you or me, it offers a simple solution for site owners who don’t want to worry about the future. Better still, the fact that the X-UA-compatible
instruction can be sent as a header means that this issue can be taken care of by sysadmins with one small tweak to their server configurations.
But even that is asking too much, according to Microsoft. Instead of asking that developers who want to opt out of future improvements do so with the addition of a meta
element or header, Internet Explorer expects standards-savvy developers to actively opt out of version targeting… by using version targeting.
The reasoning here is that less savvy developers shouldn’t have to worry their little heads about adding one extra line to their documents. Instead, they should be encouraged to continue to write to the quirks of one specific browser version from the market leader. That their documents will “break” in other browsers is not Microsoft’s problem. The counterpoint to this condescending worldview is that standards-aware developers are the ones best placed to add a single line of markup to their documents—though, for some unexplained reason, the instruction for up-to-date rendering (IE=edge
) is strongly discouraged.
This strategy is doomed to failure. Standards-aware developers, by their very nature, will object to adding a line of unnecessary markup to their documents just to get one single browser to behave as it should by default.
While most of the web development community saw the release of IE7 as a welcome return to form, within the corridors of Redmond it was viewed as a failure. Microsoft simply cannot afford a repeat of the IE7 upgrade. Version targeting is a technology born of fear. A fear of “breaking the web”—which really means “rendering some websites differently in one browser”—has prompted the draconian default behavior.
Whether this fear is well-founded or not depends on just how drastically IE8 is going to “break” existing websites. Personally, I’m rather puzzled: what exactly are they planning to add in the next version of their browser to make the web asplode? If IE8 is going to differentiate itself from its predecessor by having better standards support, then surely we can assess how it will render websites by simply viewing those websites in a standards-compliant browser like, say, Firefox, Safari or Opera.
There was a time when Friendster was the biggest social networking site on the web—MySpace and Facebook were little more than distance glimmers on the horizon. There was a time when Netscape Navigator was the undisputed king of browsers and Internet Explorer was laughable challenger playing catch-up. On the World Wide Web, the status quo is a mutable, shifting thing. The proposed default behavior for version targeting is predicated on events that took place during a short span of years when Microsoft, having emerged as the top dog, pulled the plug on its own browser. There is an unspoken assumption that the only meaningful way the web is experienced is through one browser: Internet Explorer.
We are being told that the default version targeting behavior is necessary because without it, the web will turn into a messy crime scene of breakage (in one browser). If Microsoft are to be believed, the self-crippling default behavior of IE8+ is necessary to save the web (in one browser). Whether you agree or disagree with the default behavior comes down to faith: faith in Microsoft accurately foretelling the impact that IE8 will have.
I would much rather base my judgement on facts. There is an easy way for Microsoft to prove the necessity of mandatory version targeting: release a beta version of IE8 with version targeting disabled by default. Then we can see just how badly the web breaks some websites render differently in one browser.
I’ve listened to and understood all of the arguments in favor of the proposed default behavior: all of them assume that without self-crippling, IE8 will make a mess of a significant portion of the web. If that fear is borne out by an uncrippled beta release of the browser, I will back the proposed default behavior. Until then, I ask that Microsoft honor their promise from many years ago and allow their browser to render a valid, well-formed document with a current DOCTYPE
to the best of its abilities.
Version targeting is not a bad idea. The choice of delivery mechanisms—meta
element or server header—is inspired. As an optional feature, this could prove to be a real lifesaver in some development environments. As a mandatory millstone however, it strikes a blow against progressive enhancement. [1]
The proposed default behavior for version targeting in Internet Explorer solves the problem of “breaking the web” in much the same way that decapitation solves the problem of headaches. In its current state, version targeting is a cure that will kill the patient. Version targeting could have been an opportunity for Microsoft to demonstrate innovation. Instead, the proposed default behavior demonstrates a fundamental misunderstanding of the World Wide Web, a place that according to its creator, Sir Tim Berners-Lee, will always be a little bit broken.
[1] On the plus side, as-yet unpopular DOCTYPE
s such as HTML5 can be used to trigger up-to-date rendering from future versions of Internet Explorer. That’s reassuring for the future but HTML5 is not ready for use today—any DOCTYPE
that still includes the font
element still has some issues that need to be worked out. Besides, once HTML5 is widely deployed, Internet Explorer will probably freeze its rendering for those documents too.
David Recordon shares his first impressions of Google App Engine.
At last night’s £5 App gathering, after Glenn entertained us with the story of setting up Madgex, Paul and Simon unveiled a little thing they’ve been working on called WalRSS. In a nutshell, you point it at a URL and it makes a nice iPhone/iPod Touch version by styling the associated RSS feed.
Simon talked about all the headaches involved in such a seemingly simple concept. All the problems boiled down to the fact that the app needs to consume/parse/scrape third-party content. It turns out that consuming/parsing/scraping HTML and RSS is an order of magnitude hairier and scarier than pointing at a nice shiny RESTful API. In a textbook example of Postel’s Law, Simon needed to be ultra-paranoid about malicious users potentially taking down his server while being overly-generous in the kind of malformed, invalid RSS/Atom he accepted because, as it turns out, a helluva lot of feeds out there are bozo-compliant. With all sorts of clever server-side solutions at his disposal to handle polling, load balancing, caching and message queueing, he quickly came to realise that he was becoming more of a sysadmin than a web developer.
Ironically, just the day before the £5 App meetup, Google announced their App Engine. WalRSS is almost exactly the kind of app that the App Engine is designed for: it’s written in Django and it needs to do the kind of processing that Google’s infrastructure was made to handle.
I for one welcome our new App Engine overlords. I quite like to dabble in the occasional bit of backend coding but I have no desire to delve into the domain of systems administration.
There’s already an OpenID provider built on Google App Engine. This means that anybody with a Google account potentially has an OpenID URL. You’d have to log in through the app first but from then on, you could use http://openid-provider.appspot.com/[your username]
as your login.
Right now I’m using http://adactio.com/
as my OpenID URL, delegating to http://adactio.myopenid.com/
:
<link rel="openid.delegate" href="http://adactio.myopenid.com/" />
Should I ever tire of MyOpenID, I guess I potentially update my delegate link to use Google:
<link rel="openid.delegate" href="http://openid-provider.appspot.com/adactio" />
I’d still need to update my openid.server
link though.
Oh, you think this is geeky stuff? You should have heard Simon last night. Actually, you could have if you tuned into Ribot’s live broadcast on Qik.
This is the very definition of an intimate gig: a song in the back of a London cab.
Every Google account can now be an OpenID login thanks to this app built with the Google App Engine.
Joshua Bell goes busking in the Metro. This well-written article could have been disheartening but, as a former busker myself, I found it downright reassuring.
Ryan talks about microformats as part of a lowercase semantic web.
I finally succumbed and got myself a mobile ‘phone.
I hope that this doesn’t necessarily mean that I’m going to turn into one of those annoying people that talks far too loudly and obnoxiously in public. I certainly hope I don’t turn into one of those people that stands at baggage carousels at airports when their ‘plane has just landed with their mobile ‘phones pressed against their faces telling the people on the other end such insightful breaking news as “I’m at the baggage carousel” or “my plane has just landed”.
For the ‘phone spotters amongst you, I have a Sony Ericsson T68i.
Now all I need to get is a USB Bluetooth Adapter and I can start syncing the calendars and addresses on my computer with the ‘phone.
Best of all, I can get that really nifty piece of software that will allow me to control DVDs and MP3 playback from my ‘phone.
Oh, yeah… and apparently I can use it to make telephone calls too.