{ "items": [ { "type": [ "h-entry" ], "properties": { "name": [ "How to export your complete Foursquare checkin history" ], "summary": [ "Today I finished up a tool that you can use to export your complete history from Foursquare and publish the checkins to your website!" ], "pk-num-likes": [ "4" ], "pk-num-replies": [ "1" ], "pk-num-mentions": [ "2" ], "category": [ "foursquare", "swarm", "micropub", "ownyourswarm", "checkins", "ownyourdata", "indieweb" ], "url": [ "https://aaronparecki.com/2021/07/03/5/export-foursquare-checkin-history" ], "syndication": [ "https://micro.blog/aaronpk/11652128", "https://news.indieweb.org/en/aaronparecki.com/2021/07/03/5/export-foursquare-checkin-history" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2021-07-03T11:14:48-07:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "How to Sign Users In with IndieAuth" ], "summary": [ "This post will show you step by step how you can let people log in to your website with their own IndieAuth website so you don't need to worry about user accounts or passwords." ], "pk-num-likes": [ "3" ], "pk-num-bookmarks": [ "3" ], "pk-num-replies": [ "1" ], "pk-num-mentions": [ "4" ], "category": [ "indieauth", "indieweb", "oauth" ], "url": [ "https://aaronparecki.com/2021/04/13/26/indieauth" ], "syndication": [ "https://micro.blog/aaronpk/11319738", "https://news.indieweb.org/en/aaronparecki.com/2021/04/13/26/indieauth" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2021-04-13T21:15:45-07:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "The Perfect Remote Control ATEM Mini Interview Kit" ], "summary": [ "This tutorial will walk you through setting up an ATEM Mini Pro kit you can ship to a remote location and then control from your studio. You can use this to ship a remote interview kit to someone where all they have to do is plug in a few connections and you'll be able to control everything remotely!" ], "pk-num-mentions": [ "9" ], "category": [ "atem", "vpn", "network", "raspberrypi", "raspi", "video" ], "featured": [ "https://aaronparecki.com/2021/01/16/9/cover-image.jpg" ], "url": [ "https://aaronparecki.com/2021/01/16/9/atem-mini-remote-interview-kit" ], "syndication": [ "https://micro.blog/aaronpk/10871596" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2021-01-16T16:55:50-08:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "3D Printed Modular Cage for Blackmagic Bidirectional SDI/HDMI Converters" ], "summary": [ "This modular cage allows you to stack Blackmagic Bidirectional SDI/HDMI 3G Converters on a desk or behind other gear." ], "pk-num-likes": [ "1" ], "pk-num-mentions": [ "6" ], "category": [ "hdmi", "sdi", "blackmagic", "3dprint", "3d" ], "featured": [ "https://aaronparecki.com/2021/01/08/18/converter-stack.jpg" ], "url": [ "https://aaronparecki.com/2021/01/08/18/blackmagic-sdi-hdmi-converter-cage" ], "syndication": [ "https://micro.blog/aaronpk/10832840" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2021-01-08T18:05:33-08:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "Learn OAuth over the winter break!" ], "summary": [ "Over the last year, I've helped thousands of software developers learn about OAuth by hosting live and virtual workshops, and all this knowledge is now available as an on-demand video course!" ], "pk-num-replies": [ "1" ], "category": [ "oauth", "workshop", "course", "udemy" ], "featured": [ "https://aaronparecki.com/2020/12/22/14/image-1.jpg" ], "url": [ "https://aaronparecki.com/2020/12/22/14/oauth" ], "syndication": [ "https://micro.blog/aaronpk/10756284" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-12-22T14:17:04-08:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "IndieAuth Spec Updates 2020" ], "summary": [ "This year, the IndieWeb community has been making progress on iterating and evolving the IndieAuth protocol. IndieAuth is an extension of OAuth 2.0 that enables it to work with personal websites and in a decentralized environment." ], "pk-num-likes": [ "3" ], "pk-num-bookmarks": [ "4" ], "pk-num-replies": [ "5" ], "pk-num-mentions": [ "6" ], "category": [ "indieauth", "indieweb", "oauth" ], "url": [ "https://aaronparecki.com/2020/12/03/1/indieauth-2020" ], "syndication": [ "https://news.indieweb.org/en/aaronparecki.com/2020/12/03/1/indieauth-2020", "https://micro.blog/aaronpk/10670730" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-12-03T18:55:00-08:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "GNAP Editors' Use of GitHub Issues" ], "summary": [ "The editors met yesterday to discuss the issues that were pulled out of the previous draft text and document a process for how to resolve these and future issues. We would like to explain how we plan on using labels on GitHub issues to keep track of discussions and keep things moving." ], "category": [ "gnap", "ietf" ], "url": [ "https://aaronparecki.com/2020/11/25/4/gnap-github-issues" ], "syndication": [ "https://mailarchive.ietf.org/arch/msg/txauth/PZN90foQWcJlxLxjW5VwT0zcHXE/", "https://micro.blog/aaronpk/10629721" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-11-25T08:27:30-08:00" ], "audience": [ { "type": [ "h-card" ], "properties": { "name": [ "GNAP WG" ], "url": [ "https://mailarchive.ietf.org/arch/browse/txauth/" ] }, "value": "https://mailarchive.ietf.org/arch/browse/txauth/" } ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "How to make an RTMP Streaming Server and Player with a Raspberry Pi" ], "summary": [ "In this tutorial we'll use a Raspberry Pi to build an RTMP server that plays out any video stream it receives over the Raspberry Pi's HDMI port automatically. This effectively turns a Raspberry Pi into a Blackmagic Streaming Bridge." ], "pk-num-likes": [ "2" ], "pk-num-bookmarks": [ "1" ], "pk-num-mentions": [ "3" ], "category": [ "raspberrypi", "streaming", "video", "livestream", "rtmp", "atem", "atem-mini" ], "featured": [ "https://aaronparecki.com/2020/09/07/7/thumbnail.jpg" ], "url": [ "https://aaronparecki.com/2020/09/07/7/raspberry-pi-streaming-server" ], "syndication": [ "https://micro.blog/aaronpk/10228686" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-09-07T14:00:00-07:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "Redesigning my Blog Post Pages" ], "summary": [ "I had a great time in the sessions at IndieWebCamp West yesterday! Today is project day, so I started the morning off listening to some chill tunes with other folks on the Zoom \"hallway track\" deciding what to work on." ], "pk-num-likes": [ "2" ], "pk-num-bookmarks": [ "1" ], "pk-num-replies": [ "1" ], "pk-num-mentions": [ "1" ], "category": [ "indieweb", "indiewebcamp" ], "url": [ "https://aaronparecki.com/2020/06/28/7/blog-posts" ], "syndication": [ "https://micro.blog/aaronpk/9855268" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-06-28T11:18:18-07:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "How to Leave Facebook" ], "summary": [ "There are many reasons to delete your Facebook account, so let's start with the assumption you've already made the decision. Here are a few things to know before you press the big \"Delete\" button." ], "pk-num-likes": [ "61" ], "pk-num-reposts": [ "25" ], "pk-num-bookmarks": [ "2" ], "pk-num-replies": [ "16" ], "pk-num-mentions": [ "13" ], "category": [ "facebook", "indieweb" ], "featured": [ "https://aaronparecki.com/2020/06/14/14/melanie-hoefler-z2M7JefmTEw-unsplash.jpg" ], "url": [ "https://aaronparecki.com/2020/06/14/14/how-to-leave-facebook" ], "syndication": [ "https://micro.blog/aaronpk/9801418" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-06-14T15:09:50-07:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "The Real Cause of the Sign In with Apple Zero-Day" ], "summary": [ "The zero-day bug in Sign In with Apple actually had nothing to do with the OAuth or OpenID Connect part of the Sign In with Apple exchange, and very little to do even with JWTs. Let's take a closer look to see what actually happened." ], "pk-num-likes": [ "37" ], "pk-num-reposts": [ "19" ], "pk-num-bookmarks": [ "1" ], "pk-num-replies": [ "9" ], "pk-num-mentions": [ "25" ], "category": [ "oauth", "oidc", "apple", "siwa", "security", "zeroday" ], "featured": [ "https://aaronparecki.com/2020/05/31/30/broken-apple-1200.jpg" ], "url": [ "https://aaronparecki.com/2020/05/31/30/the-real-cause-of-the-sign-in-with-apple-zero-day" ], "syndication": [ "https://micro.blog/aaronpk/9753094" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-05-31T13:49:00-07:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "Meetable: Updates for Virtual Events" ], "summary": [ "Meetable is the software that runs events.indieweb.org and a couple other event sites that I host. Over the last couple months, we've had to cancel a bunch of IndieWeb events or convert them to virtual events, and I've been watching for patterns to see if there was anything the software could do to facilitate this." ], "pk-num-likes": [ "3" ], "pk-num-reposts": [ "1" ], "pk-num-replies": [ "1" ], "category": [ "meetable", "events" ], "url": [ "https://aaronparecki.com/2020/05/10/28/meetable" ], "syndication": [ "https://news.indieweb.org/en/aaronparecki.com/2020/05/10/28/meetable", "https://micro.blog/aaronpk/9633530" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-05-10T21:06:03-07:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "Digital Spring Cleaning" ], "summary": [ "Well, it's Spring, and we're all stuck inside! \ud83d\ude03 So why not use this time to do a little Spring cleaning and declutter your digital life. We all have things we know we should do that we keep putting off. Here are a few things you can do to tidy things up and improve your online security in a time when most of us are interacting only online." ], "pk-num-likes": [ "5" ], "pk-num-bookmarks": [ "1" ], "category": [ "spring", "security", "cleaning", "clutter", "declutter" ], "url": [ "https://aaronparecki.com/2020/04/01/8/digital-spring-cleaning" ], "syndication": [ "https://micro.blog/aaronpk/9145785" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-04-01T07:55:25-07:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "Tips and Tools for Improving your Remote Meetings and Presentations on a Budget" ], "summary": [ "Lots of people are suddenly finding themselves working from home, and need to join video conferences from their living room or home office. Here are several tips to improve your virtual meetings and presentations on a budget! I'll start with some things you can do for free to improve your Zoom meetings. If you're recording virtual conference talks from home, or hosting live webinars, you'll definitely want to upgrade to a nicer camera, so take a look at my recommendations for the best video kits under $500 and under $1000!" ], "pk-num-likes": [ "28" ], "pk-num-reposts": [ "10" ], "pk-num-bookmarks": [ "2" ], "pk-num-replies": [ "19" ], "pk-num-mentions": [ "25" ], "category": [ "video", "tips", "meetings", "zoom", "presentations", "livestream" ], "featured": [ "https://aaronparecki.com/2020/03/24/4/1000-dollar-video-kit.jpg" ], "url": [ "https://aaronparecki.com/2020/03/24/4/tips-and-tools-for-remote-meetings-and-presentations" ], "syndication": [ "https://micro.blog/aaronpk/9001237" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-03-24T08:22:05-07:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "First Draft of OAuth 2.1" ], "summary": [ "I'm happy to share that Dick and Torsten and I have published a first draft of OAuth 2.1. We've taken the feedback from the discussions on the list and incorporated that into the draft." ], "pk-num-likes": [ "61" ], "pk-num-reposts": [ "27" ], "pk-num-replies": [ "2" ], "pk-num-mentions": [ "4" ], "category": [ "oauth", "oauth2", "ietf", "oauth21" ], "url": [ "https://aaronparecki.com/2020/03/11/14/oauth-2-1" ], "syndication": [ "https://mailarchive.ietf.org/arch/msg/oauth/UWORKVuzo-rk86ymeSYUxaIdLMY/", "https://micro.blog/aaronpk/8775317" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-03-11T17:22:04-07:00" ], "audience": [ { "type": [ "h-card" ], "properties": { "name": [ "OAuth WG" ], "url": [ "https://mailarchive.ietf.org/arch/browse/oauth/" ] }, "value": "https://mailarchive.ietf.org/arch/browse/oauth/" } ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "Implicit flow in the Security BCP draft -14" ], "summary": [ "Hi all, I'm reading through the latest draft of the Security BCP, and" ], "category": [ "oauth", "ietf", "implicit" ], "url": [ "https://aaronparecki.com/2020/02/12/49/implicit" ], "syndication": [ "https://mailarchive.ietf.org/arch/msg/oauth/hXEfLXgEqrUQVi7Qy8X_279DCNU", "https://micro.blog/aaronpk/8338197" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-02-12T15:43:00-08:00" ], "audience": [ { "type": [ "h-card" ], "properties": { "name": [ "OAuth WG" ], "url": [ "https://mailarchive.ietf.org/arch/browse/oauth/" ] }, "value": "https://mailarchive.ietf.org/arch/browse/oauth/" } ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "Making Meetable Easier to Install" ], "summary": [ "I've been working towards making Meetable more useful to others by making it easier to configure and deploy. I took a few shortcuts during the initial development that let me finish it faster, primarily by offloading authentication and image resizing to external services. While that's great for me, it means it requires setting up two additional projects if someone else wanted to get it running." ], "pk-num-likes": [ "2" ], "pk-num-reposts": [ "3" ], "pk-num-bookmarks": [ "2" ], "pk-num-mentions": [ "1" ], "category": [ "meetable", "events", "indieweb" ], "url": [ "https://aaronparecki.com/2020/01/18/7/meetable-updates" ], "syndication": [ "https://news.indieweb.org/en/aaronparecki.com/2020/01/18/7/meetable-updates", "https://micro.blog/aaronpk/7852097" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-01-18T15:30:37-08:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "Meetable: An Open Source Events Aggregator" ], "summary": [ "It's been a few weeks since I launched the new events site for IndieWeb events! In that time, the community has already hosted 7 events, and scheduled 15 more! I've continued to push a few minor changes to the site since the launch, primarily around discovery of events with tags." ], "pk-num-likes": [ "5" ], "pk-num-bookmarks": [ "2" ], "category": [ "meetable", "events", "indieweb" ], "url": [ "https://aaronparecki.com/2020/01/14/13/meetable" ], "syndication": [ "https://news.indieweb.org/en/aaronparecki.com/2020/01/14/13/meetable", "https://micro.blog/aaronpk/7773387" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2020-01-14T10:25:32-08:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "Announcing events.indieweb.org!" ], "summary": [ "I'm super happy to announce the launch of a new website for IndieWeb events at events.indieweb.org!" ], "pk-num-likes": [ "9" ], "pk-num-replies": [ "6" ], "pk-num-mentions": [ "4" ], "category": [ "indieweb", "indiewebcamp", "events" ], "featured": [ "https://aaronparecki.com/2019/12/21/4/laptop.jpg" ], "url": [ "https://aaronparecki.com/2019/12/21/4/indieweb-events" ], "syndication": [ "https://news.indieweb.org/en/aaronparecki.com/2019/12/21/4/indieweb-events", "https://micro.blog/aaronpk/7350567" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2019-12-21T13:20:00-08:00" ] } }, { "type": [ "h-entry" ], "properties": { "name": [ "It's Time for OAuth 2.1" ], "summary": [ "Trying to understand OAuth often feels like being trapped inside a maze of specs, trying to find your way out, before you can finally do what you actually set out to do: build your application." ], "pk-num-likes": [ "107" ], "pk-num-reposts": [ "58" ], "pk-num-bookmarks": [ "1" ], "pk-num-replies": [ "2" ], "pk-num-mentions": [ "24" ], "category": [ "oauth", "oauth2", "oauth21" ], "featured": [ "https://aaronparecki.com/2019/12/12/21/oauth-maze.png" ], "url": [ "https://aaronparecki.com/2019/12/12/21/its-time-for-oauth-2-dot-1" ], "syndication": [ "https://twitter.com/aaronpk/status/1205310710818852864", "https://micro.blog/aaronpk/7195560" ], "author": [ "https://aaronparecki.com/" ], "published": [ "2019-12-12T18:10:22-08:00" ] } }, { "type": [ "h-card" ], "properties": { "note": [ "Hi, I'm Aaron Parecki, co-founder of IndieWebCamp. I maintain oauth.net, write and consult about OAuth, and am the editor of several W3C specifications. I help people learn about video production and livestreaming and dabble in product design.\nI'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." ], "name": [ "Aaron Parecki" ], "street-address": [ "818 SW 3rd Ave #437" ], "locality": [ "Portland" ], "region": [ "Oregon" ], "country-name": [ "USA" ], "postal-code": [ "97204" ], "url": [ "https://aaronparecki.com/" ], "uid": [ "https://aaronparecki.com/" ], "photo": [ "https://aaronparecki.com/images/profile.jpg" ], "bday": [ "--12-28" ], "org": [ { "type": [ "h-card" ], "properties": { "name": [ "IndieWebCamp" ], "url": [ "https://indieweb.org/" ] }, "value": "IndieWebCamp" }, { "type": [ "h-card" ], "properties": { "name": [ "oauth.net" ], "url": [ "https://oauth.net/" ] }, "value": "oauth.net" }, { "type": [ "h-card" ], "properties": { "role": [ "Security Architect" ], "name": [ "Okta" ], "photo": [ "https://aaronparecki.com/images/okta.png" ], "url": [ "https://developer.okta.com/" ] }, "value": "Okta" }, { "type": [ "h-card" ], "properties": { "name": [ "IndieWebCamp" ], "role": [ "Founder" ], "photo": [ "https://aaronparecki.com/images/indiewebcamp.png" ], "url": [ "https://indieweb.org/" ] }, "value": "IndieWebCamp" }, { "type": [ "h-card" ], "properties": { "name": [ "OAuth WG" ], "role": [ "Member" ], "photo": [ "https://aaronparecki.com/images/ietf.ico" ], "url": [ "https://oauth.net" ] }, "value": "OAuth WG" } ] } } ], "rels": { "webmention": [ "https://webmention.io/aaronpk/webmention" ], "stylesheet": [ "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600&display=swap", "https://aaronparecki.com/semantic/2.2.6/semantic.min.css", "https://aaronparecki.com/assets/icomoon/style.css", "https://aaronparecki.com/assets/weather-icons/css/weather-icons.css", "https://aaronparecki.com/assets/featherlight-1.5.0/featherlight.min.css", "https://aaronparecki.com/assets/admin.2.css", "https://aaronparecki.com/assets/pulse.css", "https://aaronparecki.com/assets/styles.8.css", "https://aaronparecki.com/site/styles.2.css", "https://aaronparecki.com/assets/carbon.css", "https://aaronparecki.com/assets/story.css" ], "openid.delegate": [ "https://aaronparecki.com/" ], "openid.server": [ "https://openid.indieauth.com/openid" ], "prev": [ "https://aaronparecki.com/articles?before=20191212T181022-0800" ], "pgpkey": [ "https://aaronparecki.com/key.txt" ], "me": [ "sms:+15035678642", "https://micro.blog/aaronpk" ], "license": [ "http://creativecommons.org/licenses/by/3.0/" ] }, "rel-urls": { "https://webmention.io/aaronpk/webmention": { "rels": [ "webmention" ] }, "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600&display=swap": { "rels": [ "stylesheet" ] }, "https://aaronparecki.com/semantic/2.2.6/semantic.min.css": { "type": "text/css", "rels": [ "stylesheet" ] }, "https://aaronparecki.com/assets/icomoon/style.css": { "rels": [ "stylesheet" ] }, "https://aaronparecki.com/assets/weather-icons/css/weather-icons.css": { "rels": [ "stylesheet" ] }, "https://aaronparecki.com/assets/featherlight-1.5.0/featherlight.min.css": { "rels": [ "stylesheet" ] }, "https://aaronparecki.com/assets/admin.2.css": { "rels": [ "stylesheet" ] }, "https://aaronparecki.com/assets/pulse.css": { "rels": [ "stylesheet" ] }, "https://aaronparecki.com/assets/styles.8.css": { "rels": [ "stylesheet" ] }, "https://aaronparecki.com/site/styles.2.css": { "rels": [ "stylesheet" ] }, "https://aaronparecki.com/assets/carbon.css": { "rels": [ "stylesheet" ] }, "https://aaronparecki.com/assets/story.css": { "rels": [ "stylesheet" ] }, "https://aaronparecki.com/": { "rels": [ "openid.delegate" ] }, "https://openid.indieauth.com/openid": { "rels": [ "openid.server" ] }, "https://aaronparecki.com/articles?before=20191212T181022-0800": { "text": "\u2190 older", "rels": [ "prev" ] }, "https://aaronparecki.com/key.txt": { "rels": [ "pgpkey" ] }, "sms:+15035678642": { "rels": [ "me" ] }, "https://micro.blog/aaronpk": { "rels": [ "me" ] }, "http://creativecommons.org/licenses/by/3.0/": { "text": "Creative Commons Attribution 3.0 License", "rels": [ "license" ] } }, "debug": { "package": "https://packagist.org/packages/mf2/mf2", "source": "https://github.com/indieweb/php-mf2", "version": "0.4.6", "note": [ "This output was generated from the php-mf2 library available at https://github.com/indieweb/php-mf2", "Please file any issues with the parser at https://github.com/indieweb/php-mf2/issues", "Using the Masterminds HTML5 parser" ] } }