2014

    Looking forward to CIO luncheon today hosted by Genesys Works Twin Cities

    Forgot my iPad at home today. Feel like I forgot to put on pants before I came to work.

    Crazy good day today connecting the dots on our platform evolution. Love when the pieces start to click together and it just makes sense. #TeamSPS

    The Oatmeal did a great two-piece part on What it’s like to own a Tesla Model-S (and part 2).

    ☕️ Delightful afternoon espresso.

    Mothers Day dinner prep starting. 4 lbs of yum. Big Green Egg starting.

    Big Green Egg.

    See ya in a couple hours. Prime rib on Big Green Egg.

    Spent most of evening after kids were in bed doing digital weeding.

    keybase.io

    I have my profile setup on Keybase.io. Keybase is an interesting product using public key cryptography in a decentralized way to allow identities to be known without having to meet people in person, but instead through public proof.

    Keybase and MediaWiki

    I’m really intrigued by what Keybase.io is doing with identity. The ability to cryptographically prove your identity on the web without a centralized party like Twitter or Facebook owning the approval process is a needed function. I setup my profile and you can now prove on your own that I am who I say I am on Twitter, Github and five of my domains.

    I’m trying to figure out how this could be extended to MediaWiki. I would love to be able to prove that my user account is me at:

    This seems really hard. The method used on Github is to public a Gist, and you could certainly have a wiki user publish something on their user page, but that can also be edited by anybody.

    But if we could do this, it would be a great way to allow Wikipedia editors to claim ownership with proof of their identities (if they wish) and would benefit thousands of self-hosted MediaWiki websites.

    I think something more like the Twitter proof could work. How?

    1. Have the user in question edit their User page. The contents of the edit don’t matter, the Summary field is what will be looked at. (Limited to 255 characters)
    2. MediaWiki websites have a permanent revision history attached to each page. (This would be like a Tweet, see my change on May 11 2014)
    3. This information is accessible via the MediaWiki API, and there is a revid attached to each revision.
    4. This revision ID can be used to pull the proof forward for keybase.io.

    Here are the last 5 revisions for my User page on WikiApiary (API call).

    {
      "query": {
        "pages": {
          "43": {
            "ns": 2,
            "pageid": 43,
            "revisions": [
              {
                "comment": "This is my message for keybase.io to prove I am who I am!",
                "parentid": 884728,
                "revid": 904406,
                "timestamp": "2014-05-11T13:10:17Z",
                "user": "Thingles"
              },
              {
                "comment": "remove gittip button",
                "parentid": 569866,
                "revid": 884728,
                "timestamp": "2014-04-30T02:55:26Z",
                "user": "Thingles"
              },
              {
                "comment": "",
                "parentid": 569864,
                "revid": 569866,
                "timestamp": "2014-02-21T01:56:28Z",
                "user": "Thingles"
              },
              {
                "comment": "added badge",
                "parentid": 552628,
                "revid": 569864,
                "timestamp": "2014-02-21T01:54:59Z",
                "user": "Thingles"
              },
              {
                "comment": "add babel box (needs templates and styles)",
                "parentid": 528928,
                "revid": 552628,
                "timestamp": "2014-02-15T19:36:51Z",
                "user": "Thingles"
              }
            ],
            "title": "User:Thingles"
          }
        }
      },
      "query-continue": {
        "revisions": {
          "rvcontinue": 528928
        }
      }
    }
    

    Now that we have the revid we can find the information for this revision to continue to claim proof (API call). The key is that the title of the page “User:Thingles” matches with the user that made the change “Thingles”.

    {
      "query": {
        "pages": {
          "43": {
            "ns": 2,
            "pageid": 43,
            "revisions": [
              {
                "comment": "This is my message for keybase.io to prove I am who I am!",
                "parentid": 884728,
                "revid": 904406,
                "timestamp": "2014-05-11T13:10:17Z",
                "user": "Thingles"
              }
            ],
            "title": "User:Thingles"
          }
        }
      },
      "query-continue": {
        "revisions": {
          "rvcontinue": 884728
        }
      }
    }
    

    And now I’ve proven my identity. The only trick is that the comment must contain all the data, and that should be easy since keybase already does something similar for Twitter.

    And here is another example of me making a proven comment on my user page on Wikipedia (en) (API call).

    {
      "query": {
        "pages": {
          "14604697": {
            "ns": 2,
            "pageid": 14604697,
            "revisions": [
              {
                "comment": "Here is my message for Keybase from Wikipedia.",
                "parentid": 551074105,
                "revid": 608054849,
                "timestamp": "2014-05-11T13:56:25Z",
                "user": "Thingles"
              }
            ],
            "title": "User:Thingles"
          }
        }
      },
      "query-continue": {
        "revisions": {
          "rvcontinue": 551074105
        }
      }
    }
    

    So impressed with Anders Noren Hemingway theme. Clean, fast, elegant. Making me like WordPress again.

    Weird request: does anyone know where in Minneapolis you can get Pretzel Flipz? No knock offs. The real thing.

    The Worst "Mark all as read" Button Ever

    If you login to Twitter and go to your Direct Messages you press a button to mark all as read, and then you have to confirm. I don’t think I’ve ever seen a “Mark all as read” button that looks so foreboding.

    dont dare mark all asread

    That looks like a “Watch out what you push because everything will be deleted” red button that you need to be very, very careful with. Terrible for this function.

    Profile Photo (May 2014)

    I figured it was time to move to a new profile photo on Twitter, Facebook and LinkedIn. Heck, even Google Plus. I try to use the same one everywhere to be consistent. Putting this blog post here so I can easily find it to use in the future.


    Email from Mazie

    I’m starting to introduce Mazie to email. I also showed her how to use emoji characters. One of her first emails to me celebrating her favorite emoji!

    At least now the code doesn’t look like it was made by a monkey.

    Paul commenting on the structure of my WikiApiary code after doing some refactoring.

    Hat and Glasses.

    Soaking in Charley Hackerson advanced sales training with #TeamSPS sales vets!

    Love this!

    minnov8 wrote an overview of the SPS Omnichannel event last week. I know Steve, and he highlighted my joining SPS and the big stuff we are working on!

    Dropcam Tabs

    I’ve become quiet the fan of my Dropcam. I decided to go ahead and pre-order two of the new Dropcam Tabs. Excited to play with them. Wish they were shipping sooner!

← Newer Posts Older Posts →