This seems a lot like an eventually-consistent database. I think you could accomplish something similar with something like CouchDB or Firebase that provide conflict resolution between local and server state automatically. I'm wondering what the advantage is here?
Making Direct Messages Reliable and Fast
21–26 of 26 posts
Re: Making Direct Messages Reliable and Fast
#22If the order of requests are retained, does it mean that if ‘mark thread as read’ request somehow fails on server side, all other requests will wait for it to be send until it gets success from server?
In my experience it is reasonable to wait in the sense that it's basically a middle layer where all the requests pass through. Also, if, as an example, there is a missing connection, you don't allow people to keep doing things. We did it on our app but you can see the same on FB app where you see a "lost connection" alert.
Re: Making Direct Messages Reliable and Fast
#23Earlier quoted context omitted.
It’s also rough when building new applications. Instagram/Facebook level UX are the expectation from the layperson. For instance, if you add photo upload to your app, people will complain if it doesn’t support multi-photo upload, varying sizes, and client side photo filters. The bar is set very high. It’s taken me a whole year to build a website + app combo in my spare time that has all the expected bells and whistle…
It’s really hard to build consumer-facing products solo these days! I recently “gave up” on building my own site and just pay for a Shopify site now (only an option if you’re in e-commerce) and I’ve been blown away by how easy and high quality it is, and $30/month is honestly way cheaper than the time it’d take me to create and maintain a similar site. There are plenty of alternatives to Shopify that are competitive…
Re: Making Direct Messages Reliable and Fast
#24Earlier quoted context omitted.
> If anybody else needs this kind of system, most GraphQL clients Well, the client is probably the easiest and the most boring piece of the puzzle. What you do in the backend matters.
What’s done in the backend matters slightly less in the thread of an article entirely concerned with the client. https://cdn-images-1.medium.com/max/2400/1*ttu76ysGchnhH3CyT...
Re: Making Direct Messages Reliable and Fast
#25I though Zuck announced they were merging everything into an unified system?
Re: Making Direct Messages Reliable and Fast
#26Earlier quoted context omitted.
What’s done in the backend matters slightly less in the thread of an article entirely concerned with the client. https://cdn-images-1.medium.com/max/2400/1*ttu76ysGchnhH3CyT...
"How do you handle DMs for a billion connected clients" is still a much harder and a more interesting story than "if you want something similar, throw a GraphQL at it".