1. I was going to spend this evening working on browser extension, but I think it would be better spent providing a /data export utility for fellow ex users.

    From my initial researches, it looks like /u/username.json is the best bet, as it gives a JSON array of all posts written by username, along with like and comment data. It accepts a max_time=timestamp query param, and a _ query param, the function of which I am not sure of.

    To iterate through all the pages of posts from a certain user, start with their profile URL w/ .json tacked on the end, fetch all the items, get the datetime of the last item, convert that to a timestamp, fetch the same URL with ?max_time=timestamp, repeat until an empty array is returned.

  2. Wow, exporting my DB of tunes (for migration into the shiny new system) as almost results in valid !

    -
      TUNE_ID: 1
      T: Bourree De Brand
      M: 2/4
      L: 1/8
      C: Trad. French
      N: Bourree from France
      K: G
      ABC: |-
        d>B GB|c3g|f>d ef|ga bg|d>B GB|c3g|f>d ef|g4:|
        |:c2e2|g=fd2|e=fe2|ded2|cB AG|c2e2|g=fd2|e=f/2e/2 dB|c4:|
      words: 
      genre: folk
    
  3. I love that now has shiny namespacing and a thriving code sharing community, but I think the heavily hierarchical namespacing practises used by some of the community (e.g. symfony components) are unhealthy.

    They are difficult to memorise, relying on (often slow) IDE autocomplete, and encourage a use statement for each class. That’s pretty much a scoped equivalent of from x import * in python — not a good practise! It’s still namespace pollution, it just takes longer to write.

    I am trying to use a more python–like, package-centred approach with much fewer subnamespaces. The outcome of this should be that you use the package name:

    use BarnabyWalters
osse;

    …and then using all the classes/subnamespaces from that root, e.g: $t = Posse\Helpers::convertHtmlToTwitterFormat($s);

  4. Question: What Status code should I use for “You haven’t provided enough/correct information to carry out that method”? Currently I’m thinking 422 Unprocessable Entity.

    Context: POST request to a list resource for the creation of a new sub-resource.

  5. Learning new trompette patterns with Gregory Jolivet, and decided to try to evolve a micro syntax for representing them in notes, so I can add some SVG or Audio-API magic afterwards.

    1 4 1 3 1 4 1 3 1234 1234 1234 1 3

    And a variation: 12 4 1 3 12 4 1 3 1234 1234 1234 1

  6. Rolled out usage of the menu element on . I’m looking forward to more browser support for HTML context menus, that will really open up the possibilities for cross-browser extensions

  7. Just pushed a load of changes to auto-tagging which should make structured, tag–based querying of notes way easier.

    This note should be tagged with mention, reply, quote and location as it contains all of that data.

    Some Test Quote with a mention in

  8. Just pushed a plugin which auto–populates the <ins> and <del> elements with their little–known datetime and cite attributes. Hopefully, coupled with my article update histories and a bit of , this’ll allow for some native-HTML version control type stuff.

  9. Doing a mass find-and-replace operation on the Perch Blog app so I can have more than one running at the same time. If you want to do something similar, here are the strings you need to replace:

    • blogyourName
    • BlogYourName
    • perch_blogyourPrefix_yourName
    • PerchBlogYourName

    And then obviously rename the .class.php files and activate as you would any other app.

  10. I finished off the Nominatim geocoding. Tack .json onto the end of this URL and have a look in the tags array for goodies. h-adr and h-geo coming soon.

  11. Ben Ward: @BarnabyWalters The one strange thing I see in your replies to @drewm is the lack of threading in client UI. Missing the in_reply_to header?

    @BenWard fixed, thanks! I blame twitter for using /status/ and /statuses/ interchangeably in tweet URLs and confusing me :) This tweet should have in_reply_to set correctly.