9 ms·
Obviously performance matters, it's just a question of opportunity cost. The article just takes some absolute statements about performance not mattering and arg
by paul_grisham 3y ago
Obviously performance matters, it's just a question of opportunity cost. The article just takes some absolute statements about performance not mattering and argues against them, which is obvious and pointless. They ignore that the benefit/cost ratio for Facebook's performance improvements is vastly different to that of the average software company with tens of employees and some SaaS CRUD app. Their own example of Uber's app rewrite due to their previous architecture not being good enough is an example against their point - they got to where they were with imperfect architecture, then later fixed it once the opportunity cost tradeoff made sense.
- db48x 3y agoDid you read the same article I did? He explicitly states exactly that: > For example, one argument would be that the evidence I’ve presented here is consistent with a strategy of quickly shipping “version one” with poor performance, then starting work on a high-performance “version two” to replace it. That would be completely consistent with the evidence we see. > But even if that turns out to be true, it still means programmers have to care about performance! It just means they need to learn two modes of programming: “throw-away”, and “performant”. There would still be no excuse for dismissing performance as a critical skill, because you always know the throw-away version has to be replaced with a more performant version in short order. > That kind of argument is great. We should have it. What we should not have are excuses — claims there is no argument to be had, and that performance somehow won’t matter anywhere in a product lifecycle, so developers simply don’t have to learn about it.
- paul_grisham 3y ago> But even if that turns out to be true, it still means programmers have to care about performance! Who is he even talking to at this point? He's arguing that performance has more than 0% relevance to software, which no-one on disagrees with. >claims there is no argument to be had, and that performance somehow won’t matter anywhere in a product lifecycle No-one says performance never matters. People disagree on what performance merits optimization. A 5s to 1s page load improvement is massive, a .5s to .1s improvement starts hitting diminishing returns in user experience.
- db48x 3y agoYes, there are definitely people who argue that performance never matters. And the research Facebook (and others) have done clearly shows that a half–second loading time on a webpage loses them a lot of money. So much money that they were willing to have dozens to hundreds of engineers work for years to fix it across all of their apps and their web servers and apis. Presumably it costs a small–time business a similar percentage, but if that’s not enough money to justify paying a developer to fix the problem then by all means spend the money elsewhere.
- paul_grisham 3y ago>Yes, there are definitely people who argue that performance never matters. Never seen one, post an example. >half–second loading time on a webpage loses them a lot of money. I didn't say milliseconds don't matter, I said it was diminishing returns. The size of those returns depend on the business. For Facebook it matters because users have other options to use their attention on such as Youtube and other social media. A B2B SaaS such as some CI/CD tool can care less about it because their users have lock in, they can't just switch tab to a different CI/CD tool and start using it immediately. So the threshold of acceptable performance depends entirely on the use case, which the author keeps ignoring to fight strawman absolutist arguments instead.
- hikawaii 3y agoHe's bringing out the men made of straw because there's a culture in many places, including my work, of YAGNI. We did not properly federate many of our services and aystems, it is costing us tons of person hours to work around or deal with as our org chart grows. However, it's exactly the kind of thing that unlike Facebook - it is difficult to get metrics on how many dollars it will save or create, so it doesn't get fixed and people still wonder why anyone would care enough to fix it.
- BlackFly 3y agoThe problem is he has presented strawman arguments. If you are genuinely arguing with someone who believes performance never matters, stop arguing, you won't change that person's mind. Generally you will be arguing with a person who is considering the opportunity cost, but has considered it so many times and performance always lost, so they start saying (but not meaning literally) never. To this person you need to make the argument, "This time is different because..." and avoid the strawman arguments from the article.
- kragen 3y agogenerally i'm arguing with a novice programmer who thinks they're an expert, but doesn't know anything about performance, but thinks performance isn't ever important that said, it's just as common to be arguing with a novice programmer who thinks they're an expert, but doesn't know anything about performance, but is convinced of the critical overriding importance of the difference between n lg n and n squared when n is 5
- BlackFly 3y agoHaha, yes I have had similar experience with people focusing on asymptomatics. I think you are correct, these arguments could be good for a junior, but definitely not an obstinate one.