This looks very clickbaity. A simple example, right there at the start:
“It took us 10 years to build Rama”, then a few lines later, “it took us 9 months to build our thing, while it took others years. I don’t see that as a fair comparison.
Well, the interesting part is whether a dev without prior Rama experience would be able to develop the end application in 9 months. If that’s possible, it’s not clickbait. Except for the title though, that’s a total clickbait.
Otherwise, one could say the same about Java: “of course you can write performant Java apps faster than in C, but look at how many years did it take to perfect the JVM itself!”
I think it’s an alright headline from the perspective that anyone else using Rama will not have to first create Rama, like these specific authors did. Pulling off Twitter-scale Twitter as a tech demo with code this clean in 9 person-months is extremely impressive.
I think the author does deserve giving it a fair read though, they worked at Twitter and at the given problem for 10 years and it is definitely not FUD, even if you don’t approve of its marketing. The tech demo itself is impressive.
Ugh, there’s certainly some interesting tech here, but I’m like three paragraphs in and I’m already rubbed like three different wrong ways.
They call this a “Mastodon instance” - I’ve no problem with using “Mastodon” to refer to the broader network when speaking to people who aren’t familiar, because Mastodon has far more name recognition than “the fediverse” or “ActivityPub”, but it’s really weird to call it a “Mastodon instance” when you’re talking about a specific instance of something that is not (a fork of) the Mastodon codebase.
I really don’t put much stock in the line-count metric, because production codebases have all sorts of little features that a proof of concept, even a scalable proof of concept, probably doesn’t need. (For example, does this thing have any safety features beyond blocking/muting?)
They use Soapbox as a frontend, which is, at least among the people I know on the fediverse, almost exclusively known for the fact that the lead developer is a notorious transphobe. Obviously they may well not have known, it’s not exactly obvious from the Soapbox website, but it sure isn’t a good look.
These are way too nitpicky details that don’t take anything away from the product in my opinion.
How many frontends exist for Mastodon/the Fediverse? Most people are not familiar enough for the distinction here, and from what I gather their project supports most features of Mastodon, so it seems fair to call it as such. And due to not having all too many options for FEs, I think choosing one of the few for demonstrative purposes (that they don’t plan on prolonging) should not be questioned, if anything, doing so is not too well-intentioned.
For an article that delves deep into the technical details of distributing messages at scale - therefore the intended audience is highly technical people - it’s disingenuous to not add a two line disclaimer somewhere that this is not actually a Mastodon fork because “most people are not familiar enough”.
They call this a “Mastodon instance” - I’ve no problem with using “Mastodon” to refer to the broader network when speaking to people who aren’t familiar, because Mastodon has far more name recognition than “the fediverse” or “ActivityPub”, but it’s really weird to call it a “Mastodon instance” when you’re talking about a specific instance of something that is not (a fork of) the Mastodon codebase.
I think this is a bit confusing for two reasons:
Mastodon has tried very hard to conflate Mastodon and something-that-can-federate-with-Mastodon in marketing.
Mastodon implements a bunch of additional things on top of ActivityPub, especially on the client API side, so things like GoToSocial are closer to reimplementations of Mastodon than generic ActivityPub things because they want to support multiple clients.
We don’t really have a generic term for ‘thing that can work as a drop-in replacement for Mastodon, supporting the server-to-server and client-to-server APIs of a Mastodon instance’ other than ‘Mastodon’.
We don’t really have a generic term for ‘thing that can work as a drop-in replacement for Mastodon, supporting the server-to-server and client-to-server APIs of a Mastodon instance’ other than ‘Mastodon’.
Not really, BlueSky is a ‘mastodon-like’ service: it fits into the same role as Mastodon, is federated, and so on, but uses different protocols. Mastodon-compatible service might work but it’s quite clunky to use.
They use Soapbox as a frontend, which is, at least among the people I know on the fediverse, almost exclusively known for the fact that the lead developer is a notorious transphobe.
The developer being a feminism-appropriating reactionary transphobe isn’t its only claim to fame.
Soapbox is also the frontend used by the ex-president of the USA’s alternative-facts Twitter clone.
The underlying technology seems awesome, though its inner workings will likely stay proprietary and secret, which is disappointing. Interesting to see a new platform being built in Java in 2023!
If you ignore the neologisms, this kind of looks like the Redux architecture. Depot entries are Actions, PStates are the actual Redux Stores, and the flowcharts are Reducers and Selectors, implemented in a Java DSL that ensures the system knows what they can do and which parts of the data they access.
It looks like some of it will be available, at least? From the article:
In one week we will release a version of Rama that anyone can download and use. This version simulates Rama clusters within a single process and can be used to explore the full Rama API and build complete prototypes. We will also release the Rama documentation at that time.
In two weeks we will fully open-source our Mastodon implementation.
…
you’ll be able to try out InProcessCluster next week when we release the non-production build of Rama.
I just picked a random @<so-and-so>@mastodon.redplanetlabs.com user off of their timeline and was able to resolve them successfully from my instance, so it might be something local for you?
To be fair, I’ve dipped my toes into Lemmy, and the integration with the-flavor-of-activity-pub-as-used-mostly-by-mastodon is iffy at best. There seems to be a ton of stuff in AP that makes sense for certain applications (microblogs) but less so for others (user-submitted link sites)
I didn’t say it was. I was simply mentioning a relevant fact that had not yet been mentioned in the comments. Other people have since mentioned the same fact in these comments. One could assume that somebody who worked at Twitter on backend would have a good idea how such a backend could be done better: this guy has proved that assumption correct. So in this case, interestingly, it does seem to be a qualifier.
I think I grasp the concepts trying to be conveyed with PStates but this is something where I’m going to need to run it to understand it. I’m also not sure what to do with the LOC being used as the sign of quality. Either way it’s an exciting concept that would be great if it turned out to be real.
Defect rates scaling with number of lines of code regardless of language has been a fairly durable result across various studies. 100x fewer LOC is an improvement.
This looks very clickbaity. A simple example, right there at the start: “It took us 10 years to build Rama”, then a few lines later, “it took us 9 months to build our thing, while it took others years. I don’t see that as a fair comparison.
Well, the interesting part is whether a dev without prior Rama experience would be able to develop the end application in 9 months. If that’s possible, it’s not clickbait. Except for the title though, that’s a total clickbait.
Otherwise, one could say the same about Java: “of course you can write performant Java apps faster than in C, but look at how many years did it take to perfect the JVM itself!”
I think it’s an alright headline from the perspective that anyone else using Rama will not have to first create Rama, like these specific authors did. Pulling off Twitter-scale Twitter as a tech demo with code this clean in 9 person-months is extremely impressive.
I think the author does deserve giving it a fair read though, they worked at Twitter and at the given problem for 10 years and it is definitely not FUD, even if you don’t approve of its marketing. The tech demo itself is impressive.
Ugh, there’s certainly some interesting tech here, but I’m like three paragraphs in and I’m already rubbed like three different wrong ways.
These are way too nitpicky details that don’t take anything away from the product in my opinion.
How many frontends exist for Mastodon/the Fediverse? Most people are not familiar enough for the distinction here, and from what I gather their project supports most features of Mastodon, so it seems fair to call it as such. And due to not having all too many options for FEs, I think choosing one of the few for demonstrative purposes (that they don’t plan on prolonging) should not be questioned, if anything, doing so is not too well-intentioned.
And without letting them know there is a distinction to be made they never will be.
For an article that delves deep into the technical details of distributing messages at scale - therefore the intended audience is highly technical people - it’s disingenuous to not add a two line disclaimer somewhere that this is not actually a Mastodon fork because “most people are not familiar enough”.
I think this is a bit confusing for two reasons:
We don’t really have a generic term for ‘thing that can work as a drop-in replacement for Mastodon, supporting the server-to-server and client-to-server APIs of a Mastodon instance’ other than ‘Mastodon’.
But we do. We call it a “mastodon-like” service.
Not really, BlueSky is a ‘mastodon-like’ service: it fits into the same role as Mastodon, is federated, and so on, but uses different protocols. Mastodon-compatible service might work but it’s quite clunky to use.
If you think about the ability to post messages to followers, you probably want to say “twitter-like”, which Mastodon and most mastodon-likes are. :P
The developer being a feminism-appropriating reactionary transphobe isn’t its only claim to fame. Soapbox is also the frontend used by the ex-president of the USA’s alternative-facts Twitter clone.
I like that a lot better than TERF on several levels :D
[Comment removed by author]
The underlying technology seems awesome, though its inner workings will likely stay proprietary and secret, which is disappointing. Interesting to see a new platform being built in Java in 2023!
If you ignore the neologisms, this kind of looks like the Redux architecture. Depot entries are Actions, PStates are the actual Redux Stores, and the flowcharts are Reducers and Selectors, implemented in a Java DSL that ensures the system knows what they can do and which parts of the data they access.
Most likely it’s built in Clojure. I haven’t read the article yet, but redplanetlabs is a Clojure shop.
Per their comments on the orange site that is correct: https://news.ycombinator.com/item?id=37137779
It looks like some of it will be available, at least? From the article:
…
Is that with federation? I can’t seem to look up any of the bot users from my instance.
edit: I should try reading the article, it says it’s with federation. I wonder why it doesn’t work then.
I just picked a random @<so-and-so>@mastodon.redplanetlabs.com user off of their timeline and was able to resolve them successfully from my instance, so it might be something local for you?
The linked article states it’s compatible with Mastodon, maybe not necessarily ActivityPub.
Over on HN they state that ActivityPub is implemented to the extent that Mastodon implements it.
To be fair, I’ve dipped my toes into Lemmy, and the integration with the-flavor-of-activity-pub-as-used-mostly-by-mastodon is iffy at best. There seems to be a ton of stuff in AP that makes sense for certain applications (microblogs) but less so for others (user-submitted link sites)
Exciting. The author worked at Twitter and has been researching and formulating this technique for 5 years.
Hundreds of thousands of people have worked at $BIG_TECH_CORPS. It is not a qualifier by itself.
I didn’t say it was. I was simply mentioning a relevant fact that had not yet been mentioned in the comments. Other people have since mentioned the same fact in these comments. One could assume that somebody who worked at Twitter on backend would have a good idea how such a backend could be done better: this guy has proved that assumption correct. So in this case, interestingly, it does seem to be a qualifier.
You had my attention until “pure Java API”
I think I grasp the concepts trying to be conveyed with PStates but this is something where I’m going to need to run it to understand it. I’m also not sure what to do with the LOC being used as the sign of quality. Either way it’s an exciting concept that would be great if it turned out to be real.
Defect rates scaling with number of lines of code regardless of language has been a fairly durable result across various studies. 100x fewer LOC is an improvement.
So, a Fediverse server with thousands of test bot messages per second going: