How's Linear so fast? A technical breakdown
231–240 of 250 posts
Re: How's Linear so fast? A technical breakdown
#232Re: How's Linear so fast? A technical breakdown
#233These kinds of local-first syncing web apps are really interesting and can be really useful, but I think the premise is somewhat wrong. "A few milliseconds is all it takes to update an issue in Linear. A traditional CRUD app doing the same thing takes about 300ms." "Any data sent between the client and server costs hundreds of milliseconds." There’s no solving the problem of a large RTT between an HTTP client and ser…
> it’s very possible to run a web app backend within ~10ms RTT of most users and have the backend render responses within ~10ms too. What are you talking about? The only AWS region https://www.cloudping.co/ us-west-1 is 60ms away. eu-centra-1 is 100ms away. asia is 200ms away. and this is datacenter-to-datacenter traffic. Actual latency over the public internet to residential providers is far worse. Your database nee…
You're assuming a single global database, which ignores the many alternatives.
Re: How's Linear so fast? A technical breakdown
#234Earlier quoted context omitted.
> it’s very possible to run a web app backend within ~10ms RTT of most users and have the backend render responses within ~10ms too. What are you talking about? The only AWS region https://www.cloudping.co/ us-west-1 is 60ms away. eu-centra-1 is 100ms away. asia is 200ms away. and this is datacenter-to-datacenter traffic. Actual latency over the public internet to residential providers is far worse. Your database nee…
"Your database needs to be in exactly one region. So no matter where you put it, the majority of uses on earth are going to be > 100ms away from it." You're assuming a single global database, which ignores the many alternatives.
These systems are designed for the very common case of a global user base. If you have geographically centralized users, you can maybe do something simpler. That is rare in my experience - basically all of our customers have users worldwide. They typically don’t even know where their users are so making ux tradeoffs based on that feels really risky.
But maybe my experience is different than yours. One of the amazing things about the software ecosystem is how big it is. Everyone thinks their view is the common case.
Re: How's Linear so fast? A technical breakdown
#235Earlier quoted context omitted.
I've used it for a couple of years now and honestly the hype around it is really unjustified. It does the job but it's nothing special. I could go back to Jira and see no change in productivity after a brief re-orientation period
Self-hosted Jira _might_ be usable. The Atlassian shared hosting one is a nightmare.
Re: How's Linear so fast? A technical breakdown
#236Earlier quoted context omitted.
you can home tenants in a data center close to them, run a copy of your app in each region including the datastore. keep a central db for accounts, billing, etc but user content is easy enough to shard regionally. taken to extreme, cloudflare durable objects & workers let you place data very close to a tenant automatically; but you lose total write throughput on top of sqlite.
But this is kind of meaningless unless the tenants themselves are in one geo. Take linear as an example, this strategy works as long as your company that uses linear is all colocated in one area. As soon as you have remote people it falls apart.
Each individual user is fast due to close geo and everyone else has a small (potentially trivial) lag to see writes.
Not sure if such an architecture is worth the complexity, but it's definitely possible.
Actually such architectures are quite old. Back when I worked at Kmart, they had a store server in the office of every store. The store server would asynchronously sync back to corporate (afaik an overnight cron but I think it could be triggered on command). That was the geographically close "edge" server and the store was the tenant. Most ops were quick. For cross tenant queries, clients maintained a list of store numbers and locations. They did some bit twiddling with the store number to calculate a deterministic IP which went to the store server for that store (tenant discovery). With the server IP they could run remote queries directly at the cost of much higher latency since you had to go back through the corporate S2S VPN to headquarters then to the target store.
As for cross geo, you can have writes always be instantly acknowledged at the closest geo location and immediately available to nearby clients while they get asynchronously replicated in the background. Really you'd only see marginal higher write latency when two people are working at the same time in different geographies. That's partially mitigated with time zones
Re: How's Linear so fast? A technical breakdown
#237We use Linear at work. I’m definitely in the minority, but I really struggle with the UX. I also wouldn’t call it fast. Sure the page technically loads reasonably quickly, but half the time I see numbers updating on the page with no visual indicator that data loading is still happening.
Linear has become the thing it sought to kill - complex. It's really the only way for companies to survive and go up market, unfortunately.
Re: How's Linear so fast? A technical breakdown
#238Earlier quoted context omitted.
But this is kind of meaningless unless the tenants themselves are in one geo. Take linear as an example, this strategy works as long as your company that uses linear is all colocated in one area. As soon as you have remote people it falls apart.
Not necessarily. You can do async replication either at the app level or DB level to other regions Each individual user is fast due to close geo and everyone else has a small (potentially trivial) lag to see writes. Not sure if such an architecture is worth the complexity, but it's definitely possible. Actually such architectures are quite old. Back when I worked at Kmart, they had a store server in the office of eve…
Re: How's Linear so fast? A technical breakdown
#239I would always hear about how Linear was fast, but after actually working daily with it, I’ve lost enthusiasm. Search is quite slow, the UI is often clunky (looks good though), “Pulse” is a torrent of noise even at small scale, and I have trouble finding things I need and resort to adding everything to favorites. Early days’ Trello was the best project tracking experience by far.
I’ve been underwhelmed, too. Whatever they did to market the product worked amazingly well, because I see it being suggested all the time even by people who haven’t used it! Their marketing has established it as the fast alternative, so every complaint about slow project management elicits a suggestion from someone to try Linear. Then you ask them about their own experience with Linear and either they haven’t used it…
Not-JIRA + dark mode + usable APIs will take you far.