Hacker News new | ask | show | jobs
by jimis 1988 days ago
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:

  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.
Or more politely described in the documentation page:

   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.
3 comments

Who cares what twitter is written in? They've gotten rid of their fail whales eons ago, so this seems like a fever dream of an elitist engineer to argue that the biggest issue with Twitter is it's engineering backbone.
> I am 12 and what is this

> Curious? Click this unbelievably obnoxious button!

> Blërg is a microblogging platform. Or maybe a miniblogging platform. Blërg is not sure.

> Blërg's author finds it entertaining to anthropomorphize Blërg in the third person.

This website, the documentation, the text from the comment you replied to, everything is just clearly humour.

People do this all the time here too. "Some already existing and perfectly functional piece of software impemented in Language Du Jour" is a pretty common post.
That page is from 2012, parent comment even mentions that this is old and unmaintained (but fun nevertheless).
No people do this all the time - a few years ago I read an article where the secret sauce was writing everything in lisp (good luck hiring for that). Goldman Sachs does a lot of work in erlang but mostly to limit turnover on the dev side - try getting a job if all you have on your resume is years of working with a language nobody else uses, you can do it but it’s going to take a lot more effort on your part. I came across a place in Austin once where they did all their work in a toy language the manager wrote in college (greatest job security move ever). Java was supposed to be the solution to every problem, so you could migrate seamlessly between the single platforms in use at most companies. I remember lots of articles were switching to Java is what made the volume go to eleven for company X. More recently I see a lot of articles are Golang is how company X is keeping ahead if their peers. I’m sure I’m a few more years there will be something else.
> Goldman Sachs does a lot of work in erlang but mostly to limit turnover on the dev side - try getting a job if all you have on your resume is years of working with a language nobody else uses, you can do it but it’s going to take a lot more effort on your part.

My take on that is slightly different. Choosing a fairly esoteric language as a company reduces the amount of effort it takes to review applicants. Right now, if you post a job for python, you'll get thousands of applicants. You'll then need to filter them and a vast majority won't be able to code the most basic things.

Post a job advert for erlang, you'll get significantly less applicants because there are fewer erlang programmers. Also, no one learns erlang to “get a job in tech”, they learn erlang because they like it as language. In my experience, this means that on average erlang programmers will be better on average to python programmers.

I'm going to assume that if someone from Goldman Sachs leaves, they will try to find another erlang job, because that's what they enjoy programming in.

> Post a job advert for erlang, you'll get significantly less applicants because there are fewer erlang programmers.

In general I would agree with you, but does that work everywhere? I could see how that works in some tech focused locations like Silicon Valley. But if I would try to hire Erlang developers around here I would not find a single one. Unless of course I would hire remotely and try to compete with SV company salaries.

> and try to compete with SV company salaries

That assumes that everyone that is worth hiring is already in SV or somewhere else with a similar salary.

> post a job for python, you'll get thousands of applicants

I'm glad to see that Python is in that category. When I first abandoned Java in it's favor, I was given funny looks about why I'd stick with such an niche language..

> Right now, if you post a job for python, you'll get thousands of applicants

Have you done this? I wish we received thousands of applications for each python role we post

Absolutely, yes. Hundreds of submissions, and 80%+ of them literally could not solve fizzbuzz.
It seems to be down. And Twitter migrated to Scala a while ago (from RoR).
Anyone knows why Twitter fails to load one out of ten times?
You likely need to delete your service workers for Twitter and let it re-create them.
That's pretty unacceptable considering the size of the userbase, most of them probably never heard of service workers
I’ve been in software development for almost 10 years and I had no idea about service workers.
I believe this fix only applies if you have an old version of their service workers. I remember reading some esoteric nonsense about why it's the case. I agree with the user you replied to, it's absolutely absurd that doing this is the "fix."
> Ruby on Rails - Using rails to prototype a system is fine

The sad thing is that way too many developers never learn that programming language and framework is not the biggest bottleneck.

i think it's pretty clear that you can get really far with RoR too, if I'm not mistaken Github is still mostly RoR.