More discussion about the Pointer Events Smell video from @SlexAxton, @davemethvin (jQuery): “It all boils down to ‘Why is Chrome+IE+Firefox not enough for Pointer Events, but Chrome+Firefox enough for Touch Events extensions?'”
Status of Promises in gUM discussion – now gUM is being “moved” to the snappily-named navigator.mediaDevices.getUserMedia and will use Promises, should “legacy” navigator.getUserMedia continue to use callbacks? Yes, in my opinion – there is a lot of stuff already out there.
Brum Tech Scene – Stuart Langridge interviews @SusannahGoh of Birmingham Science City about health, data, and innovation. Having just returned from Fronteers conference in Amsterdam, I confirm Susannah’s assertion that stroopwafel is a biscuit made of superglue.
anonabox : a Tor hardware router to anonymise all net use and bypass censorship, easy to hide/ destroy if the Secret Police/ Mullahs are at your door.
Here’s a spooky little picked riff, a pretty tune (in my opinion) and some melancholic words about yearning and missed opportunities. It could have had loads of harmonies and coutermelodies but I chose to keep it relatively sparse. The guitar solo displeases many, but it best expresses the feeling behind the song.
It’s recorded using Audacity (I found the iPad apps I’d been trying were too cumbersome for editing the tracks after recording, perhaps because I don’t know their intricate UIs well enough).
If you come to me I promise we will
Stay here in the silence, lie very still.
messages sing through the cables and the air:
ceaseless secrets spinning from nowhere to nowhere.
There are too many secrets to share.
If you come to me I promise we’ll go
to the places where the faces are beautiful unknowns -
where the past is expired
so no masks are required.
A place where we can escape from our facts.
There are too many questions to ask.
If you look down I fear you might fall,
or lose your grip on something delicate and small.
You ignite the bright light that was dimmed inside me.
When the blood in your breasts throbs violently
come to me, come with me. Now. Shine to me.
Fun times with Appcache – “If you are using appcache, the best way is to have a separate webpage with the manifest and wrap it in an iframe. The main advantage of this is that it ringfences the cache… Who says enterprise software can’t do HTML5?” asks Matt Machell.
To Picturefill, or not to Picturefill asks Scott Jehl. Should you polyfill responsive images and risk users without JS getting no images at all? He tends to “yes”, I tend to “no” for philosophical reasons. Commercial pressures outweigh those, natch.
Once in a generation, there is a perfect combination of circumstances that leads to the creation of something truly extraordinary. Today is that day – the flawless union of programming, content, beauty and functionality.
This week at the Future of Web Apps conference, the Stella McCartney of geek crochet, Ruth John, gifted me with a hand-made, individually-designed crocheted mankini. A photo of me wearing it is available on my fashion blog What’s Bruce Wearing Today (caution advised).
At the same conference, Syd Lawrence demonstrated his accelerometer-driven app Shake Her Booty which allows you to control J Lo’s bottom (“booty”) by shaking your phone.
Claudia Snell asked “when can we expect the @brucel version?” so Syd mashed up some video he’d made of me dancing in the mankini at the FOWA after-party, and today has released Shake Your Brucie.
Like everyone else on the Web, I’m a musical snob. I’d far rather listen to arty difficult stuff like Can and My Bloody Valentine than Abba. But I’m also a musician so have a love and admiration for great catchy melodies and brilliant production. Here are top ten guilty pleasures – the Krispy Kreme Playlist – of songs that I genuinely love, not through wanky PoMo irony, but because they’re great.
Gita Gutawa – Bukan Permainan
This song obsessed me when I was doing a University lecture tour of Indonesia and heard it in a taxi. The helium voice, perfect production, harmonies and vocal line took residency in my brain within 4.3 nanoseconds of her starting singing. I attracted quite a crowd in a Jakarta shopping mall attempting to sing it to astonished music shop counter staff. They finally handed me – a middle-aged white man – a CD of a girl in a big pink wedding-cake dress who looked about ten years old. They must have thought I was Gary Glitter’s brother.
Wham – Young Guns (Go For It)
Sexist, crass and great.
Sugababes – About You Now
YouTube is full of videos of angsty teenage girls strumming moody acoustic covers of this in their bedrooms, but the mechanical drums and bounciness of the original makes it flawless in every possible way.
Oasis – The Hindu Times
Oasis are, of course, preposterous cockheads who steal their tunes, grunt their meaningless lyrics and walk like incontinent chimps. But this has a great moron riff and splendid changeover from chorus back to verse, thumping drums and a wall of sound. I bet even Blur like this.
Natalie Imbruglia – Torn
Perfect. Some splendid bass guitar wiggling around under Natalie. Lucky bass guitar.
Betty Boo – Doin’ The Do
Sassy girl singer, great bass, great video and great dance music. It was a hard decision whether to include this, or Dee Lite’s Groove is in the Heart, but she won because (a) she’s British and (b) I am genuinely in love with her and want to bear her children.
U2 – Where The Streets Have No Name
Undeniably, Bono’s a nob. Indubitably, U2 are flatulent stadium rock. But this is great and you won’t convince me otherwise with sophistry, even if you’re Lou Reed himself.
ELO (Electric Light Orchestra) – Midnight Blue
A lovely tune, so over-produced that it’s in grave danger of collapsing under its own ludicrousness like an orchid wearing loads of rapper bling and Argos sovereign rings.
Dexys Midnight Runners – Come On Eileen
The warbly vocals. The slow down and speed up again bit. Excellent.
Hanson – MMMBop
Anyone who doesn’t love this has cloth ears and no humour or soul. And that’s proven by science.
Sophie Ellis-Bextor – Murder On The Dance Floor
Oops – a number 11 in a list of 10. But this is too good not to listen to.
HTML never required an <html>, <head> or <body> element (only XHTML validators did). So if you open test 1 in any browser and view source you’ll see those three elements aren’t in the source. But if you inspect the DOM with any inspection tool, you’ll the browser has inserted those elements.
How does the browser know where to close the <head> and open the <body>? Test 2 shows a page that contains a <vomitingotter> element. This isn’t offcially part of HTML yet (hurry up Hixie!). There is no <body> element in the source, but the browser knew to leave the <title> and <meta charset> in the head and add the <vomitingotter> element into the <body> (which is why you can actually see its contents; by default, no text in the <head> makes its way into the visible page.)
Simply, the first element that isn’t known to be part of the <head> makes the browser close the <head> and open the <body>. So if it’s not recognised as metadata content (<base>, <link>, <meta>, <noscript>, <script>, <style>, <template>, <title>) it goes in the body. Any subsequent “head” elements remain in the <body>; they aren’t restored into the head (see the DOM of test 3), even if you explicitly wrap them in <html>, <head> and <body> elements in the original source – see test 4.
This doesn’t investigate the bigger question of why Apple – who invented the viewport meta tag – decided to add it to HTML at all. After all, HTML is about content and the viewport information is about styling, and would therefore be more appropriately be declared in CSS. I don’t know the answer to that, except that Apple knows best about everything.
Don’t use <picture> (most of the time) by Jason Grigsby. TL;DR: if you just want resolution switching (smaller image to non-“retina” devices, big image only to high-dpi screens), just use <img src="lores.jpg" srcset="hires.jpg 2x">
Support the independents “If you use a product that has a free version and a paid version, paying out for that “pro” or commercial license even if perhaps you could get away with not doing so, puts cash into the company, helps to ensure the survival and development of the product” says Rachel Andrew.
EXTRA LULZ: Even Apple didn’t want my iPhone 6 Plus – unusual satire piece from The Verge, spoofing a cryPhone user whose emotional rollercoaster (caused by the new device being slightly bigger than his other one, which is why he bought it) culminates with the hilarious “I spent all this money on something that I thought would make me happy, and instead I felt like trash”. Genius.
Web Components punch list – “Considerations for web component and custom control design: If your control has the stuff below covered, excellent! If not then please implement it before shouting to the world about it being the next big thing.” by Steve Faulkner
Brum Tech Scene – On Monday, Stuart Langridge launched a series of interviews and conversations with interesting people doing interesting things in the Birmingham tech community. First is Simon Jenner, Head of Oxygen Startups and co-founder of Silicon Canal. He videoed me, too; coming soon.
Who is “Joe Developer”? asks @johnfoliot. The background is the “living standards” vs “W3C snapshot” holy war. It’s a good question.
What next for HTML? – now HTML5 is a W3C Proposed Recommendation, how should the language be further developed? Put your questions to editor Robin Berjon for an HTML5 Doctor interview
The URL mess on the competing standards for defining how URLs work, by Larry Masinter
I was lucky enough to visit Berlin very briefly for the Extensible Web Summit. It was organised, it seems, by members of W3C (but was not an officially branded W3C) and hosted by Beuth University, Berlin. Lunch was provided by Google, beers afterwards by Yandex (although I missed those as I’d taken the inexplicable decision to fly back straight after rather than hobnob with the great, the good, and Chaals.) Thanks to all organisations.
This isn’t a record of the day; the event notes were crowd-scribed. It’s my preliminary thoughts about the concept of the “extensible web”.
As far as I can deduce – because the term “extensible web” wasn’t actually defined on the day – it’s about giving/ exposing primitives so developers can extend various parts of the platform. (Read The Extensible Web Manifesto for a longer description and statement of intent.)
In the current world, we wait for something like Appcache to be specified, then implemented and then scoffed at. This can take a long time, and we might not get what we want; Hixie told me “The appcache API is another big mistake. It’s the best example of not understanding the problem before designing a solution … Appcache works great if you want to do what it was designed for, but it turns out most people want to do something different enough that appcache feels horrible to them”.
But while it’s good to explain magic, I feel we need to be careful about using the word “magic” pejoratively. A lot of the success of the Web was that simple HTML tags (<a>, <input>) made magic happen. You write <img src=”vomiting-otter.jpg”> and a vomiting otter appears; you don’t need to worry about how it gets there over the network, its caching, its format, etc. Similar with <input> – you just code a reasonably obvious word in angle brackets and it works.
As Steve Faulkner notes, a lot of the success of accessibility on the Web is/was that simple HTML elements makes accessibility happen.
Service Workers, and the spec that I’ve been closer to, <picture>, are great examples of listening to developers (partnership). Service Worker came out of a meeting between Opera, Mozilla, Google, BBC, Financial Times etc and was specified by Google, Mozilla and Samsung (and many others). <picture> came about because developers demanded it, even when the browser vendors and standards bodies didn’t care.
How can developers make their voices heard? It’s true that browser vendors are OBSESSED with solving developer’s problems. If we don’t, you’ll make native apps, and then browsers disappear, we default on our mortgages, our partners leave us for Apple employees and our hamsters starve. None of us want this to happen. So we try to listen.
Then there is the question of how developers can participate. The bravery barrier to entry for many of the mailing lists is already too high – I periodically get emails from people asking me to propose a feature or ask a question on a list as a proxy because lists are scary places.
W3C has set up a Specification forum where you can ask questions about specs/ propose a feature. Read around it to see if anyone else has a similar proposal, and if appropriate, add comments to that before you set up a new thread. Use Mozilla’s guidelines WebAPI Design Guidelines and please remember that use-cases are much better than a fully-worked out proposed syntax.
I’m enthused about the Extensible Web manifesto and the progress we’ve already made, eg baking popular jQuery-like syntax into browser engines via the Selectors API, getting our hands on the network with Service Worker, and the heady new world of Web Components. We need to ensure that all devs who want to can participate by allowing ease of collaboration, courteous discourse. And it would be perilous to forget that the declarative web reduces the barrier to entry and enhances accessibility.
OS Battle – Porn by the Platform – “11% of Pornhub desktop users arrive using Apple’s Mac OSX while Net Applications reports that only 6.64% of desktop computers currently run OSX.” (No naughty images, but maybe NSFW if your boss is silly.)