Well I certainly didn't have "Tumblr becomes culturally relevant in 2023 after adding federated content cross-compatibility with foss platforms" on my bingo card, but here we are I guess.
How is adopting a niche tech standard being “culturally relevant”?
The vast majority of people outside of tech simply do not know about, or care to know anything about ActivityPub.
They only care about the value that these social platforms provide to them. It shouldn’t be surprising that the most valuable platforms (judging by usage) are centralized and proprietary.
I can see the parallels between this and crypto. Cool tech, but not what people want.
This isn’t being “culturally relevant”, quite the opposite. This is catering to a small niche. If anything, this smells like desperation from Tumblr who was once a juggernaut in the social media space.
Where are these bingo cards issued? I hear this often, curious what prize there may be out there. Sorry if a stupid question, I'm assuming it's a blockchain thing.
It's usually metaphorical, but here's somebody that made a generator-https://www.reddit.com/r/Buttcoin/comments/ywkjy1/bingo_card...
You make your own! I may or may not be guilty of making a few in the time leading up to corporate town hall meetings at a former employer. Just pick out management's favourite buzzwords and projects du jour, randomize the layout, CC your office buddies and see who wins!
I usually make one in paint during the annual "where the vendors talk at us for two days" sales thing at my day job.
It's a meme - it's a way of saying "this is really unexpected; we live in unpredictable times".
Yea, specifically that prop-bet bingo cards are usually constructed that every line you could make includes some rare thing so that you don't just easily win with 5 obvious things. So if something happens that's "not even on my card" then the implication is that it's so crazy that someone wouldn't have even put this down as a "this will never happen" option for betting.
Not sure what federation with FOSS platforms has to do with cultural relevance.
Federated platforms are definitely relevant right now, as a direct result of the current very public mismanagement of Twitter and resulting public freakout. I've heard Mastodon mentioned at work (where it's not a competitor) and in several different social circles. Maybe you just aren't tapped in?
Maybe I'm just not in with the cool kids but it feels like social media in general is just kind of dying in a lot of circles, outside of content platforms like YouTube and TikTok at least. Direct group chats via Discord, Telegram, Signal, etc are the main ways of communicating and beyond those do you really need - or have any desire - to communicate with random strangers?
It seems the like vanity and excitement of the early internet is dying out and more normal social circles are being established.
> do you really need - or have any desire - to communicate with random strangers?
I have circle of acquaintances on Twitter and Facebook which are not strangers, but I don't feel like updating directly.
Sharing a wordle result with them and having an occasional exchange is akin to meeting them while walking on the street and exchanging a few words.
The chats with my family and friend groups are at a different level of communication.
> do you really need - or have any desire - to communicate with random strangers?
I learned it by watching you!
Your mainstream user doesn’t care about the underlying technology behind a product. They care about good UX/UI, good content, who’s on it and a supply of dopamine to keep the “must check social media” cycle going. There’s a separate group of people who use social platforms to stay up to date with the news. Think Twitter/HN. It’s not so much about dopamine but necessity to stay up to date on things/discovery. There’s really no shortage of platforms out there. I don’t know if we want to bundle general chat applications like Discord/WhatsApp into this as they’re more closer to SMS than Instagram or TikTok. All the talk about “federated” or “decentralized” infrastructure matters little to people outside tech people and the tech enthusiast crowd. Programmers wanting widespread adoption on a platform should be focusing on the product itself and value to content creators versus the nuts and bolts around the product.
I think you might be conflating what are the most profitable social media business models with what people actually want. It's the difference between a lucrative something that addicts or traps, and something people genuinely enjoy or believe in.
I think there is a growing amount of people who want to get out of the social media Skinner box, and there are also growing amounts of people who believe in new and alternative technology like this.
Sure, these platforms might not appeal to someone who uses Facebook like you would a slot machine, but I know plenty of non-tech people who use things like Linux, Firefox, Android/LineageOS/GrapheneOS, etc for moral and ideologically appealing reasons.
I think you're misreading the comment. It's not saying it's becoming relevant because it's Foss, just that mastodon is more culturally relevant and is Foss.
Someone necro’d a facebook comment reply by me from 3 years ago. They were asking for a social network that allows you to uglyf… "improve it" like MySpace used to and I recommended Mastodon which they now remembered ;)
> Maybe you just aren't tapped in?
Thinking other people are not tapped in is a clear sign that you live in a bubble.
> as a direct result of the current very public mismanagement of Twitter and resulting public freakout.
I have to admit I don't fully get this. What part of Twitter is mismanaged?
If management thinks that 7000+ aren't needed to make single page web-app, is reducing the work-force mismanagement? I'd consider it a healthy step towards creating an actually profitable company. I mean, who benefits from the company going bankrupt? Certainly not the employees.
Is allowing more people get to exercise freedom of speech mismanagement? Or that the new management polls the actual twitter user-base instead of listening to a select few people, seemingly only on one side of the political spectrum?
Also, since the new ownership came in place, supposedly 90%+ of sexual-abuse material and tags has been cleaned out and banned, something which was allowed to go on for years during old twitter management. That's a good change, right?
Is all this just about some people you don't like being un-banned? If so, you can still individually ignore them or block them, and just move on with your life, right?
I really, honestly don't get what all this hysteria is about.
I see lots of people claiming to be upset, but I can't see any good objective reason for it.
So I'm asking one guy who clearly has an opinion on it. Is that wrong?
Its the second stage of social implants. First get society to communicate through a plattform, that allows for moderation, self-moderation and upholding of civilization even when states break down via panopticon effects. (Also show some adds, vision may be compromised)
Then make certain that hostile, powerfull actors can not capture those platforms and use them for surveilance, while the very same platform can not be used to coordinate violence.
Its all scenario-tree root hardening, basically not a investment into a specific future, but a increasing of all chances to recover should the branch your current scenario resides on give and you root back to a past-scenario with reduced capabilities.
Welcome to a disability-friendly planet, redesigned for your very special human needs, preventing self destructive riots when the good times end. All dangerous toys are removed, to prevent you blowing up nuclear power plants during times of strife. Its super depressing, but then so is the state in which we are.
A unmodified, unadapted primal creature, that by the use of tools has squeezed itself between a rock and a hard place. A technology roof, that if fully explored, ever amplifies the unstable individual until everyone has a red button. Meanwhile the facade of civilization does not even survive a day without those advances. Sucks to be a zookeeper right now.
Tumblr clearly has a good "soul" - if you will. We'll see if it lasts, but the website is definitely a certain kind of special. Glad to have been part of it for the last decade+
... That's not what OP said?
Also - I've seen stats from Mastodon servers and there's definitely been an explosion of interest. Same as tumblr has seen.
That's why news sites are writing articles about it. They always cover the most inane irrelevant stuff so that people don't read their sites. Great argument.
Federation is broad. Email, Usenet, IRC and the web are federated and at least two of those remain relevant and all four continue to exist.
But can you really say that "because it's adding federation, it'll regain its popularity"?
Also, where is this federated IRC you speak of? There's no cross-server identity or data transfer baked into the protocol.
> where is this federated IRC you speak of?
IRC has the ability to form networks of servers which share identities and chat channels. There used to be a few large networks and many popular servers were part of one of them. Back in the 90s "being on IRC" commonly meant having a nickname on one of these networks.
You don't get to redefine 'federation' because you prefer an approach different than IRC undertakes. It's very much federated and always has been. Data transfer is in the RFC:
2.3 Messages Servers and clients send eachother messages which may or may not generate a reply.
>Also, where is this federated IRC you speak of?
Freenode is one.
>There's no cross-server identity
Your identity is your nickname.
Why can’t we run more things on top of email as a backend?
> Why can’t we run more things on top of email as a backend?
Security, speed, and lock-in.
Email is hard to secure without using out-of-band mechanisms, and at that point if you're already not adhering to an existing standard you might as well write your own.
Email is fast for what it does, but it's not fast enough to handle the low-latency and interactive environment of something like Twitter. We don't notice this as much because so many people are used to using the same 2-3 email providers (heck, Google alone probably accounts for most personal email), but in a truly federated environment there can be noticeable delays. SMTP explicitly allows for this and provides mechanisms to handle it.
And lastly, building on top of email makes it hard to achieve vendor lock-in, which makes it hard to make money.
Tell that to everyone using email
Interesting take. Counterpoint: why tho?
This reminds me a lot of OpenID over a decade ago. The idea was anyone could setup their own identity provider on their own domain and login anywhere. Unfortunately it became "login with google/facebook" which is a real shame. I hope sites don't restrict ActivityPub usage to only a few big players.
Funny enough, Steam is one of the only big OpenID providers left, it's always fun when something still supports it and I can log into it with my Steam account.
There's been talk about Embrace Extend Extinguish coming to the Fediverse, with the counter-argument that anyone who tried it would find themselves almost universally de-federated and just building their own walled garden.
I actually expect most Masto and PixelFed instances will block Tumblr pretty fast.
Look at what happened with chat when everything was using XMPP, and then it didn't and now everything is a proprietary silo again
I’d posit there’s a generic way to assess the hope:
Does the protocol come with inherently good way to deal with spam right in the core design? If not, it’ll eventually end with delegating trust to corporations.
Apple ID login seems to be on the rise, GitHub is very popular for tech stuff, so these tendencies change over time.
ActivityPub implementations thankfully tend towards open federation versus closed whitelisting federation.
However centralization is still a theoretical threat, just like it happened with E-Mail or the various services that started as implementations of XMPP.
At least when that happens it has better chances of yielding the best product.
And an oligopoly is still preferable to a monopoly. It may be unrealistic to run my own email server, but I can use GMail on my domain and if I want to switch to Fastmail, I can do that. If that’s where fediverse ends up, it will still be preferable to what we have today.
How do they deal with Spam? Domains are cheap, someone could just stand up new instances, federate, dump a load of Spam on everyone and not care about their instance being defederated.
> dump a load of Spam on everyone
Personally, I wouldn't see it because my main timeline is "following only" (I also have a "followers + replies they make" view for finding new content.) Also I'd be able to remove it because I control my server. Also also I could write a Pleroma filter which says "if it's a post to me and I've not seen that instance before, hide it".
For one, you can't really spam hashtags since there's no global search or timeline. It only shows up for users if someone on their instance follows the spamming account.
Reply spam still works, but that doesn't scale as easily.
It feels like activitypub is the true web 3.0 or at least the start of a road towards it?
but is it too tied to "social" web platforms as we have come to know and dislike? I mean its got explicitly hardwired the concepts of "followers" and "liking" and all the inanity that this has unleashed upon us. Now of course these are just "words" representing underlying software functionality but the mindset of designers and the constraints or blind spots they embed on software plays a huge role.
consider the possibility that a more democratic / federated model of a broken concept will not deliver us from the social media fiasco.
This is great. Now, who can we contact to get this integrated into WordPress Core? I know there's a plugin but it'd be great to get something into Core.
Tumblr is now owned by the original developer of WordPress, so not outside the realm of possibility.
> owned by the original developer of WordPress
What do you mean by “original developer” of WordPress?
I don’t think you mean the developer of b2/cafelog, which is what WordPress is a fork of. 
I think you just mean that WordPress acquired Tumblr.
"WordPress" didn't acquire Tumblr. Automattic did. Automattic (A8C) is the corporate entity behind WordPress.com and Tumblr.
The open source software can be found at WordPress.ORG and while the CEO of A8C does sit at the head of the board of the OSS project, his reach extends as far as others are willing to implement his ideas. Also to be fair, he does pay plenty of A8C employees to "contribute" to the OSS project on company time. This is largely how the Gutenberg project was pushed over the finish line.
What sort of pedantic geek with a grudge do you have to be to think you're making some sort of point by stating the absolutely irrelevant fact that 20 years ago there was a crappy abandoned PHP project that was initially used by an ambitious teenager as a starting point to create the world's most successful publishing platform and one of the top open source projects of all time?
Seriously, what do you think your point is? That the past 20 years of WordPress success is somehow the result of some nefarious teen fraud back in 2003? That Matt shouldn't get credit for creating WordPress because he started with a few hundred lines of PHP from an - again abandoned - open source project?
The bitterness and stupidity on the Internet will never cease to amaze me.
Hi, developer of b2 here. Can't believe I finally have to create an account on HN, but here we are.
First of all, Matt and Mike (along with Doug, Alex, Donncha, and other devs from that time) deserve all the credit for WordPress and its success. Often I get way too much credit from friends and people who mean well.
I have mixed feelings about calling b2 a crappy project though.
When I started writing it, I only had one month of PHP behind me, and no computer science background.
It was a time when Blogger was flaky and a lot of bloggers were tired of the frequent downtime. There was a demand for blogware that could be installed and customized easily, and most existing blogware fell short (those written in Perl required specific hosting, others were not easy to use or customize).
What I brought with b2 at the time wasn't technical prowess, but software that could be installed on super cheap webhosting plans by just editing a config file and uploading.
I take pride in the documentation that allowed folks who only knew HTML to customize their blog's markup without having to know PHP or a custom template language. (Keep in mind we're talking about a time when bloggers would hand-write their site's HTML, ready-made themes weren't a thing.)
I have fond memories of the dozens of fine people who contributed ideas and code to the project; among those contributions were the first opensource implementation of PingBack and perhaps the first of TrackBack too (not so sure about that one, but at the time there wasn't a lot of GPL blogware).
The relative success of b2 (among those who self-installed their blog) was not due to the intrinsic quality of its code, but to those important things. It was mostly crappy PHP, but there is more to projects than just code. I would keep on talking about what blogs looked like in 2001, but if I recognize your name correctly, I believe you were there too.
Finally, yes, it was abandoned. I was suffering from depression following the loss of my job at the time, and took time away from the internet. It was just not physically possible to open a code editor, or even reply to email, for a few months. It's not like I decided that I had enough and decided to explore greener pastures. If I could go back in time, I would hang on to the community we had, instead of abandoning the users and contributors.
TL;DR: Matt, Mike, and the team deserve all the credit for WordPress's success, and it's a bit harsh to judge a 20+ years old project created by an enthusiastic newbie coder.
I sincerely hope a bunch of benchmarks and research will be made first about how well ActivityPub scales and how many (average hardware) servers it can realistically can support, before turning it on for all Wordpress installations by default.
WordPress Core devs can double ActivityPub testing using wordpress.com in addition to Tumblr. With success, and with it in core (disabled by default), we then have an easy path to turn it on.
Tumblr's second wind. They seem to be on the right track.
In addition with allowing porn on their site again...
They still don’t allow sexually explicit material.
From their most recent policy:
Visual depictions of sexually explicit acts (or content with an overt focus on genitalia) are not allowed on Tumblr. That includes pictures, videos, GIFs, drawings, CGI, or anything similar. Historically significant art that you may find in a mainstream museum and which depicts sex acts—such as from India’s Śuṅga Empire—are now allowed on Tumblr with proper labeling.
Nudity and other kinds of adult material are generally welcome. We’re not here to judge your art, we just ask that you add a Community Label to your mature content so that people can choose to filter it out of their Dashboard if they prefer.
I misread Tumblr as Twitter at first and thought that was really interesting. Be really neat to make Twitter a one stop shop.
That would be a smart and strategic move for twitter if they did. Along the lines of an embrace, extend, extinguish move against the fediverse.
Twitter apparently was working on their own protocol, under a project named BlueSky. I personally feel this was unnecessary and redundant because w3c had put forward activity pub.
However, this project existed just the same. As far as I can tell, the Twitter and blog for the project have not been active since late October and I'm not sure if there's any life to it anymore.
Bluesky is very active, we started beta testing 6 days ago https://twitter.com/arcalinea/status/1593439410699501570?s=4...
Here's a contributor's (pfraze) reason for not using ActivityPub.
BlueSky is completely different from AP.
BlueSky is closer to decentralized SNS, where as AP is actively seeking to become a federated SNS. BlueSky uses DID and independent data repositories, which allows freely migrating b/w instances. AP simply does federation b/w rather classical blog hosting apps.
I though Bluesky was Jack's pet project and unrelated to Twitter Inc.
It was funded by Twitter, but under a separate organization.
I'm sure some senior decision makers at Tumblr also have this in the backs of their minds just in case this move works out well.
I have a feeling that would just make most of the server owners ban it
Does anyone know of any good writeups documenting the Mastodon/ActivityPub server-server protocol? Ideally a tutorial?
Here's a blog I found had an easy introduction: https://blog.joinmastodon.org/2018/06/how-to-implement-a-bas...
Someone posted that link here recently and it was very useful, but unfortunately the blog doesn't link to the next one in the series. Here it is: https://blog.joinmastodon.org/2018/07/how-to-make-friends-an...
It sounds like the series was intended to continue, but I painstakingly clicked through the blog and couldn't find any more.
From my side, the thing I am most interested in is some kind of micro-plugin that could be used to ActivityPub-ify an otherwise static site, maybe a bit like the old guestbook functionality from Geocities days. It would be cool to be able to just upload your site in a static way and have a hook that publishes that update out to your friends, and catches any of their comments in an iframe on the page.
Previous brief discussion: https://news.ycombinator.com/item?id=33694096
Anyone remember PubSubHubBub?
Can you imagine
You log into your Tumblr dashboard
All your friends on Mastodon making posts, your favorite bloggers on Write.as/WriteFreely instances, your favorite artists and photographers on Pixelfed
Mingling with the people you follow on Tumblr. And it's all neatly tied together through ActivityPub.
This was the original promise of the tumbleblogs Tumblr was inspired by. https://kottke.org/05/10/tumblelogs
I see people worry that it'll be quickly blocked the moment it steps on to the Fediverse. The matt in Automattic lived through the same decades of web and internet we all did. I hope he has the good sense to slow walk it and make sure Tumblr is a good citizen of the Fediverse rather than flipping a switch one day to open the floodgates.
> your favorite artists and photographers on Pixelfed
Pixelfed is more or less an Instagram clone ... which is like photo/video microblogging. Because the audience is largely 'casual' and encourage taking and consuming media from a smart phone it does some things with images that are antithetical to what a _good_ platform would be for artists. Instagram compresses the living hell out of images, it limits you to square and close-to-square dimensions, the color profile is stripped (I would assume you still can't even upload DCI-P3 photos from non-Apple platforms for whatever reason), and all license and metadata is stripped from the image. Most, if not all, of these issues have traveled to Pixelfed too. If it wasn't for the walled status and trying to gain 'casual' followers, I don't think artists would prefer the degradation of image options, quality, and metadata of Pixelfed/Instagram if they could be federated on a different, image-quality-focused platform. It's not without it's shortcomings, but Flickr better at this sort of thing and was talking of federation this week: https://twitter.com/DonMacAskill/status/1594945727255699457. Currently nothing in the Fediverse respects the media in the way a deviantArt, 500px, Flickr, et.al. type platform does.
Why is flipping the switch bad in this context? Isn’t that actually what the protocol needs, a major visible platform adopting it with open arms all at once?
i think right now the protocol and the people who run popular mastodon instances are being treated as the same thing - mastodon.social and various affiliated servers are trying to build a community based around a certain set of values and type of content, and feeding all of tumblr into that might cause some drama.
it's unquestionably good for the protocol to have more people using it. but it might not be good for mastodon.
Mastodon.social and other large instances certainly aren't working to build the same focused, higher quality communities that smaller instances thrive on.
This is part of why many instances block the large, poorly moderated instances.
Pivix did exactly that, becoming the majority of the fediverse overnight. The result was a huge concerted effort to block them.
You mean Pawoo created by Pixiv? Welp, yeah, but having Tumblr federated would not raise legal issues like that.
Odd that you choose not to mention that the rest of the fediverse dropped them over child pornography, which might leave some readers with the wrong impression about Pixiv's problems.
You have to be pretty far down the weeb hole to think that anime loli isn't regarded as child porn by anyone outside of that particular cave.
> Over a novel, non-standard definition of child pornography.
The problem is, there are jurisdictions in which loli and similar content can be classified as CSAM , and there are jurisdictions where e.g. the operator of a federation server can be held liable for facilitating access or for not blocking access to such material, even if the material in question isn't hosted at that server, such as in Germany (the case in question  was about software piracy, but the general legal principles apply just the same).
Legal systems worldwide haven't even begun to catch up with tech developments, and I think it will take at least a decade until regulations adapt.
Look at how much chaos came from just adding a few million people in a month. I don't see a way that goes better adding tens of millions in the same or shorter period. The best way for Tumblr to do it would be to:
1: Open source it
2: Make it federated with other Tumblrs. Probably using whatever BlueSky cooks up, or some similar effort focused on big platforms.
3: Offer a managed version the same way they do with WordPress for the majority of people who don't want to run their own
4: Provide an optional ActivityPub extension
5: Telegraph that federation is coming for the still probably too big main instance(s) to give administrators time to decide how they'll handle it: mute, block, allow, etc. This gives people who eventually migrate off in 6/7 a clear view of how instances plan to handle it.
6: Add ActivityPub support to the main instance(s). Make it opt-in.
7: Wait to see how it shakes out as people migrate to non-Tumblr instances. By now, probably 2-3 years in, there will be enough diversity in platforms and hosting options that most people will have some place to go that's appealing. We already see minimal AP instance software popping up that focuses on providing people with a Linktree/Caard-like experience where it's only a profile that's exposed to AP instances. Maybe even sites like that will add AP support! Posts from these could replace newsletters. (I know, a common claim for as long as newsletters have existed)
By implementing ActivityPub wouldn't Tumblr become the overwhelming majority of the Fediverse?
I actually never considered Tumblr supporting ActivityPub reads. Just publishing over the protocol. That is intriguing indeed, as a Tumblrina
Still no standalone ActivityPub client anywhere. Strange.
That is mostly because there are very few servers that support the client to server portion of the ActivityPub specification.
I am working on such a server, and I have built a custom client for it, but it's just a web application.
Likely because ActivityPub alone provides just a subset of what a typical social media client needs, and requires far more logic in the client than using the Mastodon API. E.g. if you use those APIs you don't need to care about webfinger and can treat the local server as the only API endpoint. There are few compelling reason for client writers to talk ActivityPub to the servers unless/until there's a far larger number of servers which does not support the Mastodon API
... what does that mean?
It sounds like you are saying "there are no standalone SMTP clients", after which we would all start listing software that speaks SMTP.
So point out the clients that speak ActivityPub?
There is a lot of software that speaks the ActivityPub server-server protocol, but most client apps use the Mastodon client API or custom protocols, not ActivityPub client-server.
SMTP is strictly a server-to-server protocol. POP3 and IMAP are the protocols for accessing mailboxes remotely.
You can send mail via smtp connection from client to server
Why is ActivityPub better than RSS?
RSS is a loosely specified document format with many implementation variants that basically represent a list of items with links, titles and a few other fields.
ActivityPub is a W3C protocol and API specification for basically a generic federated social network with client server, and server to server API calls to create and manage activities and activity streams (a related specification).`
It's not about being 'better' but about being something different. Representing an activity feed as an RSS feed is easy. Mastodon in fact has support for RSS. So, you don't even need to use mastodon to follow mastodon users and their micro blogs. For example, this is how you get Neil Gaiman's RSS feed
curl -H 'Accept: application/rss+xml' https://mastodon.social/@neilhimself
It's not really comparable, because ActivityPub describes a two way communication channel between entities, while RSS is just one way.
ActivityPub is similar/comparable to email but built for social networks interactions.
ActivityPub is built for events. It's way more general than email.
I'd be very curious what gave you this idea. The ActivityPub vocabulary contains a number of social network related activities that can operate over a decently large vocabulary of object types, events being only one of them.
You can push whatever you want over email. I have used email as a federated queueing system... It worked fine.
So it's Trackbacks all over again ;P
they're fundamentally different things. Activitypub is a protocol for multidirectional sharing of content, RSS is for unidirectional publisher/consumer distribution. there's no reason an ActivityPub instance couldn't also provide RSS feeds of their content.
> there's no reason an ActivityPub instance couldn't also provide RSS feeds of their content.
it already does. you can receive users mastodon posts/comments as rss already—just add .rss after their address.
the number of esoteric things mastodon and activity pub support is wild. honestly i think it’s gonna change the entire paradigm.
Which they usually do! Now if only you could also follow arbitrary RSS feeds...
The article is not about Mastodon, why bring this up?
Imagine people complaining about HTTP being inefficient on every submission of a web service just because you happen to know one slow web service.
The article opens with someone complaining about spending 7 hours trying to get a Mastodon instance running.
A Golang implementation https://github.com/superseriousbusiness/gotosocial
Your kidding right? Anything IO bound like an server isn’t going to be remotely affected by the speed of underlying language. There’s almost no compute required for a mastodon server just take HTTP requests and store and retrieve data from a database. The CPU is going to be active for a fraction of a millisecond before it becomes blocked on either the database or network.
You’d be surprised at how brutally inefficient RoR code actually is. Anyway, ActivityPub is a protocol, and Mastodon isn’t relevant for this discussion.
Hard disagree. Friendly programming languages such as Python and Ruby on Rails are good for small applications but when applications grow, so does their footprint.
You can get equivalent performance through more work, more caching layers, more servers and more hardware resources, but there's a real limit to how much one server can handle before it starts slowing down.
The simple fact is that a a Bash web server will never be as fast as a bespoke x64 assembly HTTP server. There's a huge gradient between the two and I'm not suggesting we need to build a Mastodon backend in C, but this "it's a web server so who cares about performance" approach to programming languages needs to go.
Take a look at the techempower listing if you don't believe me. Ignore the weird, bespoke, benchmark oriented servers and focus on real world applications if you wish to make the gap smaller but even among big frameworks you'll find the differences. JSON serialisation is one example every web API needs to deal with, and ASP.NET stands head and shoulders above Ruby on Rails performance, for example.
In practice, there's probably no real performance difference between the JVM, dotnet, and Rust frameworks because of I/O limitations. However, Ruby on Rails lives in a whole different performance segment, next to PHP and Python.
You are wrong. Web applications written in languages like Python or Ruby will spend most of their time spinning the CPU instead of retrieving stuff from the database. There are languages that are just that slow.
Benchmarks disagree with you. Ruby is 6x slower than Java/Rust/Scala for a basic web server.
There is a reason Twitter switched from Ruby to Scala during their fail-whale era.
Those exist already. https://humungus.tedunangst.com/r/honk For example.
I wish this thing had a screenshot
This is delightfully esoteric.
Surely the actual work is mostly being handled in the database, with the ruby code mostly acting is glue code? I'd expect to run into database scaling issues (or data model issues) long before running into issues with the relatively easy to scale horizontally ruby code.
Nope. The biggest bottleneck is in the async Sidekiq workers. I have 7 Sidekiq processes using a total of 5GB of RAM and as much CPU as they can get, but my database server is at around 5% CPU and IO.
If the Rails part scaled as well as my DB, I believe I could trivially handle 10x the number of users I have today.
You might want to double-check your DB pooling numbers. Running out of DB connections can end up looking a lot like heavy CPU usage on Ruby.
This bottleneck probably relates to the delivery of new messages to feeds. That's the busiest part of the backend and requires 5-7 DB requests and a bunch of Redis requests per recipient from a post on your server.
I'm sure spending time just on making this part of the platform more efficient would have massive impacts on performance across on a Mastodon instance.
Yes, but are the connection pools in Rails & Sidekiq configured for a very large number of connections. You can probably squeeze up to 100+ out of a single process.
That's a Mastodon and Rails architecture issue first and foremost, though, and far less of a Ruby issue.
Mastodon is indeed a resource hog, so that part of the complaint I agree with.
I've run queue processing on servers a fraction of a modern server CPU, less memory than that total, and with Ruby 1.8.x.
It's not hard. It's hard to do with a naive Rails-based design based around Sidekick workers and ActivityRecord.
Yes on the "big user" side (you're just burning little extra money every month on slow code), but no on overall.
Having fast code means that random $10 a month VPS can now support much bigger community. The hosting providers can also provide cheaper/better service for people that want just pay someone to run it for them.
Well, can’t you just switch engine from mruby to jruby? I believe Mastodon was compitable with jruby.
Mruby is a small embeddable Ruby that will not run Mastodon. The Ruby you're thinking of is usually described as MRI or CRuby.
Yeah, I know ruby is slow but is it “dominates over architecture and software design”-slow?
It is 6x slower than Java, Scala, Rust etc.
Architecture and design matters but having an inherently fast language helps too.
Nearly every RoR success story has been in spite of Ruby’s performance itself. AirBnB, Twitter, Soundcloud — they all ditched it as soon as they couldn’t bear the technical debt any longer.
I'm surprised people are still writing stuff in Ruby. I thought it was one of those obsolete languages like D or Forth or ALGOL.
> I thought it was one of those obsolete languages
Not really when it powers most of eCommerce, services in and around Asia; within Japan it's far from obsolete.
It may not be a thing in the Western World. It is over the pond.
> within Japan it's far from obsolete.
Well so are fax machines
>Automattic CEO Matt Mullenweg — whose company acquired Tumblr from Verizon in 2019 — suggested the user “come to Tumblr” as the site would soon “add activitypub for interconnect.”
I'll believe it when I see it
too easy to say this kind of thing in the hopes it will lure people in and get some press, and then to just quietly never do it and when asked about it again say "it didn't work out because of technical reasons"
Automattic are pretty serious about open source software.
I think it’s fair to be sceptical. I’m not aware of other services having retro fitted activitypub (are there any?) so it’ll be a good test of the protocol and any claims it will lead to more interoperability beyond Mastodon instances.
Tumblr infamously had a lot of spagetti code back in the day, with both new and old features breaking all the time. Last I checked (within the past 10 months), my tumblr accounts still shows -1 likes.
I think Automattic has been good for the site code quality-wise, but also very much believe it when I see it. Plus, what happens when porn federates over to someones Tumblr dashboard?