Archive: July, 2015

125

sparkline
                    5th                     10th                     15th                     20th                     25th                     30th     
12am      
4am
8am                          
12pm                          
4pm                                            
8pm                                    

Friday, July 31st, 2015

We arrive home after a Friday night out in Brighton at the precise moment that the International Space Station is flying over.

Perfect.

And the award for “worst slash fiction found in a Brighton pub toilet” goes to…

And the award for “worst slash fiction found in a Brighton pub toilet” goes to…

Buffalo wings.

Buffalo wings.

(Xrisk 101): Existential Risk for Interstellar Advocates | Heath Rezabek - Academia.edu

Exemplars proposing various solutions for the resilience of digital data and computation over long timeframes include the Internet Archive; redundantly distributed storage platforms such GlusterFS, LOCKSS, and BitTorrent Sync; and the Lunar supercomputer proposal of Ouliang Chang.

Each of these differs in its approach and its focus; yet each shares with Vessel and with one another a key understanding: The prospects of Earth-originating life in the future, whether vast or diminishing, depend upon our actions and our foresight in this current cultural moment of opportunity, agency, awareness, ability, capability, and willpower.

Here’s your viewing schedule for the weekend:

http://www.fivesimplesteps.com/collections/responsive-day-out

#auberginetresslewaffle

Video video

Hey, remember Responsive Day Out 3: The Final Breakpoint? Remember all those great talks?

No?

Perhaps your memory needs refreshing.

Luckily for you, all the talks were recorded. The audio has been available for a while. Now the videos are also available for your viewing pleasure.

  1. Alice Bartlett
  2. Rachel Shillcock
  3. Alla Kholmatova
  4. Peter Gasston
  5. Jason Grigsby
  6. Heydon Pickering
  7. Jake Archibald
  8. Ruth John
  9. Zoe Mickley Gillenwater
  10. Rosie Campbell
  11. Lyza Gardner
  12. Aaron Gustafson

Thanks to Craig and Amie from Five Simple Steps for coming to Brighton to record the videos—really appreciate it. And thanks to Shopify for sponsoring the videos; covering the cost of the videos meant that we could keep the ticket price low.

What a day out! What a lovely responsive day out!

The beer o’clock bell is ringing at @Clearleft HQ.

The beer o’clock bell is ringing at @Clearleft HQ.

No one will ever read this but

There’s something so beautifully, beautifully webbish about this: readings of blog posts found through a search for “no one will ever read this.”

Listen to all of them.

Thursday, July 30th, 2015

Gongoozling a David Dimbleby documentary on canals.

What? It’s a perfectly cromulent word.

Spellchecker doesn’t know from gongoozling.

Researching.

Researching.

Maslow’s Hierarchy of Shearing Layers.

Spatial Interfaces — Elepath Exports — Medium

A detailed and humorous deep dive into motion design and spatial depth in digital interfaces.

Design machines | Louder Than Ten

When another company achieves success, there’s a lot of pressure to investigate what they did right and apply that to our own organizations.

But we still have a chance. As long as we run brave organizations made up of even braver souls who are willing to embrace expression, trust their intuition and experiences, and stand up when everyone else is sitting down, we will survive.

Stephen Hay | The Back(side) of the Class | CSS Day on Vimeo

A great presentation from Stephen. He takes a thoughtful look at our processes and tools.

Wednesday, July 29th, 2015

You think you know someone. Then they post an anti-feminist video on Facebook from “Only For Men.”

True story.

Publishing Versus Performance: Our Struggle for the Soul of the Web by Jeffrey Zeldman

Jeffrey weighs on the post I wrote about The Verge. I still feel like there’s a false dichotomy being presented here though: either performance or advertising. But advertising can be performant too. There’s a competitive advantage to be had there.

Tuesday, July 28th, 2015

Courgette.

Courgette.

Deep Time : A History of the Earth

This infographic offers a visual way to explore the various stages of the Earth’s history using a 12 hour clock analogy.

Library of Babel

This is simply wondrous! A microcosm of Borges’s story made real on the world wide web.

We do not simply generate and store books as they are requested — in fact, the storage demands would make that impossible. Every possible permutation of letters is accessible at this very moment in one of the library’s books, only awaiting its discovery.

Monday, July 27th, 2015

Well, I was on Team @aerotwist …until he started dissing Blade Runner.

https://www.youtube.com/watch?v=Hy6wceqkxvA

INTERNET IMAGES ^ 10

This is just wonderful: Powers Of Ten recreated using images from the internet. Also available as a flip book!

Read more about it or watch the video.

On The Verge

Quite a few people have been linking to an article on The Verge with the inflammatory title The Mobile web sucks. In it, Nilay Patel heaps blame upon mobile browsers, Safari in particular:

But man, the web browsers on phones are terrible. They are an abomination of bad user experience, poor performance, and overall disdain for the open web that kicked off the modern tech revolution.

Les Orchard says what we’re all thinking in his detailed response The Verge’s web sucks:

Calling out browser makers for the performance of sites like his? That’s a bit much.

Nilay does acknowledge that the Verge could do better:

Now, I happen to work at a media company, and I happen to run a website that can be bloated and slow. Some of this is our fault: The Verge is ultra-complicated, we have huge images, and we serve ads from our own direct sales and a variety of programmatic networks.

But still, it sounds like the buck is being passed along. The performance issues are being treated as Somebody Else’s Problem …ad networks, trackers, etc.

The developers at Vox Media take a different, and in my opinion, more correct view. They’re declaring performance bankruptcy:

I mean, let’s cut to the chase here… our sites are friggin’ slow, okay!

But I worry about how they can possibly reconcile their desire for a faster website with a culture that accepts enormously bloated ads and trackers as the inevitable price of doing business on the web:

I’m hearing an awful lot of false dichotomies here: either you can have a performant website or you have a business model based on advertising. Here’s another false dichotomy:

If the message coming down from above is that performance concerns and business concerns are fundamentally at odds, then I just don’t know how the developers are ever going to create a culture of performance (which is a real shame, because they sound like a great bunch). It’s a particularly bizarre false dichotomy to be foisting when you consider that all the evidence points to performance as being a key differentiator when it comes to making moolah.

It’s funny, but I take almost the opposite view that Nilay puts forth in his original article. Instead of thinking “Oh, why won’t these awful browsers improve to be better at delivering our websites?”, I tend to think “Oh, why won’t these awful websites improve to be better at taking advantage of our browsers?” After all, it doesn’t seem like that long ago that web browsers on mobile really were awful; incapable of rendering the “real” web, instead only able to deal with WAP.

As Maciej says in his magnificent presentation Web Design: The First 100 Years:

As soon as a system shows signs of performance, developers will add enough abstraction to make it borderline unusable. Software forever remains at the limits of what people will put up with. Developers and designers together create overweight systems in hopes that the hardware will catch up in time and cover their mistakes.

We complained for years that browsers couldn’t do layout and javascript consistently. As soon as that got fixed, we got busy writing libraries that reimplemented the browser within itself, only slower.

I fear that if Nilay got his wish and mobile browsers made a quantum leap in performance tomorrow, the result would be even more bloated JavaScript for even more ads and trackers on websites like The Verge.

If anything, browser makers might have to take more drastic steps to route around the damage of bloated websites with invasive tracking.

We’ve been here before. When JavaScript first landed in web browsers, it was quickly adopted for three primary use cases:

  1. swapping out images when the user moused over a link,
  2. doing really bad client-side form validation, and
  3. spawning pop-up windows.

The first use case was so popular, it was moved from a procedural language (JavaScript) to a declarative language (CSS). The second use case is still with us today. The third use case was solved by browsers. They added a preference to block unwanted pop-ups.

Tracking and advertising scripts are today’s equivalent of pop-up windows. There are already plenty of tools out there to route around their damage: Ghostery, Adblock Plus, etc., along with tools like Instapaper, Readability, and Pocket.

I’m sure that business owners felt the same way about pop-up ads back in the late ’90s. Just the price of doing business. Shrug shoulders. Just the way things are. Nothing we can do to change that.

For such a young, supposedly-innovative industry, I’m often amazed at what people choose to treat as immovable, unchangeable, carved-in-stone issues. Bloated, invasive ad tracking isn’t a law of nature. It’s a choice. We can choose to change.

Every bloated advertising and tracking script on a website was added by a person. What if that person refused? I guess that person would be fired and another person would be told to add the script. What if that person refused? What if we had a web developer picket line that we collectively refused to cross?

That’s an unrealistic, drastic suggestion. But the way that the web is being destroyed by our collective culpability calls for drastic measures.

By the way, the pop-up ad was first created by Ethan Zuckerman. He has since apologised. What will you be apologising for in decades to come?

Styleguide

Huge have released their tool for generating front-end style guides.

Fan Is A Tool-Using Animal—dConstruct Conference Talk

Maciej has published the transcript of his magnificent (and hilarious) talk from dConstruct 2013.

Sunday, July 26th, 2015

Saturday, July 25th, 2015

🎵 Jambalaya and a crawfish pie and Philae Lander 🎵

Friday, July 24th, 2015

Meet Walter Pitts, the Homeless Genius Who Revolutionized Artificial Intelligence

The fascinating story of logic, learning, and the origins of electronic computing. Russell, Shannon, Turing, Wiener, Von Neumann …they’re all in there, woven around the tragic figure of Walter Pitts.

It is a sad and beautiful world.

Thanks to their work, there was a moment in history when neuroscience, psychiatry, computer science, mathematical logic, and artificial intelligence were all one thing, following an idea first glimpsed by Leibniz—that man, machine, number, and mind all use information as a universal currency. What appeared on the surface to be very different ingredients of the world—hunks of metal, lumps of gray matter, scratches of ink on a page—were profoundly interchangeable.

Well, I think this talk outline is pretty clear. Explains itself, really.

Well, I think this talk outline is pretty clear.

Explains itself, really.

Thursday, July 23rd, 2015

Seafood platter.

Seafood platter.

Ceviche, avocado, and prawn,

Ceviche, avocado, and prawn,

Birthday cocktails with Jessica.

Birthday cocktails with Jessica.

Wednesday, July 22nd, 2015

Can’t stop thinking about http://idlewords.com/talks/webdesignfirst100years.htm

Send him to Antarctica!

http://kck.st/1UqhIsO

Efficient Web Type, c. 1556

A long zoom and then a deep dive into web typography.

Declaring performance bankruptcy | Vox Product Blog

It’s really good to see that Vox are taking measures to fix their atrocious performance problems. The Verge in particular is a case study in how not to serve up text and images on the web. There have been times in the past when I’ve wanted to link to an article there but then thought “I can’t in good conscience put a fellow human through that.”

NTH-TEST | nth-child and nth-of-type Tester

A tool for getting instant visual feedback on your nth-child selectors. Considering that the way I figure out nth-child selectors is to try randomly changing numbers until it works, this should be quite useful for me.

Tuesday, July 21st, 2015

Web Design - The First 100 Years

A magnificent presentation from Maciej that begins by drawing parallels between the aviation industry in the 20th century and the technology industry in the 21st:

So despite appearances, despite the feeling that things are accelerating and changing faster than ever, I want to make the shocking prediction that the Internet of 2060 is going to look recognizably the same as the Internet today.

Unless we screw it up.

And I want to convince you that this is the best possible news for you as designers, and for us as people.

But if that sounds too upbeat for you…

Too much of what was created in the last fifty years is gone because no one took care to preserve it.

We have heroic efforts like the Internet Archive to preserve stuff, but that’s like burning down houses and then cheering on the fire department when it comes to save what’s left inside. It’s no way to run a culture. We take better care of scrap paper than we do of the early Internet, because at least we look at scrap paper before we throw it away.

And then there’s this gem:

We complained for years that browsers couldn’t do layout and javascript consistently. As soon as that got fixed, we got busy writing libraries that reimplemented the browser within itself, only slower.

It finishes with three differing visions of the web, one of them desirable, the other two …not so much. This presentation is a rallying cry for the web we want.

Let’s reclaim the web from technologists who tell us that the future they’ve imagined is inevitable, and that our role in it is as consumers.

Lightyear.fm

This is a nifty audio-isation of distance from the Earth, like Radio Free Earth but a lot slicker.

Greek salads.

Greek salads.

Liking @genmon’s little book recommendation thingy quite a bit:

http://machine.supply/books/adactio

IndieWebCamp 2014 Year in Review — This Is A Movement - Tantek

Tantek posts a belated round-up of indie web activity in 2014:

2014 was a year of incredible gains, and yet, a very sad loss for the community. In many ways I think a lot of us are still coping, reflecting. But we continue, day to day to grow and improve the indieweb, as I think Chloe would have wanted us to, as she herself did.

You might not need jQuery plugins

From the people who brought you youmightnotneedjquery.com comes youmightnotneedjqueryplugins.com.

Don’t get me wrong—jQuery is great (some of the plugins less so) but the decision about whether to use it or not on any particular project should be an informed decision made on a case-by-case basis …not just because that’s the way things have always been done.

These sites help to inform that decision.

Monday, July 20th, 2015

For the record, 18pt steak slices are just right.

https://twitter.com/Wordridden/status/623223299330441220

The Ushahidi Platform ~ Pattern Library

A really nicely-documented pattern library.

Saturday, July 18th, 2015

Meat’n’potatoes.

Meat’n’potatoes.

Friday, July 17th, 2015

Hands, do what you’re bid:
Bring the balloon of the mind
That bellies and drags in the wind
Into its narrow shed.

What they undertook to do
They brought to pass;
All things hang like a drop of dew
Upon a blade of grass.

Basque chicken.

Basque chicken.

Papa’s got a brand new space probe. cc @ArielWaldman

Papa’s got a brand new space probe. cc @ArielWaldman

Thursday, July 16th, 2015

Quakepunk

There’s an article in The New Yorker by Kathryn Schulz called The Really Big One. It’s been creating quite a buzz, and rightly so. It’s a detailed and evocative piece about the Cascadia fault:

When the next very big earthquake hits, the northwest edge of the continent, from California to Canada and the continental shelf to the Cascades, will drop by as much as six feet and rebound thirty to a hundred feet to the west—losing, within minutes, all the elevation and compression it has gained over centuries.

But there’s another hotspot on the other side of the country: the New Madrid fault line. There isn’t (yet) an article about in The New Yorker. There’s something better. Two articles by Maciej:

  1. Confronting New Madrid and
  2. Confronting New Madrid (Part 2).

The New Madrid Seismic Zone earned its reputation on the strength of three massive earthquakes that struck in the winter of 1811-1812. The region was very sparsely settled at the time, and became more sparsely settled immediately afterwards, as anyone with legs made it their life’s mission to get out of southern Missouri.

The articles are fascinating and entertaining in equal measure. No surprise there. I’ve said it before and I’ll say it again, Maciej Cegłowski is the best writer on the web. Every so often I find myself revisiting Argentina On Two Steaks A Day or A Rocket To Nowhere just for the sheer pleasure of it.

I want to read more from Maciej, and there’s a way to make it happen. If we back him on Kickstarter, he’ll take a trip to the Antarctic and turn it into words:

Soliciting donations to take a 36-day voyage to the Ross Ice Shelf, Bay of Whales and subantarctic islands, and write it up real good.

Let’s make it happen. Let’s throw money at him like he’s a performing monkey. Dance, writer-boy, dance!

Just saw someone dump an eMac. Remember those?

Just saw someone dump an eMac. Remember those?

Wednesday, July 15th, 2015

Clearleft Letterpress Day | Flickr - Photo Sharing!

This was a fun way to spend the day—getting my hands dirty with ink and type.

Wood type composited and ready to set
Steaks.

Steaks.

Letterpressed.

Letterpressed.

Watching @clagnut print.

Watching @clagnut print.

Case of sorts.

Case of sorts.

Perpetua.

Perpetua.

Metal type.

Metal type.

There’s something very satisfying about sorting type.

There’s something very satisfying about sorting type.

Block type.

Block type.

Sorting.

Sorting.

Sorted.

Sorted.

Printing.

Printing.

Ready to roll.

Ready to roll.

Compositing.

Compositing.

Green.

Green.

Mixing up a colour.

Mixing up a colour.

Learning the law of the pica ruler.

Learning the law of the pica ruler.

Tuesday, July 14th, 2015

What a lovely sciencey day…

Go New Horizons!

Go LHCb!

Google Web Fonts Typographic Project

Google Fonts aren’t renowned for their quality but this is a beautiful demonstration of what you can accomplish with them.

Nicole Fenton | Interface Writing: Code for Humans

The text of Nicole’s excellent talk on writing helpful, human microcopy.

Watching Batesy go through the results of his 100 Days project. Lovely stuff.

Watching Batesy go through the results of his 100 Days project. Lovely stuff.

Indie Web Camp Brighton 2015

Indie Web Camp Brighton 2015 is a wrap, and what a fun weekend it turned out to be.

I was really pleased with the turnout; not just the number of people who came along—many of them from very far afield—but also the range of skill levels and backgrounds represented. What a lovely bunch!

Indie Web Camp Brighton group photo

We kicked off the first day with a show’n’tell: people demoed their sites, showed their posting interfaces, and talked about what they’d like to improve. That sparked plenty of ideas for the afternoon discussions. But in between we had a nice long lunch break—it was a lovely sunny day in Brighton so we took full advantage of the sun, the street food, and the ice cream.

We wrapped up the first day around 5pm and I immediately dashed off to start loading in and sound checking for a Salter Cane gig that evening. That turned out to be a lot of fun—the audience were great—but I was completely knackered by the end of the day.

The weather on Sunday was far gloomier, but that was okay—we spent the whole day indoors anyway, coding and hacking away at stuff. Quite a few people were adding h-entry and h-card to their sites so I helped them out whenever I could. Meanwhile I was working on trying to get an SMS interface to my site working using the Twilio API.

The actual coding part went pretty quickly, but then I hit a wall. Whenever Twilio tried to reach a URL on my site, it would time out with a 504 error. I couldn’t figure out what was going on. On a hunch, I tried sending it to a subdomain that wasn’t being served over HTTPS. That worked fine. Now, I can’t imagine that Twilio is actually unable to work with secure endpoints, so it must be something to do with the way that I’ve enabled HTTPS on my domain. Anyway, the HTTP subdomain solution worked, and eleven minutes before demo time I finally had something to show.

We finished the day and the event with the quickfire demos. As always, there was some really impressive stuff—it’s quite amazing how much can get done in such a short space of time. Then we tidied up and headed across the street to the pub for a well-deserved pint.

All in all, a great weekend.

The ethics of digital design | Design Council

This piece by Cennydd on ethics in digital design reminded me of something Jonathan Harris wrote a while back.

I like that he cautions against hiding the seams:

Designers should also strive to give digital products a healthy balance of seamlessness and interrogability. While it’s appealing to create technology that needs little human intervention, this sort of black box can be a breeding ground for dishonest behaviour.

Monday, July 13th, 2015

Tagliatelle with lamb ragu and broad beans.

Tagliatelle with lamb ragu and broad beans.

Edge Conference 2015 - 5 Progressive Enhancement - YouTube

Here’s the video of the panel I participated in at Edge conference, expertly moderated by Lyza.

Thanks to the video editing, you can’t see the face I’m making when the guy from Facebook talks about user-agent sniffing as a totally cool and reliable way of working.

Still recovering from an excellent but exhausting Indie Web Camp at the weekend.

Sunday, July 12th, 2015

Demo time at Indie Web Camp!

Posting via SMS, just like the good old days.

Here’s hoping that Charlotte gets webmentions working on her site!

Saturday, July 11th, 2015

Writing down tonight’s set list on the back of a napkin.

Writing down tonight’s set list on the back of a napkin.

Setting up the “stage” for tonight’s @SalterCane gig at The Greys.

Setting up the “stage” for tonight’s @SalterCane gig at The Greys.

Still having fun at Indie Web Camp.

Having fun at Indie Web Camp.

Having a long leisurely lunch break with my fellow Indie Web Campers.

Having a long leisurely lunch break with my fellow Indie Web Campers.

Arriving at Indie Web Camp.

Arriving at Indie Web Camp.

Friday, July 10th, 2015

Pork’n’peaches.

Pork’n’peaches.

Pork chops and peaches.

Pork chops and peaches.

Don’t worry if you think your Stack Overflow history doesn’t accurately reflect your skills…

http://stackoverflow.com/users/1162584/timbl

Gin and tonic featuring ice cubes in the shapes of a Star Destroyer and the Death Star.

Gin and tonic featuring ice cubes in the shapes of a Star Destroyer and the Death Star.

Call an ambulance, because @AndyBudd is on fire in the latest episode of the @ShopTalkShow:

https://huffduffer.com/adactio/247957

Thoroughly enjoyed collaborating with @LotteJackson on some JavaScript today.

Thursday, July 9th, 2015

Pretty sure I saw a seagull try to steal somebody’s credit card today.

They’re evolving even faster than we feared.

Blinking Fever - Tantek

A heartbreaking tale of companionship, memory and loss.

We are all just one Carrington Event away from an enforced digital detox.

Pasta.

Pasta.

Salad.

Salad.

Worried that that if I enable this option in JSLint, then my children will be next, will be next, will be next.

Worried that that if I enable this option in JSLint, then my children will be next, will be next, will be next.

Designing with Progressive Enhancement — sixtwothree.org

The full text of Jason’s great talk at this year’s CSS Summit. It’s a great read, clearing up many of the misunderstandings around progressive enhancement and showing some practical examples of progressive enhancement working at each level of the web’s technology stack

An album for a11y | HeydonWorks

Heydon’s putting together a collection of songs from webby people. I need to either give him a Salter Cane track or record some tunes for this.

Wednesday, July 8th, 2015

Just three more sleeps until Indie Web Camp Brighton!

https://indiewebcamp.com/2015/Brighton

OpenGeofiction

OpenGeofiction is a map of an imaginary world, created by a community of worldbuilders. You can take part in this project too.

Tuesday, July 7th, 2015

A funny thing happened on the way home from Codebar …and now I’m enjoying some grand tunes.

A funny thing happened on the way home from Codebar …and now I’m enjoying some grand tunes.

Sunday, July 5th, 2015

Grilling veggies.

Grilling veggies.

The Internet That Was (and Still Could Be) - The Atlantic

A fantastic piece by David Weinberger on the changing uses of the internet—apparently in contradiction of the internet’s original architecture.

Some folks invented the Internet for some set of purposes. They gave it a name, pointed to some prototypical examples—sharing scientific papers and engaging in email about them—shaping the way the early adopters domesticated it.

But over time, the Internet escaped from its creators’ intentions. It became a way to communicate person-to-person via email and many-to-many via Usenet. The web came along and the prototypical example became home pages. Social networking came along and the prototype became Facebook.

Domain Stories | Citizen Ex

The fascinating tales behind Top Level Domains as part of James and Nat’s Citizen Ex project. So far there’s .scot, .cymru, and .ly, with more to come.

adactio.com on Huffduffer

I recorded audio versions of some of my favourite blog posts.

Having a miniature computer on my wrist feels incredibly disruptive.

Having a miniature computer on my wrist feels incredibly disruptive.

I did it again—I totally ordered another http://spaceprob.es T-shirt. #rosetta

https://twitter.com/arielwaldman/status/617481075569246208

Saturday, July 4th, 2015

Bagels and iced flat whites.

Bagels and iced flat whites.

Jeremy Keith wrote 100 words for 100 days - Colin Devroe

I’m quite touched by this—I had no idea anyone was paying that much attention to my 100 words project.

Friday, July 3rd, 2015

Tamatoes and peaches with burrata and basil.

Tamatoes and peaches with burrata and basil.

Courgette pasta with pesto.

Courgette pasta with pesto.

Finding out from the latest @BIS_spaceflight magazine that there is a server in space.

http://space.skyrocket.de/doc_sdat/uss-langley.htm

Serendipitously bumped into @ScottBoms getting coffee—a lovely surprise!

Contextual Styling: UI Components, Nesting, and Implementation Detail by Harry Roberts

Smart thinking from Harry here on a common issue when it comes to naming and styling. As he points out, the solution is not technical, but lies in how you form your mental model:

The design issue here is solved by subtly inverting the problem.

100 × 100

For 100 days I wrote and published a blog post that was 100 words long. This was all part of the 100 Days project running at Clearleft. It was by turns fun, annoying, rewarding, and tedious.

It feels nice to have 10,000 words written by the end of it even if many of those words were written in haste, without much originality and often without much enthusiasm. There were many evenings when I was already quite tired and then remembered that I had to bash out 100 words. On those occasions, it really felt like a chore, but then, that’s the whole point of the exercise—that you do it every day regardless of how motivated or not you feel on that day.

I missed the daily deadline once. I could make the excuse that it was a really late night of carousing, but I knew in advance that I was going to be out so I could’ve written my 100 words ahead of time—I didn’t.

My exercise of choice wasn’t too arduous. Some of the other Clearlefties picked far more ambitious tasks. Alas, many of them didn’t make it to the finish line, probably because they set their own bar so high. I knew that I wanted to do something that involved writing, and I picked the 100 words constraint simply because it sounded cute.

Lots of people reading my posts thought that 100 words was the upper limit in the same way that 140 characters is the upper limit on Twitter. But for me, the whole point of the exercise was that each post needed to be 100 words exactly. Now I kind of want to write a Twitter client that only lets you post tweets that are exactly 140 characters.

Writing a post that needed to be an exact number of words long was where the challenge lay, but it was also where the reward was found. It was frustrating to have to excise words or even whole sentences just to make the word count fit, but it was also very satisfying when the final post felt like a fully-formed thing.

I realised a few weeks into the project that the piece of software I was writing in (and relying on for an accurate word count) was counting hyphenated phrases as one word. So the phrase “dog-eat-dog world” was counted as two words, not four. I worried that maybe I had already published some posts that were over 100 words long. Later on, I tried to avoid hyphenating, or else I’d add in the hyphens after I had hit the 100 word point. In any case, there may be some discrepancy in the word count between the earlier posts and the later ones.

That’s the thing about an exercise that involves writing exactly 100 words; it leads to existential questions like “what is a word anyway?”

Some of the posts made heavy use of hyperlinks. I wondered whether this was cheating. But then I decided that, given the medium I was publishing on, it would be weird not to have any hyperlinks. And the pieces still stand on their own if you don’t follow any of the links.

Most of the posts used observations from that day for their subject matter—diary-like slices of life. But occasionally I’d put down some wider thought—like days 15, 73, 81, or 98. Still, I suspect it’s the slice-of-life daily updates that will be most interesting to read back on in years to come.

Thursday, July 2nd, 2015

tota11y – an a11y visualization toolkit

A handy little bookmarklet for doing some quick accessibility checks.

Report: Responsive Day Out 3 - JH

This is a lovely report not just on the most recent Responsive Day Out, but on all three years:

The final outing delivered a diverse range of topics to reveal the state of responsive web design in 2015 and complete a hat-trick of superb conferences.

Black Hack Down is the same story as Red Dawn, just told from the perspective of the invading force.

Using analogue tools to figure out CSS.

Using analogue tools to figure out CSS.

Baseline

Jake gave a great talk at Responsive Day Out 3 all about nuanced progressive enhancement, with a look at service workers in particular (a technology designed with progressive enhancement at its heart).

To illustrate the performance gains, Jake used his SVGOMG site as an example—a really terrific resource for optimising SVGs.

SVGOMG requires JavaScript for its core functionality (optimising an SVG file). That was a deliberate choice. Jake could’ve made the barrier-to-entry as low as any browser that supports input type="file" but he decided that for this audience (developers) it was a safe assumption that JavaScript would be available.

Jake talked about this in an interview with Paul about the site:

I’m a strong believer in progressive enhancement, but also that each phase of the enhancement needs a user.

I agree completely with this approach. It makes sense to have a valid reason for adding any enhancement. But there’s something about this particular example that wasn’t sitting right with me. It took me a while to figure it out, but I now realise what it is.

Jake is talking about making it work on the server as an enhancement. But that’s not an enhancement, it’s a fallback.

Thinking in terms of fallbacks is more of a “graceful degradation” approach (i.e. for every “full” feature, thinking of a corresponding fallback). That’s not how I like to think of progressive enhancement. I like to think in terms of a baseline. And that baseline, in my mind, does not require a user to justify its existence. That’s because the baseline isn’t there to cover the use cases we can think of, it’s there to cover the use cases we can’t predict.

That might seem like a minor difference in wording to the graceful degradation approach but I think it’s actually a fundamentally different way of approaching the situation.

When I was on the progressive enhancement panel at Edge Conf, Lyza asked how low the baseline should be. I said “as low as possible.” Some of my fellow panelists took issue with this saying it varies from project to project, and that’s completely true, but I think I should’ve clarified that when I talk about a baseline, I’m not talking about browsers. I don’t think about a baseline in terms of “IE4 and above, Android 2.1 and above, etc.”—I think about a baseline in terms of “the minimum required technology to allow a user to accomplish the core task” (that qualification about core tasks is important—the baseline does not need to cover tasks that are nice-to-have; those can safely require more sophisticated technology).

That “minimum required technology” often turns out to be a combination of a web server, HTTP, and some HTML.

So to take SVGOMG as an example, I would begin with the baseline of “allowing a user to optimise an SVG file”. The minimum required technology is a web server running a programme that does the optimisation, and an HTML document that contains a form element with input type="file". Once that’s in place, then I can start applying Jake’s very sensible approach of thinking about enhancements in terms of specific user benefits. In this case, it’s pretty clear that 99.99% of the users would benefit from not having that round-trip to the server and have the SVG optimisation happen in the browser using JavaScript.

There’s an enhancement provided for the use case that I can imagine. But—and this is the subtle but important distinction—there’s a baseline for all the use cases that I can’t think of. I need to recognise that I won’t be able to predict all the possible use cases, and that’s okay—as long there’s a solid baseline in place, I’ve got an insurance policy for unforeseen circumstances. It’s still not perfect, but it lowers the risk somewhat by reducing the number of assumptions being built in at that baseline level.

Going back to Jake’s chat with Paul, he says:

I thought about making the site work without JS by doing the SVG work on the server, but this would be slow and a maintenance burden.

The maintenance burden is a very valid point. This is something that Stuart talked about a while back:

It is in theory possible to write a web app which does processing on the server and is entirely robust against its client-side scripting being broken or missing, and which does processing on the client so that it works when the server’s unavailable or uncontactable or expensive or slow. But let’s be honest here. That’s not an app. That’s two apps.

Leaving aside the promise of isomorphic/universal/whatever JavaScript, this issue of developer convenience is big issue. When I use the term “developer convenience” to label this problem, I am not belittling it in any way—developer convenience is incredibly important (hence the appeal of so many tools and frameworks that make life easier for developers). I still believe that developer convenience should be lower on the list of priorities than having a rock-solid baseline, but I can totally understand if someone doesn’t share that opinion. It’s a personal decision and if the pain involved in making a more universal baseline is greater than the perceived—and, let’s face it, somewhat abstract—benefit, I can totally understand that.

Anyway, that’s my little brain dump about progressive enhancement and baseline experiences. Something about treating the baseline experience as an enhancement was itching at my brain and now that I’ve managed to scratch it, I can see what was troubling me: thinking about the baseline experience in the same way as thinking about enhancements doesn’t work for me.

Personally, I’m going to strive to keep the baseline as low as possible. I’m also going to strive to apply Jake’s maxim about every enhancement requiring a user.

Wednesday, July 1st, 2015

Thai shrimp noodle salad.

Thai shrimp noodle salad.

Pork skewers.

Pork skewers.

It’s the hottest day of the year so far and I’m going to spend it going to London and back in a train.

This will not end well.