#dev 2022-07-29
2022-07-29 UTC
# [tantek] [fluffy] [j12t] my "simple" answer to your question about "whose space" and how does your avatar show up in a space etc. is that this is a *hard problem*, and that the closest we have in "flatland" is everyone has their own website (space) and we agree to allow showing a non-programmatic image + text label representation that other people bring (<img> + name as text)
# [tantek] anyway to get actual realtime dynamic representations, you need something like the containing document vs embedded iframe relationship, and that's going to be *at least as hard* as the 2D HTML page with an iframe inside structure in terms of privacy & security, cross-origin communication etc.
# [tantek] so sure, people can go off and start from scratch if they really want (have the time etc.) but IMO that will likely result in all the same re-solving of existing solved problems (but worse) that we saw with the parallel RDF-web, or the parallel XML-web, or most recently, the parallel JSON-API-web
# [fluffy] Anyway. I don't think the problem of distributing 3D/VR worlds is inherently that difficult, and the problem of getting multiple people into the same VR session isn't that difficult. Sharing avatars gets a bit more difficult, Protecting user privacy is the hard part, when you have to worry about what things are watching the various HTTP transfers of rooms/assets/avatar parts/etc.
# IWDiscordGateway <capjamesg> What is the topic de jour?
# IWDiscordGateway <capjamesg> I read we are talking VR worlds?
# IWDiscordGateway <capjamesg> VRChat? (Phrased that way so as not to trigger Loqi.)
# Loqi It looks like we don't have a page for "vrchat" yet. Would you like to create it? (Or just say "vrchat is ____", a sentence describing the term)
# Loqi It looks like we don't have a page for "VRChat" yet. Would you like to create it? (Or just say "VRChat is ____", a sentence describing the term)
# Loqi ok, I added "[[VR]]" to a brand new "See Also" section of /VRChat https://indieweb.org/wiki/index.php?diff=82445&oldid=82444
# Loqi It looks like we don't have a page for "Virtual Reality" yet. Would you like to create it? (Or just say "Virtual Reality is ____", a sentence describing the term)
# IWDiscordGateway <capjamesg> Has anyone heard the song Virtual Insanity?
# IWDiscordGateway <capjamesg> (Jamiroquai)
angelo joined the channel
# IWDiscordGateway <capjamesg> 🤣
# IWDiscordGateway <capjamesg> Oh no haha!
jacky joined the channel
jacky, [jeremycherfas], geoffo, petermolnar, pmlnr, jjuran, gRegorLove_, tetov-irc, jeremycherfas and nertzy joined the channel
AramZS, geoffo and [marksuth] joined the channel
# [campegg] I’m trying to own a couple more of my silo links, but am running into a bit of an issue configuring nginx for Strava. I’d like to have `/strava` redirect to my profile (`https://strava.com/athletes/273720`), but have `/strava/[?]` redirect to the appropriate activity (`https://strava.com/activities/[?]`) — is it possible to do this kind of conditional redirect (i.e. if there’s something following `/strava`, go to the `/activ
# [campegg] URL, else go to the `/athletes` URL)? I’ve done a bit of googling (ddg-ing?) around, but can’t seem to find anything that matches my use case.
chenghiz_ joined the channel
# [campegg] Thanks, [aaronpk]! Going to play with that now
# [campegg] [sknebel] — I have “`location ~ ^/strava
{ return 307 https://strava.com/athletes/273720; }`” for the profile, and “`location ~ ^/strava(.*) { return 307 https://strava.com/activities$1; }
`” for activities, but both redirect to the profile# [campegg] Should the activity block be `/strava/(.*)`?
# [campegg] Awesome! Thanks [sknebel] and [aaronpk]! A combo of both sets of advice got me there… regex match rule for the activities first, followed by a exact match rule for the profile got me exactly what I wanted
# [campegg] [sknebel] ++
# [campegg] [aaronpk] ++
cjw6k joined the channel
# omz13 If some more eyes could look over it (https://github.com/indieweb/indieauth/issues/113), it would be useful: perhaps aaronpk from the OAuth side and [tantek] at the user cases?
# [campegg] I struggled with it a bit… it’s not like (e.g.) Twitter, where activity on the network is basically appended to the profile URL, so went with /strava for the profile, and /strava/[activity id] for the actual activities. Am definitely open to suggestions for a better approach, though
# [schmarty] can't find a reference for this at the moment but i like the sentiment that a URL structure is a defacto API
# [schmarty] so doing ownyourlinks in this way means you can also pave over some URL-as-API weirdness you don't like in the service you're redirecting to!
# [campegg] Similar to Flickr, that separation of ‘activity’ form ‘athlete’ (used in its loosest sense, in my case 🙂) definitely throws me a bit
lanodan joined the channel
# [tantek] a lot of these silos are based on a global post ID and thus there is an opportunity to further "simplify" the URL structure (on your own site) down to "silo" / "post id" and then redirect that as needed for now. That way if/when you completely replace those silo redirects with content on your own site, all you need is a local lookup for your post IDs from that silo (available in nearly every export)
# [campegg] That’s pretty much where I ended up (I think… please correct me if I’m not following). The nginx rules I ended up with after a few more tweaks are “`location ~ ^/strava(/.[0-9]*)
{ return 307 https://strava.com/activities$1; }
`” and# [campegg] “`location ~ ^/strava(/?$)
{ return 307 https://strava.com/athletes/273720; }
`“, which gives me `/strava` (or `/strava/`) for my profile, then `/strava/[activity id]` for my activities. I also show a subset of the activity data on my own site at `/activities/[activity id]` (e.g. https://campegg.com/activities/2425318828)lanodan joined the channel
# [campegg] Why is that? I store all of the data locally, so am referencing it from a local source, but also have a ‘local id’ attached to each activity too, so could use that
# [campegg] Got it. I don’t really have a global id space… each content type--note, post, activity, etc--on my site has it’s own id structure (because I didn’t really think through my architecture properly), but I can see what you’re getting at. And now I think I need to go back and rebuild a whole bunch of stuff to correct some sub-optimal decisions that I’ve made
# [tantek] this is one of the reasons that a bunch of us (see /URL_design) went down the path of "global id space first" in our URLs, where that "ID" is actually some form of explicitly (readably) date-based ID
nertzy joined the channel
# [campegg] I definitely *should* have done that. But I think I can remediate the situation relatively painlessly
# [campegg] (Famous last words…)
# @AaronGustafson You can now use webmentions in Eleventy via a plugin rather than rolling the whole thing yourself. https://buff.ly/3PRimRK (twitter.com/_/status/1553088722362580993)
cjw6k and nertzy joined the channel
[aciccarello] joined the channel
# [aciccarello] That's cool. I might add that to mine
bneil joined the channel
cjw6k joined the channel
# [tantek] I feel like that needs some sort of highlighting or at least entry on /Webmention
cjw6k joined the channel
[Murray] joined the channel
# Loqi GraphQL is a query language for APIs and a runtime for fulfilling those queries with existing data https://indieweb.org/GraphQL
# [tantek] GraphQL << Criticism: https://twitter.com/mitsuhiko/status/1552694954190950406
# @mitsuhiko I think GraphQL is quickly moving to one of my least favorite technologies. Building an efficient query system for the server is almost writing a database and as a user it has a lot of rough edges. Good idea but man is it complex. (twitter.com/_/status/1552694954190950406)
# Loqi ok, I added "Criticism: https://twitter.com/mitsuhiko/status/1552694954190950406" to the "See Also" section of /GraphQL https://indieweb.org/wiki/index.php?diff=82502&oldid=62661
tetov-irc and [bneil] joined the channel
nertzy and Seirdy joined the channel