{
"type": "entry",
"published": "2019-05-02T08:25:03-07:00",
"url": "https://aaronparecki.com/2019/05/02/9/pkce",
"category": [
"oauth",
"javascript",
"pkce"
],
"syndication": [
"https://twitter.com/aaronpk/status/1123971680521605123"
],
"content": {
"text": "Browser APIs have gotten so much better lately! Way easier to do @oauth_2 PKCE in a browser now: \n\n\u2705 good random number generators \n\u2705 secure hashing functions \n\nJust missing a good base64 encoding function. (Check out the ugly hack in the post.) \n\nhttps://developer.okta.com/blog/2019/05/01/is-the-oauth-implicit-flow-dead#begin-the-pkce-request",
"html": "Browser APIs have gotten so much better lately! Way easier to do <a href=\"https://twitter.com/oauth_2\">@oauth_2</a> PKCE in a browser now: <br /><br /><a href=\"https://aaronparecki.com/emoji/%E2%9C%85\">\u2705</a> good random number generators <br /><a href=\"https://aaronparecki.com/emoji/%E2%9C%85\">\u2705</a> secure hashing functions <br /><br />Just missing a good base64 encoding function. (Check out the ugly hack in the post.) <br /><br /><a href=\"https://developer.okta.com/blog/2019/05/01/is-the-oauth-implicit-flow-dead#begin-the-pkce-request\"><span>https://</span>developer.okta.com/blog/2019/05/01/is-the-oauth-implicit-flow-dead#begin-the-pkce-request</a>"
},
"author": {
"type": "card",
"name": "Aaron Parecki",
"url": "https://aaronparecki.com/",
"photo": "https://aperture-media.p3k.io/aaronparecki.com/41061f9de825966faa22e9c42830e1d4a614a321213b4575b9488aa93f89817a.jpg"
},
"post-type": "note",
"_id": "3275501",
"_source": "16"
}
current status: wrapped up the web standards meeting for the day, and now watching the recording of yesterday's Planning and Sustainability Commission meeting in Portland, a different kind of standards meeting.
what? I don't have too many projects *you* have too many projects
{
"type": "entry",
"published": "2019-05-01T21:17:36-07:00",
"url": "https://aaronparecki.com/2019/05/01/36/pdx",
"category": [
"pdx",
"portland"
],
"syndication": [
"https://twitter.com/aaronpk/status/1123803709912301568"
],
"content": {
"text": "current status: wrapped up the web standards meeting for the day, and now watching the recording of yesterday's Planning and Sustainability Commission meeting in Portland, a different kind of standards meeting. \n\nwhat? I don't have too many projects *you* have too many projects",
"html": "current status: wrapped up the web standards meeting for the day, and now watching the recording of yesterday's Planning and Sustainability Commission meeting in Portland, a different kind of standards meeting. <br /><br />what? I don't have too many projects *you* have too many projects"
},
"author": {
"type": "card",
"name": "Aaron Parecki",
"url": "https://aaronparecki.com/",
"photo": "https://aperture-media.p3k.io/aaronparecki.com/41061f9de825966faa22e9c42830e1d4a614a321213b4575b9488aa93f89817a.jpg"
},
"post-type": "note",
"_id": "3269101",
"_source": "16"
}
{
"type": "entry",
"published": "2019-05-01T09:48:53-07:00",
"url": "https://aaronparecki.com/2019/05/01/19/",
"category": [
"iiw"
],
"content": {
"text": "I commuted to Mountain View from Portland this morning and still got here earlier than some people who were stuck in Bay Area traffic. #iiw",
"html": "I commuted to Mountain View from Portland this morning and still got here earlier than some people who were stuck in Bay Area traffic. <a href=\"https://aaronparecki.com/tag/iiw\">#<span class=\"p-category\">iiw</span></a>"
},
"author": {
"type": "card",
"name": "Aaron Parecki",
"url": "https://aaronparecki.com/",
"photo": "https://aperture-media.p3k.io/aaronparecki.com/41061f9de825966faa22e9c42830e1d4a614a321213b4575b9488aa93f89817a.jpg"
},
"post-type": "note",
"_id": "3260856",
"_source": "16"
}
{
"type": "entry",
"published": "2019-05-01T09:30:40-07:00",
"url": "https://aaronparecki.com/2019/05/01/17/iiw",
"category": [
"iiw",
"oauth"
],
"syndication": [
"https://twitter.com/aaronpk/status/1123626896464310272"
],
"content": {
"text": "Just in time for #iiw I published a blog post: \"Is the OAuth 2.0 Implicit Flow Dead?\" https://developer.okta.com/blog/2019/05/01/is-the-oauth-implicit-flow-dead",
"html": "Just in time for <a href=\"https://aaronparecki.com/tag/iiw\">#<span class=\"p-category\">iiw</span></a> I published a blog post: \"Is the OAuth 2.0 Implicit Flow Dead?\" <a href=\"https://developer.okta.com/blog/2019/05/01/is-the-oauth-implicit-flow-dead\"><span>https://</span>developer.okta.com/blog/2019/05/01/is-the-oauth-implicit-flow-dead</a>"
},
"author": {
"type": "card",
"name": "Aaron Parecki",
"url": "https://aaronparecki.com/",
"photo": "https://aperture-media.p3k.io/aaronparecki.com/41061f9de825966faa22e9c42830e1d4a614a321213b4575b9488aa93f89817a.jpg"
},
"post-type": "note",
"_id": "3260648",
"_source": "16"
}
{
"type": "entry",
"author": {
"name": "Jared White",
"url": "https://jaredwhite.com/",
"photo": null
},
"url": "https://jaredwhite.com/20190430/1",
"published": "2019-04-30T15:41:37-07:00",
"content": {
"html": "<p>If all the people out there who complain about how \u201cblogging/\nRSS/websites/whatever\u201d is dead and we\u2019re all stuck with \u201cTwitter/Facebook/whatever\u201d \u2014 quit those services and used blogs, Mastodon, and other open web services, we\u2019d be back to where we were before: a vibrant online content ecosystem free of aggressive corporate dominance and a data-sucking ad-tracking hellscape.</p>\n\n<p>It all starts with us: we the people. Join the revolution!<br /><a href=\"https://jaredwhite.com/tag/openweb\">#openweb</a></p>",
"text": "If all the people out there who complain about how \u201cblogging/\nRSS/websites/whatever\u201d is dead and we\u2019re all stuck with \u201cTwitter/Facebook/whatever\u201d \u2014 quit those services and used blogs, Mastodon, and other open web services, we\u2019d be back to where we were before: a vibrant online content ecosystem free of aggressive corporate dominance and a data-sucking ad-tracking hellscape.\n\nIt all starts with us: we the people. Join the revolution!\n#openweb"
},
"name": "Thought for Tuesday, April 30, 2019 at 3:41 PM",
"post-type": "article",
"_id": "3903238",
"_source": "2783"
}
{
"type": "entry",
"author": {
"name": "Cathie",
"url": "https://cathieleblanc.com/",
"photo": null
},
"url": "https://cathieleblanc.com/2019/04/30/conversational-design/",
"published": "2019-04-30T16:39:55+00:00",
"content": {
"html": "<p>I just finished reading <a href=\"https://twitter.com/mulegirl\">Erika Hall</a>\u2018s excellent book <em><a href=\"https://abookapart.com/products/conversational-design\">Conversational Design</a></em>. Hall is a technologist who is interested in making digital systems more human-centered. The idea of conversational design is to use human to human conversations as a model for designing human to computer interactions. The issue of communication using digital systems has been a huge topic of discussion on my campus lately and so I found Hall\u2019s insights useful. Because I\u2019m not really interested at this moment in human-computer interactions, I\u2019ll focus on what Hall says about human to human interactions. Her comments apply whether humans are interacting face to face or using some sort of mediation (the written word, video, recorded audio, etc.) for the communication.</p>\n<p>In particular, Hall summarizes the work of language philosopher <a href=\"https://en.wikipedia.org/wiki/Paul_Grice\">Paul Grice</a>, who posited four maxims of conversation (that he called \u201c<a href=\"https://www.thoughtco.com/conversational-implicature-speech-acts-1689922\">conversational implicature</a>\u201c). These four maxims may seem like common sense but I think we don\u2019t always think of them explicitly when we are in conversation with others so they bear repeating.</p>\n<ol><li><strong>Quantity</strong>: Make your contribution as informative as is required. Do not make your contribution more informative than is required. In other words, give people just enough information.</li>\n<li><strong>Quality</strong>: Do not say what you believed to be false. Do not say that for which you lack adequate evidence. In other words, be truthful. But, Hall says, this is about more than just not lying. \u201cIt\u2019s about being authentic and transparent about one\u2019s agenda.\u201d</li>\n<li><strong>Relation</strong>: Contribute to the conversation in a way that is relevant to the purpose of the conversation.</li>\n<li><strong>Manner</strong>: Be brief, orderly, and unambiguous. In other words, get to the point, be logical, and be clear.</li>\n</ol><p>Hall adds a fifth maxim taken from the work of professor of linguistics <a href=\"https://en.wikipedia.org/wiki/Robin_Lakoff\">Robin Lakoff</a>, who studies the relationships between gender and language: Be polite. Lakoff proposed three parts to the <strong>politeness</strong> principle: Don\u2019t impose. Give options. Make the listener feel good.</p>\n<p>It is astonishing how many communications I engage with every day that do not follow these maxims. I think there are a number of reasons for this. Take the maxim of quantity, for example. In order to give just the right amount of information, you need to understand what your listener (or reader or viewer) is interested in. This requires careful consideration of various audiences and their needs rather than simply doing an information dump. But I think we often don\u2019t even think about what we\u2019re communicating, why we\u2019re including the things we are and not including the things we aren\u2019t, and what the recipient of our communication might want to know about the topic at hand.</p>\n<p>I\u2019m currently working on the open educational resource to be used in our new \u201c<a href=\"https://cathieleblanc.com/2019/04/14/progress-report-cluster-initiative/\">Tackling a Wicked Problem</a>\u201d course that will be required of all incoming first year students at PSU. It\u2019s nice to have the maxims stated so succinctly so that I can keep them in mind as I write.</p>\n<p>Hall\u2019s book goes on to explore how these maxims can be applied to the design of interactions between humans and digital systems. It\u2019s a short, informative read that follows its own suggestions.</p>",
"text": "I just finished reading Erika Hall\u2018s excellent book Conversational Design. Hall is a technologist who is interested in making digital systems more human-centered. The idea of conversational design is to use human to human conversations as a model for designing human to computer interactions. The issue of communication using digital systems has been a huge topic of discussion on my campus lately and so I found Hall\u2019s insights useful. Because I\u2019m not really interested at this moment in human-computer interactions, I\u2019ll focus on what Hall says about human to human interactions. Her comments apply whether humans are interacting face to face or using some sort of mediation (the written word, video, recorded audio, etc.) for the communication.\nIn particular, Hall summarizes the work of language philosopher Paul Grice, who posited four maxims of conversation (that he called \u201cconversational implicature\u201c). These four maxims may seem like common sense but I think we don\u2019t always think of them explicitly when we are in conversation with others so they bear repeating.\nQuantity: Make your contribution as informative as is required. Do not make your contribution more informative than is required. In other words, give people just enough information.\nQuality: Do not say what you believed to be false. Do not say that for which you lack adequate evidence. In other words, be truthful. But, Hall says, this is about more than just not lying. \u201cIt\u2019s about being authentic and transparent about one\u2019s agenda.\u201d\nRelation: Contribute to the conversation in a way that is relevant to the purpose of the conversation.\nManner: Be brief, orderly, and unambiguous. In other words, get to the point, be logical, and be clear.\nHall adds a fifth maxim taken from the work of professor of linguistics Robin Lakoff, who studies the relationships between gender and language: Be polite. Lakoff proposed three parts to the politeness principle: Don\u2019t impose. Give options. Make the listener feel good.\nIt is astonishing how many communications I engage with every day that do not follow these maxims. I think there are a number of reasons for this. Take the maxim of quantity, for example. In order to give just the right amount of information, you need to understand what your listener (or reader or viewer) is interested in. This requires careful consideration of various audiences and their needs rather than simply doing an information dump. But I think we often don\u2019t even think about what we\u2019re communicating, why we\u2019re including the things we are and not including the things we aren\u2019t, and what the recipient of our communication might want to know about the topic at hand.\nI\u2019m currently working on the open educational resource to be used in our new \u201cTackling a Wicked Problem\u201d course that will be required of all incoming first year students at PSU. It\u2019s nice to have the maxims stated so succinctly so that I can keep them in mind as I write.\nHall\u2019s book goes on to explore how these maxims can be applied to the design of interactions between humans and digital systems. It\u2019s a short, informative read that follows its own suggestions."
},
"name": "Conversational Design",
"post-type": "note",
"_id": "3903182",
"_source": "2782"
}
{
"type": "entry",
"published": "2019-04-30T11:39:27-0400",
"rsvp": "yes",
"url": "https://martymcgui.re/2019/04/30/113927/",
"in-reply-to": [
"https://indieweb.org/events/2019-05-01-homebrew-website-club-nyc"
],
"content": {
"text": "I'm going!Time for another HWC NYC! Come work on your personal website and keep on wigglin\u2019 free from the grasp of the big social media sites.\n\nBy popular demand, we\u2019re starting the meetup a bit later. (Optional) quiet writing hour starts at 6:30pm. Actual meetup at 7:30pm!",
"html": "I'm going!<p>Time for another HWC NYC! Come work on your personal website and keep on wigglin\u2019 free from the grasp of the big social media sites.</p>\n\n<p>By popular demand, we\u2019re starting the meetup a bit later. (Optional) quiet writing hour starts at 6:30pm. Actual meetup at 7:30pm!</p>"
},
"author": {
"type": "card",
"name": "Marty McGuire",
"url": "https://martymcgui.re/",
"photo": "https://aperture-proxy.p3k.io/8275f85e3a389bd0ae69f209683436fc53d8bad9/68747470733a2f2f6d617274796d636775692e72652f696d616765732f6c6f676f2e6a7067"
},
"post-type": "rsvp",
"refs": {
"https://indieweb.org/events/2019-05-01-homebrew-website-club-nyc": {
"type": "entry",
"summary": "Join us for an evening of IndieWeb personal site demos and discussions!",
"url": "https://indieweb.org/events/2019-05-01-homebrew-website-club-nyc",
"photo": [
"https://res.cloudinary.com/schmarty/image/fetch/w_960,c_fill/https://indieweb.org/images/b/b1/2017-hwc-80s-retro.jpg"
],
"name": "\ud83d\uddfd Homebrew Website Club NYC",
"author": {
"type": "card",
"name": "indieweb.org",
"url": "http://indieweb.org",
"photo": null
},
"post-type": "photo"
}
},
"_id": "3248180",
"_source": "175"
}
I ended up leaving a bunch of my meetup groups and networking events and their respective Discords, and also decided to take down my studio streaming setup, because they were all wearing on my mental health. I want to get back to working on stuff because I want to, not because I feel obligated to “grow my audience” or whatever. My fun activities were starting to be less about fun and more about my failure to get any sort of cachet, and something had to give. And I didn’t want that “something” to be the things I enjoy doing.
It’s totally fine to want to do things, but it’s important to realize why you’re doing things, and be willing to course-correct when you realize that those things are getting in the way of the intended purpose.
{
"type": "entry",
"published": "2019-04-28T13:35:12-07:00",
"summary": "I ended up leaving a bunch of my meetup groups and networking events and their respective Discords, and also decided to take down my studio streaming setup, because they were all wearing on my mental health. I want to get back to working on stuff because I want to, not because I feel obligated to \u201cgrow my audience\u201d or whatever. My fun activities were starting to be less about fun and more about my failure to get any sort of cachet, and something had to give. And I didn\u2019t want that \u201csomething\u201d to be the things I enjoy doing.\nIt\u2019s totally fine to want to do things, but it\u2019s important to realize why you\u2019re doing things, and be willing to course-correct when you realize that those things are getting in the way of the intended purpose.",
"url": "https://beesbuzz.biz/blog/5487-Leaving-the-mess-behind",
"name": "Leaving the mess behind",
"author": {
"type": "card",
"name": "fluffy",
"url": "https://beesbuzz.biz/",
"photo": "https://aperture-proxy.p3k.io/67f0e159262fa91b1915cde9588795b89a61ec8f/68747470733a2f2f6265657362757a7a2e62697a2f7374617469632f6865616473686f742e6a7067"
},
"post-type": "article",
"_id": "3903098",
"_source": "2778"
}
Reblob!:
It’s been a while since I’ve worked on IndieWeb stuff, but I finally got around to releasing an extremely preliminary version of reblob, a little commandline thingus to make this stuff easier. Eventually I’ll also have a server-based version here, at least as an example.
Of course this is the first entry I’ve written actually using it. Lots of rough edges but whatever!
{
"type": "entry",
"published": "2019-04-28T02:45:34-07:00",
"summary": "Reblob!:\nIt\u2019s been a while since I\u2019ve worked on IndieWeb stuff, but I finally got around to releasing an extremely preliminary version of reblob, a little commandline thingus to make this stuff easier. Eventually I\u2019ll also have a server-based version here, at least as an example.\nOf course this is the first entry I\u2019ve written actually using it. Lots of rough edges but whatever!",
"url": "https://beesbuzz.biz/blog/5385-Reblob",
"name": "Reblob!",
"author": {
"type": "card",
"name": "fluffy",
"url": "https://beesbuzz.biz/",
"photo": "https://aperture-proxy.p3k.io/67f0e159262fa91b1915cde9588795b89a61ec8f/68747470733a2f2f6265657362757a7a2e62697a2f7374617469632f6865616473686f742e6a7067"
},
"post-type": "note",
"_id": "3903099",
"_source": "2778"
}
{
"type": "entry",
"published": "2019-04-26 16:11-0500",
"url": "https://gregorlove.com/2019/04/about-to-see-avengers-if/",
"syndication": [
"https://twitter.com/gRegorLove/status/1121914760793133056"
],
"content": {
"text": "About to see Avengers! If this gets resolved by Cap and Thanos realizing their moms are both named Martha, so help me...",
"html": "<p>About to see Avengers! If this gets resolved by Cap and Thanos realizing their moms are both named Martha, so help me...</p>"
},
"author": {
"type": "card",
"name": "gRegor Morrill",
"url": "https://gregorlove.com/",
"photo": "https://aperture-proxy.p3k.io/929c8777d059069a2a16a064d96f4c29b65548f8/68747470733a2f2f677265676f726c6f76652e636f6d2f736974652f6173736574732f66696c65732f333437332f70726f66696c652d323031362d6d65642e6a7067"
},
"post-type": "note",
"_id": "3194867",
"_source": "95"
}