53°F

Aaron Parecki

  • Articles
  • Notes
  • Photos

Monday, February 12, 2018

← Older → Newer
bicycle
28 min
 
4.9 miles
 
bicycle
  • 9:19pm
    Asleep
    4:35am
    Awake
    7h 16m
    Slept
    21m
    Awake for
    Portland, Oregon, USA
    Mon, Feb 12, 2018 4:35am -08:00
  • Google Online Security Blog: A secure web is here to stay (security.googleblog.com)
    Mon, Feb 12, 2018 5:29am -08:00 #https
  • Aaron Parecki
    Contributions from: Belarus, Germany, United States
    Mon, Feb 12, 2018 7:06am -08:00
  • Aaron Parecki
    Contributions from: Belarus, Germany, United Kingdom, United States
    Mon, Feb 12, 2018 7:39am -08:00
  • EdwardHinkle https://github.com/EdwardHinkle   •   Feb 12

    #19 New Channel gets sort 0, which messes with notifications

    Aaron Parecki
    šŸ¤¦ā€ā™‚ļø Thanks. I think I'll add new channels to the top!
    Portland, Oregon, USA
    Mon, Feb 12, 2018 7:58am -08:00
  • aaronpk https://github.com/aaronpk   •   Jan 30

    #4 Tracking read state or position

    Aaron Parecki

    I'm implementing a draft of this in Aperture right now. Here is the current API.

    Every entry now includes a unique system ID, meant for internal identification of the item (not global identification). This is returned in the timeline response as the parameter _id, and there is now also _is_read. For example:

    {
      "items": [
        {
          "type": "entry",
          "url": "http://example.com/100",
          ...
          "_id": "41003",
          "_is_read": false
      ]
    }
    

    These new _id values are meant to be opaque to clients, and must always be a string. Some servers will likely use integer database IDs, but other servers may use other string identifiers for entries depending on the implementation.

    Retrieving the list of channels now also includes the number of unread entries in the channel:

    {
      "channels": [
        {
          "uid": "notifications",
          "name": "Notifications",
          "unread": 0
        },
        {
          "uid": "YPGiUrZjNM36LNdpFy7eSzJE7o2aK82z",
          "name": "IndieWeb",
          "unread": 7
        }
      ]
    }
    

    To mark an individual entry as read:

    • action=timeline
    • channel=example
    • method=mark_read
    • entry=1234

    To mark multiple entires as read:

    • action=timeline
    • channel=example
    • method=mark_read
    • entry[]=1234
    • entry[]=5678

    Both of the above also work with method=mark_unread.

    To mark an entry read as well as everything before it:

    • action=timeline
    • channel=example
    • method=mark_read
    • last_read_entry=1234

    This is to address the use case of streams, where you really only care about knowing where in the stream you've scrolled to and whether there are any new entries since then.

    This is mostly inspired by the Feedly Markers API Mark one or more articles as read and Mark a feed as read

    Portland, Oregon, USA
    1 reply
    Mon, Feb 12, 2018 8:11am -08:00 #microsub #aperture
  • Aaron Parecki
    Contributions from: Germany, United States
    Mon, Feb 12, 2018 8:17am -08:00
  • aaronpk https://github.com/aaronpk   •   Jan 30

    #11 Channel Order

    Aaron Parecki
    This has been implemented in Aperture and documented in the spec: https://indieweb.org/Microsub-spec#Set_Channel_Order
    Portland, Oregon, USA
    Mon, Feb 12, 2018 8:40am -08:00
  • aaronpk https://github.com/aaronpk   •   Jan 30

    #10 Channel Statuses

    Aaron Parecki

    The unread property has been documented in the spec, and implemented in Aperture.

    I am not sure the updated property is useful, so I'm leaving it out for now. I'm going to close this issue as most of the discussion is taking place in #4.

    Portland, Oregon, USA
    Mon, Feb 12, 2018 8:43am -08:00
  • aaronpk https://github.com/aaronpk   •   Jan 30

    #9 Per-Item Data

    Aaron Parecki

    With the work in tracking read state, I've started implementing these additional properties by prefixing them with _. I felt like that was the least obtrusive way to include them while also making it obvious they are not part of the post vocabulary.

    Additional brainstorming around other per-item data should be discussed in new issues.

    Portland, Oregon, USA
    Mon, Feb 12, 2018 8:45am -08:00
  • EdwardHinkle https://github.com/EdwardHinkle   •   Feb 12

    Not that it has to be implemented right now, but I do want to make a case for the ā€œupdatedā€ field of a channel. In order to reduce ā€œhigh noise signalā€, for most of my channels, I’ll want the channel’s ā€œunread indicatorā€ to disappear when I reach the top of the timeline (even if things are unread). When a channel is updated (receives new posts), I would want to be able to re-enable the unread indicator. Essentially saying ā€œthere are new posts hereā€ rather than saying ā€œthere are unread posts hereā€. In fact now that I say it, I might make the indicator a different color as well. That said, the purpose of such a channel is, I want to be able to know what I have and haven’t read, while only being prompted to open the channel if there are new posts. The ā€œnew postsā€ indicator essentially upping the priority of time looking at that channel than one without new posts. That said, when I have more time, to be able to go back to an existing channel and still know what I haven’t read (which is why this can’t just use the ā€œlast_read_entryā€, even though that is a useful method).

    (Originally published at: https://eddiehinkle.com/2018/02/12/7/reply/)

    Aaron Parecki
    Now that you mention it, I think Facebook's notifications work this way.

    They show a little number over the notification icon with the number of new notifications. However, they also track whether you've clicked on individual notifications separately. If you click the icon with the number, then the number is cleared and won't show again until there is new content. If you click on an individual notification, then the next time you drop down the notification bar that notification will be white instead of blue.
    Portland, Oregon, USA
    Mon, Feb 12, 2018 10:15am -08:00
  • https://github.com/indieweb/microsub

    Add option to remove entries when unfollowing a source

    When removing a source from a channel, Aperture provides an option in the UI to either remove all the existing entries or just stop adding new entries. It may be useful for this to be an option for Microsub clients as well.
    continue reading...
    Mon, Feb 12, 2018 10:22am -08:00 #aperture #microsub
  • EdwardHinkle https://github.com/EdwardHinkle   •   Feb 12

    Not that it has to be implemented right now, but I do want to make a case for the ā€œupdatedā€ field of a channel. In order to reduce ā€œhigh noise signalā€, for most of my channels, I’ll want the channel’s ā€œunread indicatorā€ to disappear when I reach the top of the timeline (even if things are unread). When a channel is updated (receives new posts), I would want to be able to re-enable the unread indicator. Essentially saying ā€œthere are new posts hereā€ rather than saying ā€œthere are unread posts hereā€. In fact now that I say it, I might make the indicator a different color as well. That said, the purpose of such a channel is, I want to be able to know what I have and haven’t read, while only being prompted to open the channel if there are new posts. The ā€œnew postsā€ indicator essentially upping the priority of time looking at that channel than one without new posts. That said, when I have more time, to be able to go back to an existing channel and still know what I haven’t read (which is why this can’t just use the ā€œlast_read_entryā€, even though that is a useful method).

    (Originally published at: https://eddiehinkle.com/2018/02/12/7/reply/)

    Aaron Parecki
    Here's a question. Do you imagine this additional state being something that only individual clients are aware of, or should that be synced to the server as well?

    If the server returns the "updated" date, then the client has enough information to show the indicator itself. But as far as other clients are concerned, they wouldn't know about whether you've seen those posts in another client.

    I'm kind of leaning towards it being a client-only thing, at least for now.

    If that's going to end up getting pushed to the server then I think we need to better define the different kinds of states. Maybe "read" vs "seen", where "seen" is the soft indicator that the client has displayed the post to the user, and "read" means they've opened it up (or maybe even explicitly marked it as read).
    Portland, Oregon, USA
    Mon, Feb 12, 2018 11:02am -08:00 #microsub
  • Aaron Parecki https://aaronparecki.com/   •   Feb 12
    I'm implementing a draft of this in Aperture right now. Here is the current API...
    Aaron Parecki
    I should add that the `_id` values are meant to be an identifier for this instance of the entry in the channel, not an identifier for the entry across channels. This means if you're following the same feed in multiple channels, entries may have a different `_id`.
    Portland, Oregon, USA
    Mon, Feb 12, 2018 11:11am -08:00
  • https://github.com/indieweb/microsub

    Channel icons?

    I just added emoji in the channel names, and now I'm wondering if there should be a way to choose/upload an actual custom icon for channels.
    continue reading...
    Mon, Feb 12, 2018 11:22am -08:00 #microsub
  • Aaron Parecki
    at StreamPDX
    Portland, Oregon • Mon, February 12, 2018 2:54pm
    45.542637 -122.661012
    Day 3 of fellowship interviews! šŸŽ™
    Portland, OR, United States • 50°F
    23 Coins
    Mon, Feb 12, 2018 2:54pm -08:00
  • Tim Bray https://www.tbray.org/ongoing/
    1/ Suffering from disorientation and cognitive dissonance around blockchain and Bitcoin. It’s time to stop the craziness.
    Portland, Oregon • 39°F
    Mon, Feb 12, 2018 10:20am -08:00 (liked on Mon, Feb 12, 2018 7:47pm -08:00)
← Older → Newer

Hi, I'm Aaron Parecki, Director of Identity Standards at Okta, and co-founder of IndieWebCamp. I maintain oauth.net, write and consult about OAuth, and participate in the OAuth Working Group at the IETF. I also help people learn about video production and livestreaming. (detailed bio)

I've been tracking my location since 2008 and I wrote 100 songs in 100 days. I've spoken at conferences around the world about owning your data, OAuth, quantified self, and explained why R is a vowel. Read more.

  • Director of Identity Standards at Okta
  • IndieWebCamp Founder
  • OAuth WG Editor
  • OpenID Board Member

  • šŸŽ„ YouTube Tutorials and Reviews
  • šŸ  We're building a triplex!
  • ā­ļø Life Stack
  • āš™ļø Home Automation
  • All
  • Articles
  • Bookmarks
  • Notes
  • Photos
  • Replies
  • Reviews
  • Trips
  • Videos
  • Contact
© 1999-2025 by Aaron Parecki. Powered by p3k. This site supports Webmention.
Except where otherwise noted, text content on this site is licensed under a Creative Commons Attribution 3.0 License.
IndieWebCamp Microformats Webmention W3C HTML5 Creative Commons
WeChat ID
aaronpk_tv