I’ve shaped this timeline over five months. It might look simple, but it most definitely was not. I liken it to chipping away at a block of marble, or the slow process of evolving a painting, or constructing a poem; endless edits, questions, doubling back, doubts. It was so good to have something meaty to get stuck into, but sometimes it was awful, and many times I considered throwing it away. Overall it was challenging, fun, and worth the effort.
Simon describes the process of curating the lovely timeline on his personal homepage.
My timeline is just like me, and just like my life: unfinished, and far from perfect.
{ "type": "entry", "published": "2019-07-19T18:31:09Z", "url": "https://adactio.com/links/15526", "category": [ "timeline", "homepage", "personal", "publishing", "curation", "indieweb", "life" ], "bookmark-of": [ "https://colly.com/journal/timeline" ], "content": { "text": "Simon Collison | Timeline\n\n\n\n\n I\u2019ve shaped this timeline over five months. It might look simple, but it most definitely was not. I liken it to chipping away at a block of marble, or the slow process of evolving a painting, or constructing a poem; endless edits, questions, doubling back, doubts. It was so good to have something meaty to get stuck into, but sometimes it was awful, and many times I considered throwing it away. Overall it was challenging, fun, and worth the effort.\n\n\nSimon describes the process of curating the lovely timeline on his personal homepage.\n\n\n My timeline is just like me, and just like my life: unfinished, and far from perfect.", "html": "<h3>\n<a class=\"p-name u-bookmark-of\" href=\"https://colly.com/journal/timeline\">\nSimon Collison | Timeline\n</a>\n</h3>\n\n<blockquote>\n <p>I\u2019ve shaped this timeline over five months. It might look simple, but it most definitely was not. I liken it to chipping away at a block of marble, or the slow process of evolving a painting, or constructing a poem; endless edits, questions, doubling back, doubts. It was so good to have something meaty to get stuck into, but sometimes it was awful, and many times I considered throwing it away. Overall it was challenging, fun, and worth the effort.</p>\n</blockquote>\n\n<p>Simon describes the process of curating the lovely timeline on his personal <a href=\"https://colly.com/\">homepage</a>.</p>\n\n<blockquote>\n <p>My timeline is just like me, and just like my life: unfinished, and far from perfect.</p>\n</blockquote>" }, "author": { "type": "card", "name": "Jeremy Keith", "url": "https://adactio.com/", "photo": "https://aperture-proxy.p3k.io/bbbacdf0a064621004f2ce9026a1202a5f3433e0/68747470733a2f2f6164616374696f2e636f6d2f696d616765732f70686f746f2d3135302e6a7067" }, "post-type": "bookmark", "_id": "4541308", "_source": "2", "_is_read": true }
This is a great how-to from Darius Kazemi!
The main reason to run a small social network site is that you can create an online environment tailored to the needs of your community in a way that a big corporation like Facebook or Twitter never could. Yes, you can always start a Facebook Group for your community and moderate that how you like, but only within certain bounds set by Facebook. If you (or your community) run the whole site, then you are ultimately the boss of what goes on. It is harder work than letting Facebook or Twitter or Slack or Basecamp or whoever else take care of everything, but I believe it’s worth it.
There’s a lot of good advice for community management and the whole thing is a lesson in writing excellent documentation.
{ "type": "entry", "published": "2019-07-15T12:31:11Z", "url": "https://adactio.com/links/15503", "category": [ "social", "networks", "indieweb", "documentation", "mastadon", "friends", "culture", "community" ], "bookmark-of": [ "https://runyourown.social/" ], "content": { "text": "How to run a small social network site for your friends\n\n\n\nThis is a great how-to from Darius Kazemi!\n\n\n The main reason to run a small social network site is that you can create an online environment tailored to the needs of your community in a way that a big corporation like Facebook or Twitter never could. Yes, you can always start a Facebook Group for your community and moderate that how you like, but only within certain bounds set by Facebook. If you (or your community) run the whole site, then you are ultimately the boss of what goes on. It is harder work than letting Facebook or Twitter or Slack or Basecamp or whoever else take care of everything, but I believe it\u2019s worth it.\n\n\nThere\u2019s a lot of good advice for community management and the whole thing is a lesson in writing excellent documentation.", "html": "<h3>\n<a class=\"p-name u-bookmark-of\" href=\"https://runyourown.social/\">\nHow to run a small social network site for your friends\n</a>\n</h3>\n\n<p>This is a <em>great</em> how-to from Darius Kazemi!</p>\n\n<blockquote>\n <p>The main reason to run a small social network site is that you can create an online environment tailored to the needs of your community in a way that a big corporation like Facebook or Twitter never could. Yes, you can always start a Facebook Group for your community and moderate that how you like, but only within certain bounds set by Facebook. If you (or your community) run the whole site, then you are ultimately the boss of what goes on. It is harder work than letting Facebook or Twitter or Slack or Basecamp or whoever else take care of everything, but I believe it\u2019s worth it.</p>\n</blockquote>\n\n<p>There\u2019s a lot of good advice for community management and the whole thing is a lesson in writing excellent documentation.</p>" }, "author": { "type": "card", "name": "Jeremy Keith", "url": "https://adactio.com/", "photo": "https://aperture-proxy.p3k.io/bbbacdf0a064621004f2ce9026a1202a5f3433e0/68747470733a2f2f6164616374696f2e636f6d2f696d616765732f70686f746f2d3135302e6a7067" }, "post-type": "bookmark", "_id": "4526552", "_source": "2", "_is_read": true }
Fetching profile information isn’t part of it because it lets people do it in the way that they feel most comfortable. Conventionally, though, you can pull the useful bits by fetching their h-card https://indieweb.org/h-card as noted here https://indieweb.org/IndieAuth#Where_do_I_get_user_information_from.3F
{ "type": "entry", "published": "2019-07-16T00:36:30.14383-07:00", "url": "https://v2.jacky.wtf/post/482a99db-4650-48df-910a-b162b828d265", "in-reply-to": [ "https://news.ycombinator.com/reply?id=20448151&goto=item%3Fid%3D20439703%2320448151" ], "content": { "text": "Fetching profile information isn\u2019t part of it because it lets people do it in the way that they feel most comfortable. Conventionally, though, you can pull the useful bits by fetching their h-card https://indieweb.org/h-card as noted here https://indieweb.org/IndieAuth#Where_do_I_get_user_information_from.3F", "html": "<p>Fetching profile information isn\u2019t part of it because it lets people do it in the way that they feel most comfortable. Conventionally, though, you can pull the useful bits by fetching their h-card <a href=\"https://indieweb.org/h-card\">https://indieweb.org/h-card</a> as noted here <a href=\"https://indieweb.org/IndieAuth#Where_do_I_get_user_information_from.3F\">https://indieweb.org/IndieAuth#Where_do_I_get_user_information_from.3F</a></p>" }, "author": { "type": "card", "name": "Jacky Alcin\u00e9", "url": "https://v2.jacky.wtf", "photo": "https://aperture-proxy.p3k.io/9f6c6c125a7640abc3c67f876753b4bf233d06d6/68747470733a2f2f76322e6a61636b792e7774662f6d656469612f70726f66696c652d696d616765" }, "post-type": "reply", "refs": { "https://news.ycombinator.com/reply?id=20448151&goto=item%3Fid%3D20439703%2320448151": { "type": "entry", "url": "https://news.ycombinator.com/reply?id=20448151&goto=item%3Fid%3D20439703%2320448151", "content": { "text": "news.ycombinator.com" }, "author": { "type": "card", "name": "news.ycombinator.com", "url": "https://news.ycombinator.com/reply?id=20448151&goto=item%3Fid%3D20439703%2320448151", "photo": null }, "post-type": "note" } }, "_id": "4483681", "_source": "1886", "_is_read": true }
That’s not true. People use popular things, not better or good. And I don’t think there is one yet but I refuse to wait on it. There’s some beginning thoughts on it via the IndieWeb imo (and this is after years of reading and discovery that I decided to double down on that)
{ "type": "entry", "published": "2019-07-15T12:49:00.00000-07:00", "url": "https://v2.jacky.wtf/post/7e66c49c-9424-4f1a-ad72-7cf4003713b0", "in-reply-to": [ "https://twitter.com/retornam/status/1150854366187806720?s=19" ], "content": { "text": "That\u2019s not true. People use popular things, not better or good. And I don\u2019t think there is one yet but I refuse to wait on it. There\u2019s some beginning thoughts on it via the IndieWeb imo (and this is after years of reading and discovery that I decided to double down on that)", "html": "<p>That\u2019s not true. People use popular things, not better or good. And I don\u2019t think there is one yet but I refuse to wait on it. There\u2019s some beginning thoughts on it via the IndieWeb imo (and this is after years of reading and discovery that I decided to double down on that)</p>" }, "author": { "type": "card", "name": "Jacky Alcin\u00e9", "url": "https://v2.jacky.wtf", "photo": "https://aperture-proxy.p3k.io/9f6c6c125a7640abc3c67f876753b4bf233d06d6/68747470733a2f2f76322e6a61636b792e7774662f6d656469612f70726f66696c652d696d616765" }, "post-type": "reply", "refs": { "https://twitter.com/retornam/status/1150854366187806720?s=19": { "type": "entry", "url": "https://twitter.com/retornam/status/1150854366187806720?s=19", "name": "qualiba on Twitter: \"So what\u2019s the best alternative? I\u2019m sure everyone would have moved there alr...", "content": { "text": "So what\u2019s the best alternative? I\u2019m sure everyone would have moved there already if there was" }, "post-type": "article" } }, "_id": "4476298", "_source": "1886", "_is_read": true }
Following on his post, I think I identify more like a “primitive” engineer that ends up working on product because I want to see the primitive used in a particular way. I see this with IndieWeb things I work on as well as other projects for work.
How do y’all identify? Primitives or product?
{ "type": "entry", "published": "2019-07-14T13:31:52.80628-07:00", "url": "https://v2.jacky.wtf/post/adbc6823-0eb0-4600-b8bd-36dd07779ca6", "in-reply-to": [ "https://v2.jacky.wtf/post/74807465-61c0-4363-87b0-65a2af3e93d1" ], "content": { "text": "Following on his post, I think I identify more like a \u201cprimitive\u201d engineer that ends up working on product because I want to see the primitive used in a particular way. I see this with IndieWeb things I work on as well as other projects for work.\nHow do y\u2019all identify? Primitives or product?", "html": "<p>Following on his post, I think I identify more like a \u201cprimitive\u201d engineer that ends up working on product because I want to see the primitive used in a particular way. I see this with IndieWeb things I work on as well as other projects for work.</p>\n<p>How do y\u2019all identify? Primitives or product?</p>" }, "author": { "type": "card", "name": "Jacky Alcin\u00e9", "url": "https://v2.jacky.wtf", "photo": "https://aperture-proxy.p3k.io/9f6c6c125a7640abc3c67f876753b4bf233d06d6/68747470733a2f2f76322e6a61636b792e7774662f6d656469612f70726f66696c652d696d616765" }, "post-type": "reply", "refs": { "https://v2.jacky.wtf/post/74807465-61c0-4363-87b0-65a2af3e93d1": { "type": "entry", "url": "https://v2.jacky.wtf/post/74807465-61c0-4363-87b0-65a2af3e93d1", "content": { "text": "@kwuchu goes into the difference between things you could make yourself versus people who make those things for you and can potentially make life easier (or worse).", "html": "<p><a href=\"https://iheanyi.com\">@kwuchu</a> goes into the difference between things you <em>could</em> make yourself versus people who make those things for you and can potentially make life easier (or worse).</p>" }, "post-type": "note" } }, "_id": "4459906", "_source": "1886", "_is_read": true }
{ "type": "entry", "published": "2019-07-13T15:05:44-0400", "url": "https://martymcgui.re/2019/07/13/indieweb-meetup-nyc-2019-07-13-wrap-up/", "category": [ "IndieWeb", "meetup", "NYC", "HWC", "wrap-up" ], "name": "IndieWeb Meetup NYC 2019-07-13 Wrap-Up", "content": { "text": "NYC's first IndieWeb Meetup of July 2019 took place at Devo\u00e7ion Coffee in Brooklyn, NY. Here are some notes from the meeting!\nrasulkireev.com (new!) \u2014 New to the IndieWeb and attending his first meetup! Has been building his own websites for a while, learning a lot about web development. Currently working on a version of his site based on Django, and interested in adding IndieWeb building blocks, starting with rel=me.\n\n martymcgui.re \u2014 Working on his write-up(s) post-IndieWeb Summit. Made some small progress today. \ud83d\ude05 Also wanting to streamline his iOS Shortcuts-based workflows for posting to his site, taking personal notes, etc.\n \n\nOther discussion:\nWe should bring signs or other IndieWeb indicators to these meetups! I'm so used to a few regulars that I didn't expect new folks. Thankfully Rasul found me! \ud83d\ude2c\n We talked about soooo many building blocks! Webmention (and how to use them to RSVP), Micropub (and how iOS Shortcuts can post using it), backfeed (responses from Twitter), storing data, hosting sites and content, learning new languages, learning new libraries, how and why to learn new web dev skills, and much more.\n How did you get started building websites? Despite starting many years apart, we both had stories of building websites for groups we were part of or businesses we knew people from.\n \n Staying in touch with the IndieWeb community, from chat (very high attention if you're in there all the time to low attention with the help of Loqi the chat bot and !tell commands) to the weekly newsletters.\n \n\nLeft-to-right: martymcgui.re, rasulkireev.com\n Thanks to Rasul for coming out for his first IndieWeb Meetup! We missed Tiara, who was stuck on Long Island due to extreme train schedule changes. We also missed Matt G, who was at a wedding, but working on his website in spirit.\n \n\n\n We look forward to seeing folks at the next meeting! Watch the Events page for details about the next meetup!", "html": "<p>NYC's first <a href=\"https://indieweb.org/events/2019-07-13-homebrew-website-club-nyc\">IndieWeb Meetup of July 2019</a> took place at <a href=\"https://www.devocion.com/pages/devocion-cafe-downtown-brooklyn-ny\">Devo\u00e7ion Coffee in Brooklyn, NY</a>. Here are some notes from the meeting!</p>\n<p>rasulkireev.com (new!) \u2014 New to the IndieWeb and attending his first meetup! Has been building his own websites for a while, learning a lot about web development. Currently working on a version of his site based on Django, and interested in adding IndieWeb building blocks, starting with <a href=\"https://indieweb.org/rel-me\">rel=me</a>.</p>\n<p>\n martymcgui.re \u2014 Working on his write-up(s) post-IndieWeb Summit. Made some small progress today. \ud83d\ude05 Also wanting to streamline his iOS Shortcuts-based workflows for posting to his site, taking personal notes, etc.\n <br /></p>\n<p>Other discussion:</p>\n<ul><li>We should bring signs or other IndieWeb indicators to these meetups! I'm so used to a few regulars that I didn't expect new folks. Thankfully Rasul found me! \ud83d\ude2c</li>\n <li>We talked about soooo many building blocks! <a href=\"https://indieweb.org/Webmention\">Webmention</a> (and how to use them to RSVP), <a href=\"https://indieweb.org/Micropub\">Micropub</a> (and how iOS Shortcuts can post using it), <a href=\"https://indieweb.org/backfeed\">backfeed</a> (responses from Twitter), storing data, hosting sites and content, learning new languages, learning new libraries, how and why to learn new web dev skills, and much more.</li>\n <li>How did you get started building websites? Despite starting many years apart, we both had stories of building websites for groups we were part of or businesses we knew people from.</li>\n <li>\n Staying in touch with the IndieWeb community, from chat (very high attention if you're in there all the time to low attention with the help of Loqi the chat bot and !tell commands) to the weekly newsletters.\n <br /></li>\n</ul><img src=\"https://aperture-proxy.p3k.io/90143ea04d941505016760afb878e401a0071901/68747470733a2f2f6d656469612e6d617274796d636775692e72652f34362f36612f39342f35302f37393938613833313736366537643335626638653137306337386233356262386437326531313736656239343736393362376534313861642e6a7067\" alt=\"\" />Left-to-right: martymcgui.re, rasulkireev.com<p>\n Thanks to Rasul for coming out for his first IndieWeb Meetup! We missed Tiara, who was stuck on Long Island due to extreme train schedule changes. We also missed Matt G, who was at a wedding, but working on his website in spirit.\n <br /></p>\n<p>\n We look forward to seeing folks at the next meeting! Watch the <a href=\"https://indieweb.org/events/\">Events page</a> for details about the next meetup!\n <br /></p>" }, "author": { "type": "card", "name": "Marty McGuire", "url": "https://martymcgui.re/", "photo": "https://aperture-proxy.p3k.io/8275f85e3a389bd0ae69f209683436fc53d8bad9/68747470733a2f2f6d617274796d636775692e72652f696d616765732f6c6f676f2e6a7067" }, "post-type": "article", "_id": "4448092", "_source": "175", "_is_read": true }
{ "type": "entry", "published": "2019-07-13T14:37:41-0400", "url": "https://martymcgui.re/2019/07/13/143741/", "photo": [ "https://res.cloudinary.com/schmarty/image/fetch/w_960,c_fill/https://media.martymcgui.re/ac/37/b2/ca/01c1a984a103e95a12c4e3d3ff3b0e722e55e15edd65402696bb8175.jpg" ], "content": { "text": "Photo for today\u2019s IndieWeb Meetup NYC!", "html": "<a href=\"https://media.martymcgui.re/ac/37/b2/ca/01c1a984a103e95a12c4e3d3ff3b0e722e55e15edd65402696bb8175.jpg\"></a>\n\n <p>Photo for today\u2019s IndieWeb Meetup NYC!</p>" }, "author": { "type": "card", "name": "Marty McGuire", "url": "https://martymcgui.re/", "photo": "https://aperture-proxy.p3k.io/8275f85e3a389bd0ae69f209683436fc53d8bad9/68747470733a2f2f6d617274796d636775692e72652f696d616765732f6c6f676f2e6a7067" }, "post-type": "photo", "refs": { "https://res.cloudinary.com/schmarty/image/fetch/w_960,c_fill/https://media.martymcgui.re/ac/37/b2/ca/01c1a984a103e95a12c4e3d3ff3b0e722e55e15edd65402696bb8175.jpg": { "type": "image", "ratio": 1.33, "bytes": 134533 } }, "_id": "4448093", "_source": "175", "_is_read": true }
Going to stick to using Koype Publish now as my Micropub client of choice. This way, I can make sure features are tested in the real world (testing in production, anyone?) and that they continue to make sense. I definitely enjoy the automatic formatting detection in the editor - makes it easy to just keep typing. I'd want an option for intelligent character insertion (like quotation marks, da...
{ "type": "entry", "published": "2019-07-13T13:14:32.14382-07:00", "url": "https://v2.jacky.wtf/post/142a0d7a-ab69-410f-925e-ac8539d46d54", "category": [ "koype" ], "content": { "text": "Going to stick to using Koype Publish now as my Micropub client of choice. This way, I can make sure features are tested in the real world (testing in production, anyone?) and that they continue to make sense. I definitely enjoy the automatic formatting detection in the editor - makes it easy to just keep typing. I'd want an option for intelligent character insertion (like quotation marks, da...", "html": "<p>Going to stick to using <a href=\"https://publish.koype.net\">Koype Publish</a> now as my <a href=\"https://indieweb.org/Micropub/Clients\">Micropub client</a> of choice. This way, I can make sure features are tested in the real world (testing in production, anyone?) and that they continue to make sense. I <i>definitely</i> enjoy the automatic formatting detection in the editor - makes it easy to just keep typing. I'd want an option for intelligent character insertion (like quotation marks, da...\n </p>" }, "author": { "type": "card", "name": "Jacky Alcin\u00e9", "url": "https://v2.jacky.wtf", "photo": "https://aperture-proxy.p3k.io/9f6c6c125a7640abc3c67f876753b4bf233d06d6/68747470733a2f2f76322e6a61636b792e7774662f6d656469612f70726f66696c652d696d616765" }, "post-type": "note", "_id": "4446954", "_source": "1886", "_is_read": true }
Alright, so the latest version of https://publish.koype.net supports images. I’m going to have to make a light stylesheet to impose some visual constraints on my end. Namely on the maximum dimensions that images can have in the editor. I’m also itching to have extend Koype’s implementation of Micropub to allow for template blocks to be sent back. This way, I’d know how exactly to send what an image should look like to the endpoint under the user’s ex...
{ "type": "entry", "published": "2019-07-13T11:07:09.45855-07:00", "url": "https://v2.jacky.wtf/post/7fad2543-5ec2-4eb9-bacc-6f8ee7fea617", "content": { "text": "Alright, so the latest version of https://publish.koype.net supports images. I\u2019m going to have to make a light stylesheet to impose some visual constraints on my end. Namely on the maximum dimensions that images can have in the editor. I\u2019m also itching to have extend Koype\u2019s implementation of Micropub to allow for template blocks to be sent back. This way, I\u2019d know how exactly to send what an image should look like to the endpoint under the user\u2019s ex...", "html": "<p>Alright, so the latest version of <a href=\"https://publish.koype.net\">https://publish.koype.net</a> supports images. I\u2019m going to have to make a light stylesheet to impose some visual constraints on my end. Namely on the maximum dimensions that images can have in the editor. I\u2019m also itching to have extend Koype\u2019s implementation of Micropub to allow for template blocks to be sent back. This way, I\u2019d know how exactly to send what an image should look like to the endpoint under the user\u2019s ex...\n </p>" }, "author": { "type": "card", "name": "Jacky Alcin\u00e9", "url": "https://v2.jacky.wtf", "photo": "https://aperture-proxy.p3k.io/9f6c6c125a7640abc3c67f876753b4bf233d06d6/68747470733a2f2f76322e6a61636b792e7774662f6d656469612f70726f66696c652d696d616765" }, "post-type": "note", "_id": "4445560", "_source": "1886", "_is_read": true }
{ "type": "event", "name": "Homebrew Website Club SF!", "summary": "Homebrew Website Club retro 1980s-style logo\nTopics for this week: IndieWeb Summit Notes & Videos! Upcoming IndieWebCamps! IndieWebCamp Amsterdam IndieWebCamp Oxford IndieWebCamp Brighton Take Back Your Web talk at Beyond Tellerand D\u00fcsseldorf The New Yorker: Can Indie Social Media Save Us Demos of personal website breakthroughs Create or update your personal web site!\nJoin a community with like-minded interests. Bring friends that want a personal site, or are interested in a healthy, independent web!\nAny questions? Ask in #indieweb Slack or IRC\nMore information: IndieWeb Wiki Event Page\nRSVP: post an indie RSVP on your own site!", "published": "2019-07-10 21:57-0700", "start": "2019-07-24 17:30-0700", "end": "2019-07-24 19:00-0700", "url": "http://tantek.com/2019/205/e1/homebrew-website-club-sf", "location": [ "https://wiki.mozilla.org/SF" ], "content": { "text": "When: 2019-07-24 17:30\u202619:00\nWhere: Mozilla San Francisco\n\nHost: Tantek \u00c7elik\n\n\n\nTopics for this week:\nIndieWeb Summit Notes & Videos!\nUpcoming IndieWebCamps!\nIndieWebCamp Amsterdam\nIndieWebCamp Oxford\nIndieWebCamp Brighton\n\n\nTake Back Your Web talk at Beyond Tellerand D\u00fcsseldorf\nThe New Yorker: Can Indie Social Media Save Us\nDemos of personal website breakthroughs\nCreate or update your personal web site!\n\nJoin a community with like-minded interests. Bring friends that want a personal site, or are interested in a healthy, independent web!\n\n\nAny questions? Ask in \n#indieweb Slack or IRC\n\n\nMore information: \nIndieWeb Wiki Event Page\n\n\nRSVP: post an indie RSVP on your own site!", "html": "<p>\nWhen: <time class=\"dt-start\">2019-07-24 17:30</time>\u2026<time class=\"dt-end\">19:00</time><span>\nWhere: <a class=\"u-location h-card\" href=\"https://wiki.mozilla.org/SF\">Mozilla San Francisco</a>\n</span>\nHost: <a class=\"u-organizer h-card\" href=\"http://tantek.com/\">Tantek \u00c7elik</a>\n</p>\n\n<p><img class=\"u-featured\" style=\"height:300px;\" src=\"https://aperture-media.p3k.io/indieweb.org/c24f7b1e711955ef818bde12e2a3e79708ecc9b106d95b460a9fefe93b0be723.jpg\" alt=\"Homebrew Website Club retro 1980s-style logo\" /></p>\n<p>Topics for this week:</p>\n<ul><li>IndieWeb Summit <a href=\"https://indieweb.org/2019/Schedule\">Notes & Videos</a>!</li>\n<li>Upcoming IndieWebCamps!\n<ul><li><a href=\"https://indieweb.org/2019/Amsterdam\">IndieWebCamp Amsterdam</a></li>\n<li><a href=\"https://indieweb.org/2019/Oxford\">IndieWebCamp Oxford</a></li>\n<li><a href=\"https://indieweb.org/2019/Brighton\">IndieWebCamp Brighton</a></li>\n</ul></li>\n<li>\n<a href=\"https://vimeo.com/336343886\">Take Back Your Web</a> talk at Beyond Tellerand D\u00fcsseldorf</li>\n<li><a href=\"https://www.newyorker.com/tech/annals-of-technology/can-indie-social-media-save-us\">The New Yorker: Can Indie Social Media Save Us</a></li>\n<li>Demos of personal website breakthroughs</li>\n<li>Create or update your personal web site!</li>\n</ul><p>\nJoin a community with like-minded interests. Bring friends that want a personal site, or are interested in a healthy, independent web!\n</p>\n<p>\nAny questions? Ask in \n<a href=\"https://indieweb.org/discuss\">#indieweb Slack or IRC</a>\n</p>\n<p>\nMore information: \n<a class=\"u-url\" href=\"https://indieweb.org/events/2019-07-24-homebrew-website-club\">IndieWeb Wiki Event Page</a>\n</p>\n<p>\nRSVP: post an <a href=\"https://indieweb.org/rsvp\">indie RSVP</a> on your own site!\n</p>" }, "post-type": "event", "refs": { "https://wiki.mozilla.org/SF": { "type": "card", "name": "Mozilla San Francisco", "url": "https://wiki.mozilla.org/SF", "photo": null } }, "_id": "4408168", "_source": "1", "_is_read": true }
Some things captured from HWC SF 2019-07-10
destination
in the config
{ "type": "entry", "published": "2019-07-10T19:59:01.59451-07:00", "url": "https://v2.jacky.wtf/post/1d71ccda-5920-46bb-b985-3dfd705915b0", "category": [ "indieweb", "hwc", "hwc-sf" ], "content": { "text": "Some things captured from HWC SF 2019-07-10\n\nmp-destination command should use destination in the config\n\n\nProposed a new query parameter to manipulate rel=me values\n\nChat logs spawned from offline convers...", "html": "<p>Some things captured from <a href=\"https://indieweb.org/events/2019-07-10-homebrew-website-club#San_Francisco\">HWC SF 2019-07-10</a></p>\n<ul><li>\n<a href=\"https://github.com/indieweb/micropub-extensions/issues/3\">mp-destination command should use <code>destination</code> in the config</a>\n</li>\n<li>\n<a href=\"https://github.com/indieweb/micropub-extensions/issues/22\">Proposed a new query parameter to manipulate rel=me values</a>\n</li>\n<li>Chat logs spawned from offline convers...\n </li>\n</ul>" }, "author": { "type": "card", "name": "Jacky Alcin\u00e9", "url": "https://v2.jacky.wtf", "photo": "https://aperture-proxy.p3k.io/9f6c6c125a7640abc3c67f876753b4bf233d06d6/68747470733a2f2f76322e6a61636b792e7774662f6d656469612f70726f66696c652d696d616765" }, "post-type": "note", "_id": "4407118", "_source": "1886", "_is_read": true }
{ "type": "event", "name": "Homebrew Website Club SF!", "summary": "Homebrew Website Club retro 1980s-style logo\nTopics for this week: IndieWeb Summit Notes & Videos! Upcoming IndieWebCamps! IndieWebCamp Amsterdam IndieWebCamp Oxford IndieWebCamp Brighton Take Back Your Web talk at Beyond Tellerand D\u00fcsseldorf The New Yorker: Can Indie Social Media Save Us Demos of personal website breakthroughs Create or update your personal web site!\nJoin a community with like-minded interests. Bring friends that want a personal site, or are interested in a healthy, independent web!\nAny questions? Ask in #indieweb Slack or IRC\nMore information: IndieWeb Wiki Event Page\nRSVP: post an indie RSVP on your own site!", "published": "2019-07-10 15:31-0700", "start": "2019-07-10 17:30-0700", "end": "2019-07-10 19:00-0700", "url": "http://tantek.com/2019/191/e1/homebrew-website-club-sf", "location": [ "https://wiki.mozilla.org/SF" ], "content": { "text": "When: 2019-07-10 17:30\u202619:00\nWhere: Mozilla San Francisco\n\nHost: Tantek \u00c7elik\n\n\n\nTopics for this week:\nIndieWeb Summit Notes & Videos!\nUpcoming IndieWebCamps!\nIndieWebCamp Amsterdam\nIndieWebCamp Oxford\nIndieWebCamp Brighton\n\n\nTake Back Your Web talk at Beyond Tellerand D\u00fcsseldorf\nThe New Yorker: Can Indie Social Media Save Us\nDemos of personal website breakthroughs\nCreate or update your personal web site!\n\nJoin a community with like-minded interests. Bring friends that want a personal site, or are interested in a healthy, independent web!\n\n\nAny questions? Ask in \n#indieweb Slack or IRC\n\n\nMore information: \nIndieWeb Wiki Event Page\n\n\nRSVP: post an indie RSVP on your own site!", "html": "<p>\nWhen: <time class=\"dt-start\">2019-07-10 17:30</time>\u2026<time class=\"dt-end\">19:00</time><span>\nWhere: <a class=\"u-location h-card\" href=\"https://wiki.mozilla.org/SF\">Mozilla San Francisco</a>\n</span>\nHost: <a class=\"u-organizer h-card\" href=\"http://tantek.com/\">Tantek \u00c7elik</a>\n</p>\n\n<p><img class=\"u-featured\" style=\"height:300px;\" src=\"https://aperture-media.p3k.io/indieweb.org/c24f7b1e711955ef818bde12e2a3e79708ecc9b106d95b460a9fefe93b0be723.jpg\" alt=\"Homebrew Website Club retro 1980s-style logo\" /></p>\n<p>Topics for this week:</p>\n<ul><li>IndieWeb Summit <a href=\"https://indieweb.org/2019/Schedule\">Notes & Videos</a>!</li>\n<li>Upcoming IndieWebCamps!\n<ul><li><a href=\"https://indieweb.org/2019/Amsterdam\">IndieWebCamp Amsterdam</a></li>\n<li><a href=\"https://indieweb.org/2019/Oxford\">IndieWebCamp Oxford</a></li>\n<li><a href=\"https://indieweb.org/2019/Brighton\">IndieWebCamp Brighton</a></li>\n</ul></li>\n<li>\n<a href=\"https://vimeo.com/336343886\">Take Back Your Web</a> talk at Beyond Tellerand D\u00fcsseldorf</li>\n<li><a href=\"https://www.newyorker.com/tech/annals-of-technology/can-indie-social-media-save-us\">The New Yorker: Can Indie Social Media Save Us</a></li>\n<li>Demos of personal website breakthroughs</li>\n<li>Create or update your personal web site!</li>\n</ul><p>\nJoin a community with like-minded interests. Bring friends that want a personal site, or are interested in a healthy, independent web!\n</p>\n<p>\nAny questions? Ask in \n<a href=\"https://indieweb.org/discuss\">#indieweb Slack or IRC</a>\n</p>\n<p>\nMore information: \n<a class=\"u-url\" href=\"https://indieweb.org/events/2019-07-10-homebrew-website-club\">IndieWeb Wiki Event Page</a>\n</p>\n<p>\nRSVP: post an <a href=\"https://indieweb.org/rsvp\">indie RSVP</a> on your own site!\n</p>" }, "post-type": "event", "refs": { "https://wiki.mozilla.org/SF": { "type": "card", "name": "Mozilla San Francisco", "url": "https://wiki.mozilla.org/SF", "photo": null } }, "_id": "4404787", "_source": "1", "_is_read": true }
Check out https://indieweb.org/events/2019-07-10-homebrew-website-club for some of the talking points we’ll discuss at HWC SF tonight!
{ "type": "entry", "published": "2019-07-10T15:42:46.05853-07:00", "url": "https://v2.jacky.wtf/post/bae656da-85fc-4132-b3f7-04e9e4cb7ef5", "category": [ "hwc", "hwc-sf" ], "in-reply-to": [ "https://indieweb.org/events/2019-07-10-homebrew-website-clubhttps://tantek.com/2019/191/e1/homebrew-website-club-sf" ], "content": { "text": "Check out https://indieweb.org/events/2019-07-10-homebrew-website-club for some of the talking points we\u2019ll discuss at HWC SF tonight!", "html": "<p>Check out <a href=\"https://indieweb.org/events/2019-07-10-homebrew-website-club\">https://indieweb.org/events/2019-07-10-homebrew-website-club</a> for some of the talking points we\u2019ll discuss at HWC SF tonight!</p>" }, "author": { "type": "card", "name": "Jacky Alcin\u00e9", "url": "https://v2.jacky.wtf", "photo": "https://aperture-proxy.p3k.io/9f6c6c125a7640abc3c67f876753b4bf233d06d6/68747470733a2f2f76322e6a61636b792e7774662f6d656469612f70726f66696c652d696d616765" }, "post-type": "reply", "refs": { "https://indieweb.org/events/2019-07-10-homebrew-website-clubhttps://tantek.com/2019/191/e1/homebrew-website-club-sf": { "type": "entry", "url": "https://indieweb.org/events/2019-07-10-homebrew-website-clubhttps://tantek.com/2019/191/e1/homebrew-website-club-sf", "name": "Homebrew Website Club SF!", "post-type": "article" } }, "_id": "4404450", "_source": "1886", "_is_read": true }
That’s if you choose to host it with those providers. And owing the means of producing your site (like the data needed to rebuild it) is way more useful than what most hosted solutions provide. There’s some bits on the IndieWeb wiki about this
{ "type": "entry", "published": "2019-07-09T23:50:00.00000-07:00", "url": "https://v2.jacky.wtf/post/85ade5f8-59cf-4e3c-9c18-a2aad87d7a88", "in-reply-to": [ "https://twitter.com/radhikamorabia/status/1148846386420391936?s=19" ], "content": { "text": "That\u2019s if you choose to host it with those providers. And owing the means of producing your site (like the data needed to rebuild it) is way more useful than what most hosted solutions provide. There\u2019s some bits on the IndieWeb wiki about this", "html": "<p>That\u2019s if you choose to host it with those providers. And owing the means of producing your site (like the data needed to rebuild it) is way more useful than what most hosted solutions provide. There\u2019s some bits on the IndieWeb wiki about this</p>" }, "author": { "type": "card", "name": "Jacky Alcin\u00e9", "url": "https://v2.jacky.wtf", "photo": "https://aperture-proxy.p3k.io/9f6c6c125a7640abc3c67f876753b4bf233d06d6/68747470733a2f2f76322e6a61636b792e7774662f6d656469612f70726f66696c652d696d616765" }, "post-type": "reply", "refs": { "https://twitter.com/radhikamorabia/status/1148846386420391936?s=19": { "type": "entry", "url": "https://twitter.com/radhikamorabia/status/1148846386420391936?s=19", "name": "Radhika Morabia \ud83c\udff3\ufe0f\u200d\ud83c\udf08 on Twitter: \"It's midnight, can I ask a contentious question? What's the point...", "content": { "text": "It's midnight, can I ask a contentious question?\n\n\nWhat's the point of all of us having independent blogs when all of our stuff is inevitably hosted and thereby controlled by Microsoft, Google, and Amazon?\n\n\nIf Microsoft deleted my GitHub and AWS shut down, I'm dead online.", "html": "It's midnight, can I ask a contentious question?<br /><br />\nWhat's the point of all of us having independent blogs when all of our stuff is inevitably hosted and thereby controlled by Microsoft, Google, and Amazon?<br /><br />\nIf Microsoft deleted my GitHub and AWS shut down, I'm dead online." }, "post-type": "article" } }, "_id": "4392374", "_source": "1886", "_is_read": true }
{ "type": "entry", "published": "2019-07-09T00:49:16+0000", "url": "http://known.kevinmarks.com/2019/is-this-a-fake-post-for-webmention", "in-reply-to": [ "https://freek.dev/1390-improving-assertions-on-laravel-fakes" ], "content": { "text": "Is this a fake post for webmention purposes?" }, "author": { "type": "card", "name": "Kevin Marks", "url": "http://known.kevinmarks.com/profile/kevinmarks", "photo": "https://aperture-proxy.p3k.io/ed7979fd10a648fc253eae0b54e66fb36e57d3d4/687474703a2f2f6b6e6f776e2e6b6576696e6d61726b732e636f6d2f66696c652f3932353536353636363931373362373836376162383339656536353536663965" }, "post-type": "reply", "_id": "4373798", "_source": "205", "_is_read": true }
Lol that’d be wild! So I’m posting from my site first then sending it to Twitter using this IndieWeb service called https://brid.gy.
{ "type": "entry", "published": "2019-07-08T17:59:00.00000-07:00", "url": "https://v2.jacky.wtf/post/7f62d450-a814-4287-be1d-745697c0ca14", "in-reply-to": [ "https://twitter.com/kchowse/status/1148390969181532160?s=19" ], "content": { "text": "Lol that\u2019d be wild! So I\u2019m posting from my site first then sending it to Twitter using this IndieWeb service called https://brid.gy.", "html": "<p>Lol that\u2019d be wild! So I\u2019m posting from my site first then sending it to Twitter using this IndieWeb service called <a href=\"https://brid.gy\">https://brid.gy</a>.</p>" }, "author": { "type": "card", "name": "Jacky Alcin\u00e9", "url": "https://v2.jacky.wtf", "photo": "https://aperture-proxy.p3k.io/9f6c6c125a7640abc3c67f876753b4bf233d06d6/68747470733a2f2f76322e6a61636b792e7774662f6d656469612f70726f66696c652d696d616765" }, "post-type": "reply", "refs": { "https://twitter.com/kchowse/status/1148390969181532160?s=19": { "type": "entry", "url": "https://twitter.com/kchowse/status/1148390969181532160?s=19", "name": "Kendall Howse on Twitter: \"Bruh, wtf is this Bridge response? It _looks_ like you've got an autom...", "content": { "text": "Bruh, wtf is this Bridge response? It _looks_ like you've got an automated \"if I had the time\" response which would be ingenious." }, "post-type": "article" } }, "_id": "4372686", "_source": "1886", "_is_read": true }
{ "type": "entry", "published": "2019-07-08T22:16:00+00:00", "url": "https://cleverdevil.io/2019/congrats-and-welcome-to-the-indieweb-lance", "in-reply-to": [ "https://lzahq.tech/2019/07/07/hello-world/" ], "content": { "text": "Congrats and welcome to the IndieWeb, Lance!" }, "author": { "type": "card", "name": "Jonathan LaCour", "url": "https://cleverdevil.io/profile/cleverdevil", "photo": "https://aperture-proxy.p3k.io/77e5d6e5871324c43aebf2e3e7a5553e14578f66/68747470733a2f2f636c65766572646576696c2e696f2f66696c652f66646263373639366135663733383634656131316138323863383631653133382f7468756d622e6a7067" }, "post-type": "reply", "_id": "4370988", "_source": "71", "_is_read": true }
{ "type": "entry", "author": { "name": "Manton Reece", "url": "https://www.manton.org/", "photo": "https://aperture-proxy.p3k.io/907926e361383204bd1bc913c143c23e70ae69bb/68747470733a2f2f6d6963726f2e626c6f672f6d616e746f6e2f6176617461722e6a7067" }, "url": "https://www.manton.org/2019/07/08/interview-with-indieweb.html", "name": "Interview with IndieWeb co-founders", "content": { "html": "<p><em>Last year after IndieWeb Summit in Portland, I sat down with IndieWeb co-founders <a href=\"https://tantek.com\">Tantek \u00c7elik</a> and <a href=\"https://aaronparecki.com\">Aaron Parecki</a> to talk about the history of IndieWebCamp for my upcoming book, Indie Microblogging. Only part of the interview will fit in the book, so I\u2019m including a full transcript of our conversation below <a href=\"https://github.com/microdotblog/indie-microblogging/blob/master/interviews/indieweb-founders.md\">and on GitHub</a>, where I\u2019ll be incorporating any edits and also publishing future chapter drafts.</em></p>\n\n<p><strong>Manton:</strong> Take me back to 2011: the founding of IndieWebCamp. What did that feel like? How you all got together. How the first IndieWebCamp got started.</p>\n\n<p><strong>Tantek:</strong> You weren\u2019t at the <a href=\"https://indieweb.org/Federated_Social_Web_Summit\">Federated Social Web Summit</a> in 2010, were you? Did you hear about it? Did it even cross your radar?</p>\n\n<p><strong>Manton:</strong> I assume it did. But that\u2019s already been a while.</p>\n\n<p><strong>Aaron:</strong> Nine years ago\u2026</p>\n\n<p><strong>Tantek:</strong> Because I think that\u2019s where the inspiration originally came from.</p>\n\n<p><strong>Aaron:</strong> So 2010 was the Federated Social Web Summit \u2014 in Portland \u2014 and that was the invite-only but \u201cyou could kind of ask for an invite\u201d-style event.</p>\n\n<p><strong>Tantek:</strong> Which we now know greatly biases towards people that feel privileged enough to ask for an invite, so it\u2019s sort of a bad way to do it. I didn\u2019t even put that together until the last year. Yeah, don\u2019t do that kind of private conference.</p>\n\n<p><strong>Aaron:</strong> So I ended up there, Tantek, as well as a bunch of others. It was a fun group, but the thing that we took out of it was that the focus seemed to be on people building things for other people, building specifically platforms. They were coming with platforms and trying to make them work together. Which is a fine goal, but that wasn\u2019t my personal interest in it necessarily. So it was more like, \u201coh, I have this Buddycloud thing, let\u2019s make it work with Friendica\u201d. Or Diaspora was there.</p>\n\n<p><strong>Tantek:</strong> The Diaspora 4 were there, which was cool. That\u2019s where I really got to spend time with them.</p>\n\n<p><strong>Aaron:</strong> And there was also a lot of solving problems in theory without actually testing them out or building something first. And a couple of pretty in the weeds discussions that I ended up sitting in on and was like, \u201cthis is really complicated\u201d. I feel like there is a better solution. That was where <a href=\"https://indieweb.org/SWAT0\">SWAT0</a> the concept was formed as well, right? Interoperability tests between social networks \u2014 can someone post a photo of somebody else using a different system be notified that they were tagged in a photo and then a third person comment on the photo and have that comment notification appear on the person who favorited it. Everybody has to be using different software for that test to pass. SWAT0: social web acid test.</p>\n\n<p><strong>Tantek:</strong> It was actually really hard.</p>\n\n<p><strong>Aaron:</strong> Very hard. It still is.</p>\n\n<p><strong>Tantek:</strong> As far as we could tell no one actually got it to work across different sites.</p>\n\n<p><strong>Aaron:</strong> The goal with SWAT0 was to have three different systems interoperating. Several people claimed that they supported everything needed for SWAT0 themselves. But by definition that doesn\u2019t solve SWAT0 because you need three different implementations. So there were several people who were like, \u201cI can be every person in this \u2014 every role in this test\u201d. But then there\u2019s no one to test it with, because only one person would do that at a time. And we are still kind of in that situation sadly. It\u2019s still a very hard problem. We did in 2015 have a demo of it working between three different recommendations, although each implementation only was able to be one or two of the roles of the three.</p>\n\n<p><strong>Manton:</strong> And that was using <a href=\"https://indieweb.org/Webmention\">Webmention</a>?</p>\n\n<p><strong>Aaron:</strong> Yeah, exactly.</p>\n\n<p><strong>Manton:</strong> So back in 2002 what was the technology to.. It was way after <a href=\"https://indieweb.org/pingback\">Pingbacks</a> and <a href=\"https://en.wikipedia.org/wiki/Trackback\">Trackbacks</a>.</p>\n\n<p><strong>Aaron:</strong> Yeah, the thought was the <a href=\"https://www.w3.org/community/ostatus/wiki/Main_Page\">OStatus</a> stack. <a href=\"https://tools.ietf.org/html/rfc4287\">Atom</a>. <a href=\"https://en.wikipedia.org/wiki/Salmon_(protocol)\">Salmon</a> for the responses.</p>\n\n<p><strong>Tantek:</strong> <a href=\"https://github.com/pubsubhubbub/\">PubSubHubbub</a>, I think.</p>\n\n<p><strong>Aaron:</strong> I believe so, yeah. For finding the photo in the first place.</p>\n\n<p><strong>Tantek:</strong> But Salmon for the notification.</p>\n\n<p><strong>Aaron:</strong> Salmon for the notification of the comment. But in order for someone to see it in the first place they would be following an Atom feed, probably, with PubSubHubbub.</p>\n\n<p><strong>Manton:</strong> And so now Salmon is making a comeback with Mastodon, right?</p>\n\n<p><strong>Aaron:</strong> No, it\u2019s already done.</p>\n\n<p><strong>Manton:</strong> It did briefly make a comeback and then got replaced.</p>\n\n<p><strong>Aaron:</strong> Mastodon ripped out their whole code and replaced it with <a href=\"https://www.w3.org/TR/activitypub/\">ActivityPub</a>. So after that event we were like, \u201cokay, that was cool, but we want to focus on people being more empowered individually to participate in this federated network.\u201d</p>\n\n<p><strong>Tantek:</strong> Everyone got to give lightning talks. That was part of it.</p>\n\n<p><strong>Aaron:</strong> Yeah, yeah.</p>\n\n<p><strong>Tantek:</strong> Which was great. About any topic, like why they were there and\u2026 What was your lightning talk on?</p>\n\n<p><strong>Aaron:</strong> Probably location stuff, because I was just starting geolocate at the time. But the sense I got was that the assumption was that in order to participate in a federated social network, you have to be on a platform that supports the protocols. The only way to do that was that if someone built the platform that interoperates with other platforms, and then you as an individual join one of those platforms. There was no \u201cjust my web site\u201d.</p>\n\n<p><strong>Tantek:</strong> Or one-person platform.</p>\n\n<p><strong>Aaron:</strong> Or single-person platforms was like: why would you do that? That was the feeling there. That was why we did <a href=\"https://indieweb.org/IndieWebCamps\">IndieWebCamp</a> the year after, because we wanted to approach it from the grassroots of: someone should be able to take their web site and be able to use their web site to participate in the same distributed social network \u2014 federated social network.</p>\n\n<p><strong>Manton:</strong> As the conference was wrapping up, did you have a feeling that y\u2019all would probably do IndieWebCamp, or was it making friends and catching up with people.</p>\n\n<p><strong>Tantek:</strong> We were mostly catching up with people, meeting new people. I was just looking at my notes, because I actually put my entire talk from it on their wiki because it\u2019s like that\u2019s how it\u2019ll survive. Turns out wikis are more persistent than PowerPoint.</p>\n\n<p><strong>Manton:</strong> So in that time\u2026 2010 is actually a really interesting time because Twitter had been around for a few years and really gained a lot of steam, and actually a lot of early bloggers \u2014 who were blogging all the time in the early days \u2014 around 2010-ish they dropped off. They started just doing Twitter.</p>\n\n<p><strong>Tantek:</strong> Even just 2009\u2026</p>\n\n<p><strong>Manton:</strong> Twitter satisfied that \u201cI\u2019m going to post something\u201d. And you can see that. I went back recently and looked at a bunch of people that were doing blogging software. Founders of Blogger, Movable Type, and <a href=\"https://en.wikipedia.org/wiki/Six_Apart\">Six Apart</a> people. And very few of them kept their blog through that period. So could you sense that at the time?</p>\n\n<p><strong>Tantek:</strong> Totally. Just even personally, the last blog post I wrote on my old blog was in August of 2008. I did not have anything on my own site in 2009. 2009 was a really weird transitional period, because I both saw that happening and I saw it happening to myself. And then the other thing that happened simultaneously \u2014 which I think helped \u2014 is that Twitter was really unreliable in 2009. We all switched to Twitter and then it got really unreliable. It was so frustrating.</p>\n\n<p><strong>Tantek:</strong> First of all I\u2019m embarrassed that I\u2019m not posting to my own site anymore, and then I\u2019m frustrated because this damn tool is never up. And that\u2019s really where I came up with the idea of, well, I should post to my own site and if I could set up a system where I can always just post to my own site, whether or not Twitter was down, then I can just have my site post to Twitter when it comes back up. And I can abstract away that frustration of their site being down. Abstract away their unreliability, while still getting that participation with friends thing. So 2009 is when I started working on what\u2019s now my web site. Launched in 2010. January 1st, I\u2019m like: from now on everything is going on my site first.</p>\n\n<p><strong>Tantek:</strong> And then the Federated Social Web Summit happened and I was like, \u201cwoah, okay\u201d. But the platform perspective that Aaron was pointing out. Wait a minute, you don\u2019t need to use a whole platform. Everyone can do this themselves. So that was my lightning talk, basically, and it even ended with\u2026 I\u2019ll show you the summary: use your own site as your identity; publish on your own site; and then syndicate with PubSubHubbub. That\u2019s still true.</p>\n\n<p><strong>Manton:</strong> And the first one, importantly\u2026 The very first principle of the <a href=\"https://indieweb.org/principles\">IndieWeb principles</a> is that. Use your own site, own your own content. Domain names are a big part of that. Really the biggest thing. Unfortunately domain names have not changed since 2010. They haven\u2019t changed since 2000. It\u2019s interesting that something so important, that \u201cstep one\u201d is still really confusing to people.</p>\n\n<p><strong>Aaron:</strong> Yeah.</p>\n\n<p><strong>Tantek:</strong> Oh, that\u2019s you\u2019re going with that. I thought you were going with like, \u201cthey\u2019re still around\u201d.</p>\n\n<p><strong>Aaron:</strong> And it\u2019s still just as hard.</p>\n\n<p><strong>Manton:</strong> I\u2019m going with: why aren\u2019t they easier? Because a lot of what the IndieWeb does, if you look at <a href=\"http://microformats.org\">Microformats</a> and <a href=\"https://www.w3.org/TR/micropub/\">Micropub</a> and all these core parts of the IndieWeb, they\u2019re built on HTML and HTTP where we have some control over making things easier and having other standards.</p>\n\n<p><strong>Tantek:</strong> Yes.</p>\n\n<p><strong>Manton:</strong> Is there hope for making DNS also easier for people, or are we just kind of stuck with this for a while?</p>\n\n<p><strong>Tantek:</strong> The irony is I don\u2019t know what you\u2019re comparing it to. Look at the amount of time it takes you and the form you have to fill out to get a new phone number. I would challenge you to do an A/B test. How long it takes to get a new phone number from scratch, not having a phone number, to how long it takes to getting a new domain name. And I would bet that it\u2019s actually fewer steps to buy a new domain name. So I definitely sympathize that it could be easier to buy a domain name, but compare it to other forms of identity that people take for granted. It is less work to do. Or maybe the hard part is picking a domain name.</p>\n\n<p><strong>Aaron:</strong> Yeah, that\u2019s part of it. A phone number just gets assigned to you.</p>\n\n<p><strong>Manton:</strong> And everybody kind of knows how phone numbers work, I guess. No one\u2019s surprise that there\u2019s a 3-digit area code, and a 3-digit number, and a 4-digit\u2026 Whereas with domain names there\u2019s certain things (and IP addresses) that people are surprised by.</p>\n\n<p><strong>Aaron:</strong> Getting the domain is the first step. But then once you have it you have to know that you now need to set up DNS on it and point it at a hosting provider. And that\u2019s the part that\u2019s different from a phone number. Because once you have a phone number, it almost certainly came with a phone. You don\u2019t buy a phone number and then assign it to a phone. You do that all as one step.</p>\n\n<p><strong>Tantek:</strong> It turned out that the equivalent of phone number registrars, all cell phones\u2026 It would be as if every domain name registrar \u2014 and a lot of them do now \u2014 sell hosting. So right off the bat, they\u2019re like, \u201chere\u2019s a domain name, do you want us to flip on a simple web site for you?\u201d A lot of them do that. That has changed.</p>\n\n<p><strong>Aaron:</strong> Yeah. That\u2019s true, actually. That has gotten better. It used to be that GoDaddy or Name.com or NameCheap only did domain names. And then they all started adding hosting plans to their product.</p>\n\n<p><strong>Tantek:</strong> Which makes sense.</p>\n\n<p><strong>Aaron:</strong> It absolutely makes sense. And when you use the hosting plan provided by the registrar it is actually very easy, because it is more like you just go there, type in the domain you want, pay, and then now you have the empty shell to put stuff on. Doing something with the empty shell of a hosting plan is another step, but at least they do make the DNS to hosting step combined into one.</p>\n\n<p><strong>Tantek:</strong> Other hosting providers have made it easier to one-key turn on WordPress, turn on <a href=\"https://withknown.com\">Known</a>. I don\u2019t know there\u2019s a domain name registrar that also has easy hosting that also has a simple turn on a web site CMS.</p>\n\n<p><strong>Aaron:</strong> DreamHost does a pretty good job of it.</p>\n\n<p><strong>Tantek:</strong> That\u2019s true. DreamHost probably has the most pieces that they\u2019ve put together. And they were the first to do <a href=\"https://letsencrypt.org\">LetsEncrypt</a> automation. Domain name, security, hosting. So that\u2019s evolved. It\u2019s very impressive to watch, even during the whole eight years of IndieWebCamp.</p>\n\n<p><strong>Manton:</strong> And comparing it to the phone numbers, if you go get a phone from someone they can always give you a phone number \u2014 if you go to Verizon or AT&T. And maybe where we need to be eventually with the web is that any place you can go get a web site can give you a domain name, which is not really true right now. The big companies can, but a smaller webhost can\u2019t necessarily.</p>\n\n<p><strong>Aaron:</strong> You can, but it\u2019s more work as a service provider. There\u2019s plenty of domain resellers. I built a system to do that at one point, where we wanted to be able to offer domains as part of the product we were offering. So I found a domain reseller that had an API and hooked it all up. You would come to us and click the button for, \u201cI want this web site with this theme.\u201d It worked seamlessly.</p>\n\n<p><strong>Tantek:</strong> Even GitHub should it doing that, right?</p>\n\n<p><strong>Aaron:</strong> Right, for GitHub Pages. Instead of just offering GitHub Pages and being able to map a domain to it, why shouldn\u2019t they offer their own domain registration.</p>\n\n<p><strong>Tantek:</strong> And make a little money. There\u2019s incentive there.</p>\n\n<p><strong>Aaron:</strong> It would be a no brainer for Micro.blog to offer that feature. Sign up for the Micro.blog account, then right there type in what domain you want and it just works.</p>\n\n<p><strong>Manton:</strong> I\u2019d love to do that.</p>\n\n<p><strong>Tantek:</strong> It\u2019s also the kind of thing you could always add. \u201cYeah, now I\u2019m ready for a domain name.\u201d</p>\n\n<p><strong>Aaron:</strong> Yeah, you upgrade your subdomain to a real domain.</p>\n\n<p><strong>Manton:</strong> So you had mentioned with the changes in the last seven years\u2026 Going back to that first IndieWebCamp. We\u2019re just wrapping up IndieWeb Summit 2018. Does it feel the same in terms of the community and what people are excited about? Obviously standards and everything else have evolved.</p>\n\n<p><strong>Aaron:</strong> The biggest shift in that context that I\u2019ve seen between the original ones, specifically, although even from 2014 to now. Now we actually have a lot more stuff working together than we did in 2011, obviously, and even in 2014. At the beginning it was the same goal, the same ideals, but we couldn\u2019t demo me commenting on someone\u2019s post. That didn\u2019t work until way later. And because of that the sessions were all drastically different, because there wasn\u2019t a thing to coalesce around except for the ideals of own your data, have a domain name, do stuff on your web site.</p>\n\n<p><strong>Aaron:</strong> So if you go back and look the original sessions from 2011 to 2014, it\u2019s a wide variety of things. Now at IndieWebCamps you end up with a lot of people who are coming to it and then become aware that there are things that work and then want to learn how to do those things. Now at the beginning of the second day we have the intro to the building blocks session. What is <a href=\"https://indieweb.org/IndieAuth\">IndieAuth</a>. Get Webmention working. Even in some of the IndieWebCamps there will be a whole track of unconference sessions about those building blocks for the whole day, where it\u2019s people who know they want to learn these things that already exist.</p>\n\n<p><strong>Tantek:</strong> You had a session called \u201cown your phone number\u201d.</p>\n\n<p><strong>Aaron:</strong> That\u2019s right. Yeah, I have actually kept that up. My phone number and my cell phone are completely disconnected. They\u2019re not coupled. So my phone number is provided by Google Voice and I forward it to a phone number that I don\u2019t know that my cell plan is on. I have no idea what my phone number is \u2014 the one on my phone. And I give out my Google Voice number as my identity.</p>\n\n<p><strong>Manton:</strong> When was that talk?</p>\n\n<p><strong>Aaron:</strong> That was 2011.</p>\n\n<p><strong>Tantek:</strong> The talks were so varied back then. We were just figuring out so many basics that a lot of the talks were very exploratory. We figured out some things like, \u201cokay, I figured out how to syndicate into Buzz and Twitter, how about other places?\u201d Then there was advocacy for plain text formats and there was a BitTorrent session.</p>\n\n<p><strong>Aaron:</strong> Yeah, I think that\u2019s the biggest shift I\u2019ve seen is that there\u2019s so much more stuff that\u2019s actually working now that\u2019s functional. And it means that people are coming and wanting to learn that. And of course there\u2019s still the experimental stuff. There was a good set of experimental sessions at this event. But there\u2019s a lot more of: we have stuff working now that you can figure out and learn how to use.</p>\n\n<p><strong>Manton:</strong> There are two things, too. There\u2019s all the IndieWeb-friendly formats and protocols are much more mature and established now, so that you could talk about the building blocks as a real thing. But then there\u2019s also\u2026 It seems like the software is much further along. A bunch of people will come to the IndieWeb and they use WordPress, because WordPress powers 30% of the internet and it\u2019s super popular. But there\u2019s still a pretty good mix in the demo sessions and what people are hacking on of WordPress stuff and also \u201cno, I rolled my own\u201d.</p>\n\n<p><strong>Tantek:</strong> Yeah, in fact lots more rolled their own, which is not representative I think of people out there in general.</p>\n\n<p><strong>Manton:</strong> What do you think about the fact that WordPress is a very dominant platform. Is that good because there\u2019s an agreed thing there everyone can use the same plugins, or are there any drawbacks?</p>\n\n<p><strong>Aaron:</strong> WordPress specifically because it\u2019s self-hostable, that benefit ends up overriding some of the other drawbacks of that kind of approach. The danger with something being so dominant.. It\u2019s the monoculture problem. We don\u2019t want to be in a situation where we just have WordPress instances talking to each other. That doesn\u2019t actually solve the problem.</p>\n\n<p><strong>Tantek:</strong> Or just have Mastodon talking to each other.</p>\n\n<p><strong>Aaron:</strong> Just Mastodon or just Diaspora or whatever, right. That\u2019s the danger. That\u2019s the thing we\u2019re trying to avoid.</p>\n\n<p><strong>Tantek:</strong> Because that has lots of even worse consequences.</p>\n\n<p><strong>Aaron:</strong> Yes, exactly. And even when it\u2019s a friendly company like WordPress that\u2019s behind it, it doesn\u2019t matter \u2014 the same problems.</p>\n\n<p><strong>Manton:</strong> You start to build like platform-specific\u2026 It\u2019s different than just building for the web in general where anybody can bring their own site and plug in. With Mastodon specifically, it\u2019s based on open standards but it also feels very opaque in a way \u2014 how stuff talks to each other. It\u2019s a little more difficult to just build a web site and be compatible.</p>\n\n<p><strong>Tantek:</strong> It\u2019s also levels of barriers to entry. Because that\u2019s one thing that myself and I think a bunch of people at the 2010 Social Federated Web Summit we\u2019re frustrated with was a lot of the standards being tossed around \u2014 every generation has its own standards \u2014 were really hard, like Salmon. I tried to read through the spec and understand what it was doing, and I could not wrap my head around enough of it to even start anywhere coding.</p>\n\n<p><strong>Aaron:</strong> I had the same experience at that event. I even then later, a year ago, tried to revisit the spec because Mastodon was using it. I feel like I should be able to have my web site just be a part of this network. I refuse to make a new Mastodon account and treat it as a POSSE destination because that completely defeats the purpose of what Mastodon itself is even shooting for, which is an actually distributed social experience.</p>\n\n<p><strong>Aaron:</strong> So I was like, \u201cokay, it can\u2019t be that hard now\u201d. Certainly things have gotten better, and I should be able to just take my web site and add the stuff it needs. I still can\u2019t figure it out. And then they went and dropped Salmon anyway and switched to ActivityPub, so I\u2019m glad I didn\u2019t spend my time on that.</p>\n\n<p><strong>Tantek:</strong> It turns out that the difficulty of the standard to implement makes a big difference. Because if it\u2019s super difficult then you end up with only a handful \u2014 maybe even just one or two people on the planet \u2014 that can implement it, and then you get monoculture by default. In effect, not by design. One of the things we realized was that the antidote to that is to make the standards as simple as possible. Literally as dumb and simple, and frankly decomposed. So that\u2019s where we came up with the building blocks idea rather than having a stack. And the idea that building blocks is you pick and choose the ones that you need for your use cases. That doesn\u2019t mean you\u2019re committed to implementing a layer after layer after layer to get to a certain point.</p>\n\n<p><strong>Tantek:</strong> That was a big insight. The more accessible the standards are for any developer to build their own solution. That means that the more they\u2019re going to get exercised, the more that they\u2019ll get good interoperability, the more that they\u2019ll be a community around it. Because that\u2019s really what it came down to.</p>\n\n<p><strong>Tantek:</strong> I think that\u2019s kind of where the IndieWeb community started to form \u2014 started to really grow and gain critical mass \u2014 is the growing number of people that were like, \u201coh, I can implement that on my web site in an hour or less.\u201d And then in a day they could do amazing things.</p>\n\n<p><strong>Aaron:</strong> And it\u2019s demonstrated by the fact that like you look at the <a href=\"https://indieweb.org/rsvp\">RSVP</a> list on the event page, there\u2019s like over 20 people who have been able to have their picture show up on the RSVP list, which works by having them publish a page on their own website and send a Webmention to the event page. That\u2019s pretty cool. They didn\u2019t have to go and read through a whole spec that talks about everything from using an app to publish to your site to then have a federation protocol behind it. They just need to know about this much of the whole picture in order to have that work. And that\u2019s a quicker win. Now maybe you expand and start working on the rest of the building blocks.</p>\n\n<p><strong>Manton:</strong> Webmention is a great example of something that is as simple as it possibly can be. Can\u2019t really get that down any simpler. So people get it. Microformats is similar in that it\u2019s very approachable and transparent. If you know HTML you can figure out how to do that. You have Microformats 1 and 2, and remind me\u2026 Because Microformats predates\u2026</p>\n\n<p><strong>Tantek:</strong> \u2026IndieWeb. 2005.</p>\n\n<p><strong>Manton:</strong> And did that launch at SXSW or something like that?</p>\n\n<p><strong>Tantek:</strong> Shortly thereafter. I think we had sessions about it at SXSW in 2005, in March. The site launched in June itself. Until then we had just been doing it on the Technorati wiki. And my co-founder of the Microformats.org community, Rohit Khare. He\u2019s like, \u201chey, happy birthday, I bought you a domain name.\u201d And I was like, \u201creally, you think this is worth having its own domain name?\u201d That was my actual response.</p>\n\n<p><strong>Aaron:</strong> Wow.</p>\n\n<p><strong>Tantek:</strong> Because it seemed like such a simple stupid dumb thing. And he\u2019s like, \u201cyeah.\u201d Okay, I guess we should do this then, and then we set up the site and well, what do you need on a community site. You need a mailing list, you need a blog, you need a wiki. So we set all those up. Since then we\u2019ve learned that the primary ways of actually making progress are the wiki and IRC channel (or Slack) \u2014 an archived IRC channel. But that was definitely a response to, again, complexity. Like the whole <a href=\"https://www.w3.org/RDF/\">RDF</a> world \u2014 all that insanity \u2014 and the Atom/RSS wars back in the day, and then Atom going to IETF instead of W3C because there was a giant fear that it would just be turned into RDF at W3C. That\u2019s how Microformats 1 started.</p>\n\n<p><strong>Tantek:</strong> We basically did make it look as dumb as possible. Let\u2019s just take the names of the terms from the <a href=\"https://en.wikipedia.org/wiki/VCard\">vCard</a> spec and use them as class names. That was what I proposed in 2004 at FooCamp. And I ran it by Ray Ozzie at the time, who was like architect at Microsoft or something, but also just from Lotus Notes, you know he has a long history. He\u2019s like, \u201cyeah, that could work.\u201d</p>\n\n<p><strong>Manton:</strong> So now we\u2019re almost 15 years since then. Looking forward, there\u2019s a lot of talk about <a href=\"https://indieweb.org/generations\">generations</a> \u2014 1, 2, 3, 4 \u2014 moving up and making it more approachable and just easier for people to use. Obviously we can\u2019t predict 15 years from now. Who knows what\u2019s going to be around. Is Twitter going to look the same, are blogs going to be the same\u2026</p>\n\n<p><strong>Tantek:</strong> Is Twitter going to be around?</p>\n\n<p><strong>Manton:</strong> Exactly. There\u2019re no guarantees. A lot of people\u2026 So much time, they don\u2019t remember before Twitter and Facebook and so it\u2019s hard to imagine sometimes that those things could go away. But they could. They\u2019re just web sites. Businesses built by people that make mistakes and do good things sometimes.</p>\n\n<p><strong>Tantek:</strong> Yeah, sites that become boring and people move on to what\u2019s interesting. I think Facebook really extended their lifespan by buying Instagram.</p>\n\n<p><strong>Manton:</strong> So moving forward, how soon\u2026 Because I\u2019m kind of impatient and I want everybody to blog on their site immediately, like tomorrow, and for it to be easy to use. But this stuff takes time.</p>\n\n<p><strong>Tantek:</strong> Totally.</p>\n\n<p><strong>Manton:</strong> Where do y\u2019all see just over the next few years. How close are we to making this more mainstream or is this going to be just more time churning away building tools, trying to spread awareness.</p>\n\n<p><strong>Tantek:</strong> It\u2019s kind of hard to predict. I do feel like we\u2019re entering a new phase right now. I think we\u2019ve had two phases, two very long phases of the IndieWeb community so far. One was this I almost want to say like Big Bang phase in the very beginning where there were all these different things coming out. People trying all kinds of different approaches, like Ward Cunningham did his federated wiki project. He figured out a way to do all this Javascript-based wiki federation thing that he loved. And other approaches. But then we started to coalesce around: use your own site, use Microformats. We actually used Pingback for a while until Sandeep Shetty showed up and he\u2019s like, \u201chey, I\u2019ve got this proposal for a simpler version called Webmention that does this.\u201d And everyone in the community was like, \u201cwell, that completely aligns with our values of making things simpler.\u201d So we instantly adopted it even though none of us knew who this guy was. And then we just ran with it.</p>\n\n<p><strong>Tantek:</strong> So the first four years was this explosion of getting basics working. We got RSVPs and events working by 2013. And that was kind of like, \u201cwhoa, we federate events and RSVPs,\u201d which we were always looking for ways that in the actual things we do, how can we use the technology that we\u2019re making. And after that, clearly we need to get these standards \u2014 that are barely specified \u2014 solid, testable, working, dependable, to reach the next level of stability.</p>\n\n<p><strong>Tantek:</strong> And then there was the second phase which was the work of making all these standards formal and reliable and secure and handling edge cases. We did that from I would say 2014 through 2017, and a lot of that was done in the social web working group that I was co-chair and Aaron was in, edited a bunch of the documents. Evan Prodromou was also co-chair, from StatusNet. But that was kind of a maturing phase. There were a lot of new features people were figuring out all the time, and new infrastructure like <a href=\"https://brid.gy\">Bridgy</a> during that phase.</p>\n\n<p><strong>Tantek:</strong> But I feel like a big part of that second phase was everything that was getting built was getting fed back into fixing the standards. People would build something, they would get to the point where they were like, \u201chey, this didn\u2019t quite work, we have to fix a standard to handle that.\u201d Okay, we fix it. They get it working. We have test suites for all these standards. And now when people are implementing things like Webmention or Micropub or whatever they\u2019re not really running into new problems. What they\u2019re running into is questions of how, not \u201cthis doesn\u2019t work\u201d. So we\u2019ve reached this level \u2014 and I think <a href=\"https://indieweb.org/Microsub\">Microsub</a>, that might be one of the last pieces that kind of wraps it up. That\u2019s why I feel like we\u2019re closing on the second phase.</p>\n\n<p><strong>Aaron:</strong> And IndieAuth, too, because that was only written as a spec this year. Before that it was actually very interoperable, and there were several implementations before, but it was never written down as a proper spec. So that\u2019s now this process of let\u2019s formalize that.</p>\n\n<p><strong>Tantek:</strong> And we even formalized how do we update the Microformats parser spec and the vocabulary. That\u2019s been much more formalized as well. So people have an idea that when I proposed something, when can I depend on something vs. what\u2019s experimental, and then what\u2019s the path.</p>\n\n<p><strong>Aaron:</strong> So you mentioned these two phases of\u2026</p>\n\n<p><strong>Tantek:</strong> The Big Bang, the amazing explosion of cool stuff and then this sort of maturing of the standards to make stuff work reliably even just amongst theirselves. You mentioned you want everyone to have their own presence. But when I think about that I think, \u201cpeople want things that are reliable, that just work.\u201d And I think this second phase was us doing the difficult plumbing work of the details to make things just work.</p>\n\n<p><strong>Aaron:</strong> That leads into what I think is the next phase is getting more people building systems using these building blocks. When that happens, and you\u2019re a great example of this\u2026</p>\n\n<p><strong>Tantek:</strong> Yeah, there\u2019s an overlap. I think Micro.blog was evidence that that phase was ready to enter.</p>\n\n<p><strong>Aaron:</strong> So now as someone who is building out a platform that is intended for end users\u2026 Whereas I\u2019m building my web site. I do not want an end user to use that software. It is not the goal explicitly. But you\u2019re building software that is intended for end users. You now have a pattern to follow where if someone else comes along with the same goal and build something, they work together. And so I think in order to reach the goal of people can just use this stuff out of the box, we need more people building tools that are intended to work out of the box for people on the same stacks. And four years ago, if you had come around and started this thing, there wasn\u2019t a pattern to follow to make that work across implementations. And there is now, because of the work over the last four years, since 2014, of formalizing these specs, and having that actually hardened.</p>\n\n<p><strong>Tantek:</strong> And we also did it the hard way.</p>\n\n<p><strong>Aaron:</strong> Totally.</p>\n\n<p><strong>Tantek:</strong> We tried to do each spec as its own little building block piece. I would say hard but honestly I think greater chance of long-term success. The traditional approach that architects take is the stack approach or platform approach where they figure out the entire API. The whole thing. If you look at how OStatus happened, or even like ActivityStreams and ActivityPub. That\u2019s very much a \u201cwe\u2019re going to solve the whole problem\u201d. And then we\u2019ll iterate that whole big thing and then it turns out that\u2019s both really hard to do and once again you end up with the problem that there\u2019s only a handful of people that can implement it.</p>\n\n<p><strong>Aaron:</strong> And also I think more importantly that also has the problem of: if you realize there\u2019s a mistake in it, then you have to essentially throw out the whole thing and make a version 2. And Microformats is a good example is this evolution. Microformats 1 vs. Microformats 2\u2026 they\u2019re completely incompatible. They don\u2019t work the same way, but you can still send a Webmention with Microformats 1 markup and it works. Webmention doesn\u2019t have to change. So people build out Webmention tools and infrastructure, the thing on top of that is the Microformats to make it actually look good and make a comment work. Microformats can change and evolve, and Webmention doesn\u2019t have to evolve. Whereas when you end up with a monolithic stack, if you\u2019re like, \u201coh crap, we don\u2019t like the things we decided for this layer in the stack.\u201d We can\u2019t just swap out that layer because then the whole stack breaks. That\u2019s part of why the approach we\u2019ve taken is harder, because you have to treat each one independently and evolve each one on its own schedule. And they all have their own change-control process.</p>\n\n<p><strong>Tantek:</strong> It looks more chaotic.</p>\n\n<p><strong>Aaron:</strong> Yeah, and it is little more overhead in terms of: each spec has its own document and test suite that is for each one specifically. But I do think that\u2019s the better approach for a longer term success.</p>\n\n<p><strong>Aaron:</strong> We\u2019re essentially entering this third phase of now we have stuff, we need the tools built on it, but we also don\u2019t want to then four years from now turn around and say to everybody who\u2019s built these tools, \u201coh, we\u2019ve changed now, we\u2019ve decided that we\u2019re going this whole different approach and redo all your stuff.\u201d No, we want to make sure that those are all based on ideas that are technically proven and easily swappable in small pieces if you need. But if we were to suddenly say, \u201cwe decided that Webmention doesn\u2019t work and we need a third parameter and go fix Micro.blog.\u201d You\u2019d be like, \u201cwell crap, now what, do I do that, do I abandon it, break interop and continue iterating on my own product?\u201d</p>\n\n<p><strong>Tantek:</strong> The other big thing that happened is that we expanded greatly in Europe. International. I think that really started with\u2026 was it 2013, the first Brighton IndieWebCamp? We\u2019re looking to try to scale it beyond \u2014 and we\u2019ve done this somewhat in Europe \u2014 but I think we want to see more of it. The things in the community running and people running IndieWebCamps and <a href=\"https://indieweb.org/Homebrew_Website_Club\">Homebrew Website Clubs</a> without needing to even check with Aaron or me.</p>\n\n<p><strong>Tantek:</strong> I would be happy to help out as a guide or mentor more than a leader in that respect. And I think that\u2019s the way we\u2019re going to keep scaling it. And in the next 4 years, I would like to see us in more countries. I would like to see us reach more diverse populations. Maybe people that aren\u2019t just in the tech crowds, but people that are not earning as much money, right? Everyone has a phone number supposedly. No matter what you\u2019re earning or not. And I even hear from developers of new services that kids just use SMS, they don\u2019t even want to deal with email. And so people doing new apps have purely SMS-based sign-up flows and all that. So there\u2019s definitely opportunities to reach \u2014 to keep innovating and figuring out how can we reach even a broader set of folks in that regard.</p>", "text": "Last year after IndieWeb Summit in Portland, I sat down with IndieWeb co-founders Tantek \u00c7elik and Aaron Parecki to talk about the history of IndieWebCamp for my upcoming book, Indie Microblogging. Only part of the interview will fit in the book, so I\u2019m including a full transcript of our conversation below and on GitHub, where I\u2019ll be incorporating any edits and also publishing future chapter drafts.\n\nManton: Take me back to 2011: the founding of IndieWebCamp. What did that feel like? How you all got together. How the first IndieWebCamp got started.\n\nTantek: You weren\u2019t at the Federated Social Web Summit in 2010, were you? Did you hear about it? Did it even cross your radar?\n\nManton: I assume it did. But that\u2019s already been a while.\n\nAaron: Nine years ago\u2026\n\nTantek: Because I think that\u2019s where the inspiration originally came from.\n\nAaron: So 2010 was the Federated Social Web Summit \u2014 in Portland \u2014 and that was the invite-only but \u201cyou could kind of ask for an invite\u201d-style event.\n\nTantek: Which we now know greatly biases towards people that feel privileged enough to ask for an invite, so it\u2019s sort of a bad way to do it. I didn\u2019t even put that together until the last year. Yeah, don\u2019t do that kind of private conference.\n\nAaron: So I ended up there, Tantek, as well as a bunch of others. It was a fun group, but the thing that we took out of it was that the focus seemed to be on people building things for other people, building specifically platforms. They were coming with platforms and trying to make them work together. Which is a fine goal, but that wasn\u2019t my personal interest in it necessarily. So it was more like, \u201coh, I have this Buddycloud thing, let\u2019s make it work with Friendica\u201d. Or Diaspora was there.\n\nTantek: The Diaspora 4 were there, which was cool. That\u2019s where I really got to spend time with them.\n\nAaron: And there was also a lot of solving problems in theory without actually testing them out or building something first. And a couple of pretty in the weeds discussions that I ended up sitting in on and was like, \u201cthis is really complicated\u201d. I feel like there is a better solution. That was where SWAT0 the concept was formed as well, right? Interoperability tests between social networks \u2014 can someone post a photo of somebody else using a different system be notified that they were tagged in a photo and then a third person comment on the photo and have that comment notification appear on the person who favorited it. Everybody has to be using different software for that test to pass. SWAT0: social web acid test.\n\nTantek: It was actually really hard.\n\nAaron: Very hard. It still is.\n\nTantek: As far as we could tell no one actually got it to work across different sites.\n\nAaron: The goal with SWAT0 was to have three different systems interoperating. Several people claimed that they supported everything needed for SWAT0 themselves. But by definition that doesn\u2019t solve SWAT0 because you need three different implementations. So there were several people who were like, \u201cI can be every person in this \u2014 every role in this test\u201d. But then there\u2019s no one to test it with, because only one person would do that at a time. And we are still kind of in that situation sadly. It\u2019s still a very hard problem. We did in 2015 have a demo of it working between three different recommendations, although each implementation only was able to be one or two of the roles of the three.\n\nManton: And that was using Webmention?\n\nAaron: Yeah, exactly.\n\nManton: So back in 2002 what was the technology to.. It was way after Pingbacks and Trackbacks.\n\nAaron: Yeah, the thought was the OStatus stack. Atom. Salmon for the responses.\n\nTantek: PubSubHubbub, I think.\n\nAaron: I believe so, yeah. For finding the photo in the first place.\n\nTantek: But Salmon for the notification.\n\nAaron: Salmon for the notification of the comment. But in order for someone to see it in the first place they would be following an Atom feed, probably, with PubSubHubbub.\n\nManton: And so now Salmon is making a comeback with Mastodon, right?\n\nAaron: No, it\u2019s already done.\n\nManton: It did briefly make a comeback and then got replaced.\n\nAaron: Mastodon ripped out their whole code and replaced it with ActivityPub. So after that event we were like, \u201cokay, that was cool, but we want to focus on people being more empowered individually to participate in this federated network.\u201d\n\nTantek: Everyone got to give lightning talks. That was part of it.\n\nAaron: Yeah, yeah.\n\nTantek: Which was great. About any topic, like why they were there and\u2026 What was your lightning talk on?\n\nAaron: Probably location stuff, because I was just starting geolocate at the time. But the sense I got was that the assumption was that in order to participate in a federated social network, you have to be on a platform that supports the protocols. The only way to do that was that if someone built the platform that interoperates with other platforms, and then you as an individual join one of those platforms. There was no \u201cjust my web site\u201d.\n\nTantek: Or one-person platform.\n\nAaron: Or single-person platforms was like: why would you do that? That was the feeling there. That was why we did IndieWebCamp the year after, because we wanted to approach it from the grassroots of: someone should be able to take their web site and be able to use their web site to participate in the same distributed social network \u2014 federated social network.\n\nManton: As the conference was wrapping up, did you have a feeling that y\u2019all would probably do IndieWebCamp, or was it making friends and catching up with people.\n\nTantek: We were mostly catching up with people, meeting new people. I was just looking at my notes, because I actually put my entire talk from it on their wiki because it\u2019s like that\u2019s how it\u2019ll survive. Turns out wikis are more persistent than PowerPoint.\n\nManton: So in that time\u2026 2010 is actually a really interesting time because Twitter had been around for a few years and really gained a lot of steam, and actually a lot of early bloggers \u2014 who were blogging all the time in the early days \u2014 around 2010-ish they dropped off. They started just doing Twitter.\n\nTantek: Even just 2009\u2026\n\nManton: Twitter satisfied that \u201cI\u2019m going to post something\u201d. And you can see that. I went back recently and looked at a bunch of people that were doing blogging software. Founders of Blogger, Movable Type, and Six Apart people. And very few of them kept their blog through that period. So could you sense that at the time?\n\nTantek: Totally. Just even personally, the last blog post I wrote on my old blog was in August of 2008. I did not have anything on my own site in 2009. 2009 was a really weird transitional period, because I both saw that happening and I saw it happening to myself. And then the other thing that happened simultaneously \u2014 which I think helped \u2014 is that Twitter was really unreliable in 2009. We all switched to Twitter and then it got really unreliable. It was so frustrating.\n\nTantek: First of all I\u2019m embarrassed that I\u2019m not posting to my own site anymore, and then I\u2019m frustrated because this damn tool is never up. And that\u2019s really where I came up with the idea of, well, I should post to my own site and if I could set up a system where I can always just post to my own site, whether or not Twitter was down, then I can just have my site post to Twitter when it comes back up. And I can abstract away that frustration of their site being down. Abstract away their unreliability, while still getting that participation with friends thing. So 2009 is when I started working on what\u2019s now my web site. Launched in 2010. January 1st, I\u2019m like: from now on everything is going on my site first.\n\nTantek: And then the Federated Social Web Summit happened and I was like, \u201cwoah, okay\u201d. But the platform perspective that Aaron was pointing out. Wait a minute, you don\u2019t need to use a whole platform. Everyone can do this themselves. So that was my lightning talk, basically, and it even ended with\u2026 I\u2019ll show you the summary: use your own site as your identity; publish on your own site; and then syndicate with PubSubHubbub. That\u2019s still true.\n\nManton: And the first one, importantly\u2026 The very first principle of the IndieWeb principles is that. Use your own site, own your own content. Domain names are a big part of that. Really the biggest thing. Unfortunately domain names have not changed since 2010. They haven\u2019t changed since 2000. It\u2019s interesting that something so important, that \u201cstep one\u201d is still really confusing to people.\n\nAaron: Yeah.\n\nTantek: Oh, that\u2019s you\u2019re going with that. I thought you were going with like, \u201cthey\u2019re still around\u201d.\n\nAaron: And it\u2019s still just as hard.\n\nManton: I\u2019m going with: why aren\u2019t they easier? Because a lot of what the IndieWeb does, if you look at Microformats and Micropub and all these core parts of the IndieWeb, they\u2019re built on HTML and HTTP where we have some control over making things easier and having other standards.\n\nTantek: Yes.\n\nManton: Is there hope for making DNS also easier for people, or are we just kind of stuck with this for a while?\n\nTantek: The irony is I don\u2019t know what you\u2019re comparing it to. Look at the amount of time it takes you and the form you have to fill out to get a new phone number. I would challenge you to do an A/B test. How long it takes to get a new phone number from scratch, not having a phone number, to how long it takes to getting a new domain name. And I would bet that it\u2019s actually fewer steps to buy a new domain name. So I definitely sympathize that it could be easier to buy a domain name, but compare it to other forms of identity that people take for granted. It is less work to do. Or maybe the hard part is picking a domain name.\n\nAaron: Yeah, that\u2019s part of it. A phone number just gets assigned to you.\n\nManton: And everybody kind of knows how phone numbers work, I guess. No one\u2019s surprise that there\u2019s a 3-digit area code, and a 3-digit number, and a 4-digit\u2026 Whereas with domain names there\u2019s certain things (and IP addresses) that people are surprised by.\n\nAaron: Getting the domain is the first step. But then once you have it you have to know that you now need to set up DNS on it and point it at a hosting provider. And that\u2019s the part that\u2019s different from a phone number. Because once you have a phone number, it almost certainly came with a phone. You don\u2019t buy a phone number and then assign it to a phone. You do that all as one step.\n\nTantek: It turned out that the equivalent of phone number registrars, all cell phones\u2026 It would be as if every domain name registrar \u2014 and a lot of them do now \u2014 sell hosting. So right off the bat, they\u2019re like, \u201chere\u2019s a domain name, do you want us to flip on a simple web site for you?\u201d A lot of them do that. That has changed.\n\nAaron: Yeah. That\u2019s true, actually. That has gotten better. It used to be that GoDaddy or Name.com or NameCheap only did domain names. And then they all started adding hosting plans to their product.\n\nTantek: Which makes sense.\n\nAaron: It absolutely makes sense. And when you use the hosting plan provided by the registrar it is actually very easy, because it is more like you just go there, type in the domain you want, pay, and then now you have the empty shell to put stuff on. Doing something with the empty shell of a hosting plan is another step, but at least they do make the DNS to hosting step combined into one.\n\nTantek: Other hosting providers have made it easier to one-key turn on WordPress, turn on Known. I don\u2019t know there\u2019s a domain name registrar that also has easy hosting that also has a simple turn on a web site CMS.\n\nAaron: DreamHost does a pretty good job of it.\n\nTantek: That\u2019s true. DreamHost probably has the most pieces that they\u2019ve put together. And they were the first to do LetsEncrypt automation. Domain name, security, hosting. So that\u2019s evolved. It\u2019s very impressive to watch, even during the whole eight years of IndieWebCamp.\n\nManton: And comparing it to the phone numbers, if you go get a phone from someone they can always give you a phone number \u2014 if you go to Verizon or AT&T. And maybe where we need to be eventually with the web is that any place you can go get a web site can give you a domain name, which is not really true right now. The big companies can, but a smaller webhost can\u2019t necessarily.\n\nAaron: You can, but it\u2019s more work as a service provider. There\u2019s plenty of domain resellers. I built a system to do that at one point, where we wanted to be able to offer domains as part of the product we were offering. So I found a domain reseller that had an API and hooked it all up. You would come to us and click the button for, \u201cI want this web site with this theme.\u201d It worked seamlessly.\n\nTantek: Even GitHub should it doing that, right?\n\nAaron: Right, for GitHub Pages. Instead of just offering GitHub Pages and being able to map a domain to it, why shouldn\u2019t they offer their own domain registration.\n\nTantek: And make a little money. There\u2019s incentive there.\n\nAaron: It would be a no brainer for Micro.blog to offer that feature. Sign up for the Micro.blog account, then right there type in what domain you want and it just works.\n\nManton: I\u2019d love to do that.\n\nTantek: It\u2019s also the kind of thing you could always add. \u201cYeah, now I\u2019m ready for a domain name.\u201d\n\nAaron: Yeah, you upgrade your subdomain to a real domain.\n\nManton: So you had mentioned with the changes in the last seven years\u2026 Going back to that first IndieWebCamp. We\u2019re just wrapping up IndieWeb Summit 2018. Does it feel the same in terms of the community and what people are excited about? Obviously standards and everything else have evolved.\n\nAaron: The biggest shift in that context that I\u2019ve seen between the original ones, specifically, although even from 2014 to now. Now we actually have a lot more stuff working together than we did in 2011, obviously, and even in 2014. At the beginning it was the same goal, the same ideals, but we couldn\u2019t demo me commenting on someone\u2019s post. That didn\u2019t work until way later. And because of that the sessions were all drastically different, because there wasn\u2019t a thing to coalesce around except for the ideals of own your data, have a domain name, do stuff on your web site.\n\nAaron: So if you go back and look the original sessions from 2011 to 2014, it\u2019s a wide variety of things. Now at IndieWebCamps you end up with a lot of people who are coming to it and then become aware that there are things that work and then want to learn how to do those things. Now at the beginning of the second day we have the intro to the building blocks session. What is IndieAuth. Get Webmention working. Even in some of the IndieWebCamps there will be a whole track of unconference sessions about those building blocks for the whole day, where it\u2019s people who know they want to learn these things that already exist.\n\nTantek: You had a session called \u201cown your phone number\u201d.\n\nAaron: That\u2019s right. Yeah, I have actually kept that up. My phone number and my cell phone are completely disconnected. They\u2019re not coupled. So my phone number is provided by Google Voice and I forward it to a phone number that I don\u2019t know that my cell plan is on. I have no idea what my phone number is \u2014 the one on my phone. And I give out my Google Voice number as my identity.\n\nManton: When was that talk?\n\nAaron: That was 2011.\n\nTantek: The talks were so varied back then. We were just figuring out so many basics that a lot of the talks were very exploratory. We figured out some things like, \u201cokay, I figured out how to syndicate into Buzz and Twitter, how about other places?\u201d Then there was advocacy for plain text formats and there was a BitTorrent session.\n\nAaron: Yeah, I think that\u2019s the biggest shift I\u2019ve seen is that there\u2019s so much more stuff that\u2019s actually working now that\u2019s functional. And it means that people are coming and wanting to learn that. And of course there\u2019s still the experimental stuff. There was a good set of experimental sessions at this event. But there\u2019s a lot more of: we have stuff working now that you can figure out and learn how to use.\n\nManton: There are two things, too. There\u2019s all the IndieWeb-friendly formats and protocols are much more mature and established now, so that you could talk about the building blocks as a real thing. But then there\u2019s also\u2026 It seems like the software is much further along. A bunch of people will come to the IndieWeb and they use WordPress, because WordPress powers 30% of the internet and it\u2019s super popular. But there\u2019s still a pretty good mix in the demo sessions and what people are hacking on of WordPress stuff and also \u201cno, I rolled my own\u201d.\n\nTantek: Yeah, in fact lots more rolled their own, which is not representative I think of people out there in general.\n\nManton: What do you think about the fact that WordPress is a very dominant platform. Is that good because there\u2019s an agreed thing there everyone can use the same plugins, or are there any drawbacks?\n\nAaron: WordPress specifically because it\u2019s self-hostable, that benefit ends up overriding some of the other drawbacks of that kind of approach. The danger with something being so dominant.. It\u2019s the monoculture problem. We don\u2019t want to be in a situation where we just have WordPress instances talking to each other. That doesn\u2019t actually solve the problem.\n\nTantek: Or just have Mastodon talking to each other.\n\nAaron: Just Mastodon or just Diaspora or whatever, right. That\u2019s the danger. That\u2019s the thing we\u2019re trying to avoid.\n\nTantek: Because that has lots of even worse consequences.\n\nAaron: Yes, exactly. And even when it\u2019s a friendly company like WordPress that\u2019s behind it, it doesn\u2019t matter \u2014 the same problems.\n\nManton: You start to build like platform-specific\u2026 It\u2019s different than just building for the web in general where anybody can bring their own site and plug in. With Mastodon specifically, it\u2019s based on open standards but it also feels very opaque in a way \u2014 how stuff talks to each other. It\u2019s a little more difficult to just build a web site and be compatible.\n\nTantek: It\u2019s also levels of barriers to entry. Because that\u2019s one thing that myself and I think a bunch of people at the 2010 Social Federated Web Summit we\u2019re frustrated with was a lot of the standards being tossed around \u2014 every generation has its own standards \u2014 were really hard, like Salmon. I tried to read through the spec and understand what it was doing, and I could not wrap my head around enough of it to even start anywhere coding.\n\nAaron: I had the same experience at that event. I even then later, a year ago, tried to revisit the spec because Mastodon was using it. I feel like I should be able to have my web site just be a part of this network. I refuse to make a new Mastodon account and treat it as a POSSE destination because that completely defeats the purpose of what Mastodon itself is even shooting for, which is an actually distributed social experience.\n\nAaron: So I was like, \u201cokay, it can\u2019t be that hard now\u201d. Certainly things have gotten better, and I should be able to just take my web site and add the stuff it needs. I still can\u2019t figure it out. And then they went and dropped Salmon anyway and switched to ActivityPub, so I\u2019m glad I didn\u2019t spend my time on that.\n\nTantek: It turns out that the difficulty of the standard to implement makes a big difference. Because if it\u2019s super difficult then you end up with only a handful \u2014 maybe even just one or two people on the planet \u2014 that can implement it, and then you get monoculture by default. In effect, not by design. One of the things we realized was that the antidote to that is to make the standards as simple as possible. Literally as dumb and simple, and frankly decomposed. So that\u2019s where we came up with the building blocks idea rather than having a stack. And the idea that building blocks is you pick and choose the ones that you need for your use cases. That doesn\u2019t mean you\u2019re committed to implementing a layer after layer after layer to get to a certain point.\n\nTantek: That was a big insight. The more accessible the standards are for any developer to build their own solution. That means that the more they\u2019re going to get exercised, the more that they\u2019ll get good interoperability, the more that they\u2019ll be a community around it. Because that\u2019s really what it came down to.\n\nTantek: I think that\u2019s kind of where the IndieWeb community started to form \u2014 started to really grow and gain critical mass \u2014 is the growing number of people that were like, \u201coh, I can implement that on my web site in an hour or less.\u201d And then in a day they could do amazing things.\n\nAaron: And it\u2019s demonstrated by the fact that like you look at the RSVP list on the event page, there\u2019s like over 20 people who have been able to have their picture show up on the RSVP list, which works by having them publish a page on their own website and send a Webmention to the event page. That\u2019s pretty cool. They didn\u2019t have to go and read through a whole spec that talks about everything from using an app to publish to your site to then have a federation protocol behind it. They just need to know about this much of the whole picture in order to have that work. And that\u2019s a quicker win. Now maybe you expand and start working on the rest of the building blocks.\n\nManton: Webmention is a great example of something that is as simple as it possibly can be. Can\u2019t really get that down any simpler. So people get it. Microformats is similar in that it\u2019s very approachable and transparent. If you know HTML you can figure out how to do that. You have Microformats 1 and 2, and remind me\u2026 Because Microformats predates\u2026\n\nTantek: \u2026IndieWeb. 2005.\n\nManton: And did that launch at SXSW or something like that?\n\nTantek: Shortly thereafter. I think we had sessions about it at SXSW in 2005, in March. The site launched in June itself. Until then we had just been doing it on the Technorati wiki. And my co-founder of the Microformats.org community, Rohit Khare. He\u2019s like, \u201chey, happy birthday, I bought you a domain name.\u201d And I was like, \u201creally, you think this is worth having its own domain name?\u201d That was my actual response.\n\nAaron: Wow.\n\nTantek: Because it seemed like such a simple stupid dumb thing. And he\u2019s like, \u201cyeah.\u201d Okay, I guess we should do this then, and then we set up the site and well, what do you need on a community site. You need a mailing list, you need a blog, you need a wiki. So we set all those up. Since then we\u2019ve learned that the primary ways of actually making progress are the wiki and IRC channel (or Slack) \u2014 an archived IRC channel. But that was definitely a response to, again, complexity. Like the whole RDF world \u2014 all that insanity \u2014 and the Atom/RSS wars back in the day, and then Atom going to IETF instead of W3C because there was a giant fear that it would just be turned into RDF at W3C. That\u2019s how Microformats 1 started.\n\nTantek: We basically did make it look as dumb as possible. Let\u2019s just take the names of the terms from the vCard spec and use them as class names. That was what I proposed in 2004 at FooCamp. And I ran it by Ray Ozzie at the time, who was like architect at Microsoft or something, but also just from Lotus Notes, you know he has a long history. He\u2019s like, \u201cyeah, that could work.\u201d\n\nManton: So now we\u2019re almost 15 years since then. Looking forward, there\u2019s a lot of talk about generations \u2014 1, 2, 3, 4 \u2014 moving up and making it more approachable and just easier for people to use. Obviously we can\u2019t predict 15 years from now. Who knows what\u2019s going to be around. Is Twitter going to look the same, are blogs going to be the same\u2026\n\nTantek: Is Twitter going to be around?\n\nManton: Exactly. There\u2019re no guarantees. A lot of people\u2026 So much time, they don\u2019t remember before Twitter and Facebook and so it\u2019s hard to imagine sometimes that those things could go away. But they could. They\u2019re just web sites. Businesses built by people that make mistakes and do good things sometimes.\n\nTantek: Yeah, sites that become boring and people move on to what\u2019s interesting. I think Facebook really extended their lifespan by buying Instagram.\n\nManton: So moving forward, how soon\u2026 Because I\u2019m kind of impatient and I want everybody to blog on their site immediately, like tomorrow, and for it to be easy to use. But this stuff takes time.\n\nTantek: Totally.\n\nManton: Where do y\u2019all see just over the next few years. How close are we to making this more mainstream or is this going to be just more time churning away building tools, trying to spread awareness.\n\nTantek: It\u2019s kind of hard to predict. I do feel like we\u2019re entering a new phase right now. I think we\u2019ve had two phases, two very long phases of the IndieWeb community so far. One was this I almost want to say like Big Bang phase in the very beginning where there were all these different things coming out. People trying all kinds of different approaches, like Ward Cunningham did his federated wiki project. He figured out a way to do all this Javascript-based wiki federation thing that he loved. And other approaches. But then we started to coalesce around: use your own site, use Microformats. We actually used Pingback for a while until Sandeep Shetty showed up and he\u2019s like, \u201chey, I\u2019ve got this proposal for a simpler version called Webmention that does this.\u201d And everyone in the community was like, \u201cwell, that completely aligns with our values of making things simpler.\u201d So we instantly adopted it even though none of us knew who this guy was. And then we just ran with it.\n\nTantek: So the first four years was this explosion of getting basics working. We got RSVPs and events working by 2013. And that was kind of like, \u201cwhoa, we federate events and RSVPs,\u201d which we were always looking for ways that in the actual things we do, how can we use the technology that we\u2019re making. And after that, clearly we need to get these standards \u2014 that are barely specified \u2014 solid, testable, working, dependable, to reach the next level of stability.\n\nTantek: And then there was the second phase which was the work of making all these standards formal and reliable and secure and handling edge cases. We did that from I would say 2014 through 2017, and a lot of that was done in the social web working group that I was co-chair and Aaron was in, edited a bunch of the documents. Evan Prodromou was also co-chair, from StatusNet. But that was kind of a maturing phase. There were a lot of new features people were figuring out all the time, and new infrastructure like Bridgy during that phase.\n\nTantek: But I feel like a big part of that second phase was everything that was getting built was getting fed back into fixing the standards. People would build something, they would get to the point where they were like, \u201chey, this didn\u2019t quite work, we have to fix a standard to handle that.\u201d Okay, we fix it. They get it working. We have test suites for all these standards. And now when people are implementing things like Webmention or Micropub or whatever they\u2019re not really running into new problems. What they\u2019re running into is questions of how, not \u201cthis doesn\u2019t work\u201d. So we\u2019ve reached this level \u2014 and I think Microsub, that might be one of the last pieces that kind of wraps it up. That\u2019s why I feel like we\u2019re closing on the second phase.\n\nAaron: And IndieAuth, too, because that was only written as a spec this year. Before that it was actually very interoperable, and there were several implementations before, but it was never written down as a proper spec. So that\u2019s now this process of let\u2019s formalize that.\n\nTantek: And we even formalized how do we update the Microformats parser spec and the vocabulary. That\u2019s been much more formalized as well. So people have an idea that when I proposed something, when can I depend on something vs. what\u2019s experimental, and then what\u2019s the path.\n\nAaron: So you mentioned these two phases of\u2026\n\nTantek: The Big Bang, the amazing explosion of cool stuff and then this sort of maturing of the standards to make stuff work reliably even just amongst theirselves. You mentioned you want everyone to have their own presence. But when I think about that I think, \u201cpeople want things that are reliable, that just work.\u201d And I think this second phase was us doing the difficult plumbing work of the details to make things just work.\n\nAaron: That leads into what I think is the next phase is getting more people building systems using these building blocks. When that happens, and you\u2019re a great example of this\u2026\n\nTantek: Yeah, there\u2019s an overlap. I think Micro.blog was evidence that that phase was ready to enter.\n\nAaron: So now as someone who is building out a platform that is intended for end users\u2026 Whereas I\u2019m building my web site. I do not want an end user to use that software. It is not the goal explicitly. But you\u2019re building software that is intended for end users. You now have a pattern to follow where if someone else comes along with the same goal and build something, they work together. And so I think in order to reach the goal of people can just use this stuff out of the box, we need more people building tools that are intended to work out of the box for people on the same stacks. And four years ago, if you had come around and started this thing, there wasn\u2019t a pattern to follow to make that work across implementations. And there is now, because of the work over the last four years, since 2014, of formalizing these specs, and having that actually hardened.\n\nTantek: And we also did it the hard way.\n\nAaron: Totally.\n\nTantek: We tried to do each spec as its own little building block piece. I would say hard but honestly I think greater chance of long-term success. The traditional approach that architects take is the stack approach or platform approach where they figure out the entire API. The whole thing. If you look at how OStatus happened, or even like ActivityStreams and ActivityPub. That\u2019s very much a \u201cwe\u2019re going to solve the whole problem\u201d. And then we\u2019ll iterate that whole big thing and then it turns out that\u2019s both really hard to do and once again you end up with the problem that there\u2019s only a handful of people that can implement it.\n\nAaron: And also I think more importantly that also has the problem of: if you realize there\u2019s a mistake in it, then you have to essentially throw out the whole thing and make a version 2. And Microformats is a good example is this evolution. Microformats 1 vs. Microformats 2\u2026 they\u2019re completely incompatible. They don\u2019t work the same way, but you can still send a Webmention with Microformats 1 markup and it works. Webmention doesn\u2019t have to change. So people build out Webmention tools and infrastructure, the thing on top of that is the Microformats to make it actually look good and make a comment work. Microformats can change and evolve, and Webmention doesn\u2019t have to evolve. Whereas when you end up with a monolithic stack, if you\u2019re like, \u201coh crap, we don\u2019t like the things we decided for this layer in the stack.\u201d We can\u2019t just swap out that layer because then the whole stack breaks. That\u2019s part of why the approach we\u2019ve taken is harder, because you have to treat each one independently and evolve each one on its own schedule. And they all have their own change-control process.\n\nTantek: It looks more chaotic.\n\nAaron: Yeah, and it is little more overhead in terms of: each spec has its own document and test suite that is for each one specifically. But I do think that\u2019s the better approach for a longer term success.\n\nAaron: We\u2019re essentially entering this third phase of now we have stuff, we need the tools built on it, but we also don\u2019t want to then four years from now turn around and say to everybody who\u2019s built these tools, \u201coh, we\u2019ve changed now, we\u2019ve decided that we\u2019re going this whole different approach and redo all your stuff.\u201d No, we want to make sure that those are all based on ideas that are technically proven and easily swappable in small pieces if you need. But if we were to suddenly say, \u201cwe decided that Webmention doesn\u2019t work and we need a third parameter and go fix Micro.blog.\u201d You\u2019d be like, \u201cwell crap, now what, do I do that, do I abandon it, break interop and continue iterating on my own product?\u201d\n\nTantek: The other big thing that happened is that we expanded greatly in Europe. International. I think that really started with\u2026 was it 2013, the first Brighton IndieWebCamp? We\u2019re looking to try to scale it beyond \u2014 and we\u2019ve done this somewhat in Europe \u2014 but I think we want to see more of it. The things in the community running and people running IndieWebCamps and Homebrew Website Clubs without needing to even check with Aaron or me.\n\nTantek: I would be happy to help out as a guide or mentor more than a leader in that respect. And I think that\u2019s the way we\u2019re going to keep scaling it. And in the next 4 years, I would like to see us in more countries. I would like to see us reach more diverse populations. Maybe people that aren\u2019t just in the tech crowds, but people that are not earning as much money, right? Everyone has a phone number supposedly. No matter what you\u2019re earning or not. And I even hear from developers of new services that kids just use SMS, they don\u2019t even want to deal with email. And so people doing new apps have purely SMS-based sign-up flows and all that. So there\u2019s definitely opportunities to reach \u2014 to keep innovating and figuring out how can we reach even a broader set of folks in that regard." }, "published": "2019-07-08T15:59:36-05:00", "post-type": "article", "_id": "4370557", "_source": "12", "_is_read": true }
Whether you’ve already got a personal site, or you’re just getting interested, join us for an IndieWeb Meetup in Brooklyn!
{ "type": "entry", "published": "2019-07-08T13:17:21-0400", "rsvp": "yes", "url": "https://martymcgui.re/2019/07/08/131721/", "in-reply-to": [ "https://indieweb.org/events/2019-07-13-homebrew-website-club-nyc" ], "content": { "text": "I'm going!Whether you\u2019ve already got a personal site, or you\u2019re just getting interested, join us for an IndieWeb Meetup in Brooklyn!", "html": "I'm going!<p>Whether you\u2019ve already got a personal site, or you\u2019re just getting interested, join us for an IndieWeb Meetup in Brooklyn!</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-07-13-homebrew-website-club-nyc": { "type": "entry", "summary": "Join us for an afternoon of IndieWeb personal site demos and discussions!", "url": "https://indieweb.org/events/2019-07-13-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 IndieWeb Meetup NYC", "author": { "type": "card", "name": "indieweb.org", "url": "http://indieweb.org", "photo": null }, "post-type": "photo" } }, "_id": "4370391", "_source": "175", "_is_read": true }
{ "type": "entry", "published": "2019-07-08T20:34:22.043Z", "summary": "An update on what is new in Together", "url": "https://grant.codes/2019/07/08/together", "syndication": [ "https://twitter.com/grantcodes/status/1148329509298593792" ], "name": "Together v3", "content": { "text": "Over the last few months I have been completely rebuilding my social reader Together. So I felt I should write a post about it to highlight what's changed and show off what Together has to offer.First off just a little info on the idea of a social reader: A social reader is an application that can be used to read and interact with content from all around the web, not just one walled garden.In the world of the #indieweb that means following other websites and owning all your own content on your own website.FeaturesLayoutsThe content you follow from around the web comes in all different forms, it doesn't make sense to force a photo into the same layout as long form blog post.To help with this Together supports a number of views:Timeline ViewThe timeline view is similar to what you might find in twitter or facebook.Each post has it's own card in a scrolling list of cards. Great for shorter format and mixed content.Classic ViewInspired by classic RSS readers such as Google Reader (r.i.p.). The classic view uses a 2 column layout with small post previews on the left and you can click into a single post to view it on the right.This view works well for longer form articles or news updates.Gallery ViewThe gallery view shows a grid of photos and videos from your feeds.You can click into an individual photo or view to view it full screen and swipe through them.I use this view to follow my instagram feed and the micro.blog photo feed.Map ViewA more niche view is the map view that shows where the most recent posts in a channel come from.This can be used to have a nice view where your friends have checked in recently.PreviewsSomething I worked on quite a bit for this release was the feed following and preview UI.The preview and search is now contained in one unified box, it's now much easier to see exactly what you searched for and what feed you are previewing.Inline actionsInline actions are not new in this version of Together, but have seen an update. The actions let you reply, like or repost to your website via micropub, perform admin actions (like blocking and muting sources) and viewing or loading the original content.New in v3 is the consistent option to attempt to reload the content again from the source. This is useful for (annoying) feeds that only provide a short preview of a posts content.Another new feature in v3 are the improved notifications. When you post a reply or like, notifications now have buttons to view your created post or immediately delete it if your micropub endpoint supports deletes.Settings managementChannel settings have also seen a bit of an upgrade in v3, in particular the list of feeds you are following, or have blocked or muted. You can now more easily see exactly what each feed is and click through to view it.Micropub QueriesThis one is exciting to me! Micropub queries are very experimental but if your micropub endpoint supports them it allows Together to query your own website for recently published content that can then be displayed and managed.My site also supports various post types, so I can see my photos, notes, articles or a variety of other content.When viewing these posts from your own site you can also edit and delete them all from within Together.Share TargetI constantly find articles and content online that I want to interact with or store on my own website, and the Together share target helps facilitate that. Now if Together is installed as a PWA with chrome, you can natively share content to it, and then interact with that content, like writing a reply or liking the url.Tech detailsV3 of Together was a near total rewrite. Now the backend is a GraphQL server writtin in nodejs using Apollo and the frontend is a react app that reads from the server.BackendThe new backend for Together is a GraphQL server. It is totally independent from the frontend, so if you want to run your own version for your own project you are very much welcome to.The backend is basically a bridge between GraphQL and Microsub and Micropub.Microsub maps quite well to GraphQL as it is based on JF2 which is a strictly defined format.But there are a few transformations that the Together server performs: It converts keys for all properties to camel case, and fills in a few properties with smart defaults, such as feed names are based on their url if there is no name, channels have a number of custom properties that mainly relate to Together settings, these are prefixed with \"_t_\"Micropub on the other hand uses uses the much more fluid microformats2 format, which does not map nearly so well, so there is a bit of passing json strings involved and some conversion between mf2 and jf2.For realtime updates, data is pushed from the server using GraphQL subscriptions over websockets.On the server your microsub endpoint is polled every minute for updates, and if there is new data it is pushed to the client.A small amount of persistent data is also stored in a mongodb database. This is mainly for user data, such as their endpoint info, token, and channel settings.FrontendThe Together frontend has always been built with react, but now it has been updated to be much more performant using newer features. All components have been converted to use react hooks.MiscIndieAuth LibraryA while back I made (with a lot of help from @Marty McGuire) an IndieAuth helper library that improves on a lot of issues with the auth implementation I had used before. So I now use that in together so there should be fewer issues with people trying to log in.@postrchild/editor-baseAs part of a bunch of my projects I have forms to create mf2 content for micropub posts, I had this extracted into a reusable form, but it previously was not very well made and didn't follow a lot of react best practices.But I have also rebuilt this to be way more performant and extendable, so now it is ideal for creating both super simple micropub client interfaces as well as far more advanced, customized interfaces.Microsub MiddlewareThis is another little side project that works independently of Together. It simply watches your microsub channels and then automatically performs actions on the content.At the moment I mainly use it to roll up likes and bookmarks in my channels into one post per day instead of cluttering up my feeds.It also has an option to only keep the most recent checkin post of all users in a channel, this lets me keep an up to date location map of my indieweb friends.Glitch Indieweb StarterWant to use all these awesome things I have mentioned but don't know where to start? I've made something that can maybe help you with that! indieweb-starter.glitch.me is a pretty basic indieweb website that you can remix to instantly create your own (quite basic) website that supports IndieAuth, Micropub and Microsub - basically everything you need to get started using Together.I wouldn't recommend it as your main forever website, but it is a nice place to start out and try out some indieweb functionality before moving to something more permanent.PostrChild Browser ExtensionWith the other updates I also needed to update the PostrChild browser extension. So there will be a few updates there soon. The one I am currently happiest with is the automatic caching of a new post you are writing, it makes me feel much more comfortable knowing my content isn\u2019t going to be lost.GranaryI have to give a shoutout to granary and snarfed! Granary is a useful tool that can be used to convert data from silos such as twitter and instagram into a more friendly formats for the open web. I use this to covert my instagram feed and twitter lists into microformats2 html to follow in Together.", "html": "<p>Over the last few months I have been completely rebuilding my social reader <a href=\"https://alltogethernow.io\">Together</a>. So I felt I should write a post about it to highlight what's changed and show off what Together has to offer.</p><p>First off just a little info on the idea of a <a href=\"https://indieweb.org/reader\">social reader</a>: A social reader is an application that can be used to read and interact with content from all around the web, not just one walled garden.</p><p>In the world of the <a href=\"https://indieweb.org\">#indieweb</a> that means following other websites and owning all your own content on your own website.</p><h2>Features</h2><h3>Layouts</h3><p>The content you follow from around the web comes in all different forms, it doesn't make sense to force a photo into the same layout as long form blog post.</p><p>To help with this Together supports a number of views:</p><h4>Timeline View</h4><img alt=\"\" src=\"https://aperture-proxy.p3k.io/ade4a9b6579ba0cdd64d7acae69966d1c8169f07/68747470733a2f2f6772616e742e636f6465732f6d656469612f323031392f30372f30382f74696d656c696e652e6a7067\" /><p>The timeline view is similar to what you might find in twitter or facebook.</p><p>Each post has it's own card in a scrolling list of cards. Great for shorter format and mixed content.</p><h4>Classic View</h4><img alt=\"\" src=\"https://aperture-proxy.p3k.io/858ddf7442557b8184bc55f49749f07b9f916e1c/68747470733a2f2f6772616e742e636f6465732f6d656469612f323031392f30372f30382f636c61737369632e6a7067\" /><p>Inspired by classic RSS readers such as Google Reader (r.i.p.). The classic view uses a 2 column layout with small post previews on the left and you can click into a single post to view it on the right.</p><p>This view works well for longer form articles or news updates.</p><h4>Gallery View</h4><img alt=\"\" src=\"https://aperture-proxy.p3k.io/1fef29e8d7cb92da35e1c959b1436ec23c9a9087/68747470733a2f2f6772616e742e636f6465732f6d656469612f323031392f30372f30382f67616c6c6572792e6a7067\" /><p>The gallery view shows a grid of photos and videos from your feeds.</p><p>You can click into an individual photo or view to view it full screen and swipe through them.</p><p>I use this view to follow my instagram feed and the <a href=\"https://micro.blog/discover/photos\">micro.blog photo feed</a>.</p><h4>Map View</h4><p>A more niche view is the map view that shows where the most recent posts in a channel come from.</p><p>This can be used to have a nice view where your friends have checked in recently.</p><h3>Previews</h3><img alt=\"\" src=\"https://aperture-proxy.p3k.io/14750b574b2d2dab5e7815582563927bd326bf21/68747470733a2f2f6772616e742e636f6465732f6d656469612f323031392f30372f30382f707265766965772e6a7067\" /><p>Something I worked on quite a bit for this release was the feed following and preview UI.</p><p>The preview and search is now contained in one unified box, it's now much easier to see exactly what you searched for and what feed you are previewing.</p><h3>Inline actions</h3><p>Inline actions are not new in this version of Together, but have seen an update. The actions let you reply, like or repost to your website via <a href=\"https://indieweb.org/micropub\">micropub</a>, perform admin actions (like blocking and muting sources) and viewing or loading the original content.</p><p>New in v3 is the consistent option to attempt to reload the content again from the source. This is useful for (annoying) feeds that only provide a short preview of a posts content.</p><p>Another new feature in v3 are the improved notifications. When you post a reply or like, notifications now have buttons to view your created post or immediately delete it if your micropub endpoint supports <a href=\"https://www.w3.org/TR/micropub/#delete\">deletes</a>.</p><img alt=\"\" src=\"https://aperture-proxy.p3k.io/057631011b6195b1c84764de66356dbc078aec38/68747470733a2f2f6772616e742e636f6465732f6d656469612f323031392f30372f30382f6e6f74696669636174696f6e2e6a7067\" /><h3>Settings management</h3><img alt=\"\" src=\"https://aperture-proxy.p3k.io/cc45d7d927245003d2e19bae136867cd0b86e7e0/68747470733a2f2f6772616e742e636f6465732f6d656469612f323031392f30372f30382f666f6c6c6f77696e672e6a7067\" /><p>Channel settings have also seen a bit of an upgrade in v3, in particular the list of feeds you are following, or have blocked or muted. You can now more easily see exactly what each feed is and click through to view it.</p><h3>Micropub Queries</h3><p>This one is exciting to me! <a href=\"https://github.com/indieweb/micropub-extensions/issues/4\">Micropub queries</a> are very experimental but if your micropub endpoint supports them it allows Together to query your own website for recently published content that can then be displayed and managed.</p><p>My site also supports various <a href=\"https://indieweb.org/posts#Types_of_Posts\">post types</a>, so I can see my photos, notes, articles or a variety of other content.</p><p>When viewing these posts from your own site you can also edit and delete them all from within Together.</p><img alt=\"\" src=\"https://aperture-proxy.p3k.io/684f2c059930322353ce749d70adcb8e09ca01fb/68747470733a2f2f6772616e742e636f6465732f6d656469612f323031392f30372f30382f6d6963726f7075622d71756572792e6a7067\" /><h3>Share Target</h3><p>I constantly find articles and content online that I want to interact with or store on my own website, and the Together share target helps facilitate that. Now if Together is installed as a PWA with chrome, you can natively share content to it, and then interact with that content, like writing a reply or liking the url.</p><h2>Tech details</h2><p>V3 of Together was a near total rewrite. Now the backend is a <a href=\"https://graphql.org\">GraphQL</a> server writtin in nodejs using Apollo and the frontend is a react app that reads from the server.</p><h3>Backend</h3><p>The <a href=\"https://github.com/alltogethernow/server\">new backend for Together</a> is a GraphQL server. It is totally independent from the frontend, so if you want to run your own version for your own project you are very much welcome to.</p><p>The backend is basically a bridge between <a href=\"https://graphql.org\">GraphQL</a> and <a href=\"https://indieweb.org/microsub\">Microsub</a> and <a href=\"https://indieweb.org/micropub\">Micropub</a>.</p><p>Microsub maps quite well to GraphQL as it is based on JF2 which is a strictly defined format.</p><p>But there are a few transformations that the Together server performs: It converts keys for all properties to camel case, and fills in a few properties with smart defaults, such as feed names are based on their url if there is no name, channels have a number of custom properties that mainly relate to Together settings, these are prefixed with \"_t_\"</p><p>Micropub on the other hand uses uses the much more fluid microformats2 format, which does not map nearly so well, so there is a bit of passing json strings involved and some conversion between mf2 and jf2.</p><p>For realtime updates, data is pushed from the server using GraphQL <a href=\"https://www.apollographql.com/docs/apollo-server/features/subscriptions\">subscriptions</a> over websockets.</p><p>On the server your microsub endpoint is polled every minute for updates, and if there is new data it is pushed to the client.</p><p>A small amount of persistent data is also stored in a <a href=\"https://www.mongodb.com/\">mongodb</a> database. This is mainly for user data, such as their endpoint info, token, and channel settings.</p><h3>Frontend</h3><p>The <a href=\"https://github.com/alltogethernow/web\">Together frontend</a> has always been built with react, but now it has been updated to be much more performant using newer features. All components have been converted to use <a href=\"https://reactjs.org/docs/hooks-intro.html\">react hooks</a>.</p><h2>Misc</h2><h3>IndieAuth Library</h3><p>A while back I made (with a lot of help from <a class=\"h-card\" href=\"https://martymcgui.re/\">@Marty McGuire</a>) an <a href=\"https://indieweb.org/indieauth\">IndieAuth</a> helper library that improves on a lot of issues with the auth implementation I had used before. So I now use that in together so there should be fewer issues with people trying to log in.</p><h3><a href=\"https://github.com/grantcodes/postrchild-editor-base\">@postrchild/editor-base</a></h3><p>As part of a bunch of my projects I have forms to create mf2 content for micropub posts, I had this extracted into a reusable form, but it previously was not very well made and didn't follow a lot of react best practices.</p><p>But I have also rebuilt this to be way more performant and extendable, so now it is ideal for creating both super simple micropub client interfaces as well as far more advanced, customized interfaces.</p><h3><a href=\"https://microsub-middleware.glitch.me/\">Microsub Middleware</a></h3><p>This is another little side project that works independently of Together. It simply watches your microsub channels and then automatically performs actions on the content.</p><p>At the moment I mainly use it to roll up likes and bookmarks in my channels into one post per day instead of cluttering up my feeds.</p><p>It also has an option to only keep the most recent checkin post of all users in a channel, this lets me keep an up to date location map of my indieweb friends.</p><h3>Glitch Indieweb Starter</h3><p>Want to use all these awesome things I have mentioned but don't know where to start? I've made something that can maybe help you with that! <a href=\"https://indieweb-starter.glitch.me\">indieweb-starter.glitch.me</a> is a pretty basic indieweb website that you can remix to instantly create your own (quite basic) website that supports IndieAuth, Micropub and Microsub - basically everything you need to get started using Together.</p><p>I wouldn't recommend it as your main forever website, but it is a nice place to start out and try out some indieweb functionality before moving to something more permanent.</p><h3>PostrChild Browser Extension</h3><p>With the other updates I also needed to update the <a href=\"https://postrchild.com\">PostrChild browser extension</a>. So there will be a few updates there soon. The one I am currently happiest with is the automatic caching of a new post you are writing, it makes me feel much more comfortable knowing my content isn\u2019t going to be lost.</p><h3>Granary</h3><p>I have to give a shoutout to <a href=\"https://granary.io\">granary</a> and <a href=\"https://snarfed.org\">snarfed</a>! Granary is a useful tool that can be used to convert data from silos such as twitter and instagram into a more friendly formats for the open web. I use this to covert my instagram feed and twitter lists into microformats2 html to follow in Together.<br /></p><p></p>" }, "author": { "type": "card", "name": "Grant Richmond", "url": "https://grant.codes/", "photo": "https://aperture-proxy.p3k.io/be31049af9884a65289b2d14300adafc0e4030c6/68747470733a2f2f6772616e742e636f6465732f696d672f6d652e6a7067" }, "post-type": "article", "_id": "4369592", "_source": "11", "_is_read": true }