Search by property

This page provides a simple browsing interface for finding entities described by a property and a named value. Other available search interfaces include the page property search, and the ask query builder.

Search by property

A list of all pages that have property "Contains text" with value "so re: [[Stoplight]] and [[Cooldown]]s, [[Sidekiq#Cooldown]] tries to deliver something 16 times ( https://github.com/NeuromatchAcademy/mastodon/blob/eb24c0ad07c4137517e6bd37ebcc99d6e2b86797/app/workers/activitypub/delivery_worker.rb#L11 ) the delay rises exponentially (^4) with each retry. So eg by the 10th retry we're delaying an average of 208 minutes, and by 16 we're at 1365 (22 hours). That delay uses sidekiq's `sidekiq_retry_in` method, which applies to each delivery task (ie. each status we're trying to push), but there is also an additional control flow tool Stoplight ( https://blog.bolshakov.dev/stoplight/ ) that applies per inbox URL (rather than per job). You start in a good (green) state. Each failure counts towards a threshold (10), after which it halts all jobs matching that inbox (red). After the cooldown period (60 seconds) it flips into a "yellow" state: if the next job succeeds, it flips back to green. If it fails, it goes immediately back to red. That configuration seems sorta... pointless to me? if it only kicks in after 10 failures, then it'll only be halting after really long delays, right? it seems like that should be a high threshold with like a really long cooldown to me - if we haven't been able to deliver like 200 messages, then cooldown for like 6 hours (i'm not sure if receiving a message clears the stoplight)". Since there have been only a few results, also nearby values are displayed.

Showing below up to 27 results starting with #1.

View (previous 50 | next 50) (20 | 50 | 100 | 250 | 500)


    

List of results

  • Discussions#sneakers.the.rat-24-01-17 10:58:31  + (ok i'd like to raise an olde idea again anok i'd like to raise an olde idea again and that is having an instancewide [[Sticky Posts]] to supplement announcements to be able to make discussions that are intended to lead to a proposal more visible to the instance. loomio and discord merely by virtue of being separate platforms are less visible, so let's try and do a lil bridging of mediums.</br></br>here's one idea of what that might look like:</br>v1</br>- currently we have a [[Discussions]] stage in governance docs (https://wiki.neuromatch.social/Governance#Discussions) we can make that a more formal definition and say that a discussion intended to lead to a proposal is a stickied post.</br>- ping a member of social wg (make sure these are up to date) or start discussion here to make a sticky post</br>- sticky posts come from an autofollowed @ discussions account</br>- ... are local only posts</br>- ... show themselves at the top of the home and local feed with a highlighted background color to offset them from the feed</br>- ... have a "minimize" button that is persistent across sessions, so once you minimize a sticky post it is hidden but still visible, I'm thinking like a 1em bar across the top of the feed</br></br>questions: </br>- can we just use browser storage to remember collapsed status rather than needing to make a new column in the statuses table for 'collapsed'</br>- should stickies have a time limit? or just a mechanism to close them in governance process?</br></br>v2</br>a) The threading interface on the web interface is awful, </br>b) it would be nice to be able to show a title on a minimized sticky post</br>c) ideally we would be able to organize discussions around topics and questions rather than chronologically in a more forumlike way</br>so</br>- posts can have titles</br>- titles are declared with a special "title" field in the web ui</br>- or with a first line beginning with a # from other clients, a la markdown</br>- replies with titles can be minimized too</br>- replies with titles are sorted first (bc they can be minimized)</br></br>[[Hacks]][[Hacks]])
  • Discord Messages#sneakers.the.rat-24-02-16 23:01:41  + (ok so they refactored all the css, and it ok so they refactored all the css, and it was pretty hard to track down what in the heck was changed, so here is another [[Lessons We Gone And Learned From Maintaining A Fork Of A Fork]] - patching is good, editing in place can be fragile. i moved the custom styles from better code blocks and expanded status previews to their own set of stub scss files that then get imported at the end of the scss index, so they should override conflicting rules set previously. that keeps them nice and separate and survivable in the case of big refactorings. this is similar to the "flavours" system which takes whatever isn't overridden from base masto. i can't run the dev server rn bc my brother is in town but since these are just css changes we can uh test in prod i think</br>https://github.com/NeuromatchAcademy/mastodon/commit/8e54a6bf891ff855104225032dd9ccfb0163aceat/8e54a6bf891ff855104225032dd9ccfb0163acea)
  • Lessons We Gone And Learned From Maintaining A Fork Of A Fork#sneakers.the.rat-24-02-16 23:01:41  + (ok so they refactored all the css, and it ok so they refactored all the css, and it was pretty hard to track down what in the heck was changed, so here is another [[Lessons We Gone And Learned From Maintaining A Fork Of A Fork]] - patching is good, editing in place can be fragile. i moved the custom styles from better code blocks and expanded status previews to their own set of stub scss files that then get imported at the end of the scss index, so they should override conflicting rules set previously. that keeps them nice and separate and survivable in the case of big refactorings. this is similar to the "flavours" system which takes whatever isn't overridden from base masto. i can't run the dev server rn bc my brother is in town but since these are just css changes we can uh test in prod i think</br>https://github.com/NeuromatchAcademy/mastodon/commit/8e54a6bf891ff855104225032dd9ccfb0163aceat/8e54a6bf891ff855104225032dd9ccfb0163acea)
  • Paper-feeds#sneakers.the.rat-24-01-09 02:48:18  + (quick aside for <@540104559079456770>quick aside for <@540104559079456770> if she gets a second, can u add some DNS records for meeeee???</br>- `A` record pointing `feeds` subdomain to `45.56.100.144`</br>- `A` record pointing `dev.feeds` subdomain to `45.56.100.144`</br>- `AAAA` pointing `feeds` subdomain to `2600:3c03::f03c:93ff:feca:b20f` </br>- `AAAA` pointing `dev.feeds` subdomain to `2600:3c03::f03c:93ff:feca:b20f`</br></br>That's the [[Linode/Loomio]] node, not the [[Linode/Mastodon]] node, so i won't be draining resources. want to start running a dev version of [[paper-feeds]] to test against actual RSS readers and also test federation when we get to activitypub. https://github.com/sneakers-the-rat/paper-feeds/https://github.com/sneakers-the-rat/paper-feeds/)
  • Discord Messages#sneakers.the.rat-24-01-09 02:48:18  + (quick aside for <@540104559079456770>quick aside for <@540104559079456770> if she gets a second, can u add some DNS records for meeeee???</br>- `A` record pointing `feeds` subdomain to `45.56.100.144`</br>- `A` record pointing `dev.feeds` subdomain to `45.56.100.144`</br>- `AAAA` pointing `feeds` subdomain to `2600:3c03::f03c:93ff:feca:b20f` </br>- `AAAA` pointing `dev.feeds` subdomain to `2600:3c03::f03c:93ff:feca:b20f`</br></br>That's the [[Linode/Loomio]] node, not the [[Linode/Mastodon]] node, so i won't be draining resources. want to start running a dev version of [[paper-feeds]] to test against actual RSS readers and also test federation when we get to activitypub. https://github.com/sneakers-the-rat/paper-feeds/https://github.com/sneakers-the-rat/paper-feeds/)
  • Linode/Loomio#sneakers.the.rat-24-01-09 02:48:18  + (quick aside for <@540104559079456770>quick aside for <@540104559079456770> if she gets a second, can u add some DNS records for meeeee???</br>- `A` record pointing `feeds` subdomain to `45.56.100.144`</br>- `A` record pointing `dev.feeds` subdomain to `45.56.100.144`</br>- `AAAA` pointing `feeds` subdomain to `2600:3c03::f03c:93ff:feca:b20f` </br>- `AAAA` pointing `dev.feeds` subdomain to `2600:3c03::f03c:93ff:feca:b20f`</br></br>That's the [[Linode/Loomio]] node, not the [[Linode/Mastodon]] node, so i won't be draining resources. want to start running a dev version of [[paper-feeds]] to test against actual RSS readers and also test federation when we get to activitypub. https://github.com/sneakers-the-rat/paper-feeds/https://github.com/sneakers-the-rat/paper-feeds/)
  • Linode/Mastodon#sneakers.the.rat-24-01-09 02:48:18  + (quick aside for <@540104559079456770>quick aside for <@540104559079456770> if she gets a second, can u add some DNS records for meeeee???</br>- `A` record pointing `feeds` subdomain to `45.56.100.144`</br>- `A` record pointing `dev.feeds` subdomain to `45.56.100.144`</br>- `AAAA` pointing `feeds` subdomain to `2600:3c03::f03c:93ff:feca:b20f` </br>- `AAAA` pointing `dev.feeds` subdomain to `2600:3c03::f03c:93ff:feca:b20f`</br></br>That's the [[Linode/Loomio]] node, not the [[Linode/Mastodon]] node, so i won't be draining resources. want to start running a dev version of [[paper-feeds]] to test against actual RSS readers and also test federation when we get to activitypub. https://github.com/sneakers-the-rat/paper-feeds/https://github.com/sneakers-the-rat/paper-feeds/)
  • DOI Search#sneakers-the-rat-23-03-23 15:11:22  + (re: [[PaperBot]]re: [[PaperBot]] we also had talked about [[DOI Search]] and resolving urls to DOIs and embedding them in the [[JSON-LD]]. the DOI Search should actually be super easy if we do it by altering the hashtag regex. doing it by making it an additional search type would take a little more, as would doing automatic dereferencing, but all those sound like fun to meencing, but all those sound like fun to me)
  • Discord Messages#sneakers-the-rat-23-03-23 15:11:22  + (re: [[PaperBot]]re: [[PaperBot]] we also had talked about [[DOI Search]] and resolving urls to DOIs and embedding them in the [[JSON-LD]]. the DOI Search should actually be super easy if we do it by altering the hashtag regex. doing it by making it an additional search type would take a little more, as would doing automatic dereferencing, but all those sound like fun to meencing, but all those sound like fun to me)
  • PaperBot#sneakers-the-rat-23-03-23 15:11:22  + (re: [[PaperBot]]re: [[PaperBot]] we also had talked about [[DOI Search]] and resolving urls to DOIs and embedding them in the [[JSON-LD]]. the DOI Search should actually be super easy if we do it by altering the hashtag regex. doing it by making it an additional search type would take a little more, as would doing automatic dereferencing, but all those sound like fun to meencing, but all those sound like fun to me)
  • JSON-LD#sneakers-the-rat-23-03-23 15:11:22  + (re: [[PaperBot]]re: [[PaperBot]] we also had talked about [[DOI Search]] and resolving urls to DOIs and embedding them in the [[JSON-LD]]. the DOI Search should actually be super easy if we do it by altering the hashtag regex. doing it by making it an additional search type would take a little more, as would doing automatic dereferencing, but all those sound like fun to meencing, but all those sound like fun to me)
  • Discord Messages#sneakers-the-rat-22-12-21 17:49:16  + (so! the "local" feed is the one that showsso! the "local" feed is the one that shows all the toots from our instance, the "federated" feed shows all toots from everyone that everyone on the instance follow. "local-only toots" are a special feature of glitch-soc where you can make your post *only* visible to the other members of the instance (in base masto you can only limit to mentioned accounts or followers). Local feed also will show you boosts from people on our instance, I'm not sure if there's a way to turn that off but if there isn't there should be bc that would be nice</br></br>[[Mastodon/Social WG#TODO]]: guides on how the different [[Mastodon/Feeds]] and [[Mastodon/Post Visibility]] work[[Mastodon/Post Visibility]] work)
  • Mastodon/Feeds#sneakers-the-rat-22-12-21 17:49:16  + (so! the "local" feed is the one that showsso! the "local" feed is the one that shows all the toots from our instance, the "federated" feed shows all toots from everyone that everyone on the instance follow. "local-only toots" are a special feature of glitch-soc where you can make your post *only* visible to the other members of the instance (in base masto you can only limit to mentioned accounts or followers). Local feed also will show you boosts from people on our instance, I'm not sure if there's a way to turn that off but if there isn't there should be bc that would be nice</br></br>[[Mastodon/Social WG#TODO]]: guides on how the different [[Mastodon/Feeds]] and [[Mastodon/Post Visibility]] work[[Mastodon/Post Visibility]] work)
  • WikiBot#sneakers-the-rat-22-12-29 00:22:33  + (the DOI thing I think will only take an hothe DOI thing I think will only take an hour or two more, and then yeah will be adapting some of the [[WikiBot]] code that runs on this discord already to do an agora-like thing. I've talked to flancian about this as well a bunch of times, unifying the agora bots and making a general framework for that kind of cross platform linkingrk for that kind of cross platform linking)
  • Discord Messages#sneakers-the-rat-22-12-12 12:03:08  + (this week is a good week to finish our rulthis week is a good week to finish our rules, instance description, invite statement and make a mass coordinated announcement ♥️♥️♥️😘😘😘</br>in cooperation, towards information liberation!!!!!</br></br>pls join us in conversations in <#1050561894752198706> if you are so inclined 🙂</br></br>[[Mastodon/Seed Council#TODO]]</br></br>https://open.spotify.com/track/0fEasSvs63eKApKfYbi2uDTODO]] https://open.spotify.com/track/0fEasSvs63eKApKfYbi2uD)
  • Mastodon/Seed Council#sneakers-the-rat-22-12-12 12:03:08  + (this week is a good week to finish our rulthis week is a good week to finish our rules, instance description, invite statement and make a mass coordinated announcement ♥️♥️♥️😘😘😘</br>in cooperation, towards information liberation!!!!!</br></br>pls join us in conversations in <#1050561894752198706> if you are so inclined 🙂</br></br>[[Mastodon/Seed Council#TODO]]</br></br>https://open.spotify.com/track/0fEasSvs63eKApKfYbi2uDTODO]] https://open.spotify.com/track/0fEasSvs63eKApKfYbi2uD)
  • WikiParables#sneakers-the-rat-22-12-09 12:28:39  + (up to y'all but all I'll say is we did indeed already start one and [[The Wiki Is Happening]] feat. [[The Wiki Waits For No One]] [[WikiParables]])
  • Discord Messages#sneakers-the-rat-22-12-09 12:28:39  + (up to y'all but all I'll say is we did indeed already start one and [[The Wiki Is Happening]] feat. [[The Wiki Waits For No One]] [[WikiParables]])
  • The Wiki Waits For No One#sneakers-the-rat-22-12-09 12:28:39  + (up to y'all but all I'll say is we did indeed already start one and [[The Wiki Is Happening]] feat. [[The Wiki Waits For No One]] [[WikiParables]])
  • The Wiki Is Happening#sneakers-the-rat-22-12-09 12:28:39  + (up to y'all but all I'll say is we did indeed already start one and [[The Wiki Is Happening]] feat. [[The Wiki Waits For No One]] [[WikiParables]])
  • Camel Case#sneakers-the-rat-22-12-29 00:27:20  + (we've talked about this as well, being ablwe've talked about this as well, being able to make the bot more granularly opt-in, as well as make some simple degeneracy rules like #CamelCase == [[Camel Case]] (actually proposed that probably to no result in masto here: https://github.com/mastodon/mastodon/issues/19992#issuecomment-1363496984 )don/issues/19992#issuecomment-1363496984 ))
  • Discord Messages#sneakers-the-rat-22-12-29 00:27:20  + (we've talked about this as well, being ablwe've talked about this as well, being able to make the bot more granularly opt-in, as well as make some simple degeneracy rules like #CamelCase == [[Camel Case]] (actually proposed that probably to no result in masto here: https://github.com/mastodon/mastodon/issues/19992#issuecomment-1363496984 )don/issues/19992#issuecomment-1363496984 ))
  • Mastodon updates#mannaz-23-07-04 20:31:28  + (worst case scenario -- ppl get a break from scrolling our local TL for a while 😂 🙈 writing here in caps so that we [[Mastodon updates]] REMEMBER TO TAKE A BACKUP BEFORE starting.. we should have a rocess of the typical steps to follow)
  • Discord Messages#mannaz-23-07-04 20:31:28  + (worst case scenario -- ppl get a break from scrolling our local TL for a while 😂 🙈 writing here in caps so that we [[Mastodon updates]] REMEMBER TO TAKE A BACKUP BEFORE starting.. we should have a rocess of the typical steps to follow)
  • Discord Messages#sneakers.the.rat-23-07-04 21:16:38  + (yes agreed we should make a wiki guide to yes agreed we should make a wiki guide to updating the instance. </br></br>I need to log off for the day bc am visiting friends, but in short it's</br>- start backup in linode (reminder to also set you up with an account there and add that to [[Tech WG#TODO]] [[Tech WG/Onboarding]] docs</br>- do all the git work that we're familiar with to prepare the new deploy</br>- check upgrade notes, usually on base masto release notes, to see if anything out of the ordinary is required</br>- pull down new changes to server</br>- potentially recompile yarn assets</br>- potentially run database migrations</br>- restart mastodon-* services</br></br>and that's usually it. downtime is usually on the order of a few seconds (and we could explore how to make that zero, I think that's how the pros do it with like multiple servers)the pros do it with like multiple servers))
  • Tech WG/Onboarding#sneakers.the.rat-23-07-04 21:16:38  + (yes agreed we should make a wiki guide to yes agreed we should make a wiki guide to updating the instance. </br></br>I need to log off for the day bc am visiting friends, but in short it's</br>- start backup in linode (reminder to also set you up with an account there and add that to [[Tech WG#TODO]] [[Tech WG/Onboarding]] docs</br>- do all the git work that we're familiar with to prepare the new deploy</br>- check upgrade notes, usually on base masto release notes, to see if anything out of the ordinary is required</br>- pull down new changes to server</br>- potentially recompile yarn assets</br>- potentially run database migrations</br>- restart mastodon-* services</br></br>and that's usually it. downtime is usually on the order of a few seconds (and we could explore how to make that zero, I think that's how the pros do it with like multiple servers)the pros do it with like multiple servers))
  • Tech WG#sneakers.the.rat-23-07-04 21:16:38  + (yes agreed we should make a wiki guide to yes agreed we should make a wiki guide to updating the instance. </br></br>I need to log off for the day bc am visiting friends, but in short it's</br>- start backup in linode (reminder to also set you up with an account there and add that to [[Tech WG#TODO]] [[Tech WG/Onboarding]] docs</br>- do all the git work that we're familiar with to prepare the new deploy</br>- check upgrade notes, usually on base masto release notes, to see if anything out of the ordinary is required</br>- pull down new changes to server</br>- potentially recompile yarn assets</br>- potentially run database migrations</br>- restart mastodon-* services</br></br>and that's usually it. downtime is usually on the order of a few seconds (and we could explore how to make that zero, I think that's how the pros do it with like multiple servers)the pros do it with like multiple servers))
  • Cooldown#sneakers.the.rat-24-01-09 04:53:38  + (so re: [[Stoplight]]so re: [[Stoplight]] and [[Cooldown]]s, [[Sidekiq#Cooldown]] tries to deliver something 16 times ( https://github.com/NeuromatchAcademy/mastodon/blob/eb24c0ad07c4137517e6bd37ebcc99d6e2b86797/app/workers/activitypub/delivery_worker.rb#L11 )</br>the delay rises exponentially (^4) with each retry. So eg by the 10th retry we're delaying an average of 208 minutes, and by 16 we're at 1365 (22 hours). </br></br>That delay uses sidekiq's `sidekiq_retry_in` method, which applies to each delivery task (ie. each status we're trying to push), but there is also an additional control flow tool Stoplight ( https://blog.bolshakov.dev/stoplight/ ) that applies per inbox URL (rather than per job). You start in a good (green) state. Each failure counts towards a threshold (10), after which it halts all jobs matching that inbox (red). After the cooldown period (60 seconds) it flips into a "yellow" state: if the next job succeeds, it flips back to green. If it fails, it goes immediately back to red. </br></br>That configuration seems sorta... pointless to me? if it only kicks in after 10 failures, then it'll only be halting after really long delays, right? it seems like that should be a high threshold with like a really long cooldown to me - if we haven't been able to deliver like 200 messages, then cooldown for like 6 hours (i'm not sure if receiving a message clears the stoplight) receiving a message clears the stoplight))
  • Discord Messages#sneakers.the.rat-24-01-09 04:53:38  + (so re: [[Stoplight]]so re: [[Stoplight]] and [[Cooldown]]s, [[Sidekiq#Cooldown]] tries to deliver something 16 times ( https://github.com/NeuromatchAcademy/mastodon/blob/eb24c0ad07c4137517e6bd37ebcc99d6e2b86797/app/workers/activitypub/delivery_worker.rb#L11 )</br>the delay rises exponentially (^4) with each retry. So eg by the 10th retry we're delaying an average of 208 minutes, and by 16 we're at 1365 (22 hours). </br></br>That delay uses sidekiq's `sidekiq_retry_in` method, which applies to each delivery task (ie. each status we're trying to push), but there is also an additional control flow tool Stoplight ( https://blog.bolshakov.dev/stoplight/ ) that applies per inbox URL (rather than per job). You start in a good (green) state. Each failure counts towards a threshold (10), after which it halts all jobs matching that inbox (red). After the cooldown period (60 seconds) it flips into a "yellow" state: if the next job succeeds, it flips back to green. If it fails, it goes immediately back to red. </br></br>That configuration seems sorta... pointless to me? if it only kicks in after 10 failures, then it'll only be halting after really long delays, right? it seems like that should be a high threshold with like a really long cooldown to me - if we haven't been able to deliver like 200 messages, then cooldown for like 6 hours (i'm not sure if receiving a message clears the stoplight) receiving a message clears the stoplight))
  • Sidekiq#sneakers.the.rat-24-01-09 04:53:38  + (so re: [[Stoplight]]so re: [[Stoplight]] and [[Cooldown]]s, [[Sidekiq#Cooldown]] tries to deliver something 16 times ( https://github.com/NeuromatchAcademy/mastodon/blob/eb24c0ad07c4137517e6bd37ebcc99d6e2b86797/app/workers/activitypub/delivery_worker.rb#L11 )</br>the delay rises exponentially (^4) with each retry. So eg by the 10th retry we're delaying an average of 208 minutes, and by 16 we're at 1365 (22 hours). </br></br>That delay uses sidekiq's `sidekiq_retry_in` method, which applies to each delivery task (ie. each status we're trying to push), but there is also an additional control flow tool Stoplight ( https://blog.bolshakov.dev/stoplight/ ) that applies per inbox URL (rather than per job). You start in a good (green) state. Each failure counts towards a threshold (10), after which it halts all jobs matching that inbox (red). After the cooldown period (60 seconds) it flips into a "yellow" state: if the next job succeeds, it flips back to green. If it fails, it goes immediately back to red. </br></br>That configuration seems sorta... pointless to me? if it only kicks in after 10 failures, then it'll only be halting after really long delays, right? it seems like that should be a high threshold with like a really long cooldown to me - if we haven't been able to deliver like 200 messages, then cooldown for like 6 hours (i'm not sure if receiving a message clears the stoplight) receiving a message clears the stoplight))
  • Stoplight#sneakers.the.rat-24-01-09 04:53:38  + (so re: [[Stoplight]]so re: [[Stoplight]] and [[Cooldown]]s, [[Sidekiq#Cooldown]] tries to deliver something 16 times ( https://github.com/NeuromatchAcademy/mastodon/blob/eb24c0ad07c4137517e6bd37ebcc99d6e2b86797/app/workers/activitypub/delivery_worker.rb#L11 )</br>the delay rises exponentially (^4) with each retry. So eg by the 10th retry we're delaying an average of 208 minutes, and by 16 we're at 1365 (22 hours). </br></br>That delay uses sidekiq's `sidekiq_retry_in` method, which applies to each delivery task (ie. each status we're trying to push), but there is also an additional control flow tool Stoplight ( https://blog.bolshakov.dev/stoplight/ ) that applies per inbox URL (rather than per job). You start in a good (green) state. Each failure counts towards a threshold (10), after which it halts all jobs matching that inbox (red). After the cooldown period (60 seconds) it flips into a "yellow" state: if the next job succeeds, it flips back to green. If it fails, it goes immediately back to red. </br></br>That configuration seems sorta... pointless to me? if it only kicks in after 10 failures, then it'll only be halting after really long delays, right? it seems like that should be a high threshold with like a really long cooldown to me - if we haven't been able to deliver like 200 messages, then cooldown for like 6 hours (i'm not sure if receiving a message clears the stoplight) receiving a message clears the stoplight))
  • Discord Messages#sneakers.the.rat-23-07-07 18:51:01  + (- solidarity with the fedi: to survive thi- solidarity with the fedi: to survive this and future attempts at corporate capture, it is important to act together. many instances have already committed to defederation, and even if it is symbolic, symbols are important.</br></br>- being defederated by other instances: we are currently in the good graces of some very protective instances through prior social ties and our promise to be a good actor in the space, these include instances with many leftists, queer people, and others that would likely defederate from us if we were to federate with meta. this would put NMS in a more homogeneous, corporate nice space in the fedi.</br></br>- communication with threads users: some people probably want to communicate with some threads users, and this might cause dual accounts, as you say. defederation would potentially split ties. I will hold my thoughts on this for now since I'm just trying to list the relevant factors.</br></br>what else? listing the concerns, we could then see how each impacts a decision to limit/defederate based on what each decision does. </br></br>I am traveling and AFK until Monday, but I think it would also be good to make a [[Defederation from Meta]] wiki page to keep more organized notes. forgot to tag the previous post.ed notes. forgot to tag the previous post.)
  • Updating Mastodon#sneakers-the-rat-23-01-02 22:39:57  + (<@863052667857534996> do y'all have <@863052667857534996> do y'all have anything like this for the pyopensci stuff? like a "make a feature branch off dev, make a pull request back to dev, during a code review, look for xyz" then we will also need stuff like how to do the merge and update the instance [[Hack Merging Policy]] [[Updating Mastodon]] [[Code Review]][[Code Review]])
  • Code Review#sneakers-the-rat-23-01-02 22:39:57  + (<@863052667857534996> do y'all have <@863052667857534996> do y'all have anything like this for the pyopensci stuff? like a "make a feature branch off dev, make a pull request back to dev, during a code review, look for xyz" then we will also need stuff like how to do the merge and update the instance [[Hack Merging Policy]] [[Updating Mastodon]] [[Code Review]][[Code Review]])
  • Discord Messages#sneakers-the-rat-23-01-02 22:39:57  + (<@863052667857534996> do y'all have <@863052667857534996> do y'all have anything like this for the pyopensci stuff? like a "make a feature branch off dev, make a pull request back to dev, during a code review, look for xyz" then we will also need stuff like how to do the merge and update the instance [[Hack Merging Policy]] [[Updating Mastodon]] [[Code Review]][[Code Review]])
  • Hack Merging Policy#sneakers-the-rat-23-01-02 22:39:57  + (<@863052667857534996> do y'all have <@863052667857534996> do y'all have anything like this for the pyopensci stuff? like a "make a feature branch off dev, make a pull request back to dev, during a code review, look for xyz" then we will also need stuff like how to do the merge and update the instance [[Hack Merging Policy]] [[Updating Mastodon]] [[Code Review]][[Code Review]])
  • Announcements#mannaz-23-07-07 20:10:07  + (@here [[Announcements]]@here [[Announcements]] hello #neuromatchstodon membies </br>So far [[Jonny]] and [[Manisha]] have been doing most of the admin and moderation work in cooperation with the rest of the instance members. </br></br>We are excited to welcome new members joining our working groups!🎉 🥳 </br></br>This has been a long time coming but #MastoDev extraordinaire [[Lina]] (who contributed to the Exclusive Lists PR that got merged upstream) is joining our [[Tech_WG]] 🙌 </br></br>And the amazing [[El]] (who is one of the organizers of #Maystodon #JoinMastodonDay and #NeuroParty) is joining our [[Social_WG]] 🙌 </br></br>Thank you both for your outstanding contributions ❤️ 🙏th for your outstanding contributions ❤️ 🙏)
  • Discord Messages#mannaz-23-07-07 20:10:07  + (@here [[Announcements]]@here [[Announcements]] hello #neuromatchstodon membies </br>So far <@305044217393053697> and I have been doing most of the admin and moderation work in cooperation with the rest of the instance members. </br></br>We are excited to welcome new members joining our working groups!🎉 🥳 </br></br>This has been a long time coming but our very own #MastoDev <@485848481995423755> (who contributed to the exclusive lists PR that got merged upstream) is joining our <#1049184335514828860> 🙌 </br></br>And the amazing <@961628326005440552> (who is one of the organizers of #Maystodon #JoinMastodonDay and #NeuroParty) is joining the <#1049184264832417823> 🙌 </br></br>Thank you both for your outstanding contributions ❤️ 🙏832417823> 🙌 Thank you both for your outstanding contributions ❤️ 🙏)
  • Jest#sneakers-the-rat-23-03-18 21:48:09  + (@lina gathering some stuff here: [[Mastodon/Tests]]@lina gathering some stuff here: </br>[[Mastodon/Tests]]</br>[[Mastodon/Tech WG]]</br>[[Exclusive Lists]]</br>[[Ruby Spec]]</br>[[Ruby]]</br>spec for home feed:</br>https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/home_feed_spec.rb</br>for public feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/public_feed_spec.rb</br>that gives more examples on how feeds are supposed to be filtered</br>tag feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/tag_feed_spec.rb</br>in case we might want to add exclusive tag feeds (I personally do, self interested bc monsterdon lol)</br>account filter (looks like for blocks): https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/account_statuses_filter_spec.rb</br></br>and so on </br></br>the question to me is basically how these things are structured: you have some fabricator steps that set up the conditions for the test, but then you also have these `context` statements that looks like plain English strings to me? like how do those and the `describe` fields map onto the code? like is their testing system so good that you can really just write</br>`it {is_expected.to be_filtered }` and that just works???? or how do you define all those.</br></br>Also u mentioned they are using a separate JavaScript testing framework? [[Jest]] ? that looks like it's configured here: https://github.com/NeuromatchAcademy/mastodon/blob/main/jest.config.js</br>and doesn't cover the glitch flavours, just the mastodon folder. it seems like that is for testing the appearance and function of the JS? not sure how it interacts with the ruby tests.</br></br>So for the sake of us learning to write tests here, I don't think we need to aim for full adversarial coverage of the feature, but just get the basics: "when an account is in an exclusive list, their posts dont show up on the home feed." judging from the other tests, it looks like we'll have to also test for boosts from them, but since it's not like a block we don't have to test a bunch of edge cases like interactions.t a bunch of edge cases like interactions.)
  • Ruby Spec#sneakers-the-rat-23-03-18 21:48:09  + (@lina gathering some stuff here: [[Mastodon/Tests]]@lina gathering some stuff here: </br>[[Mastodon/Tests]]</br>[[Mastodon/Tech WG]]</br>[[Exclusive Lists]]</br>[[Ruby Spec]]</br>[[Ruby]]</br>spec for home feed:</br>https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/home_feed_spec.rb</br>for public feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/public_feed_spec.rb</br>that gives more examples on how feeds are supposed to be filtered</br>tag feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/tag_feed_spec.rb</br>in case we might want to add exclusive tag feeds (I personally do, self interested bc monsterdon lol)</br>account filter (looks like for blocks): https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/account_statuses_filter_spec.rb</br></br>and so on </br></br>the question to me is basically how these things are structured: you have some fabricator steps that set up the conditions for the test, but then you also have these `context` statements that looks like plain English strings to me? like how do those and the `describe` fields map onto the code? like is their testing system so good that you can really just write</br>`it {is_expected.to be_filtered }` and that just works???? or how do you define all those.</br></br>Also u mentioned they are using a separate JavaScript testing framework? [[Jest]] ? that looks like it's configured here: https://github.com/NeuromatchAcademy/mastodon/blob/main/jest.config.js</br>and doesn't cover the glitch flavours, just the mastodon folder. it seems like that is for testing the appearance and function of the JS? not sure how it interacts with the ruby tests.</br></br>So for the sake of us learning to write tests here, I don't think we need to aim for full adversarial coverage of the feature, but just get the basics: "when an account is in an exclusive list, their posts dont show up on the home feed." judging from the other tests, it looks like we'll have to also test for boosts from them, but since it's not like a block we don't have to test a bunch of edge cases like interactions.t a bunch of edge cases like interactions.)
  • Ruby#sneakers-the-rat-23-03-18 21:48:09  + (@lina gathering some stuff here: [[Mastodon/Tests]]@lina gathering some stuff here: </br>[[Mastodon/Tests]]</br>[[Mastodon/Tech WG]]</br>[[Exclusive Lists]]</br>[[Ruby Spec]]</br>[[Ruby]]</br>spec for home feed:</br>https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/home_feed_spec.rb</br>for public feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/public_feed_spec.rb</br>that gives more examples on how feeds are supposed to be filtered</br>tag feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/tag_feed_spec.rb</br>in case we might want to add exclusive tag feeds (I personally do, self interested bc monsterdon lol)</br>account filter (looks like for blocks): https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/account_statuses_filter_spec.rb</br></br>and so on </br></br>the question to me is basically how these things are structured: you have some fabricator steps that set up the conditions for the test, but then you also have these `context` statements that looks like plain English strings to me? like how do those and the `describe` fields map onto the code? like is their testing system so good that you can really just write</br>`it {is_expected.to be_filtered }` and that just works???? or how do you define all those.</br></br>Also u mentioned they are using a separate JavaScript testing framework? [[Jest]] ? that looks like it's configured here: https://github.com/NeuromatchAcademy/mastodon/blob/main/jest.config.js</br>and doesn't cover the glitch flavours, just the mastodon folder. it seems like that is for testing the appearance and function of the JS? not sure how it interacts with the ruby tests.</br></br>So for the sake of us learning to write tests here, I don't think we need to aim for full adversarial coverage of the feature, but just get the basics: "when an account is in an exclusive list, their posts dont show up on the home feed." judging from the other tests, it looks like we'll have to also test for boosts from them, but since it's not like a block we don't have to test a bunch of edge cases like interactions.t a bunch of edge cases like interactions.)
  • Exclusive Lists#sneakers-the-rat-23-03-18 21:48:09  + (@lina gathering some stuff here: [[Mastodon/Tests]]@lina gathering some stuff here: </br>[[Mastodon/Tests]]</br>[[Mastodon/Tech WG]]</br>[[Exclusive Lists]]</br>[[Ruby Spec]]</br>[[Ruby]]</br>spec for home feed:</br>https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/home_feed_spec.rb</br>for public feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/public_feed_spec.rb</br>that gives more examples on how feeds are supposed to be filtered</br>tag feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/tag_feed_spec.rb</br>in case we might want to add exclusive tag feeds (I personally do, self interested bc monsterdon lol)</br>account filter (looks like for blocks): https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/account_statuses_filter_spec.rb</br></br>and so on </br></br>the question to me is basically how these things are structured: you have some fabricator steps that set up the conditions for the test, but then you also have these `context` statements that looks like plain English strings to me? like how do those and the `describe` fields map onto the code? like is their testing system so good that you can really just write</br>`it {is_expected.to be_filtered }` and that just works???? or how do you define all those.</br></br>Also u mentioned they are using a separate JavaScript testing framework? [[Jest]] ? that looks like it's configured here: https://github.com/NeuromatchAcademy/mastodon/blob/main/jest.config.js</br>and doesn't cover the glitch flavours, just the mastodon folder. it seems like that is for testing the appearance and function of the JS? not sure how it interacts with the ruby tests.</br></br>So for the sake of us learning to write tests here, I don't think we need to aim for full adversarial coverage of the feature, but just get the basics: "when an account is in an exclusive list, their posts dont show up on the home feed." judging from the other tests, it looks like we'll have to also test for boosts from them, but since it's not like a block we don't have to test a bunch of edge cases like interactions.t a bunch of edge cases like interactions.)
  • Discord Messages#sneakers-the-rat-23-03-18 21:48:09  + (@lina gathering some stuff here: [[Mastodon/Tests]]@lina gathering some stuff here: </br>[[Mastodon/Tests]]</br>[[Mastodon/Tech WG]]</br>[[Exclusive Lists]]</br>[[Ruby Spec]]</br>[[Ruby]]</br>spec for home feed:</br>https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/home_feed_spec.rb</br>for public feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/public_feed_spec.rb</br>that gives more examples on how feeds are supposed to be filtered</br>tag feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/tag_feed_spec.rb</br>in case we might want to add exclusive tag feeds (I personally do, self interested bc monsterdon lol)</br>account filter (looks like for blocks): https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/account_statuses_filter_spec.rb</br></br>and so on </br></br>the question to me is basically how these things are structured: you have some fabricator steps that set up the conditions for the test, but then you also have these `context` statements that looks like plain English strings to me? like how do those and the `describe` fields map onto the code? like is their testing system so good that you can really just write</br>`it {is_expected.to be_filtered }` and that just works???? or how do you define all those.</br></br>Also u mentioned they are using a separate JavaScript testing framework? [[Jest]] ? that looks like it's configured here: https://github.com/NeuromatchAcademy/mastodon/blob/main/jest.config.js</br>and doesn't cover the glitch flavours, just the mastodon folder. it seems like that is for testing the appearance and function of the JS? not sure how it interacts with the ruby tests.</br></br>So for the sake of us learning to write tests here, I don't think we need to aim for full adversarial coverage of the feature, but just get the basics: "when an account is in an exclusive list, their posts dont show up on the home feed." judging from the other tests, it looks like we'll have to also test for boosts from them, but since it's not like a block we don't have to test a bunch of edge cases like interactions.t a bunch of edge cases like interactions.)
  • Mastodon/Tests#sneakers-the-rat-23-03-18 21:48:09  + (@lina gathering some stuff here: [[Mastodon/Tests]]@lina gathering some stuff here: </br>[[Mastodon/Tests]]</br>[[Mastodon/Tech WG]]</br>[[Exclusive Lists]]</br>[[Ruby Spec]]</br>[[Ruby]]</br>spec for home feed:</br>https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/home_feed_spec.rb</br>for public feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/public_feed_spec.rb</br>that gives more examples on how feeds are supposed to be filtered</br>tag feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/tag_feed_spec.rb</br>in case we might want to add exclusive tag feeds (I personally do, self interested bc monsterdon lol)</br>account filter (looks like for blocks): https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/account_statuses_filter_spec.rb</br></br>and so on </br></br>the question to me is basically how these things are structured: you have some fabricator steps that set up the conditions for the test, but then you also have these `context` statements that looks like plain English strings to me? like how do those and the `describe` fields map onto the code? like is their testing system so good that you can really just write</br>`it {is_expected.to be_filtered }` and that just works???? or how do you define all those.</br></br>Also u mentioned they are using a separate JavaScript testing framework? [[Jest]] ? that looks like it's configured here: https://github.com/NeuromatchAcademy/mastodon/blob/main/jest.config.js</br>and doesn't cover the glitch flavours, just the mastodon folder. it seems like that is for testing the appearance and function of the JS? not sure how it interacts with the ruby tests.</br></br>So for the sake of us learning to write tests here, I don't think we need to aim for full adversarial coverage of the feature, but just get the basics: "when an account is in an exclusive list, their posts dont show up on the home feed." judging from the other tests, it looks like we'll have to also test for boosts from them, but since it's not like a block we don't have to test a bunch of edge cases like interactions.t a bunch of edge cases like interactions.)
  • Discord Messages#sneakers-the-rat-23-02-02 03:11:06  + (Ah yes, this is a [[Consensus]]Ah yes, this is a [[Consensus]] thing. I just updated the wiki page to explain a bit better: https://wiki.neuromatch.io/Mastodon/Governance#Voting</br>Yes, you can think of it analogously to a veto. Consensus refers both to making decisions that accommodate the needs of all members as well as consent - you should not be able to be coerced into consent by a bare majority of people. In more intimate consensus processes, a single person might be able to block a proposal. That becomes untenable in larger groups for sort of obvious reasons, hence the design of this governance system to have different proportional thresholds for different types of proposals, as well as division of decisionmaking power between working groups and the general membership. </br></br>A block means something different than voting in a few ways, including that blocks should be rare: consensus sort of inverts the decisionmaking process, where care should be taken to discuss with the membership and refine a proposal before, rather than after making the proposal - so in a majoritarian system one might make a proposal and make an argument in favor, people discuss in the comments and then make up their minds there. The purpose of requiring discussion beforehand is to make more space for everyone to craft the proposal in the first place, register concerns, etc. So if people are blocking a proposal, that is a sign that the process has failed (as opposed to in a majoritarian system that the proposal has failed). </br></br>Blocking also typically enjoins the person blocking to help remedy the reason for their block: if a proposal is being made in good faith, we assume that it is meeting some unmet need by the proposer/other members. If someone blocks a proposal, that will mean that it might cause them or the organization harm, but those unmet needs still remain - so it's basically like conflict res at that point. Ofc there are exceptions like not making marginalized ppl do additional labor, etc.marginalized ppl do additional labor, etc.)
  • Consensus#sneakers-the-rat-23-02-02 03:11:06  + (Ah yes, this is a [[Consensus]]Ah yes, this is a [[Consensus]] thing. I just updated the wiki page to explain a bit better: https://wiki.neuromatch.io/Mastodon/Governance#Voting</br>Yes, you can think of it analogously to a veto. Consensus refers both to making decisions that accommodate the needs of all members as well as consent - you should not be able to be coerced into consent by a bare majority of people. In more intimate consensus processes, a single person might be able to block a proposal. That becomes untenable in larger groups for sort of obvious reasons, hence the design of this governance system to have different proportional thresholds for different types of proposals, as well as division of decisionmaking power between working groups and the general membership. </br></br>A block means something different than voting in a few ways, including that blocks should be rare: consensus sort of inverts the decisionmaking process, where care should be taken to discuss with the membership and refine a proposal before, rather than after making the proposal - so in a majoritarian system one might make a proposal and make an argument in favor, people discuss in the comments and then make up their minds there. The purpose of requiring discussion beforehand is to make more space for everyone to craft the proposal in the first place, register concerns, etc. So if people are blocking a proposal, that is a sign that the process has failed (as opposed to in a majoritarian system that the proposal has failed). </br></br>Blocking also typically enjoins the person blocking to help remedy the reason for their block: if a proposal is being made in good faith, we assume that it is meeting some unmet need by the proposer/other members. If someone blocks a proposal, that will mean that it might cause them or the organization harm, but those unmet needs still remain - so it's basically like conflict res at that point. Ofc there are exceptions like not making marginalized ppl do additional labor, etc.marginalized ppl do additional labor, etc.)
  • Mastodon/Mathjax#sneakers-the-rat-22-12-12 08:37:18  + (Aight i'm totally flummoxed about how to gAight i'm totally flummoxed about how to get [[Mastodon/Mathjax#Stumpted]] to load. it <really really> wants you to use the <script> tag loading method, which i would rather not do since that makes it way less portable or else requires a call-out to an external CDN, but I can't get the startup functions to trigger programmatically, and i've tried all the various things in their docs as well as some other stuff that isn't. I am tempted to just rewrite the mathstodon stuff using a react component that i was able to find but idk <@451520217139511306> u know anything else about this?<@451520217139511306> u know anything else about this?)
  • Discord Messages#sneakers-the-rat-22-12-12 08:37:18  + (Aight i'm totally flummoxed about how to gAight i'm totally flummoxed about how to get [[Mastodon/Mathjax#Stumpted]] to load. it <really really> wants you to use the <script> tag loading method, which i would rather not do since that makes it way less portable or else requires a call-out to an external CDN, but I can't get the startup functions to trigger programmatically, and i've tried all the various things in their docs as well as some other stuff that isn't. I am tempted to just rewrite the mathstodon stuff using a react component that i was able to find but idk <@451520217139511306> u know anything else about this?<@451520217139511306> u know anything else about this?)
  • Discord Messages#sneakers.the.rat-23-09-26 21:34:40  + (BTW since we have lotsa new people here, wBTW since we have lotsa new people here, when I make a [[Wikilink]] we have a bot that copies your message to the wiki so we can capture discussion contextually and refine it later. Eg. In this case that previous message went here: https://wiki.neuromatch.io/Consensus#Discordtps://wiki.neuromatch.io/Consensus#Discord)
  • Wikilink#sneakers.the.rat-23-09-26 21:34:40  + (BTW since we have lotsa new people here, wBTW since we have lotsa new people here, when I make a [[Wikilink]] we have a bot that copies your message to the wiki so we can capture discussion contextually and refine it later. Eg. In this case that previous message went here: https://wiki.neuromatch.io/Consensus#Discordtps://wiki.neuromatch.io/Consensus#Discord)
  • Discord Messages#sneakers-the-rat-22-12-17 00:07:49  + (For the moment, until we decide on a diffeFor the moment, until we decide on a different model, neuromatch bears the costs of the instance. Though we trust neuromatch to not abuse that power, one question we should answer as a community is whether we want to move to a fully cooperative model where the members of the instance support its costs so it is truly member-owned and operated. That would likely look like some sliding scale model where members are encouraged to pay what they can, a rough guideline based on nothing but vibes might be: </br>- $0/mo for students/people making <$50k annually</br>- $1/mo for postdocs/people making <$75k annually</br>- $5/mo for PIs/people making >$75k annually</br>though this would be something we would determine based on how many members we have and how much the instance costs to run. If we were to do this, then we would use opencollective to make our finances transparent. </br></br>We could also do a hybrid model where neuromatch kicks in some defined contribution and the members donate the rest, or if we establish a financial working group we could collectively apply for grants with neuromatch as a fiscal sponsor.</br></br>Another benefit is that by having some financial surplus we would be able to pay stipends to people who volunteer for mod duty/being on call for tech emergencies.</br></br>In the meantime though, mostly so the <#1049184335514828860> knows what it's working with: what kind of costs is neuromatch willing to bear? eg. upgrading to a 16GB ram node with 8 dedicated CPUs would be $120/month but would probably be as much scale as we need for the indefinite future. Currently we are going to upgrade to an 8GB ram node at $60/month, which is already $720 annually (just for the instance, we are also running another node that will host the wiki and loomio)</br><@215274946560131074> </br>[[Mastodon/Finances]][[Mastodon/Finances]])
  • Mastodon/Finances#sneakers-the-rat-22-12-17 00:07:49  + (For the moment, until we decide on a diffeFor the moment, until we decide on a different model, neuromatch bears the costs of the instance. Though we trust neuromatch to not abuse that power, one question we should answer as a community is whether we want to move to a fully cooperative model where the members of the instance support its costs so it is truly member-owned and operated. That would likely look like some sliding scale model where members are encouraged to pay what they can, a rough guideline based on nothing but vibes might be: </br>- $0/mo for students/people making <$50k annually</br>- $1/mo for postdocs/people making <$75k annually</br>- $5/mo for PIs/people making >$75k annually</br>though this would be something we would determine based on how many members we have and how much the instance costs to run. If we were to do this, then we would use opencollective to make our finances transparent. </br></br>We could also do a hybrid model where neuromatch kicks in some defined contribution and the members donate the rest, or if we establish a financial working group we could collectively apply for grants with neuromatch as a fiscal sponsor.</br></br>Another benefit is that by having some financial surplus we would be able to pay stipends to people who volunteer for mod duty/being on call for tech emergencies.</br></br>In the meantime though, mostly so the <#1049184335514828860> knows what it's working with: what kind of costs is neuromatch willing to bear? eg. upgrading to a 16GB ram node with 8 dedicated CPUs would be $120/month but would probably be as much scale as we need for the indefinite future. Currently we are going to upgrade to an 8GB ram node at $60/month, which is already $720 annually (just for the instance, we are also running another node that will host the wiki and loomio)</br><@215274946560131074> </br>[[Mastodon/Finances]][[Mastodon/Finances]])
  • Zenodo Social Reading#sneakers-the-rat-23-03-10 07:10:00  + (I just had a good idea I think: [[Mastodon/Hacks#Ideas]]I just had a good idea I think:</br>[[Mastodon/Hacks#Ideas]] [[Zenodo Social Reading]]</br>https://neuromatch.social/@jonny/109997725222638244</br></br>> ok you know what would actually rock: a #Zenodo plugin where you could sync a collection to an #ActivityPub outbox, and do social public highlighting that way - share a set of papers under a topic for ppl to browse, but also share your annotations and then be able to show your friends annotations over the papers you're reading if u want to</br>#MastoHacks #MastoDevre reading if u want to #MastoHacks #MastoDev)
  • Mastodon/Hacks#sneakers-the-rat-23-03-10 07:10:00  + (I just had a good idea I think: [[Mastodon/Hacks#Ideas]]I just had a good idea I think:</br>[[Mastodon/Hacks#Ideas]] [[Zenodo Social Reading]]</br>https://neuromatch.social/@jonny/109997725222638244</br></br>> ok you know what would actually rock: a #Zenodo plugin where you could sync a collection to an #ActivityPub outbox, and do social public highlighting that way - share a set of papers under a topic for ppl to browse, but also share your annotations and then be able to show your friends annotations over the papers you're reading if u want to</br>#MastoHacks #MastoDevre reading if u want to #MastoHacks #MastoDev)