Hash: SHA1

    Posting my first note over HTTPS, now at indiewebcamp.com/https level two with a self-signed certificate.

    I’ve also enabled HTTPS for Shrewdness (currently optional, will be required once I have a StartSSL cert) — if you want to add an exception, the signature is:

    Version: GnuPG/MacGPG2 v2.0.22 (Darwin)
    Comment: GPGTools - http://gpgtools.org
    -----END PGP SIGNATURE-----
  2. Attempting to reproduce a weird, That Browser With Flash issue by opening ALL THE TABS:

    It’s like a little mountain range!

    Edit: I made so many tabs they go off the screen, and That Browser With Flash just ignores it, stubbornly insisting that there are only as many tabs as can fit on the screen. Yet another example of Firefox having Superior Prowess (TBWF is seriously fast though)

  3. Musicians+bands: please put a paypal donate button or similar on your site so that when it’s easier for people to torrent your music rather than buying copies (physically or digitally) we can still give you money. We want to give you money!

  4. @kartik_prabhu amazing work overall! This is one of my favourite parts though — the fact that fragmention comments fall back gracefully if they’re not supported on either side, and yet all the data required to present them is preserved, so future updates can retro-actively put old marginalia in the right place!

    I wonder how tricky it would be to implement this on the comment publisher side too — detecting fragmention URLs and tailoring the reply context content…

  5. Working on I’m coming to realise that there are at least two usefully distinct levels of semantic data on the web:

    There’s the basic “object” level at which microformats act, defining simple, basic-level objects like posts and people with properties like name, phone and content.

    Then there’s the level at which HTML works, marking up blocks of text and creating a tree of elements, each of which gives context to the text it contains, for example blockquote elements for containing content from another source, code elements for “computer code” (might be some space to make that more useful — who’s up for adding the type attribute to code?) and so on.

    So what? So these are the two sufficiently standardised levels at which content on the web can be made portable, and mutually understood by many parties. Any additional undefined semantics introduced by author-defined classnames and the meaning communicated by their default styling is unportable, and will be lost when that content is viewed elsewhere (for example shown in a reader or as a cross-site comment.

    So how can you tell if your content is sufficiently portable? For the object-level (microformats) a validator like indiewebify.me can be used. Strangely, there aren’t as many tools for the markup level, but one surefire way to check is to disabled CSS in your browser. Is your content still understandable using only the default styles? If so it’s probably pretty portable.

  6. Bret Victor: How can you call the web a publishing medium when your bookshelf can just vanish? URLs and HTTP are a disaster. Doesn't have to be this way.

    @worrydream “bookshelf” is completely the wrong mental model. A “list of links” is like a list of postal addresses of places (hence web “address”) as a physical analogy, or the contents of their authors brains as a human analogy. Complaining about their contents changing/disappearing is as complaining that space/time/humans are “a disaster” (which admittedly may broadly be true).

    “your bookshelf” is whatever personal archives you make of your favourite things (analogies: photos, notes, physical books), and therefore the solution is better personal archival tools. I’ve made a start — my website automatically takes an archive of every page I link to and stores it as HTML+HTTP headers in the filesystem, which has proven to be a quite robust format.

    Of course if you actually have a practical idea about how to improve on the infrastructure of the web, speak up and/or build it :)

    Edit: reflecting on this, “completely the wrong mental model” is incorrect, and better expressed as “a mental model which is inconsistent with reality”. There are no “wrong” mental models, only a variety of co-existing metaphors with varying levels and areas of consistency with reality.

  7. Spotted on google.com: people searches return rich contact data in autosuggest box:

    Predictably, it only works for people with Google+ data.

    Turns out that selecting that option and pressing return doesn’t navigate to aaronpareki.com, or even a Google+ page, but adds a weird state indicator and a “this option does not exist” warning:

    (just in case anyone’s wondering, the reason I was searching was to attempt to reproduce this)

  8. Learning about umw.domains, a project to give UMW students+faculty their own personal domains. It’s a great project!

    My own has been a place of experimentation and self-expression for years now and I’ve learnt a lot, and connected with many people through it. Anything which makes personal domains more accessible is a move in the right direction.

  9. bruce lawson: .. correction; Opera 21 shows domain + path by default, hides protocol and query strings. (On feedback, we added setting to show full URL).

    @brucel that sounds like a good balance between informing the user and visual noise — should also help discourage the use of query string parameters in permalink design too, hopefully.

  10. Thoughts about whilst reading Lakoff’s Women, Fire and Dangerous Things — mf vocabularies e.g. h-card, h-entry, h-event are basic-level categories, the level at which:

    • it is easiest for humans to learn and reason about,
    • we have the shortest, most common names for them,
    • defined by how we interact with them

    E.g. h-entry ≈ “post”

    • short name
    • extremely common on the web
    • well-defined interaction patterns e.g. writing, posting, replying, reading, browsing through a feed, searching for/within, liking, reposting, quoting etc.

    Rather than RDF or schema.org which seek to create pure, objectivist, hierarchies of categories — our brains simply don’t work like that.

  11. Apparently we, as an industry, are over the whole ninja/rockstar thing and have moved onto “mountaineer” weworkremotely.com/jobs/472

    “Why yes, my company are interested in hiring PHP-based sailors and javascript treeclimbers. Bring your ropes to the interview, you’re going to need them.”

  12. At any given time my web archive HTTPS to HTTP domain ratio is almost exactly 1:10. Right now it’s at 410 HTTP domains and 41 HTTPS domains. Note that this is just the count of the domains I link to (and which link to me), unweighted by the number of actual physical links.

  13. The medium with which you choose to express a message shapes that message — be careful it doesn’t contradict it.

    Case in point: A Rational Web Platform (via @brucel)

    • hosted on google silo
    • long complex ugly URL
    • presentation tied to paged dead-tree media with ugly results: text breaks across artificial “pages”
    • no author URL, just corporate silo email, and email != web
    • javascript required
    • no microformats2 or even semantic HTML article markup — even js-generated markup is predictably disgusting with vast quantities of nested divs and spans with inline styles
    • Redirecting to different (non-canonical? difficult to tell due to ugliness) URL due to large amounts of traffic, likely indicative of infrastructural problems or incorrect medium
    • Broken on mobile devices:
      the body text is tiny and does not wrap, the high-traffic warning is truncated and unreadable

    Everything about this is anti-web, practically screaming “ignore me”.


    • Host on personal site or project commons with CC license
    • Short, consistent, readable URI
    • Static semantic HTML with microformats2 h-entry for easy citations, archival and replying, no JS required — this would also solve infrastructural problems as HTML is pretty easy to serve and much faster than JS-rendered DOM-heavy “documents”applications
    • Author attributed by name+personal (non-silo) URL, with profile photo/logo for quick human association