Jeremy Keith's Blog, page 33
April 13, 2022
69420
This is going to make me sound like an old man in his rocking chair on the front porch, but let me tell you about the early days of Twitter…
The first time I mentioned Twitter on here was back in November 2006:
I���ve been playing around with Twitter, a neat little service from the people who brought you Odeo. You send it little text updates via SMS, the website, or Jabber.
A few weeks later, I wrote about some of its emergent properties:
Overall, Twitter is full of trivial little messages that sometimes merge into a coherent conversation before disintegrating again. I like it. Instant messaging is too intrusive. Email takes too much effort. Twittering feels just right for the little things: where I am, what I���m doing, what I���m thinking.
That���s right; back then we didn���t have the verb ���tweeting��� yet.
In those early days, some of the now-ubiquitous interactions had yet to emerge. Chris hadn���t yet proposed hashtags. And if you wanted to address a message to a specific person���or reply to a tweet of theirs���the @ symbol hadn���t been repurposed for that. There were still few enough people on Twitter that you could just address someone by name and they���d probably see your message.
That���s what I was doing when I posted:
It takes years off you, Simon.
I���m assuming Simon Willison got a haircut or something.
In any case, it���s an innocuous and fairly pointless tweet. And yet, in the intervening years, that tweet has received many replies. Weirdly, most of the replies consisted of one word:
nice
Very puzzling.
Then a little while back, I realised what was happening. This is the URL for my tweet:
twitter.com/adactio/status/69420
69420.
69.
420.
Pesky kids with their stoner sexual-innuendo numerology!
April 12, 2022
Starting and finishing
Someone was asking recently about advice for public speaking. This was specifically for in-person events now that we���re returning to actual live conferences.
Everyone���s speaking style is different so there���s no universal advice. That said, just about everyone recommends practicing. Practice your talk. Then practice it again and again.
That���s good advice but it���s also quite time-consuming. Something I���ve recommended in the past is to really concentrate on the start and the end of the talk.
You should be able to deliver the first five minutes of your talk in your sleep. If something is going to throw you, it���s likely to happen at the beginning of your talk. Whether it���s a technical hitch or just the weirdness and nerves of standing on stage, you want to be able to cruise through that part of the talk on auto-pilot. After five minutes or so, your nerves will have calmed and any audio or visual oddities should be sorted.
Likewise you want to really nail the last few minutes of your talk. Have a good strong ending that you can deliver convincingly.
Make it very clear when you���re done���usually through a decisive ���thank you!������to let the audience know that they may now burst into rapturous applause. Beware the false ending. ���Thank you …and this is my Twitter handle. I always like hearing from people. So. Yeah.��� Remember, the audience is on your side and they want to show their appreciation for your talk but you have to let them know without any doubt when the talk is done.
At band practice we sometimes joke ���Hey, as long as we all start together and finish together, that���s what matters.��� It���s funny because there���s a kernel of truth to it. If you start a song with a great intro and you finish the song with a tight rock���n���roll ending, nobody���s going to remember if somebody flubbed a note halfway through.
So, yes, practice your talk. But really practice the start and the end of your talk.
April 5, 2022
UX London speaker updates
If you���ve signed up to the UX London newsletter then this won���t be news to you, but more speakers have been added to the line-up.
Steph Troeth will be giving a workshop on day one. That���s the day with a strong focus on research, and when it comes to design research, Steph is unbeatable. You can hear some of her words of wisdom in an episode of the Clearleft podcast all about design research.
Heldiney Pereira will be speaking on day two. That���s the day with a focus on content design. Heldiney previously spoke at our Content By Design event and it was terrific���his perspective on content design as a product designer is invaluable.
Lauren Pope will also be on day two. She���ll be giving a workshop. She recently launched a really useful content audit toolkit and she���ll be bringing that expertise to her UX London workshop.
Day three is going to have a focus on design systems (and associated disciplines like design engineering and design ops). Both Laura Yarrow and Inayaili Le��n will be giving talks on that day. You can expect some exciting war stories from the design system trenches of HM Land Registry and GitHub.
I���ve got some more speakers confirmed but I���m going to be a tease and make you wait a little longer for those names. But check out the line-up so far! This going to be such an excellent event (I know I���m biased, but really, look at that line-up!).
June 28th to 30th. Tobacco Dock, London. Get your ticket if you haven���t already.
March 30, 2022
Eventing
In person events are like buses. You go two years without one and then three come along at once.
My buffer is overflowing from experiencing three back-to-back events. Best of all, my participation was different each time.
First of all, there was Leading Design New York, where I was the host. The event was superb, although it���s a bit of a shame I didn���t have any time to properly experience Manhattan. I wasn���t able to do any touristy things or meet up with my friends who live in the city. Still the trip was well worth it.
Right after I got back from New York, I took the train to Edinburgh for the Design It Build It conference where I was a speaker. It was a good event. I particularly enjoyed Rafaela Ferro talk on accessibility. The last time I spoke at DIBI was 2011(!) so it was great to make a return visit. I liked that the audience was seated cabaret style. That felt safer than classroom-style seating, allowing more space between people. At the same time, it felt more social, encouraging more interaction between attendees. I met some really interesting people.
I got from Edinburgh just in time for UX Camp Brighton on the weekend, where I was an attendee. I felt like a bit of a moocher not giving a presentation, but I really, really enjoyed every session I attended. It���s been a long time since I���ve been at a Barcamp-style event���probably the last Indie Web Camp I attended, whenever that was. I���d forgotten how well the format works.
But even with all these in-person events, online events aren���t going anywhere anytime soon. Yesterday I started hosting the online portion of Leading Design New York and I���ll be doing it again today. The post-talk discussions with Julia and Lisa are lots of fun!
So in the space of just of a couple of weeks I���ve been a host, a speaker, and an attendee. Now it���s time for me to get my head back into one other event role: conference curator. No more buses/events are on the way for the next while, so I���m going to be fully devoted to organising the line-up for UX London 2022. Exciting!
March 27, 2022
Hosting Leading Design New York
I went to New York to host the Leading Design conference. It was weird and wonderful.
Weird, because it felt strange and surreal to be back in a physical space with other people all sharing the same experience.
Wonderful, for exactly the same reasons.
This was a good way to ease back into live events. It wasn���t a huge conference. Just over a hundred people. So it felt intimate, while still allowing people to quite literally have space to themselves.
I can���t tell you much about the post-talk interviews I conducted with the speakers. That���s because what happens at Leading Design stays at Leading Design, at least when it comes to the discussions after the talks. We made it clear that Leading Design was a safe place for everyone to share their stories, even if���especially if���those were stories you wouldn���t want to share publicly or at work.
I was bowled over by how generous and open and honest all the speakers were. Sure, there were valuable lessons about management and leadership, but there were also lots of very personal stories and insights. Time and time again I found myself genuinely moved by the vulnerability that the speakers displayed.
Leadership can be lonely. Sometimes very lonely. I got the impression that everyone���speakers and attendees alike���really, really appreciated having a non-digital space where they could come together and bond over shared travails. I know it���s a clich�� to talk about ���connecting��� with others, but at this event it felt true.
The talks themselves were really good too. I loved seeing how themes emerged and wove themselves throughout the two days. Rebecca did a fantastic job of curating the line-up. I���ve been to a lot of events over the years and I���ve seen conference curation of varying degrees of thoughtfulness. Leading Design New York 2022 is right up there with the best of them. It was an honour to play the part of the host (though I felt very guilty when people congratulated me on such a great event������Don���t thank me���, I said, ���Thank Rebecca���I���m just the public face of the event; she did all the work!���)
My hosting duties aren���t over. This week we���ve got the virtual portion of Leading Design New York. There���ll be two days of revisiting some of the conference talks, and one day of workshops.
For the two days of talks, I���m going to be joined by two brilliant panelists for post-talk discussions���Julia Whitney and Lisa Welchman. This should be fun!
Best of all, for this portion of the event I don���t need to get into an airplane and cross the Atlantic.
That said, the journey was totally worth it for Leading Design New York. Also, by pure coincidence, the event coincided with St. Patrick���s Day. For the first time in two years, New York hosted its legendary parade and it was just a block or two away from the conference venue.
I nipped out during the lunch break to cheer on the marching bands. Every county was represented. When the representatives from county Cork went by, there���d be shouts of ���Up Cork!��� When the county Donegal delegation went by, it was ���Up Donegal!���
It���s just a shame I couldn���t stick around for the representatives from county Down.
March 12, 2022
Going to New York
I���m flying to New York on Monday. That still sounds a little surreal to me, but it���s happening.
I���ll be hosting Leading Design New York. Even a month ago it wasn���t clear if the in-person event would even be going ahead. But there was a go/no-go decision and it was ���go!��� Now, as New York relaxes its mandates, it���s looking more and more like the right decision. It���s still probably going to feel a bit weird to be gathering together with other people …but it���s also going to feel long overdue.
Rebecca has put together a fantastic line-up of super-smart design leaders. My job will be to introduce them before they speak and then interview them afterwards, also handling questions from the audience.
I���m a little nervous just because I want to do a really good job. But I���ve been doing my homework. And given how well the hosting went for UX Fest, I���m probably being uneccesarily worried. I need to keep reminding myself to enjoy it. It���s a real privilege that I get to spend two days in the company of such erudite generous people. I should make the most of it.
If you���re going to be at Leading Design New York, I very much look forward to seeing you there.
If you���re not coming to Leading Design but you���re in the neighbourhood, let me know if you���ve got any plans for St. Patrick���s Day. I���ve already got my green paisley shirt picked out for my on-stage duties that day.
March 9, 2022
When should there be a declarative version of a JavaScript API?
I feel like it���s high time I revived some interest in my proposal for button type="share". Last I left it, I was gathering use cases and they seem to suggest that the most common use case for the Web Share API is sharing the URL of the current page.
If you want to catch up on the history of this proposal, here���s what I���ve previously written:
A declarative Web Share APIA polyfill for button type=”share”The reason for a share button typeRemember, my proposal isn���t to replace the JavaScript API, it���s to complement it with a declarative option. The declarative option doesn���t need to be as fully featured as the JavaScript API, but it should be able to cover the majority use case. I think this should hold true of most APIs.
A good example is the Constraint Validation API. For the most common use cases, the required attribute and input types like ���email���, ���url���, and ���number��� have you covered. If you need more power, reach for the JavaScript API.
A bad example is the Geolocation API. The most common use case is getting the user���s current location. But there���s no input type="geolocation" (or button type="geolocation"). Your only choice is to use JavaScript. It feels heavy-handed.
I recently got an email from Taylor Hunt who has come up with a good litmus test for JavaScript APIs that should have a complementary declarative option:
I���ve been thinking about how a lot of recently-proposed APIs end up having to deal with what Chrome devrel���s been calling the ���user gesture/activation budget���, and wondering if that���s a good indicator of when something should have been HTML in the first place.
I think he���s onto something here!
Think about any API that requires a user gesture. Often the documentation or demo literally shows you how to generate a button in JavaScript in order to add an event handler to it in order to use the API. Surely that���s an indication that a new button type could be minted?
The Web Share API is a classic example. You can���t invoke the API after an event like the page loading. You have to invoke the API after a user-initiated event like, oh, I don���t know …clicking on a button!
The Fullscreen API has the same restriction. You can���t make the browser go fullscreen unless you���re responding to user gesture, like a click. So why not have button type="fullscreen" in HTML to encapsulate that? And again, the fallback in non-supporting browsers is predictable���it behaves like a regular button���so this is trivial to polyfill. I should probably whip up a polyfill to demonstrate this.
I can���t find a list of all the JavaScript APIs that require a user gesture, but I know there���s more that I���m just not thinking of. I���d love to see if they���d all fit this pattern of being candidates for a new button type value.
The only potential flaw in this thinking is that some APIs that require a user gesture might also require a secure context (either being served over HTTPS or localhost). But as far as I know, HTML has never had the concept of features being restricted by context. An element is either supported or it isn���t.
That said, there is some prior art here. If you use input type="password" in a non-secure context���like a page being served over HTTP���the browser updates the interface to provide scary warnings. Perhaps browsers could do something similar for any new button types that complement secure-context JavaScript APIs.
March 7, 2022
Web notifications on iOS
I���ve mentioned before that I don���t enable notifications on my phone. Text messages are the only exception. I don���t want to get notified if a new email arrives (I avoid email on my phone completely) and I certainly don���t want some social media app telling me somebody liked or faved something.
But the number one feature I���d like to see in Safari on iOS is web notifications.
It���s not for me personally, see. It���s because it���s the number one reason why people are choosing not to go all in progressive web apps.
Safari on iOS is the last holdout. But that equates to enough marketshare that many companies feel they can���t treat notifications as a progressive enhancement. While I may not agree with that decision myself, I get it.
When I���m evangelising the benefits of building on the open web instead of making separate iOS and Android apps, I inevitably get asked about notifications. As long as mobile Safari doesn���t support them���even though desktop Safari does���I���m somewhat stumped. There���s no polyfill for this feature other than building an entire native app, which is a bit extreme as polyfills go.
And of course, unlike on your Mac, you don���t have the option of using a different browser on your iPhone. As long as mobile Safari doesn���t support web notifications, nothing on iOS can support web notifications.
I���ve got progressive web apps on the home screen of my phone that match their native equivalents feature-for-feature. Twitter. Instagram. They���re really good. In some ways they���re superior to the native apps; the Twitter website is much calmer, and the Instagram website has no advertising. But if I wanted to get notifications from any of those sites, I���d have to keep the native apps installed just for that one feature.
So in the spirit of complaining about web browsers in a productive way, I just want to throw this plea out there: Apple, please support web notifications in mobile Safari!
The good news is that web notifications on iOS might be on their way. Huzzah!
Alas, we���re reliant on Maximiliano���s detective work to even get a glimpse of a future feature like this. Apple has no public roadmap for Safari. There���s this status page on the Webkit blog but it���s incomplete���web notifications don���t appear at all. In any case, WebKit and Safari aren���t the same thing. The only way of knowing if a feature might be implemented in Safari is if it shows up in Safari Technology Preview, at which point it���s already pretty far along.
So while my number one feature request for mobile Safari is web notifications, a close second would be a public roadmap.
It only seems fair. If Apple devrels are asking us developers what features we���d like to see implemented���as they should!���then shouldn���t those same developers also be treated with enough respect to share a roadmap with them? There���s not much point in us asking for features if, unbeknownst to us, that feature is already being worked on.
But, like I said, my number one request remains: web notifications on iOS …please!
March 6, 2022
A bug with progressive web apps on iOS
Dave recently wrote some good advice about what to do���and what not to do���when it comes to complaining about web browsers. I wrote something on this topic a little while back:
If there���s something about a web browser that you���re not happy with (or, indeed, if there���s something you���re really happy with), take the time to write it down and publish it
To summarise Dave���s advice, avoid conspiracy theories and snark; stick to specifics instead.
It���s very good advice that I should heed (especially the bit about avoiding snark). In that spirit, I���d like to document what I think is a bug on iOS.
I don���t need to name the specific browser, because there is basically only one browser allowed on iOS. That���s not snark; that���s a statement of fact.
This bug involves navigating from a progressive web app that has been installed on your home screen to an external web view.
To illustrate the bug, I���ll use the example of The Session. If you want to recreate the bug, you���ll need to have an account on The Session. Let me know if you want to set up a temporary account���I can take care of deleting it afterwards.
Here are the steps:
Navigate to thesession.org in Safari on an iOS device.Add the site to your home screen.Open the installed site from your home screen���it will launch in standalone mode.Log in with your username and password.Using the site menu, navigate to the links section of the site.Click on any external link.After the external link opens in a web view, tap on ���Done��� to close the web view.Expected behaviour: you are returned to the page you were on with no change of state.
Actual behaviour: you are returned to the page you were on but you are logged out.
So the act of visiting an external link in a web view while in a progressive web app in standalone mode seems to cause a loss of cookie-based authentication.
This isn���t permanent. Clicking on any internal link restores the logged-in state.
It is surprising though. My mental model for opening an external link in a web view is that it sits ���above��� the progressive web app, which remains in stasis ���behind��� it. But the page must actually be reloading, either when the web view is opened or when the web view is closed. And that reload is behaving like a fetch event without credentials.
Anyway, that���s my bug report. It may already be listed somewhere on the WebKit Bugzilla but I lack the deductive skills to find it. I���m not even sure if that���s the right place for this kind of bug. It might be specific to the operating system rather than the rendering engine.
This isn���t a high priority bug, but it is one of those cumulatively annoying software paper cuts.
Hope this helps!
Both plagues on your one house
February is a tough month at the best of times. A February during The Situation is particularly grim.
At least in December you get Christmas, whose vibes can even carry you through most of January. But by the time February rolls around, it���s all grim winteriness with no respite in sight.
In the middle of February, Jessica caught the ���rona. On the bright side, this wasn���t the worst timing: if this had happened in December, our Christmas travel plans to visit family would���ve been ruined. On the not-so-bright side, catching a novel coronavirus is no fun.
Still, the vaccines did their job. Jessica felt pretty crap for a couple of days but was on the road to recovery before too long.
Amazingly, I did not catch the ���rona. We slept in separate rooms, but still, we were spending most of our days together in the same small flat. Given the virulence of The Omicron Variant, I���m counting my blessings.
But just in case I got any ideas about having some kind of superhuman immune system, right after Jessica had COVID-19, I proceeded to get gastroenteritis. I���ll spare you the details, but let me just say it was not pretty.
Amazingly, Jessica did not catch it. I guess two years of practicing intense hand-washing pays off when a stomach bug comes a-calling.
So all in all, not a great February, even by February���s already low standards.
The one bright spot that I get to enjoy every February is my birthday, just as the month is finishing up. Last year I spent my birthday���the big five oh���in lockdown. But two years ago, right before the world shut down, I had a lovely birthday weekend in Galway. This year, as The Situation began to unwind and de-escalate, I thought it would be good to reprieve that birthday trip.
We went to Galway. We ate wonderful food at Aniar. We listened to some great trad music. We drink some pints. It was good.
But it was hard to enjoy the trip knowing what was happening elsewhere in Europe. I���d blame February for being a bastard again, but in this case the bastard is clearly Vladimar Putin. Fucker.
Just as it���s hard to switch off for a birthday break, it���s equally challenging to go back to work and continue as usual. It feels very strange to be spending the days working on stuff that clearly, in the grand scheme of things, is utterly trivial.
I take some consolation in the fact that everyone else feels this way too, and everyone is united in solidarity with Ukraine. (There are some people in my social media timelines who also feel the need to point out that other countries have been invaded and bombed too. I know it���s not their intention but there���s a strong ���all lives matter��� vibe to that kind of whataboutism. Hush.)
Anyway. February���s gone. It���s March. Things still feel very grim indeed. But perhaps, just perhaps, there���s a hint of Spring in the air. Winter will not last forever.
Jeremy Keith's Blog
- Jeremy Keith's profile
- 55 followers
