HACKER Q&A
📣 dustedcodes

How would you design an alternative Twitter


So much talk about Twitter alternatives in recent days, including people migrating to Mastodon and even Jack Dorsey announcing his new decentralized social media platform.

I was thinking, if I was to build a new micro-blogging aka Twitter alternative, what technological choices would I make to get it quickly off the ground but allow for scale?

What database technology or approach would you go for?

Would you build a (mobile first) web application first or would you start straight away with a native iOS/Android app (maybe Flutter)?

Would you go for a centralised or decentralized approach? If the latter, how would you decentralize it without sacrificing the "public town square" effect that Twitter currently has but is clearly lacking with the fragmentation of Mastodon?

To answer my own question, I would probably build a centralized platform like Twitter is now, probably opt for a fast NoSQL database like Google's Firestore in Datastore mode and to keep things simple I would probably even make sure that tweets would get automatically deleted after some years as I don't think it's needed to build a forever growing database of people's thoughts in that moment that persists for decades to come. Micro-blogging always felt to me as a thing right now, a thought in this moment but that thought could be different in a few days, months and definitely a few years, so why store it forever. Feels like I could save a huge operational cost and prevent abuse by not keeping tweets for beyond their relevancy.

What are your thoughts?


  👤 matt_s Accepted Answer ✓
I think you're jumping into the technical bits right away without thinking through requirements/features. Maybe we (the royal 'we' as in all of humanity) shouldn't have a public town square? When you build something to have marginalized voices be heard you are also including all marginalized voices. The MarginalizedVoice super object has EqualRightsForSquirrels as well as HatefulRacistUncle child objects. There are very valid points, that people don't like to hear, about how the concept of someone/group choosing what MarginalizedVoice gets heard and what doesn't isn't fair. If the basis of a platform is "public town square" you're going to have to deal with all MarginalizedVoices.

Content moderation (incl comments) doesn't scale so don't build something with public town squares. That's only a feature platform builders want in order to sell advertisements. If the thought of not having an ad-driven platform leads you to "users won't pay for it" then maybe think of a platform users would pay for or some other way to have it be sustainable.


👤 ctvo
The technical challenges are solved. It's not an interesting discussion to cheer for your favorite tech stack.

What's interesting is what value Twitter gives and what could a new platform target? For me, there's a slice of Twitter users that provide information, entertainment, and context that I can't get elsewhere. This could be something from a mid-level analyst re: market volatility or a college professor at a small Canadian university on Chinese politics. These people aren't consistent enough or polished enough to have established means of amplifying their opinions (a blog, newsletter, podcast, etc.) though they have so much domain expertise. Where do you find them? On Twitter. The low friction posting encourages them to share.

If I could get rid of the celebrities, the thought leaders, the self marketers, the low content hate, and the bots, and only be left with the above in a moderated environment I'd welcome this global town square.


👤 baxtr
Everyone, please stop thinking about HOW you want to build a twitter alternative. No one cares. I have tried to build one, I failed even though our tech was superb.

If you really want to build a twitter alternative think about how you would DISTRIBUTE it. How would you get a critical mass on the platform so that is viable, i.e. interesting enough for users to stick around.

Which existing social networks (not media ones, real ones) would you try to capture first? Facebook and Tinder both did the Uni campus strategy quite successfully. Slack did the Bay Area startups strategy. What’s your strategy?


👤 peterhunt
No one here is answering your question so I will :)

Database: I’d use whatever you know and helps you get to market, but abstract it away from the rest of your app so you can swap out later. Lots of good choices here; I’d pick mysql or postgres running on rds. I would also design for sharding by user on day 1 because that can be extremely painful to add later, however, care would have to be taken to ensure it doesn’t slow you down too much early. I’d also just use an rdbms for caching unless it becomes a problem, only then would I reach for redis. I would also avoid a fanout-on-write approach in favor of fanout-on-read. It will save you a lot of headaches later.

Firestore is nice but can get expensive quickly so I’d plan for it to be a temporary thing.

2. Would go for a react native app first but there are lots of options to choose from. Go with tech you know but keep in mind that it’s basically impossible to get a AAA mobile experience on web, and in this space polish really matters.

3. Decentralized social networks never took off because they are too hard to build. Avoid at all costs unless you have some angle (ie you have some novel tech discovered during your PhD). A middle ground could be a centralized network that is open source and makes data portability front and center.

I’ll also say that growth matters a lot here. As a founder I think 20% of the teams headspace should be thinking about engineering. The rest on growth and retention.


👤 pdinny
I find the frequent invocation of a town square a bit perplexing. It evokes the idea of a place where strangers may gather to have an exchange of ideas, which sounds quite pleasant at face value.

However this is not something that I've ever done IRL and I rather doubt that most of those who invoke this idea do this regularly either.

The kinds of discussions that you might imagine having in public with strangers who might have different values and backgrounds would be wildly different from the same discussions online. The metaphor is quite a broken one and at this point about as useful as pretending that the screen I'm looking at is an analog to my actual desktop (which mostly one exists to hold the screen).

While this may come across as mere pedantry I think it is actually quite important to ensure that when we discuss platforms that are going to be nothing at all like a town square that we are more realistic about what kinds of conversation and interactions we might want to encourage or discourage.


👤 andyjohnson0
If you want to design an alternative Twitter then my advice would be to not start with the tech. There seems to be plenty of stuff out there than you can bolt together to get things started, and which comes with options for scaling if you subsequently need it.

Some thoughts:

- Start with thinking about how you're going to maintain engagement without pushing people into algorithmically-generated echo chambers, or into attack/defence behaviour that will just turn your New Twitter into the same cesspit as Old Twitter.

- Also think about how you're going to moderate content - because you're going to have to do it whether you like it or not, and its going to have to be at various scales from post-level to policy-level. There's a very good argument to be made that Legacy Twitter's product is content moderation [1], not software. Human nature being what it is, you may find that eventually it's your product too.

- Also, consider how you are going to deal with state-level and semi-state-level actors who will attempt to infiltrate your platform to use it as an amplifier.

The tech platform will help with the above, of course, but above all I think you need to consciously design the thing that you're building. That thing isn't a software platform or a social network or a community. It's something else. Figure that out first.

And if you want to build something that makes the world better (as opposed to worse, as in Old Twitter), you might consider how people can use your new platform to get stuff done in the world, rather than just shouting and meme-ing. I wish I knew how to do that though.

If you do build something like Twitter then please try to build it so that it doesn't cause harm.

[1] https://www.theverge.com/2022/10/28/23428132/elon-musk-twitt...


👤 _rm
I think posts like this illustrate why MBAs retain their power over organisations, despite the constant complaints about them by engineers. There couldn't be a greater perspective gap.

The "how" is the absolute last question, the "what" is the first.

Can you imagine the following conversation:

"Hey you should sign up to Facebook!"

"Oh, why?"

"It's got a great tech stack!".

Me nether.

To design an alternative Twitter you must first understand what made Twitter popular in the first place. And then at some point, in the far distant future, let the name of a tech into your head, or a line of code onto your screen.

Said in good faith. I know so many engineers who wasted so much time because they couldn't understand that outside of the constraints of a job their skills had no monetary value by default.


👤 prepend
RSS

People put out RSS feeds. People subscribe to RSS feeds.

No server side agorithm and api just returns feeds sorted by users preference.

If I follow too many people to view chronological, then I can have client side algorithms to sort.

Aggregate queries across all the feeds on the server identify hashtag trends and create useful metrics (retweets, likes, etc).


👤 Zealotux
A thing I truly liked about Google+ was the ability to separate contacts into "circles" to differentiate between real-life friends, family, online friends, colleagues, etc. I wish more social networks used that kind of approach.

👤 nebqr
I think that the (dead, gay) Something Awful forums model is a decent solution to content moderation and monetization.

An account is 10 dollars (lifetime). If you get banned, you have to pay 10 dollars again. Permabanned = can't come back.

Premium? (dms, search, custom avatar) 10 dollars.

Change your avatar? 5 dollars.

Change someone else's avatar? 10 dollars.

Ad free? 10 dollars.

Access to archives (posts over a certain number of years old) 10 dollars.

Not too expensive and no recurring costs for good citizens, prohibitively expensive for bots/trolls.


👤 mdp2021
Whatever platform does not allow a search like "What did user U publish on day D" has a specific label:

it is substantially the Soviet Pravda.

Imre Lakatos defined totalitarianism in terms of "how distant in the past can I retrieve documents" - the shorter the span of accessible data, the worse. In historical totalitarianism regimes such obstacle was instated to hide possible ideological changes in the regime, to give an appearance of monolithic consistency. In general, if you have a collector and checking history is not a basic feature, than it is nothing but a joke.

(PS: the first post on HN is the 'Y combinator' submission from pg, Paul Graham, on October 9, 2006 - you find this with one URL. This is how it is supposed to be - the distantmost past is as accessible as the recentmost addition.)


👤 noaheverett
Can speak to the DB side of things: Redis in front of an RDBMS scaled well for me at https://glue.im/noah

Timlines/activity are built from the RDBMS and served from Redis as a cache. New posts are added to the cache directly as well so only needs to rebuild if you lose the entire cache which only happens if we need to restart the server. Also not storing full posts in Redis, just IDs, pulling via primary key from DB is very fast.

That same setup was used for a previous app that had a few million user base (don’t remember the concurrent user numbers though) and it ran well with a clear path to scale it up.

More thoughts: build a mobile friendly web app first, you’re gonna need some sort of back-end to run the iOS app anyways and tweaking a web app UI is much quicker than resubmitting iOS builds to the App Store.


👤 nickdothutton
I can’t help but think part of the answer is to offer users more powerful filtering, so that they may exercise their own free will over what they see and hear. Sure some would choose an extremely narrow subsection of society to hear from, but others would cast their net wider. One might even choose to monetise “smart filters” that took the legwork out of building and maintaining such filters. The “smartness” need not be an algo either, one might choose to outsource filtering to another human offering that service.

I wrote a little about this after a particularly irritating experience with LinkedIn, but the same goes for twitter or any public forum.

https://blog.eutopian.io/building-a-better-linkedin/


👤 viraptor
If this was aiming for the scale of twitter replacement, the realistic answer is: read as much as possible from what was published about the current twitter architecture and try to replicate that while avoiding things they used in the past. If you're thinking in terms of a specific database rather than queues that write into partitions distributed around the world, you've probably already lost. Maybe think really hard about splitting out mostly-readers and pop-stars and whether they need input/output that's architected differently. Find people who design event stream architectures.

Because let's be serious. Apart from youtube comments, I don't think there's anything the scale of twitter for short messages at the moment. (and even that's much simpler problem)


👤 dale_glass
The technology to a huge extent doesn't matter, except for things like decentralization because those impact how end users use it.

Honestly, I'd probably just build Mastodon. I use it sporadically. My feed is exactly what I subscribed to, and nothing more. That of course doesn't make for an amazingly engaging platform that constantly pushes people to engage and to create new accounts, but that's precisely how I like things to be.

You probably won't get rich from catering to people like myself, though.


👤 linsomniac
The time seems to be ripe for moving to Mastodon. A few people in my twitter feed have made the move over the last few days, so I decided to give it a go again, and it's pretty nice. The down side is only a handful of the people I follow are over there. But people seem to be looking for alternatives now, so maybe there will become a critical mass.

It's easy: Go to https://mastodon.online/auth/sign_up and sign up. Go to https://twitodon.com/ to try to automatically follow your Twitter friends on Mastodon. Then use the search bar to search for other of your friends. Click on their followers/following to look for other people to follow.


👤 jsemrau
I put my thoughts about next-gen social into a concept that I like to call "Eigensocial" and expressed that through the Finclout project.

1. Micro-blogging doesn't add much in 2022. Velocity of content is too high and comment vs content is real. What would it have what Discord or Telegram can't provide? The content distribution to the world? Is that really a feature in 2022?

2. Followers are a terrible approximation of shared interest.

3. We use social media to be entertained and not to work. Ideally to connect with people that can help us move ahead. Stack overflow : Learn from smarter programmers. Finclout: Learn from smarter investors.

4. Do we really need a public global town square? Even if yes, there will always be boundaries based on spoken languages. (Chinese, English, Spanish, French, etc). How much does it help us that an Indian doctor can talk American politics to a South African? https://twitter.com/majornirmal/status/1587129879341867008

5. How is moderation baked into the product? People will exploit all your weaknesses to get ahead. For Finclout we implemented that as incentivized tasks for all users. How much do you allow for "edge" content. How does your system define "edge"?

6. Bots create engagement. Engagement creates DAUs. What's your strategy to use bots in your growth path? For finclout we don't. However, we have content partnerships in place so the app never feels empty.

7. What added value does decentralization bring? We partnered up with DeSo and ran a node for a while. Yet at this time, I think the only valuable innovation is decentralized identity management. Probably SBT will be the better solution here.

8. In 2023 we should go to a social sites because it provides us with the userbase to connect us with interesting people. I love Lunchclub for that exact reason. IMHO, this is how a social platform should be.


👤 theshrike79
I'd take a step back. Twitter did the right thing when they switched "favourite" for "like" for example.

Mastodon still only has favourites. There's no way to say "I like this toot, but not enough to retwe... boost it" on Mastodon. Favouriting is more like "this is the best ever and I want to return to this later" -style bookmarking in my mind.


👤 bastawhiz
I grew up in the golden age of Myspace. There was a lot of value, I think, in needing to directly choose to have someone in your social circle. If you didn't add someone as a friend, you didn't see their posts. It's a lot easier to be civil online when you know all the people you're interacting with. And perhaps a lot safer.

👤 Marazan
Twitter is not a technical problem.

I mean, don't get me wrong, there are interesting technical challenges in a high volume site like Twitter. However, the problems and real existential challenges Twitter faces have nothing to do with tech.


👤 fergie
> What database technology or approach would you go for?

I feel like people consistently underestimate the difficulty of creating a data backend for a social network.

It has to be readable and writable in real time, yet still performant enough for picky consumers. It needs to be able to handle text search. It needs to handle many-to-many relationships at scale (something that mainstream (NO)SQL databases struggle with). It needs a robust authentication layer, and probably a load of other things on top of this.

Building something like Twitter is still, in 2022, a really hard technical challenge.


👤 mejutoco
Build a protocol specification instead, and we can have multiple competing implementations (like Email). This is what Jack Dorsey was suggesting.

👤 mawise
I'll chime in here, since I'm building one. Twitter does one thing that I opted to change--everything is public. The short-form, low-effort, public posting that defines twitter leads to a platform that promotes trolling over discourse. Haven[1] instead promotes private discourse where every post is private.

It's fully decentralized in that everyone runs their own instance, but with all open protocols (RSS), it would be trivial for someone to build a centralized/federated instance that can still interoperate. The open protocol which enables a decentralized model is the most important part of that decision.

With RSS as the protocol, you get interoperability with every blog ever for free. Combine private posting with public content and you get something really neat--the ability to have private conversations about public content all on the platform.

You also get an elegant solution to free-speech vs civility. No public content means no discovery so you'll never see anything from a source you didn't explicitly opt-in to. No trolls and no spam.

Arguably, this is more of a Facebook alternative than a Twitter alternative but I still think it is a very valuable approach to creating more civility in our broader society.

[1]: https://havenweb.org


👤 rectang
Freedom of association is more fundamental than freedom of speech. If you can't stop the mob from shouting you down, your voice won't be heard.

The foundational act of a Twitter alternative is to create silos where communities are allowed to exclude other users. The platform is not a public "town square" — it never was — it's a private forum, where users may choose who they associate with.


👤 PainfullyNormal
The biggest problem I have with twitter as a platform and as a concept is that individual tweets lack any and all context. "Threading" together tweets doesn't make them linear. If you want to restrict post size, then you have to make threads linear or you wind up losing any and all context farther down the thread. There winds up being a large group of people who try to argue things that have already been said further up the thread or you have people arguing over a misunderstanding because they missed the first 10 tweets because somebody they know retweeted the 11th because it had a snarky soundbite.

Twitter right now is all noise and no signal. It's a bunch of people running through a crowded train station where everybody's shouting but nobody can hear more than a few words of what any single person is saying. How can that ever be a useful platform for civil discussion? It does make for a great broadcast platform. "The train from Chicago is leaving in half an hour. Mick wishes his mother a happy birthday."


👤 fareesh
Decentralized, free, anonymous and out of reach of the kleptocracy. This is impossible presently since they own all the internet infrastructure.

👤 shubhamjain
> I would probably even make sure that tweets would get automatically deleted after some years as I don't think it's needed to build a forever growing database of people's thoughts in that moment that persists for decades to come.

IMO, that's an absurd proposal completely detached from reality. I wholeheartedly care about what I write/post on any site. It's a trip down the memory lane. Even on Hacker News when I see what I posted in my earliest days, I feel proud of how much I have grow since then. I would be pretty pissed if I can't trust the fact that what I post won't be preserved.


👤 screye
I dunno why the technical bits matter at all. I would use a 'better' twitter even if it consumed 2x the data or had 2x the latency. The thing about the backend, is that it is the 'back' end.

The UX will be central to such a platform, and that's all we should be having a conversation about. I'd go as far as to say, that the central challenge of convoluted technical solutions like 'decentralized platforms' is to find a way to hide the backend away from the user. You want them to be none the wiser about what goes on behind their pretty website / app.


👤 aliqot
Launch it on a $5 VPS first. When you get enough folks to knock it over, you've validated the need.

👤 phailhaus
For one, allow following hashtags as a first-class feature, and move them out of the tweet body.

The problems with Twitter are not technical, they are baked into its design.

1. People are high-variance, and yet we're only allowed to follow individual accounts. That's a problem, especially because network effects mean that one person's voice gets amplified exponentially with the number of followers they have. Consider the six degrees of separation: applied to Twitter, we realize that it only takes 6 retweets to reach basically everyone. Following "Topics" is close but not good enough, because you cannot voluntarily opt into topics or really understand why a given tweet is within a topic; Twitter uses its Computer Magic to categorize tweets and makes all the decisions in a black box.

2. The only negative feedback is unfollowing. This is a problem because it means that practically all forms of engagement are treated equally. Oh, this tweet is getting a lot of comments, let's boost it so more people see it! Whoops, it was about space lasers. We are stuck repeatedly fighting Bad Takes because they have to be argued against every time they are brought up and always gain nonzero traction. They are never put to rest. There is very little negative incentive against being a garbage human on Twitter, especially if you're anonymous.


👤 kthejoker2
Twitter is not a technical problem. We as a society are simply unable to wield such a tool in any useful way.

When you combine three obvious truths:

* people are tribal to the point of irrationality

* controversial clickbait bullshit travels fast and right to page 1, erudite corrections go on page 7 and are cheerfully ignored (see point 1)

* people don't listen, they wait to talk

There is no value in giving everyone such a platform. It achieves no useful purpose whatsoever that cannot be achieved more neutrally, deliberately, and less sensationally.

On Bullshit is required reading.


👤 bobsmith432
How about we all go back to having little forums and chatrooms for our niche interests and finding cliches of people online we fit in with instead of making a Twitter ripoff

👤 espadrine
Do you ask about how to build Twitter if it didn’t exist, or how to build something that people would switch away to?

The №1 issue to overcome in the latter is to achieve Twitter’s network effect fast, so the first goal would be to design for easy bridging, connecting or aggregating.

For the former, people open the page to see content they yearn for. That depends on their interests. If you only show content from their follows, there is too little; if you show content from the whole platform, their interest will be drowned in things they don’t care about.

One easy trick is to show messages from people you follow with high probability, and messages from people they follow with lower probability, and so on. But unfortunately, you eventually need a stronger recommendation algorithm, which can show viral tweets (like the “dress color” illusion from 2015) and suggest people that tweet about your interests. This is the main reason people come back to the app every day.

The replies feature is actively radioactive. I’d recommend only showing replies from people you’ve approved, and putting other replies in a separate menu without a notification counter.

On decentralization, unless you add a hefty seasoning of cryptography and replication, it does not make sense. Beyond fragmentation, the risk of servers going down or in malicious access to private information or forgery is better addressed in a centralized fashion. Trust is easily lost.

Besides, the tech becomes a no-brainer with a central system. Go for a relational database and index as things take steam. Start synchronous, then move to async batch jobs.


👤 NateEag
As others have said, I wouldn't. Twitter is a cesspool because its design and human nature fundamentally work together in very unfortunate ways.

I might consider building something vaguely similar with a different featureset meant to fill a vaguely similar niche. A few half-formed thoughts about possible features for such a system:

- There is a hard limit on the number of users a given account may reply to, loosely inspired by Dunbar's Number. Let's say 50. This forces people to prioritize carefully who they want to interact with.

- Adding or removing someone to your reply list takes a day to take effect. This might reduce the degree to which flame wars can spread - by the time people have unlocked the ability to reply to something controversial, they'll have had a little time to cool down / have people generally lose interest.

- Limiting the number of tweets, retweets, and replies an account can make per day. I don't have any concrete numbers here, but the goal is to make people think more about what they actually want to reply to.

I'm not confident anything Twitter-like is actually a salvageable concept. These are some things I think might improve the odds of building something similar that isn't a toxic dumpster fire by nature.


👤 dusted
I'd use blawg chain technology (if you don't know what that is, look it up in a few weeks when I've finished the toiletpaper).

I'd build a desktop only native application. You'll have to route ports down to your desktop to receive incoming connections, maintain a list of peer nodes in a text-file by hand.

It won't even support encryption, but you can always post base64 encoded pubkey encrypted stuff if you want to.

Everyone will be a content moderator, but nobody can really do anything but remove messages from their local storage (I don't know how moderation can even work with blawg chain technology, I'll have to keep this in mind when I write the toiletpaper).

There won't be algorithmic content federation though.. There will be a list of posts from everyone on the network, and there will be another list of posts from people you follow, and a third list of posts from people who follow you.

It will start off as a joke, but a few.. special people.. will see it as the answer to everything and it will become a booming success and make everyone, except myself, very wealthy.

It's going to be wonderful, I promise.


👤 sirsinsalot
I think the issue is when everyone has a platform, not everyone is heard. Loud, controversial minorities win over other content. The critical thinking level of the global population, on average is terrifyingly low. We forget this in engineering circles.

There's also the issue of accepting that what we find distasteful, offensive or horrific is a cultural artifact of the time we live. Generally accepted common sense today would've had you at the gallows not that long ago.

I think the only way forward is with compassion. Compassion for people who hate, who are racist, who think the world is flat, who have views that we can't stand. These people are maginalised BY us. Their opinions do not reflect cultural norms, and our varied norms fail to co-exist on a global level.

Compassion. Tolerance and kind acceptance of those we dislike. We don't have to agree, and we should certainly control those that do physical harm to others.

The rest is compassion and education as the river of culture winds around.

If we can't build that into a system, the system will just be either a repeat of Twitter or echo chambers of toxic agreeability.


👤 captainmuon
I can't speak much about the technical stack, although I would probably write it in Python and or TypeScript because that is easiest for me, or in something exotic like Nim for fun.

If decentralized, I would think about a clause in the license that mandates some kind of federation. Although, it seems like the ability to not federate with certain instances is seen as a selling point for some Mastodon users.

Most importantly, I would not try to build a Twitter clone. Twitter is often "yelling into the void" aka write-only, and when you get something back it is often aggrivating. Sure, you can also have great exchanges and meet nice people, but all in all it is just not so pleasant.

What I would go for instead is a clone of early Facebook or MySpace. You have a profile page, you can present yourself as you like. You have statusses but no global feed by default. People can send you private messages, but they can also interact in some fashion with your profile. A social network, instead of social media.

One thing I'd like to experiment with is derived identities. Say you want to participate in a community (forum, group chat) with similar people. You want to use a pseudonym, but the community wants some assurance that you are really a teenager, or a woman, or a technology expert, or whatever. Your main profile would "prove" this, but you don't want to disclose your identity. So you create a new account, and the system would vouch that the new account is e.g. from a woman older than 21 with an account in good standing, but disclose nothing more. I think I can work out a cryptographic scheme so that even the server cannot connect the two accounts, but everybody can verify the proof... but it is tricky.

Looking forward to verified celebrites and government members with alt-accounts posting controversial stuff under pseudonyms ;-) ... OK maybe not, when I think about it.


👤 srcmap
What about this: Use SQLite.

Make it one SQLite file per user. All the read/write are parallelized per user. Backup db file would be smaller, easier. Each service node can handle N users, less for heavy follow users. Should be easier to scale horizontally the with user count by adding system nodes and Storage, networks, web handling process.


👤 mecha_ghidorah
Twitter seems like a great tool for organizations and people to make announcements to me, but a terrible format for providing actual content or conversation.

If I were to design something that would replace twitter what I would design would ultimately be way less popular, but I think it'd be a much better place, and if nothing too similar to original twitter could ever be created would lead to a better world (from my point of view) than one with twitter in it.

The short answer would be: I would as much as possible design it to not function as a place for discussion. It would exist, entirely, for people to share content they found interesting.

So if not conversation what would this platform be good for? Making announcements and linking to interesting content that is hosted on places that aren't twitter.

Step one in achieving this would be to eliminate the concept of "threads". If I never see another 30 tweet long thread that should have been a fucking blog post somewhere it will be too soon. (I'd be perfectly happy to build in long form content tools that this platform would host and could be linked to in "!tweets", just that they wouldn't show up in "!tweet" feeds).

Step two would be to as much as possible limit or discourage things like commenting. You could "retweet" something you found interesting with a comment on it, but you can't comment on anyone else's tweet directly. They will not be shown your "retweet" unless they follow you.

So that'd be my version. Basically the people you follow can "tweet" links to content that exists elsewhere, along with a short amount of text describing why you care. Alternatively they can do a (single, not a thread of) "tweet" which is just text in order to enable things like small status updates, "Just letting everyone who follows me know I survived the earthquake", or "We have sold out of the cinnamon biscuits" type of things.


👤 tenebrisalietum
I'm increasingly believing a "public town square" is of little value across major economic class lines, as any "conversation" meant to represent reality will simply at some point devolve into rhetorical struggle between the haves and have-nots. The haves will then respond with various reality-distortion campaigns, winning over enough of the have-nots to keep the economy spinning for them, and at that point you may as well just go watch Saturday morning cartoons which will make more sense than any "public town square."

To solve this problem: You should be periodically required to submit evidence of your income to this alternative Twitter, and only be allowed to post and see posts of those in your economic class. If your income changes then the class you are visible with/to also changes.


👤 anotheryou
I have some plans (but no time) for an experiment on how the timeline works. I want to focus on curation and have the poster rate items he curates. You'd read from most to least important (with a lot of balancing, but as transparent as possible).

Happy to share details with anyone interested.


👤 grumbel
I'd take a couple of steps back and try to fix the problem at the core. What the Web needs is a way to do backlinks. If we had them, everybody could just host their own content, in whatever format they want, and others could respond to it on their own servers.

Add some GPG signatures into the mix, and people could be mirroring and caching content as much as they want without there being a problem authenticity.

Now of course doing backlinks in a way that isn't open to abuse and spam is difficult. But I consider that a much more worthwhile endeavor than just hacking together yet another Twitter clone that fundamentally suffers from all the exact same problems as Twitter does. I don't need yet another middle man to decide what I can and can't view.


👤 Tangurena2
> would get automatically deleted after some years

Some people may not be allowed to delete (or to be deleted by someone else) their "tweets". US Presidents are one such category of people - all of their works while in office belong to the country.

https://en.wikipedia.org/wiki/Presidential_Records_Act

In some lawsuits, records such as tweets need to be produced in what is called "discovery". It is possible to lose lawsuits - by default - for either destroying or refusing to turn over such records. A modern example of how expensive such behavior can be would be to look at how much Alex Jones is going to be paying out.


👤 rickspencer3
I think the tech stack would whatever is easiest for the specific team you have. The app doesn't seem complicated.

The platform that I would like would:

  - Block links. The platform is for sharing personal thoughts and quips, not spreading marketing or propaganda.
  - Block "re-sharing." This would include detecting and deleting duplicate posts across accounts.
  - Cost a token amount of money. Enough to filter out scammers and bots.
  - No "engagement algorithm," your feed is exactly what you design it to be.
I just want a place where I can see what people are doing, what they have to say, without all the BS, and where people are accountable for the content that they produce.

👤 throw_m239339
What is your goal is the first question you need to ask yourself. If your goal is to replace Twitter at its scale, then it's completely absurd, Twitter will continue to be popular for a good decade, no matter what Musk does because network effect.

You shouldn't try to design an alternative to Twitter, you should design a social network that catters to a crowd that is not Twitter or don't care about Twitter.

Tiktok, no matter how much I despise this social network, didn't try to copy Twitter, Facebook or Youtube, it did its own thing, and with the help of massive VC investment and marketing campaign, it became popular, because it was different.

Yet another Twitter knock off isn't going to replace Twitter.


👤 dragonwriter
> I was thinking, if I was to build a new micro-blogging aka Twitter alternative, what technological choices would I make to get it quickly off the ground but allow for scale?

This is fundamentally the wrong first question. The first question is “what is the problem with the existing Twitter compared to what some identified market wants that I am going to solve that will make my product a compelling alternative, and how do I solve it”? Technology comes after, and is shaped by, that decision.

Otherwise, even with optimal tech decisions, you end up at best with a Twitter clone with no users and no reason for people to choose it, abd a tech stack whose ability to scale doesn’t matter.


👤 yrgulation
The design of a new twitter doesnt start with the how question. You can write it in php or even python for all i (or the market) care. The question is what a new twitter should be used for. Politics and social issues will always be loud and argumentative, so we probably dont need that as thats what twitter already does. A nice community for people to follow other people for various crafts and topics would indeed be nice. Maybe a place where we can follow popular scientists, technical organisations, artists, actors, and generally speaking anyone non political. Something as basic as twitter in terms of ui but without the garbage twitter has.

👤 jabagonuts
1. Start with a simple tech stack you’re already familiar with though this will likely change over time 2. Build a few of your favorite features, either because you want to use them yourself or because you like building that kind of feature 3. Get your friends and family to use it with you 4. Listen to their feedback, or ignore it, and build the next few interesting features 5. Get your friends’ friends and family to try it out and give you feedback 6. Keep going as long as you enjoy the process

You may not end up where you set out to go, but at least you enjoyed the ride and learned something new!


👤 sithlord
Less about the tech, I think basically anything would work. I think from the start I would go with 300 characters, and allow edit with a button that has an audit log of all edits.

I think a nice approach would be to be mobile first on my end, ios/android app and expose a nice api for people to build their own frontends. The only downside of that is how do you keep a popular frontend from hijacking someones tweets and modifying the text.

What I do not have an answer for is, how do you handle the comments, to me, they are generally more interesting than the tweet itself, so how does one get those front and center.


👤 uptownJimmy
First, we redesign the humans.

👤 rtpg
I feel like people are overstating the effects of mastodon fragmentation. Email "works" and is functionally extremely similar to what is going on with Mastodon and ActivityPub (the data stuff is not exactly equivalent, but...).

The beauty of a lot of it is how HTTP URLs to other domains just work. You see a thing, you click a link, you see their profile. Sure it's on another domain etc, but..

There's definitely a lot of busted data at the federated timeline level. But maybe that's actually fine. Gives the entire network a bit of an analog quality.


👤 Waterluvian
I already built the alternative. Check out the video on the front page for an intro.

https://cancel.pointless.click/


👤 anthropodie
I said this in another Twitter thread and I will say it again

Here's an idea: stop trying to fix social media and instead try to connect with people in real life and we as a society might be happy again


👤 Apreche
You know that image people share occasionally that illustrates how all the different functions of Craiglist were carved up into separate specialized apps? That’s what I think I’d personally like to see for Twitter.

Journalists that need a place to post live updates as well as links to their long-form stories? Make a platform that does that, and only that.

Bots that post a jpg every day? Make an app that does that and only that.

Get customer service by DMing companies directly because they respond on Twitter for some reason? Make an app that does that and only that.

And so on.


👤 rw2
I think twitter now would be something like tiktok where relevant and entertaining stuff will be shown to me without browsing for it. That is the true value of Tiktok, saving the search time for something interesting.

Also one reason I think Tik Tok is successful is the lack of political content which is toxic and stressful. A lot of political content is designed to get you to be angry at the "opposition" which is not a healthy state of mind.


👤 jmyeet
To quote Nilay Patel [1]:

> I say this with utter confidence because the problems with Twitter are not engineering problems. They are political problems.

Things you mention like the backend data store truly do not matter. LIke at all. If Facebook can run billions of users on MySQL it just doesn't matter.

You then get into product questions, which (IMHO) are more interesting. Twitter grew originally as mobile-only. As in, the 140 character limit came from the (then) SMS limit and you signed up with a phone number. That's interesting history but would you do it the same today? No. Smartphones are ubiquitous.

It might be useful to reduce spam to tie an account to a phone number but that's a separate question.

What people on HN tend to focus on however is:

1. The API; and

2. Whether it should be federated or not.

For a truly open API, Twitter 2.0 just becomes plumbing, and not very interesting plumbing at that. Are you building a company or something like the Wikimedia Foundation? If it's a company, you lose the ability to easily advertise (ie monetize) your users with third-party clients so an open API is only ever going to exist until you get enough traction to throw all the third-parties off. We've seen this time and time again. It's Lucy and the football. It boggles my mind people keep falling for it.

You could monetize with a subscription model but users don't want to pay for things. We've seen this time and time again too.

As for federation, HNers seem to like this. They want Email 2.0. But email is terrible because of federation. Federation allows bad actors. more importantly, it doesn't solve any problem actual users care about. So it's going to be centralized.

Which leaves us to the biggest problem of all: the network effect. How do you get users on a social platform when everyone is on the existing platform? The answer is you really don't unless you invent a new product (rather than copying an existing one).

[1]: https://www.theverge.com/2022/10/28/23428132/elon-musk-twitt...


👤 twishmay
The Anti Social Network

Here is our humble take on a new MVP much better Twitter where you:

* discover links using swipes * curate & share stream feeds * follow ideas not people

https://mutter.cards

Check this out, and help us build this better, by sharing your suggestions on:

feedback@psytech.ai


👤 tinyhouse
So much talk about content moderation. When you have a good community then they do the content moderation. Like here and good subs on Reddit. It's all about the quality of the community. The problem with Twitter is that there were too obsessed with growing the user base over anything else.

👤 osrec
I would keep it simple on the tech side, and would probably stick with an SQL DB, along with a solid full text indexing service running separately for search.

From a UI perspective, I would probably also improve the way threads are shown, as currently I find it impossible to follow conversations on Twitter.


👤 simonw
Don't delete my content because you don't think it will be interesting to me in the future.

👤 andsoitis
The more I think about it, the more it seems to me that Twitter isn’t the proverbial “town square” but rather the “gladiator arena”. Several reasons.

I suggest thinking deeply about what you want to accomplish (use cases) and then work backwards to what needs to be build (user flows etc.)


👤 blowski
I don't understand the problem with fragmentation. I specifically don't want to have all my online presence to be centralised in a single account on a single system.

So it's OK for me to have 5 different Mastodon accounts, each representing a different aspect of my life.


👤 blablabla123
I would probably try to involve sociologists who specialize in a relevant field. I cannot stop thinking that every sufficiently large social network so far seemed to degenerate into a complete cesspool. Some important bits seem to be missing

👤 NikolaNovak
It may show how much I've gone down the dark side in recent years, but it feels like the wrong question; unless and until the business case/plan, and functional requirements, are figured out, technology is immaterial and undefined.

👤 nobodyandproud
Distributed. Possibly peer-to-peers and easier via regional? Or via air? And extremely easy to get into if you’re “in the area” and know at least one person.

Difficult without being “in-person” and in the know.

A centralized platform has brought more problems than solutions.


👤 muskmusk
This question was relevant 15 years ago when the tech for building something like this did not exist. Today the tech exists so it really doesn't matter.

A still unsolved problem is how to moderate effectively. Spend your time with that problem instead.


👤 Finnucane
I'd make users pay before posting. A small amount, just pennies. But you'd have to click on the payment before any post. No ads, no data collection, none of that. Just the fees. A lot of noise just wouldn't get posted.

👤 shp0ngle
Well, look at Trump.

Trump was kicked from Twitter, so he made an alternative one (Truth Social). It seems to be running on Mastodon, which is what you suggested; and he made some custom app, which you suggested.

Unfortunately, I cannot see Truth, as Truth is America-only, apparently.

edit: Gab made an alternative Twitter, also based on Mastodon.

You see... right-wingers _had_ to do alternative Twitters as they were kicked of the real one. They have an experience in this.


👤 djbusby
Decentralized, signed and/or encrypted messages. Search and topic management done on different providers. Use Activity Pub. Bridge to others - at least to read/view.

Been working on something but it's not ready to release.


👤 totemandtoken
Not sure about the technical tools I'd use (my default flask and mysql? Or django and postgresql?) but I would definitely revive Vine as part of my platform instead of just letting it die like Twitter did.

👤 silvanoshei
If you are thinking alternative to twitter. You first think concept rather than tech stack. Because tech is not a problem today. You can select or create what you needs about tech. Twitter does not offer tech.

👤 groffee
> what technological choices would I make to get it quickly off the ground but allow for scale?

Wrong question. End users don't give a shit about your tech stack. You should be thinking of requirements and features.


👤 aynyc
I would pitch to top influencers a certain percentage of the company if they can bring in the fellowers and skip the VCs. Even if the top influencers take 40% of the company, you still come out on top.

👤 hoseja
First I would make a thought-beam in my secret volcano lair. Then I would get some off-the shelf twitter clone. Then I would beam the instruction to use it into a couple billion people's brains.

👤 anyonecancode
I can think of lots of ways I would design a twitter that was a better user experience. I can't think of many ways that improve it while also being profitable. And that's the rub.

👤 jantypas
Let's step back a bit and not ask about the mechanics. Twitter was, and, so far as I'm concerned, the nervous system of the Internet. It's main strength is saying "Hey, you were interested in this -- go to this URL". It's a pubsub system. There are many places, many industries that don't care about the latest celeb or Elon, but they do want a signaling system -- and they want it secure and encrypted. As an example, the oil and gas industry has to communicate with about 200,000 stations. The messages are simple -- why not a private Twitter for them? Sure, they could use NATS or Kafka on a private net, but why not this?

👤 kleer001
Main suggestion would be to remove advertising, keep it boring, and limit the geographic reach (by default). So, kinda like a public utility, boring boring boring.

👤 sixothree
I know this isn't your question, but I would disallow media of any sort. I feel like it is contrary to the spirit of the platform and adds to moderation cost.

👤 powera
One key feature change: messages travel at 500mph.

Send a tweet from New York, it takes six hours before people on the West Coast see it.

(if you pay $20 per month, maybe it only takes two hours).


👤 pkrumins
I’d definitely use blockchain. Basically every tweet would go on the blockchain and if a tweet reaches 100 likes you could sell it to someone as an NFT.

👤 benrutter
What I've always wished existed for social media was something more along the lines of a protocol (like email or rss) than a platform (like Facebook or Twitter).

It seems like as long as a communication form is tied in to one specific provider by design, then there is always going to be unsolvable problems with deplatforming users, content moderation etc.

That's what I'd love to see- decentralization in the sense of anyone can feasibly host a server, rather than the web 3.0 / cryptosphere sense. I genuinely think that would solve most of the issues we see from monopoly platforms.


👤 est
Everyone seems to forget that Twitter was extremely interesting because people on MSN/GTalk were "sync" their status to a web list.

👤 dboreham
Problem #0: how to make money to pay for all that tech.

👤 bdcravens
Pick your favorite stack. Quick iteration is far more important than scale until you reach critical mass. Twitter did the same thing.

👤 tootie
Your tech choices will have nearly zero impact on your success or failure. You need to figure out content moderation and monetization.

👤 phelmig
Nice try, Elon ;-)

👤 bobiny
I don't want another huge social network. I'd have a number of smaller autonomous ones.

👤 kaptainscarlet
Get users first and worry about scaling later.

👤 amai
Maybe something more like https://pol.is/ ?

👤 j0hnyl
It would be minimal and ephemeral, much like 4chan - but without anonymity and 0 tolerance for illegal content.

👤 sys_64738
I wouldn't. Twitter is a garbage heap of trash that is no use to nobody and should die a forgotten death.

👤 mikewarot
Twitter, Facebook, most social media are a matter of a post, and ratings.

Why not have a multidimensional rating?


👤 m3kw9
Make a experience where you need actual verification like kyc to enable certain features.

👤 krisboyz781
Just add the same features but focus on a Reddit like format with communities.

👤 throwaway0asd
You don't. You build something better.

Twitter is a form of low quality information broadcast in that roughly 10% of the active users post anything and the remaining 90% consume it, so at this point its basically just an overpriced RSS feed + friend of a friend logic (FOAF).

Social media is in decline, so building new social media is the last desperate resort of people seeking to broadcast their opinions in a venue they control. If you are like Elon Musk and have made enormous wealth by encouraging people to inflate the value of your stock then control of social media is important especially when your primary value channel is at risk of removal after calling people pedophiles or challenging the SEC. Same for Donald Trump.

For everybody else social media is either a party of deplorables or just a venue for mindless streaming entertainment (TikTok).

Unless you own large advertising media channels in need of eyeballs I would recommending investing all your time and money into that next thing that will replace social media out right.


👤 av3a13
We already have telegram for this, no need for another twitter.

👤 seydor
The format doesn't matter too much but make sure it is very leftist. Twitter became popular as a leftist bubbles and most journalists are leftists too so they will join and the rest will be history. Now is your opportunity

👤 pyinstallwoes
I’d build it by creating Xanadu. Xanadu is the feature set.

👤 TradingPlaces
The problems are political, not technical

👤 amai
Elon, is that you asking this question?

👤 matai_kolila
Great discussion, one thing I would throw out there is that while we're all used to having some kind of "unique" thing in the market that attracts users, I think in this case one could feature-for-feature copy Twitter, and as long as Elon Musk isn't in charge that would be the "differentiator".

I think in the next couple of years we'll see more of this (or should, anyway); companies that are very similar but with different operating philosophies competing for the same market.


👤 genjii931
Figure out the business model first. Until you can do that, you will fail no matter how clever your technological solution is.

👤 al2o3cr

    probably opt for a fast NoSQL database
I hear MongoDB is badass rockstar tech /s

👤 thedudeabides5
Poaster in the house.

👤 exabrial
Honestly, this is a bunch of excitement over nothing. I would move on.

👤 FriedrichN
Very simple, I wouldn't.

👤 nus07
OP are you Elon Musk ?

👤 dontbenebby
I'll tell you what someone should have told Zuck.

You need to separate out the permissions for synchronous communication and async since we already build an "alternative twitter" in the 2000s -- it was called... SMS.

What you are going to need to do is VERY CLEARLY distinguish what is permission for lack of a better phrasing... "broadcast" from permission for synchronous comms, because those are two VERY different things, both in a social sense and in an IT sense.

(You do know what peer to peer means... right?)

I signed up for Facebook, and to me it was like "*Wait... do these goddamn pedophiles not know some of us went to computer camp?"

The air of entitlement off the folks I spidered off from that network of Harvard people was... intense.

For context, after Columbine, the school I was in told us how to dial out (9, then 911) and in parallel, told us if we wanted we could apply to the township police.

I didn't have the same ability to express myself back then, so I wasn't able to articulate what I will today, in a less threatening way:

Why the fuck would I call the police if someone shot my teachers? They abuse me. They smirk that they think it's funny because we have less money, we only get to sue them if it's a test case with the ACLU.

Right as I was getting to a point I could put it that simply, 9/11 happened, and it felt like they took those... techniques... and deployed them on the rest of the world. Which sucked, since back in 412, up until the Iraq war you could pump gas then go into the station to pay for it.

(They'd take down your plate if you drove off.)

Anyways, please include a voice chat option in your network... I am on the autistic spectrum, but I've gotten a lot better at spotting when someone is a literally a spy and voice gives a lot of information.

(Or you could skip all of the above, and focus on why people seem to need to move from network to network, when it feels like in a comedy context, we've known what's OK for a very long time?)


👤 jupp0r
Elon, is that you?

👤 kadomony
Spot the engineer looking to build something without doing any real empathy research first. This is why the Metaverse is currently flopping, bruh. Take a step back and stop getting erect over tech strategies. Ask if people even want this first, and then concern yourself with user requirements first and foremost.