4 ms·
Ask HN: Given its tech stack, why Mastodon?
So I spent the evening looking at what super simple blog applications were out there now (e.g Blot, Bear, if you know any similar give me a shout) and also started looking at all the microblogging options available (micro.blog, mastodon, pleroma etc). This lined up quite nicely given tonight's events and decided that running my own single user mastodon instance might be a good idea. I then started reading up on a comparison of mastodon and pleroma and how lightweight the latter is in comparison to mastodon which made me read up on mastodon's architecture some more. So my questions are as follows:
- How does Pleroma's language and architecture achieve feature parity with Mastodon without the resource consumption? Are tradeoffs being made or is the Phoenix and Erlang language and tools just that much better than Ruby on Rails?
- Why was Ruby on Rails selected for Mastodon and how has Mastodon become the most popular fediverse offering whilst running on 'old' web tech given that the early adopters were presumably very tech orientated people? Should we not be pushing for the 'next big thing' to be in Rust or Go or something else that's fast and performant?
- __d 4y agoFor a lightweight self-hosted instance, I like https://codeberg.org/grunfink/snac2 https://codeberg.org/grunfink/snac2 -- far simpler than most (all?) other options.
- rcarr 4y agoSo what are the actual benefits of using something like this over something like mastodon or something like pleroma? Are they all just essentially the same thing? I'm starting to wonder now if 'self hosted single user' is a bad way to go as presumably you're almost invisible to everyone unless people are looking at the global feed which I guess is uncommon.
- __d 4y agoI'm not an expert, but I think: yes, you're basically invisible, save to those who chose to subscribe to your feed. I think if there's a single subscriber on a server, then your toots will show in in that server's global feed, but ... on any reasonably-sized server, you'll be next to invisible in that firehose anyway. The benefits are that it's a very low-overhead implementation of ActivityPub when compared to eg. Mastodon.
- al2o3cr 4y agoWhy was Ruby on Rails selected for Mastodon Perhaps the _one person_ who did the initial development back in 2016 preferred it? Not all technical decisions have deep foundations. how has Mastodon become the most popular fediverse offering whilst running on 'old' web tech Imagine how utterly fucked it would be if it had been built using one of 2016's "new" web techs - maybe a Backbone + Mongo setup :P
- deleted 4y ago[deleted]
- rcarr 4y agoYeah I can understand both of these points. I do find it odd how it has gained so much traction if there are better alternatives though?
- jaredcwhite 4y agoThat is a fallacy. There are no better alternatives. HN lives in a bubble where something like Rust is considered "a better alternative" than Ruby on Rails for consumer/SMB/social web application development. It's absurd. Don't get me wrong, Rust is great for what it's good at. Go is great for what it's good at. There are many languages that are good for what they're actually good at! Meanwhile, not only am I not surprised that Mastodon was built with Ruby on Rails, I would expect Mastodon to be built with Ruby on Rails. (Or maybe Laravel.) Outside of the HN bubble, this isn't controversial in the least.
- gregjor 4y agoBecause "tech stack" has almost nothing to do with the utility or popularity of a tool or product. It could have COBOL at the core, if people find it useful they won't care.
- rcarr 4y agoI get that for regular people but I thought that Mastodon was mainly populated with tech enthusiasts until Elon took over Twitter and people migrated. I'm surprised as I thought that, being tech enthusiasts, the initial users would have gravitated to a high performance server option.
- gregjor 4y agoDevelopers tend to prefer what they know already and have had success with. Time to get something working and released often more important than endless cycling over the perfect stack. In 2016 Ruby/Rails still had a lot of momentum. An open source project will get more contributors if written in a more common language.
- rcarr 4y agoYeah this makes sense. I see it now.