I was looking for Twitter alternatives and found this one, which is old and stale but looks like a very interesting experiment! Quoting its frontpage:<p><pre><code> But what's wrong with Twitter?
I'M GLAD YOU ASKED. There are two aspects of Twitter that just bug me as an engineer:
Ruby on Rails - Using rails to prototype a system is fine — scaling up to a million hits a day with it is just a bad idea. As the service grew, I'm sure it cost them a lot more time than it saved.
140 characters is not enough - I routinely write sentences longer than 140 characters, so I can't even begin to imagine making a point in such a small space. This textual confinement has led to the rise of URL shorteners, which are breaking the internet.
Blërg solves these problems by applying absurd reactionary engineering. Blërg's database backend is a custom C program that handles requests over HTTP and stores data in a very small and efficient indexed log-structured database. The frontend is done entirely in client-side Javascript. A single post can be up to 65535 bytes in length.
Which is not to say that I believe writing your service in C is the solution to all your problems. Clearly, this approach has just as many hairy problems that will bite you in the ass sooner or later. The best way, as with most things, lies somewhere in the middle of high-level abstraction and ZOMGHARDCORE OPTIMIZATION.
</code></pre>
Or more politely described in the documentation page:<p><pre><code> Blërg is a minimalistic tagged text document database engine that also pretends to be a microblogging system. It is designed to efficiently store small (< 64K) pieces of text in a way that they can be quickly retrieved by record number or by querying for tags embedded in the text. Its native interface is HTTP — Blërg comes as either a standalone HTTP server, or a CGI. Blërg is written in pure C.</code></pre>
From the site:<p>"""Is this a joke?<p>Yes. No. Maybe. Blërg is an exercise in constructive satire — a fully functional service created in a fit of hubris to poke fun at Twitter's engineering. It's just for fun, but no one is going to keep you from using it seriously. :]"""
There is too much trolling on Twitter as the character limit does not allow for any serious argument. An ambiguous one-liner from a popular individual triggers thousands of replies and retweets. I've been thinking that we need a Twitter alternative, but with a minimum limit on the number of characters and no images or gifs. Setting a minimum limit to perhaps 300 - 500 characters will eliminate much of the trolling and the noise.
Interestingly this has the basics to provide a personal ActivityPub-enabled stack, so it could join the Fediverse and still be useful today (after some modifications)
Just so everyone is aware, Blerg was created about 10 years ago (4 days to go) <a href="https://bytex64.net/blog/e2302" rel="nofollow">https://bytex64.net/blog/e2302</a>
> Ruby on Rails - Using rails to prototype a system is fine — scaling up to a million hits a day with it is just a bad idea. As the service grew, I'm sure it cost them a lot more time than it saved.<p>I believe that Twitter runs on the JVM since almost a decade.
Hey guys! Glad (and a little panicked) to see this get some more attention. I've shut down signups/logins because I don't have time to moderate, and right now you <i>really</i> have to moderate. :|<p>So long and thanks for all the barfs. :)
I thought, great! I now am curious about how it was implemented. So I did:<p><pre><code> $ git clone http://git.bytex64.net/blerg.git
Cloning blerg...
error: Empty reply from server (curl_result = 52, http_code = 0, sha1 = 95d56e6cc [...])
[...]
</code></pre>
Sigh! How can we look at the C code?<p>[EDIT: now looked at other comments about how this is a joke... is this error intentional?]
Haha, awesome!<p>I'm planning to build a <i>"Microblogging for companies"/"Slack for microblogging"</i> SaaS this year because I think asnyc communication is the way for remote work.<p>Currently, I'm looking at existing microblogging platforms to get an idea of common features.<p>Next step will be interviewing potential customers.
The last-modified headers indicate that the front page and docs have not been updated since May 2018. This is not a viable platform and the analysis of Twitter's technical shortcomings is facile. The original 140 character limit, now doubled to 280 characters, was originally constrained by the SMS interface Twitter supported but ultimately imposes a preferred content style that distinguishes the microblogging experience.<p>The scaling problem is what AWS's James Hamilton use to call the "Hairball Problem" in which there is no single database partitioning scheme that performs well under all workloads. The Subscriptions [1] section of the documentation demonstrates this problem:<p>> I immediately came up with the naïve solution: keep a list of users to which users are subscribed, then when you want to get updates, iterate over the list and find the last entries for each user. And that would work, but it's kind of costly in terms of disk I/O. I have to visit each user in the list, retrieve their last few entries, and store them somewhere else to be sorted later. And worse, that computation has to be done every time a user checks their feed. As the number of users and subscriptions grows, that will become a problem.<p>> So instead, I thought about it the other way around. Instead of doing all the work when the request is received, Blërg tries to do as much as possible by "pushing" updates to subscribed users.<p>This approach works well except when some users have hundreds of thousands of followers which results in an explosion of "pushing" updates. This doesn't even take into account geography related latencies of a global user base. Furthermore, naive attempts at databases without fault tolerance assume that losing recent data is not a big deal. It isn't, the big problem is failures that corrupt data and can't be restored to a known good state.<p>[1] <a href="https://blerg.cc/doc/#subscriptions" rel="nofollow">https://blerg.cc/doc/#subscriptions</a>
Unnecessary "complicated" name? Check!<p>Butt-ugly interface? Check!<p>Mentioning the technology used to build it as it were a feature? Check!<p>So a typical tool created by a developer who thinks the average guy think and act like them.
this microblogging platform is clearly crap, it has a vomiting bird as its logo, and follows the trend of those who then arrive at the shit-storm, which is not only illegal, but a clear manifestation of inhumanity; I personally despise any use of the Internet as if it were a defecator or similar, and I hope this platform will fail, for the little good that exists