1. I’m not sure I agree that a good designer ensures that the users of a design can figure out how it works (have an effective conceptual model) — rather they should ensure that it’s easy to have a conceptual model which is sufficient for the user to achieve their goal, and that more accurate information is available for tinkerers who want to have a better understanding.

    Case in point: in order to use an electrical appliance, it’s enough to have an intuitive yet inaccurate conceptual model of plug sockets and electricity (“it flows from the hole down the tube to the appliance”). Only in order to build or otherwise tinker with such appliances is it necessary to know that the direction of the electricity changes 50-60 times a second.

    Update: this was actually clarified later in the course

  2. Joschi Kuphal 吉: @BarnabyWalters href attribute in https://github.com/sandeepshetty/authorship-test-cases/blob/master/h-entry_with_rel-author_pointing_to_h-card_with_u-url_equal_to_u-uid_equal_to_self.html …, testing fails atm. Should this be fixed in php-mf2 or the test file?

    @jkphl hm that’s an interesting case — href is technically a url-potentially-surrounded-by-spaces, question is whether or not it’s php-mf2’s responsibility to strip out the spaces in u- properties. I’d say it is, as those spaces are never going to be useful data which we’re throwing away, so opened an issue.

  3. Joschi Kuphal 吉: @BarnabyWalters Implemented the authorship algo today https://github.com/jkphl/micrometa  — What's considered best practice to determine authorship >

    @jkphl great work! There are a few different scenarios, indiewebcamp.com/authorship covers some e.g. follow rel=author and parse for h-card. There are some other heuristics in use like looking for author on h-feed (e.g. my homepage), not yet documented but should certainly be in the spec.

  4. Recurring post-snowden meme: bunch of guys put up a shiny vaporware site claiming to fix everything if you subscribe to their mailing list.

    “Protect your privacy by giving us your email address!”

    How about instead you actually build something post news about the stuff you’re building on the web, where I can browse it over Tor without giving you (or more likely a third party) a bunch of information about myself.

  5. A Confusing Signifier Corrected: Nutrition Information

    The nutrition information given on this packet of delicious Baklawa is a confusing and badly designed signifier. Take the example of someone with Type 1 Diabetes who needs to carb count their meals. They have to look on the back of the box

    and peer at a badly printed label with hideous typography and punctuation

    only to be rewarded with a value of 49.5g per 100g of serving. Turning the box sideways informs us that there’s approximately 350g total.

    Despite the obvious difficulty of accessing the information (especially, say, in low light at a family dinner), there’s a more subtle problem here — that whilst the quantities given are perfectly valid and probably over-precise, the frames of reference and comparison (“per 100g out of a 350g packet”‚ don’t match up in any way to the eater’s mental model of the packet, which looks something like this:

    the entire box is considered as a frame of reference, and each individual baklawa is a single unit.

    In practice, no-one eats an entire box of Baklawa, so the only unit which is meaningful to the eater is the per-Baklawa carbohydrate count, which could be expressed clearly and concisely on the packet

    with a small graphic representing the packet, with one item within highlighted in a colour, and the per-item carb count next to the graphic in the same colour.

    This could be placed on the front or the back, that’s not important — what is important is making it robustly readable in varied conditions, and matching the user’s cognitive model to minimise effort spent decoding the information.

    Because people with diabetes shouldn’t have to do maths as a punishment for enjoying Baklawa.

  6. Rather nice detail on fitbit.com profile page editing view, allowing quick mock-changing of audience. UI like this gives people confidence and safety, provided it is truthful.

    Exposing protocol-relative URLs is an odd choice — I suspect that is accidental, but would be pleasantly surprised if not.

  7. Initial Fitbit Flex vs Nike Fuelband impressions

    The Flex’s long battery life, water resistance and sleep tracking allows it to stay on my wrist pretty much constantly, meaning I never forget to put it on. Their web UI is quite nice, and the syncing process is adequate. It’s stupid that the only get at the data on the device is to sync with an iDevice or upload it to their silo and look at (admittedly rather nice) graphs, but that’s a known bug with these devices (which Aaron Parecki has written at length about.)

    The Fuelband can be quite painful to put on if the catch pinches skin, its display is nice, and the fact that it doubles up as a watch which automatically syncs timezone with my computer is pretty great. Their web UI is fairly horrible (doesn’t work at all on Firefox due to JS errors), complete with Nike product advertising and confusing comparison charts.

    “Nike Fuel” is a singularly useless unit. I’m imagining the reasoning behind it was something like this:

    • Our USP is measuring “all kinds of activities” instead of just steps
    • Calories would express this just fine, but we can’t trademark something which already exists, or copyright numbers, and database rights (which might not even cover this — ?) only exist in Europe
    • Let’s come up with some new unit which is incompatible with our competitors’ products! In order for it to mean anything to anyone, they’ll have to be able to compare their score with other peoples scores, meaning they have to buy Nike products too!

    If this is true, I question Nike’s motives — helping people become more active or using vendor lock-in and social manipulation to sell as many devices as possible.

    Obviously it’s the second one, but Fitbit exhibit no such problems and seem to be doing okay. Everything is relative.

    Both devices are rubbery wrist straps which can make clothing a little bothersome, but presumably that positioning helps them gain more accurate results as opposed to, say, a belt clip.

    I’ve been unable to adequately compare the accuracy of either product. The Fuelband seems to think I’ve done far fewer steps than the Flex, but as I can’t get numbers off the Flex quickly it’s difficult to compare the two. One way would be to actually count how many steps I do one day, and see which device is closer.

    I’m looking forward to continuing to use both devices, hopefully beginning to follow in Aaron’s footsteps (no pun intended) and pull the data in to my own site.

  8. 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