Code Standards | Isobar
A very detailed set of coding standards and guidelines.
5th | 10th | 15th | 20th | 25th | 30th | |||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
12am | ||||||||||||||||||||||||||||||
4am | ||||||||||||||||||||||||||||||
8am | ||||||||||||||||||||||||||||||
12pm | ||||||||||||||||||||||||||||||
4pm | ||||||||||||||||||||||||||||||
8pm |
A very detailed set of coding standards and guidelines.
Charles Stross peers into his dilithium crystal ball and tells tales of the future as decided by Apple.
A beautiful site for long-form content, also available in dead tree format.
Blaine outlines the vision for Webfinger.
An interesting proposal for a Huffduffer-style mad-libs ad-posting form for Craigslist.
I'll be delivering half of A Day Apart in Washington DC in September — the HTML5 half. So... there's that.
The search for Dyson spheres.
Key Lime Pie by Camper Van Beethoven—one of my all-time favourite albums—features the song June wherein David Lowery asks:
Are you weary of the lengthening days?
Do you secretly wish for November’s rain?
Not in the least, David, not in the least. In fact, I’m really looking forward to June, both for its lengthening days and its avalanche of geeky goodness. To whit:
Web Directions @media comes to London from June 8th to 11th. It is pretty much guaranteed to be awesome.
I’ll be fanning the flames once again for the Hot Topics panel. I’ll also be running a workshop on getting Semantic with microformats and HTML5. I love the fact that there are two workshops on HTML5 and yet there’s absolutely no overlap between the two—I’ll leave you to decide whether that’s a testament to the breadth of the HTML5 spec or an indication of just how much is encompassed by the word ‘HTML5’.
The price for the conference goes up on May 15th so you’d better get in there and grab a ticket now if you haven’t already. And just between you and me, if you use the promo code KEITH then you can get a whole hundred squid off the asking price.
If you’re already in London for @media Web Directions, consider sticking around that weekend for the BarCamp. Nothing has been announced other than the dates but watch this space.
A week later, on June 19th, is when the geekery really hits the fan: Science Hack Day at The Guardian offices in London! If you haven’t already done so, add your name to the list of potential attendees. Trust me: you won’t want to miss this.
Needless to say, I’ll be updating both here and on the wiki as the event comes together. And it is coming together very nicely: we have a great venue, we have plenty of bandwidth, and we have lots of interested geeks, hackers and programmers. The only thing I need to make sure I can get covered is the hackfuel: food and drink.
The total cost for food and drink will probably be somewhere between £2,000 and £3,000 but I’m hoping to spread that cost amongst a bunch of sponsors. I think £500 should be a nice sweet spot for sponsorship.
If you work for someone—or know of someone—that wants to support a fine event such as Science Hack Day and would consider £500 a small price to pay for the resulting whuffie, please get in touch and let me know.
Why are you wearing that stupid man suit?
An excellent way to do geolocation even in browser that don't support it natively.
Here is the star to sail your ship by.
A shedload of data from The World Bank. Get parsing.
This is my kind of event. Where does your data go when you die?
A good example of the correct way to approach new interactive elements in HTML5 (the details element in this case): test for native support and then emulate with JavaScript if required.
Stephen Hawking has been quoted recently urging caution about the prospect of first contact with an extra-terrestrial civilisation:
We only have to look at ourselves to see how intelligent life might develop into something we wouldn’t want to meet.
This isn’t the first time that such reservations have been raised.
Both of the Voyager spacecraft are carrying golden records; snapshots and time capsules of our planet’s culture—a project with such a long timeline that it makes the clock of the Long Now look like a disposable gadget in comparison. As well as carrying instructions on how to decode the record—ingeniously using the fundamental transition of a hydrogen atom as the base unit of time—the records also have a map inscribed upon them. This is the same illustration that was included with Pioneers 10 and 11.
The map consists of fourteen lines converging on a central point. The length and angle of each line corresponds to the position of a pulsar relative to Earth. Those fourteen beacons point to one position in the galaxy: our home planet.
The responsibility for deciding the contents of the golden record fell to Carl Sagan. I highly recommend listening to this account by Sagan’s widow Ann Druyan of how the golden record may just contain the encoded patterns of love itself:
Many people at the time were upset that the pulsar map was included on the Voyager record, for the same reasons that Hawking is giving today: we are effectively hanging a sign around our neck that reads free food here.
I was talking about this with Tantek at South by Southwest this year and he had to admit that, with his Schneier-esque security hat on, those people have a point. What you really want to do, he said, is point to a drop-off box instead: a nearby uninhabited star-system that we can monitor from Earth. That way, if we ascertain that the alien civilisation is friendly, we can go and greet them but if they are hostile, we can simply lay low.
In fact, in Sagan’s book Contact—where the shoe is on the other foot and we are the alien civilisation responding to a message—this is exactly what happens. The origin point we are given is the Vega system, which turns out not to be the home of any alien civilisation but merely a way station: a routing point in the galactic network.
There may well be a galactic RFC for First Contact, which the Pioneer and Voyager probes have flagrantly disregarded. What is an alien civilisation to make of a message that effectively states:
Dear Friend,
Although you may be apprehensive as we have not met before, I come to you with great hope. I am a probe from an abundant planet that has recently acquired spacefaring technology. Please contact me at your earliest convenience so that we may transfer knowledge.
I await your response,
Third planet from an insignificant star
It’s clearly a honeypot designed to lure in the gullible of the galaxy.
Carl Sagan, my hero, looks like nothing more than a galactic 419 scammer.
A beautiful reminder.
This little quiz is surprisingly addictive: match the inane comment to the YouTube video.
An examination of websites behaving conversationally, including Huffduffer.
Slides from a presentation on machine tags by Aaron Straup Cope. I highly recommend downloading the PDF for the bounty of links listed under "Reading List."
An excellently written zero-edit change proposal from Edward O'Connor and others, refuting issues raised by Shelley Powers (I offered to help with this change proposal but I never followed through).
A nice explanation of the ruby element in HTML5: very handy for marking up phonetic pronunciation.
A first bash at describing how to write (X)HTML5 documents that can be parsed as XML as well as HTML.
While I was up in London, I arranged to pop by The Guardian offices at 90 York Way, the venue for Science Hack Day on June 19th and 20th.
Now I’m really excited about the event. The space is absolutely fantastic! There’s going to be loads of room and plenty of bandwidth, all in a very nifty building.
Location: sorted. Connectivity: sorted. Dates: sorted. Now the big issue is sorting out sponsorship: it takes money to feed all the geeks with hackfuel. If you have any ideas about potential sponsors, let me know.
And, if you haven’t already, add you name on the wiki.
I went up to London today to have a chat about HTML5 with some of the developers in the trenches of the BBC World Service.
It was only when I was on the train from Brighton that I realised I had left my reading material at home. Never mind
, I thought, I’ve got my my Huffduffer feed to listen to.
First, I listened to a talk from Robin Dunbar at The RSA entitled How Many Friends Does One Person Need?
Then I listened to Jared interviewing Christian Crumlish and Erin Malone on Designing Social Interfaces.
The thematic segue was seamless.
A framework for creating old-school arcade games in the browser, using HTML5.
A cute hardware hack: send a tweet with the word TwitweeClock, the hashtag #TwitweeClock, or the username @TwitweeClock, and this cuckoo clock will, well, cuckoo.
An exercise in collaboration and perspective: let another designer touch your website while you touch theirs.
Quite a stunning proof of concept that uses video and canvas.
A clear explanation of device-width from PPK.
A (webkit-only) CSS3/HTML5 take on the Doctor Who opening titles.
Attention London: Science Hack Day is a go; I repeat: Science Hack Day is a go.
The inaugural Science Hack Day will take place at The Guardian’s London office on June 19th and 20th, 2010.
Sound good? If you can make the date, add your name to the list of who’s coming.
My next step will be drumming up sponsorship, but I’ve already had some encouraging feedback from some very cool science-related institutions. If you have connections with any organisations that might be interested in sponsoring this event, get in touch.
In the meantime, if you can think of any nifty science hacks, please share your ideas—and if you know of any useful APIs or datasets, please add those too.
Watch this space—and the wiki—for more updates as they happen. Let’s make this awesome.
Microsoft, Mozilla and Opera have formally submitted the WOFF font format to the W3C.
Collecting data on theory that all comics can use the punchline “Christ, what an asshole” without compromising their comedic value.
I gave a presentation last week as part of the HTML5 Online Conference. There seems to be more and more of these virtual
events in the style of Aral’s Head conference. This one involved desktop sharing and audio. Apart from some glitches with the Campfire backchannel, it all went pretty smoothly. Remy and I did our talks from the same physical location (my place), which made it a more enjoyable, social experience.
This weekend, I was supposed to be in Lisbon to give a presentation on Huffduffer at the SHiFT conference. Well, old man Eyjafjallajoekul put a stop to that. Luckily, I hadn’t yet set out for the airport when the volcanic ash disruption set in. For a few hours, I harboured some kind of hope that I could get on a later flight but as the news updates came in, it was clear that the airspace over the UK wasn’t going to be closed for days.
So I gave another virtual presentation. This time, I used iChat Theater, a feature of iChat whose existence I previously had no knowledge of. It went pretty smoothly, once I took all the transitions and videos out of my slides. The link-up worked okay right up until the end—I got cut off just as my presentation finished and I was about to take a question or two from the audience.
Technology saved the day but it wasn’t quite the same as being there. I was really looking forward to being in Lisbon, especially since Yaili very kindly sent me detailed recommendations of things to do there. I may just have to go there in a non-conference capacity as a tourist.
That’s assuming the Icelandic volcano gods finish their little tantrum first.
Coping mechanisms for grammar pedants. I can see myself using this alot.
A beautiful call to arms against engineerism in design. Software cries out for love.
A public service announcement about the end bit of the banana.
Hixie needs your help. Document examples of augmented video (or audio) such as captioned or subtitled media.
When memes collide: chat roulette meets cats.
The companion website to Kevin Hoffman's IA Summit talk, this is a hugely valuable resource for an often-overlooked part of the design process: the kick-off meeting.
A collection of the worst petitions sent to the prime minister.
Bruce gives a good explanation of the difference between section and article in HTML5.
This web conference in July in St. Petersburg, Florida looks great — the line-up is excellent and tickets cost just $99. Bargain!
Purely for my own benefit because I keep needing this URL, here are the current outstanding issues registered at the W3C for HTML5.
A Day Apart in Seattle was more like a seminar than a workshop. Rather than being an intimate gathering in a small room, it was more lecture-like in an amphitheatre setting. But that didn’t stop me interacting with the attendees. There were plenty of great questions throughout, and I also had everyone complete an exercise.
I reprised the exercise I gave at dConstruct back in September. It isn’t a test of the audience. Rather, it’s a test of how well the new structural elements in HTML5 are described:
I then asked the attendees to match up the definitions with the element whose name sounded like the best match. To be clear: this wasn’t a test of knowledge. I was testing the spec.
The results from September’s test were quite revealing. There was some confusion between footer
and details
. Since then, the definitions in the spec have been updated and I’m happy to report that the Seattle audience—a much larger sampling—were almost unanimous in correctly matching element names to their definitions.
With one glaring exception.
The section
and article
elements were, once again, confused. This happened back in September at dConstruct. It happened again at A Day Apart in Seattle. I didn’t get exact numbers, but from the very web-savvy audience of about two hundred people, I would say there was a 50/50 split in matching up the definitions of section
and article
. About 50% of the attendees thought that the definition of section
applied to article
and visa-versa.
Historically, article
and section
were more distinct. The article
element used to have optional cite
and pubdate
attributes. Now their content models are identical (apart from the fact that the article
element can take an optional time
element with a pubdate
attribute).
The only thing that distinguishes the definition of article
from the definition of section
is the presence of the phrase self-contained
. A section
groups together thematically-related content. An article
groups together self-contained thematically-related content. That distinction is too fine to warrant a separate element, in my opinion.
The existence of two elements that are practically semantically identical isn’t a harmless addition to HTML5. It’s causing a great deal of confusion. I’ve spoken to authors who incorrectly assumed that articles had to be within sections or that sections could only be within articles. The truth is that you can have sections within articles, articles within sections, sections within sections, articles within articles, or any other combination you can think of.
This isn’t helpful. Authors are confused. Yet, according to the HTML Design Principle of Priority of Constituencies:
In case of conflict, consider users over authors over implementors over specifiers over theoretical purity.
I don’t understand why Hixie is still clinging to the addition of the article
element when he has repeatedly stated that he wants to keep the number of new elements to a minimum. Here’s the perfect opportunity: merge section
and article
into one element. Personally, I would keep section
, with its more generic-sounding name.
We’ve been here before. The abbr
and acronym
elements were responsible for years of confusion amongst authors unsure of which one to use. The use-cases and the definitions of both elements were just too similar. That particular problem has been solved in HTML5: the acronym
element is now obsolete. The abbr
element works well enough for both use cases.
Let’s not repeat the mistake of abbr
and acronym
with article
and section
.
I wonder how much I need to wind up Paul at work in order to push him into the red...
Every instantiation of An Event Apart is a joy to attend, but it was particularly enjoyable to be back in Seattle. It’s where my brother-in-law Jeb lives so I had the opportunity to hang out with him, his wife Anne and their oh-so-cute dog, Mesa—owning a cute dog seems to be mandatory in the Seattle suburb of Green Lake.
After a couple of days with Jeb and co., I upped sticks to the centre of town; the Edgewater Hotel, erstwhile host to The Beatles and Led Zeppelin—the origin of the infamous Shark episode, which currently enjoys a Snopes status of sort of
.
I digress. But what a digression.
Anyway, I was ensconced in the Lynchian surroundings of the Edgwater for its proximity to the Bell Harbor conference centre, location of An Event Apart and, for the first time ever, A Day Apart.
The conference was superb. An Event Apart is always superb but the bar was raised even higher this time—intimidatingly high if, like me, you’re supposed to speak after Eric, Dan, Luke and a constellation of other web stars have already blown everyone’s minds. If you were there, you know what I mean. If you weren’t there, but wish you were, you can redress your loss by attending An Event Apart at another location—Boston is up next.
The workshop day was also a blast. Dan handled CSS3 in the afternoon and I covered HTML5 in the morning. It was thoroughly enjoyable, although I feel bad about rushing it towards the end. People were asking such excellent questions that I neglected to watch the clock as well as I should have. The three hours flew by pretty fast.
Fortunately I’ll have more time to cover everything in more detail at my next HTML5 workshop. Come along to HTML5 for Web Designers in Brighton on April 23rd for a full day of markup spelunking. I’ll see you there if you fancy learning about the design principles of HTML5, how to turbo-boost your forms, what the new structural elements mean for your document outlines, and what you can do with audio and video. Phew!
James Sturm outlines his plan to give up the internet, which sounds like a good decision for him. Comments are open via snail mail.
A lovely bit of CSS3.
A very handy GUI for figuring out the somewhat complicated syntax of border-image in CSS3.
An excellent piece by Bruce on why the details element needs to be in HTML5.
Mozilla aims to plug the :visited/getComputedStyle bug/feature.