#dev 2022-10-20

2022-10-20 UTC
#
IWDiscordGateway
<slyduda> snarfed i'm trying to setup gcloud, but i haven't done this in probably 3+ years. in your readme you say to install the CLI components, but i'm having trouble figuring out how to do this from scratch. would you be able to point me in the right direction?
#
[snarfed]
slyduda sure, which platform are you on?
#
[snarfed]
actually, for the webutil tests, I think you can skip gcloud altogether
#
IWDiscordGateway
<slyduda> im on ubuntu, i will skip for now, but if i run into issues i will let you know
#
[snarfed]
sure! after you follow the first set of commands in https://oauth-dropins.readthedocs.io/en/latest/#development to install dependencies, you can skip the rest of it and just try running the tests with `python -m unittest discover`
#
IWDiscordGateway
<slyduda> yup got it working okay! on a separate side note, are you considering working on the front-end for bridgy any time soon? if i have some time i would love to help work on it
#
[snarfed]
hmm! by frontend, do you mean UI? I have no plans right now. what are you thinking?
#
IWDiscordGateway
<slyduda> also, now realizing, tests break if adding another layer for discovery since you'd need an additional test html string to represent the second request
#
IWDiscordGateway
<slyduda> i've been really loving nuxt v3 for static site generation and i could definitely try putting something together if you think that may be helpful!
#
[snarfed]
you should be able to add the new test html string with a self.expect_requests_get(...) call inside test_html_refresh, I don't think any other tests or setup would need changing
#
[snarfed]
interesting, thanks for offering! it's very minimal on the JS side right now, barely any, and no framework. I don't know that I'm looking to add one
#
[snarfed]
are there specific user-visible UI features or changes you're interested in?
#
IWDiscordGateway
<slyduda> nuxt is going pretty heavy on full static and stripping as much js as possible from generated pages, but i'm not trying to evangelize right now! just thought i'd ask πŸ™‚
#
IWDiscordGateway
<slyduda> not a problem at all! just really small things that can be easily tweaked with some css changes like alignment of polling buttons, spacing between responses, and some other super minor things. i could definitely make a PR with just some css if you'd like to keep it super minimal!
#
[snarfed]
understood! I'm definitely open to design and CSS changes to start, and maybe bigger changes eventually. thank you for offering!
#
IWDiscordGateway
<slyduda> finished up the changes, will update PR tomorrow!
mro, gRegorLove_, barnaby and jacky joined the channel
#
[snarfed]
slyduda++
#
Loqi
slyduda has 1 karma over the last year
jacky and geoffo joined the channel
#
jacky
one thing I do kind of like in both AS and https://atproto.com/specs/xrpc is the use of a schema for calls
#
jacky
I think the idea's lightly being surfaced with the listing of properties for post types we have on /Micropub 's repos
#
Loqi
[jamietanna] #33 Query for supported properties, for a supported post-type
jacky joined the channel
#
[tantek]
[snarfed]++ for We're Drowning. I'm with the "Libraries are bloated and you probably only need a small subset of the functionality, so write your own code has become my mantra." person on https://news.ycombinator.com/item?id=33269443
#
Loqi
[snarfed] has 21 karma in this channel over the last year (49 in all channels)
#
Loqi
[mgrayson] We're Drowning
#
[tantek]
also, this is perhaps a bit code snobby, but I don't trust most code these do to /OOP bloat in contrast to folks who learned code when every bit mattered
#
[tantek]
these *days
#
[tantek]
*due to /OOP bloat.
jacky joined the channel
#
@one_anachronism
@kevinmarks @majelbstoat Hey Kevin, I recently built @medium_api to solve this exact problem. Why don't you give it a try πŸ˜‰ πŸ”— https://mediumapi.com
(twitter.com/_/status/1583111416239689728)
jacky joined the channel
#
[snarfed]
thanks tantek! I'm not quite that far, there are a ton of benefits of reuse, and building large scale software for businesses imposes different constraints and needs, but definitely agree that we can balance more
#
[snarfed]
some communities (ahem, languages) get that balance better than others 😎
#
[tantek]
I mean sure, very different approaches for building a personal site compared to say, building a browser
#
[tantek]
no website needs 1000 deps
#
[tantek]
640 ought to be enough for anyone πŸ˜›
#
[snarfed]
tantek++
#
Loqi
tantek has 24 karma in this channel over the last year (72 in all channels)
#
barnaby
beans? I don’t see any difference
#
sknebel
hm, HN twitter bots might be the first real use case for a shared webmention blocklist :P
jacky joined the channel
#
aaronpk
lol yeah
#
Saphire
...still need to make a blog
#
superkuh
It's future shock. The underlying libs change so fast the only way to manage it is to completely abandon the idea of an operating system and re-implement everything in giant stacks of monolithic containers.
#
superkuh
Rather that using the OS's libwhatever on disk.
#
superkuh
Taken to the extreme you get something like nix.
#
superkuh
Where every single application requires you to set up an entirely new custom "environment".
#
Zegnat
Fine line between nix and containers at some points
#
Saphire
sknebel: foone keeps screaming about the onslaught of HN bots...
#
Saphire
...and how people keep posting their threads out there
#
aaronpk
what's hilarious is those spam blogs will often then send pingbacks to the original post
#
sknebel
script that checks pingback for content match, looks up hoster and sends DCMA email? :D
#
[tantek]
sknebel++ 😈
#
Loqi
sknebel has 11 karma in this channel over the last year (31 in all channels)
#
Saphire
It is year uhhh, two of me grumbling I should make a blog x'3
#
Saphire
Hm
#
jacky
do it
#
barnaby
is something in particular blocking progress?
#
jacky
tbh I started the static site way for a long time and then finally switched to the dynamic/conventional site approach once I wanted to do more with it without having to call out to others/relying on them
#
jacky
(if that helps with motivation)
#
[tantek]
staticsite++
#
Loqi
staticsite has 1 karma over the last year
#
[tantek]
jacky, I kept my "static site" blog going for 6-7 years πŸ˜‚
#
superkuh
The only interruption to my static site's ~20 year lifetime was when the FBI stole all my computers in 2011 (wikileaks shit) and I had to try to rebuild from the archive.org waybackmachine.
#
superkuh
They actually gave me back my computers finally just this spring.
#
[tantek]
Saphire, starting with small steps is definitely workable. From my experience, once I was able to figure out a /URL_design that was "good enough" for me, writing up static pages for that went fairly quickly, hence I encourage that path
#
[tantek]
definitely not any kind of framework etc.
#
Saphire
puts down ASP.NET
#
Saphire
Awh
#
barnaby
hey ASP.NET is almost retrocomputing by now, could be fun for nostalgia
#
[tantek]
it's too easy to get distracted in yak shaving any particular framework or watching tutorials or doing tool chain setup rituals
#
Saphire
barnaby: .NET 5 and onwards is crossplatform and actively updated
#
[tantek]
I'm absolutely for the minimal tools to *start* a blog: text editor, file transfer tool (sftp, scp etc.)
#
Saphire
[tantek]: oh nah, I have passed THAT point long ago and know how to whack an ASP.NET basic server out rather quickly, and make it serve static assets (just.. throw them into a folder)
#
Saphire
...helps they have `dotnet new web` thing and you get all the basic setup for free
#
[tantek]
nice! Saphire++
#
Loqi
Saphire has 1 karma over the last year
#
barnaby
huh interesting, I had no idea it was still in use
#
Saphire
Well
#
jacky
barnaby: def in the US
#
[tantek]
barnaby, people say that about php & perl too lol
#
Saphire
I have a few tools with dotnet in general
#
Saphire
It's been pretty nicely active after MS open sourced net core
#
jacky
game studios also use it for services
#
barnaby
perl I can understand, php is ridiculous seeing as every shared web offers it by default
#
Saphire
I uhhhh
#
jacky
you know the more I thought about it, the open sourcing of .net core was only possible b/c of Mono, no?
#
barnaby
(as in, I can understand people being surprised that it’s still used for web applications_
#
Saphire
Well, there's https://github.com/SaphireLattice/quest-reader but it is not ASP.NET
#
Loqi
[SaphireLattice] quest-reader: A tool to archive quests from Questden and generate a fancy single page archive
#
superkuh
still uses perl, but in a weird, out of band way not integrated or dependent on the webserver.
#
Saphire
...though it does use a part of ASP.NET, namely the template generator thing
#
superkuh
btw, does anyone have a link to that comedy chart some guy made of blog posts versus blog posts about the blog tools?
#
Saphire
I was lazy, I knew ASP.NET, and did not want to figure out any other way to get: templating, HTML parsing and good type system
#
Saphire
..Rust is an option but THAT is very prone to what [tantek] mentioned, yak shaving and setting everything up for ages as you try to find "the best lib for that" >_>
#
jacky
that could be said of any language that doesn't have some sort of FastCGI option (to permit direct rendering from the interpreter)
#
Saphire
I did end up discovering that there's no quick HTML parser in ASP.NET, only XML... That or I have not found it thanks to the enormous amount of outdated stuff about it >_>
#
jacky
(limiting it to PHP, Perl and maybe Lua IIRC)
#
Saphire
jacky: I guess a quick and dirty HTTP server option is close enough of a "replacement"
#
jacky
indeed and those frameworks tend to provide that
#
Saphire
Though it has to be secure enough (path traversal, at least)
#
Zegnat
Saphire: surprising amount of things/languages only use XML. PHP comes to mind. For how web forward it is, I keep being surprised that they still do not ship an HTML parser outside of xmllib
#
barnaby
at least DOMDocument will parse non-XM-compliant HTML without complaining too much
#
[tantek]
Saphire, re: no quick HTML parser in ASP.NET, only XML, I mean you could use XHTML for your storage files and rendered blog posts πŸ™ˆ
#
Zegnat
barnaby: until it hits a HTML5 block level element, and suddenly your DOM tree no longer matches what HTML5 parsers would have made of it ;) We have seen it happen, and it is why the mf2 parser recommends a userland HTML parser that adresses most of that
jacky and [fluffy] joined the channel
[jgmac1106] joined the channel
#
IWDiscordGateway
<slyduda> to add to the convo, i’m here cuz of jacky and his site and now i’m currently trying to build a static site builder with webmentions out of the box πŸ™ƒ
#
barnaby
slyduda nice!
#
Saphire
Hm
#
Saphire
...my site critically lacks a space for like, "extra" info
jacky joined the channel
#
jacky
slyduda: ohai! glad you've made it :)
#
IWDiscordGateway
<slyduda> yeyeye i’ll switch over to matrix soon. wanted to hop in here quick last night to talked to snarfed about a bridgy PR
#
jacky
ah nice
jacky and [tw2113_Slack_] joined the channel
#
capjamesg
[tantek] While you are here, would you agree to moving IndieWeb Utils to MIT 0?
#
[tantek]
I can live with that. Would prefer 0BSD (per angelo's points) but I'm ok with either
#
capjamesg
My heart isn't set on MIT.
#
capjamesg
* MIT 0
jacky joined the channel
#
capjamesg
Today in strange unsolicited emails inviting me to try some product: "I was just on your Github (went down a Thursday morning rabbit hole and came up in Styled Components stargazers) and loved the profile."
EncryptedGiraffe joined the channel
#
angelo
to clarify (i am not a lawyer).. the practical options in the BSD family are the 3-clause, 2-clause and 0BSD. the two clauses shared by both licenses involve simple attribution. the third clause involves safety of contributors. 0 is public-domain-equivalent. otherwise the license texts are all written in a similar style.
tbbrown joined the channel
#
capjamesg
I'm happy to go with BSD0.
#
capjamesg
Mind leaving a comment in the GitHub thread [tantek] with support for BSD0?
#
Loqi
[capjamesg] #73 Transition license to CC0
jacky joined the channel
#
angelo
to finish my thought.. MIT-0:MIT::0BSD:BSD-2-Clause
#
angelo
the third "safety" clause, for your own interpretation: "Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission."
jacky joined the channel
#
Saphire
Wonder if I could poke at the "atproto", hmm
jacky joined the channel
#
[tantek]
nah, the whole "waitlist" thing has a whole red velvet rope vibe to it that has no place in open standards
#
[tantek]
I really don't care if it's a successful marketing / desire tactic or not, it's unprincipled.
#
Saphire
Oh yeah, I have no clue what THAT is about
#
[tantek]
it's a tactic to build demand/interest through artificial scarcity. a capitalist marketing trope
#
Saphire
The specs ARE here, if rather incomplete
#
Saphire
[tantek]: the actual thing seems to be https://github.com/bluesky-social/atproto here?
#
Loqi
[bluesky-social] atproto: A social networking technology created by Bluesky
#
jacky
the waitlist is for the reference implementation, no?
#
Saphire
I guess, shrug
#
jacky
yeah because the code for the impl that's still been fleshed out is here https://github.com/bluesky-social/atproto
#
Loqi
[bluesky-social] atproto: A social networking technology created by Bluesky
#
jacky
tbhhh this is like the social version of the blocks protocol thing
#
jacky
protocol is the new word for api
#
barnaby
blocks protocol?
#
jacky
what is block protocol
#
Loqi
It looks like we don't have a page for "block protocol" yet. Would you like to create it? (Or just say "block protocol is ____", a sentence describing the term)
#
jacky
dang hold on
#
barnaby
heh I wonder if they knew that their logo is a ΓΎ
#
barnaby
and yes, if your β€œprotocol” website has a big β€œcreate an x protocol account” button, odds are it is not really a protocol
#
jacky
right
#
jacky
the protocol means api now lol
#
[tantek]
everytime I see such misuses of "protocol" I keep thinking back to the Iron Man movies where Tony Stark is often asking Jarvis to execute such-and-such protocol
#
[tantek]
where really he means "script"
#
[tantek]
which of course means something entirely different to movie script-writers so of course they didn't use that term
#
Saphire
...lmao
#
sknebel
protocol has that meaning too in some contexts
#
sknebel
e.g. in science or medical context a protocol is "a sequence of steps to execute to do a given thing"
#
Saphire
barnaby: that looks... both neat but also confusing. Like, is this just yet another "semantic web" piece thing?
#
barnaby
Saphire: oh I have no idea, jacky found it, I was just trying to prompt Loqi to make a wiki page for it but it didn’t work
#
Saphire
Oh derp, it was shared by them, not you
#
barnaby
I haven’t looked into it much myself, it looks superficially interesting but the Branding makes me suspicious πŸ€·β€β™€οΈ
#
barnaby
not a big fan of when an β€œopen protocol” is clearly beign developed and pushed by one company, mostly for a single product which may or may not even exist
#
barnaby
*being
#
Saphire
barnaby: and actually USING those seems to be "contact sales"
#
[tantek]
Saphire++ lololol " >is this just yet another "semantic web" piece thing?<
#
Loqi
Saphire has 2 karma in this channel over the last year (4 in all channels)
#
Saphire
Like, don't build your open thing, allow people to contribute INTO it
#
Saphire
But then gate actually consuming it behind "email us!"
#
[tantek]
barnaby, at some point in the past I wrote up a takedown of "blockprotocol" pretty sure here in chat
#
barnaby
looks like it never made it onto the wiki, but I’m sure I can imagine most of the content ;)
#
Saphire
[tantek]: semantic web is a neat idea, but uh
#
Saphire
what is standards
#
Loqi
Specifications (or standards) are technical documentation for communicating between two or more implementations in an interoperable way; for the indieweb in particular, standards help reach greater levels IndieMark user functionality to publish, express meaning, notify, subscribe, and many other user actions https://indieweb.org/standards
#
Saphire
I am disappointed this has no XKCD on it
#
barnaby
!standards
#
[tantek]
you mean 768? I can fix that
#
Saphire
...close enough
#
barnaby
Loqi has us covered
#
Saphire
what is xkcd standards
#
Loqi
It looks like we don't have a page for "xkcd standards" yet. Would you like to create it? (Or just say "xkcd standards is ____", a sentence describing the term)
#
Saphire
...aw
#
barnaby
heh it’d be funny if Randall did a parody XKCD Protocol announcement in the same vein as his XKCD Phone satires
#
jacky
has been lurking in the archives and found this nugget https://chat.indieweb.org/dev/2018-11-16#t1542411333071900
#
barnaby
probably a little niche for that audience though
#
barnaby
more suited to w3cmemes
#
Loqi
[[tantek]] use-case you just met someone at a conference so just want to follow their quick real-time updates (notes, maybe photos), but later decide you want to follow their articles too. if your reader is person-centric, you can easily see what other aspects ...
#
[tantek]
yessss jacky
#
[tantek]
feeds aren't social. people are.
slydud joined the channel
#
Loqi
[[tantek]] Yeah, starting with that, the VERY FIRST block / schema / property is a classic western-centric error: "So the schema for a *Person* has the properties *firstName*" which means the author has close to zero i18n clue (sorry if that's harsh but this ta...
#
Loqi
[capjamesg] #104 Create validator for unnecessary meta tags
#
capjamesg
I finally got around to writing that up.
#
Saphire
what is first name
#
Loqi
It looks like we don't have a page for "first name" yet. Would you like to create it? (Or just say "first name is ____", a sentence describing the term)
#
Saphire
What is name
#
Loqi
A name can be an important part of one's online identity and can be almost anything one chooses to represent themselves https://indieweb.org/name
#
[tantek]
capjamesg++
#
Loqi
capjamesg has 30 karma in this channel over the last year (96 in all channels)
#
capjamesg
Also, I removed a lot of meta tags from my website.
#
Saphire
capjamesg: oh, would like a list
#
capjamesg
Coming up!
#
Saphire
Sadly I have found that you need opengraph AND twitter tags to properly have embedding for everything
#
Saphire
Because some stuff uses one, other the other
#
Saphire
Some uses both, but exclusively, without mixing? Shrug
#
Saphire
I don't remember which set of them discord and telegram use, but I think it was different for both?
#
[tantek]
first name is an archaic Western-centric term for a person’s given name that is still used in numerous coding examples and even supposed ”[https://chat.indieweb.org/microformats/2022-01-30#t1643503776668700 protocols]”; please avoid using any notion or label of β€œfirst name” in code or UIs, and instead use β€œgiven name” which has been in [[vCard]] since the 1990s.
#
Loqi
[[tantek]] Yeah, starting with that, the VERY FIRST block / schema / property is a classic western-centric error: "So the schema for a *Person* has the properties *firstName*" which means the author has close to zero i18n clue (sorry if that's harsh but this ta...
#
[tantek]
oh wait I think I have another citation for that
#
capjamesg
Maybe I'll change my opinion on this but for now I'm happy to remove those tags.
#
Saphire
Oh hm
#
Loqi
ok, I added "https://tantek.com/2015/079/b1/dublin-core-application-profiles#firstName" to a brand new "See Also" section of /first_name https://indieweb.org/wiki/index.php?diff=83928&oldid=83927
#
Saphire
What is rel
#
Loqi
rel is an HTML attribute that has a space separated set of values defined by the rel registry used in the IndieWeb for various discovery purposes such as identity (rel-me), authorship (rel-author), Webmention endpoint, Micropub endpoint, IndieAuth endpoints, etc https://indieweb.org/rel
#
Loqi
[Tantek Γ‡elik] Dublin Core Application Profiles β€” A Brief Dialogue
#
capjamesg
I also added more annotations to my HTML template. Inspect my website code :)
#
capjamesg
I kept og:image and twitter:image.
#
capjamesg
Accidentally. But I might keep them anyway.
jacky joined the channel
#
[aciccarello]
I didn't think about other implementations of og/twitter meta tag parsing.
#
[aciccarello]
Theoretically you should be able to mix them
#
Saphire
capjamesg: you have black graph on dark blue ^^"
#
[tantek]
I like [KevinMarks] techniques for media-jamming the Tw/OG metacrap
#
capjamesg
Saphire I know :(
#
capjamesg
I could add a colour option to that tool.
#
Loqi
[capjamesg] mediawiki-sparkline-generator: Create a sparkline showing your MediaWiki contributions.
#
Saphire
Ahh
#
Saphire
Could also use filter?
#
capjamesg
Ooh, good call!
#
Saphire
Hm
#
Saphire
Does the site pick up light/dark from browser reported CSS media?
#
Saphire
Also, dark mode has a MUCH more noticeable border around the body compared to the light ^^"
#
Saphire
capjamesg: a much more "universal" and a bit lazy solution is to throw in a background when in dark mode
#
[tantek]
new blogging authoring feature idea: when you open your blog post creation UI in the morning, it flips a coin and sets your blog in a light mode or a dark mode, and prompts you with "You woke up and chose constructive/destructive this morning", and then helps you write something positive or something critical
#
Saphire
Er? o:
#
[tantek]
you know, like a rant about why are otherwise intelligent developers still proposing "first name" in 2022 for anything
#
[tantek]
that kind of destructive
#
[tantek]
or maybe deconstructive would be better
#
capjamesg
Saphire Good question! I annotated that :D
#
capjamesg
And I made it into a GitHub repo this morning! https://github.com/capjamesg/darkmode.js
#
Loqi
[capjamesg] darkmode.js: Trigger dark mode and light mode on your website.
#
Saphire
Mmmh
#
Loqi
[capjamesg] darkmode.js: Trigger dark mode and light mode on your website.
#
Saphire
I highly recommend not storing a manual preference unless actually clicked
#
Saphire
And use browser one until then
jacky joined the channel
#
Saphire
And oh whoa, hovercards
#
capjamesg
I store a manual preference when you click.
#
capjamesg
I check if you have a manual one after I have checked OS-level.
#
capjamesg
If your operating system is set to dark mode, you'll get dark mode using the prefers-color-scheme CSS selector.
#
capjamesg
I blogged about them too :D
#
capjamesg
They are a WIP.
#
Saphire
Ah hm
#
capjamesg
And the JS is also on my GitHub.
#
Saphire
Reading it ^^
#
Saphire
Was confused by it not triggering theme change on me poking in dev tools
#
[tantek]
capjamesg++ the hovercards are very cool and remind me of Wikipedia!
#
capjamesg
Oh! The hovercards aren't in dark mode yet! I need to work on that at some point.
#
[tantek]
how do you determine if a link gets a hovercard or not?
#
capjamesg
The hovercards work *really* well with the IndieWeb wiki IMO.
#
Saphire
Oh dear
#
capjamesg
I give a link a hovercard if it appears in the e-content of a post and if I can retrieve at least a title for the page.
#
Saphire
I found a "fun" bug
#
capjamesg
I use the IndieWeb Utils get_reply_context function for that.
#
Saphire
Open this in darkk mode: https://jamesg.blog/#main
#
capjamesg
#selfdogfooding.
#
Saphire
Gah need to fix the keyboard
#
capjamesg
You can use that syntax to link to any paragraph: https://jamesg.blog/#pronouns
#
capjamesg
I think I need to use the ## syntax to avoid HTML ID checks.
#
capjamesg
Saphire++ for the discovery!
#
Loqi
Saphire has 3 karma in this channel over the last year (5 in all channels)
#
capjamesg
This is a serious issue for accessibility. I'll address it soon.
[timothy_chambe] joined the channel
#
[tantek]
fragmentions++
#
Loqi
fragmentions has 1 karma over the last year
#
Saphire
Fragmentions sound like someone getting fragged via a mention... or frags that mention people
#
[tantek]
^ [schmarty] πŸ˜‚
#
[KevinMarks]
No, don't use ##, pick a longer fragment
#
Saphire
###
#
[tantek]
that's one way to hash it out
#
Saphire
Though using #### might be inappropriate in public
#
capjamesg
[KevinMarks] What about in the case Saphire linked above?
#
capjamesg
Where #main corresponds to an ID I use for a skip link.
#
[tantek]
jacky, regarding authoring UIs, I blogged this a little while ago that you might also find interesting: https://tantek.com/2020/037/b2/local-first-undo-redo-create-edit-publish
#
Loqi
[Tantek Γ‡elik] Local First, Undo Redo, JS-Optional, Create Edit Publish
#
Saphire
JS-Optional is.. difficult, unless that means "it can be a <form> with a textbox"?
#
[tantek]
yes, exactly that
#
[KevinMarks]
I think id or name should win over text if they exist
jacky joined the channel