3 ms·
All web and cloud technologies are inherently inefficient, and most programmers don't know networking or even how hardware works sufficiently well to optimize f
by mgaunard 4y ago
All web and cloud technologies are inherently inefficient, and most programmers don't know networking or even how hardware works sufficiently well to optimize for high througput and low-latency.
There was an article just yesterday about how Jane Street had developed an internal exchange way faster than any actual exchange by building it from the ground up, thinking about how the hardware works and how agents can interact with it.
Modern software like Slack or Twitter are just reinventing what IRC or BBS did in the past, and those were much leaner, more reliable and snappier than their modern counterparts, even if they didn't run at the same scale.
It wouldn't be surprising at all that you could build something equivalent to Twitter on just one beefy machine, maybe two for redundancy.
- therealdrag0 4y agoIt’s “easy” to optimize for speed when you build from the ground up with no real customers or feature requirements that you can’t just conveniently ignore.
- deleted 4y ago[deleted]
- drowsspa 4y agoI'm always reminded of that tweet from @SwiftOnSecurity https://mobile.twitter.com/SwiftOnSecurity/status/1485822027923603456 https://mobile.twitter.com/SwiftOnSecurity/status/1485822027... > Once you understand your computer has 16 cores running at 3GHz and yet doesn't boot up in .2 nanoseconds you understand everything they have taken from you. With their infinite VC money at their disposal, and with their programmers having 100 GHz machines with thousands of cores, 128 TB of RAM and FTL internet connections, tech companies don't really have any incentive to actually reduce bloat. Edit: it's still quite sad. I feel like we had languages with a way better future, and more promising programming architectures, back in the 80s.
- kaba0 4y agoBooting has fundamental hardware limits, though. Will that harddrive or whatever really reply all in 0.2 ns?
- ilyt 4y agoAnd most machines don't even touch that limits. I remember some presentation about it [1] and actual limits aren't even touched, especially on servers. From what I remember "hard" limits are CPU/DRAM-memory initialization and speed of read from flash chip storing, and sources of lag include firmware from add-on cards just being slow (if RAID controller takes 30 seconds to return, and firmware is not running initialization in parallel, that's your extra boot time. Or stuff out of left field like "IPMI controller logs stuff via serial so if you print too much text it slows down". Most BIOSes do things painfully parallel too. * [1] https://www.youtube.com/watch?v=fTLsS_QZ8us https://www.youtube.com/watch?v=fTLsS_QZ8us
- drowsspa 4y agoI mean, it's just a hyperbole but they definitely shouldn't need to take seconds to boot either.
- Nextgrid 4y agoIt's less about the lack of incentive to reduce bloat and more about the incentive to create bloat in order to justify one's position and pad the resume for the next positions.
- saagarjha 4y ago> It wouldn't be surprising at all that you could build something equivalent to Twitter on just one beefy machine, maybe two for redundancy. The blog post kind of gets a very cut-down version of Twitter running on a single machine. Actual Twitter absolutely would not work.