3 ms·
I think this rant is going against the irrational outcomes of a few things 1. People tend to put excessive hope in silver bullets, quick fixes, and the easy pa
by maerF0x0 5y ago
I think this rant is going against the irrational outcomes of a few things
1. People tend to put excessive hope in silver bullets, quick fixes, and the easy path. "Discipline" is generally shied away from.
2. It's an attempt to save the more expensive thing (engineer time) for the cheaper thing (RAM) especially in the face of rapidly improving hardware (which may no longer be true).
3. As engineers become expensive, people who have little interest in the subject become sufficiently motivated to hit the minimum bar, bringing down the average talent/quality of the pool. I am daily shocked by the number of engineers that do not understand the differences between implementations, and how "good enough" for a single scenario is not "good enough" for a complex and unpredictable future. Your 1 month implementation may be "faster" on paper, but if we consider the implementation time until yours and mine have acceptable robustness under duress, acceptable bug counts, predictable outcomes in unpredictable scenarios then my 6 month implementation will beat your "requires rewrite" (quarterly) by years... But never mind that, the engineer with the crap impl will "save" the company $100K a month in opex when he cuts the inefficiency in half and be promoted to architect. Meanwhile the engineer that does an efficient impl, maybe slightly over schedule will languish because there isn't even a 10% gain to be had, or the thing runs so stably the project is entirely forgotten about for years (because it just works) ...
So yeah, Electron is what we get when we pursue logical fallacies with little to no accountability for the true outcomes, and no rewards for excellence and subject mastery. Yup I'm a dinosaur too.
Anyways, I'm ranting now too...
- Sebb767 5y ago> It's an attempt to save the more expensive thing (engineer time) for the cheaper thing (RAM) especially in the face of rapidly improving hardware (which may no longer be true). It's worth noting here that Electron trades engineer time you pay for against RAM your customers pay for. On the other hand, Electron got things to a state where Linux is often supported and where I can usually run the whole app well sandboxed in my browser. So in the end, it's not that bad for end-users like me, either.
- chrisco255 5y agoCustomers ultimately pay for engineering time, too.
- maerF0x0 5y agoit is an interesting point though. Like I've tried to think of elegant solutions where we can get the customer's browser to preprocess work for us so we can reduce our total lambda/ec2 time. for example one could have their browser generate the thumbnails for an uploaded photo instead of just uploading the single image upload. After all, 1000s to millions of browsers can make short work of something that might be heavy on AWS. Sadly I've yet to find many FE engineers that are all that experienced with WebWorkers Someday this could be a good use of all those free CPUs
- tryauuum 5y agoReminds me how in one online multiplayer game developers decided to offload the decision of "who's the winner of the match" to client machines. Because there were some problems on server side and they couldn't do it reliably there. Developers said this voting system worked surprisingly well. Theoretically if there were >50 percent of malicious game clients they could all vote for a wrong player but this was hard to accomplish, it would require a coordination of randomly-matched players. (eventually developers did fix server-side code and removed this system)
- Aozora7 5y agoYou don't have to hunt for rare examples like this, most multiplayer FPS games use client-side hit detection nowadays.
- jacobmischka 5y agoWell that's mainly for latency I think, not just a complicated computing problem.
- 5y ago
- astrange 5y agoRAM isn't cheap when you're an OEM. At some point you can't pass on the cost to customers because your suppliers can't get you any more. The actual issue to customers is more memory use means more swapping, which is silent and slows down or eats up the disk.
- solraph 5y agoMy observation is that 1. & 3. in your list are very closely related. > 3. As engineers become expensive, people who have little interest in the subject become sufficiently motivated to hit the minimum bar, bringing down the average talent/quality of the pool Which is how you get 1. > 1. "Discipline" is generally shied away from.