4 ms·
From the sound of this is sounds like Microsoft should just clean slate and fire the entire Windows terminal team and management, and hire casey to rebuild a ne
by boublepop 5y ago
From the sound of this is sounds like Microsoft should just clean slate and fire the entire Windows terminal team and management, and hire casey to rebuild a new team.
he sounds like he might not consider himself an expert on all of the elements, but he definitely has enough understanding and vision to know who to hire in, and get rid of the whole “acceptance of horrible performance” culture plaguing the current team.
- jiggawatts 5y agoMicrosoft's culture simply doesn't include performance as something to aspire to. Having read through a decent amount of their code, I'm certain that performance issues don't get flagged in their internal code reviews. I say that I'm certain because the kind of code they ship to production is so fantastically, gloriously inefficient, that in my limited imagination I could not produce something so verbose and unnecessary even if I tried. As a random example, I recently had to explain to an Azure tech that maybe, just maybe, it's a bad idea to force all PaaS networking to criss-cross back and forth between their availability zones (data centres) like a shoelace. He incredulously asked me why I even thought that was bad, and wondered if I was working on some sort of "high frequency trading app" or something. No, not trading apps. Just apps. Ordinary, boring, LoB apps that I simply did not want to see run like cold treacle...
- boublepop 5y agoThe lack of performance as an aspiration is certainly part of the problem, but it also feels like there is a certain level of lack of intuition for the subject matter. If they believe that they are doing great and you’d need a full PhD dissertation to improve, and they 1000x below the base expectation of what someone can do in 2 days without even doing basic profiling and optimization. Then the problem is deeper than not valuing performance, it also speaks to a team that severely lacks an awareness of what they are working with. I feel like this is similar to situations I have seen where people “explain” why database queries take several minutes to return with excuses like “that makes sense because we have years worth of data stored in the database” when in reality it’s because someone doesn’t understand how a composite index works. Someone who has a bit of intuition for db’s instantly knows something is wrong, but if your team lacks anyone with that intuitions, your team will spend their time finding “explanations” for the bad performance instead of fixing it.
- jiggawatts 5y agoI made a comment here recently that one cause of this problem is that computer performance crosses something like 13 orders of magnitude: Everything from functions taking mere nanoseconds all the way up to multi-minute processing. In the "middle" of that enormous range, it's easy to make an incorrect judgement of how long something ought to take. This came up with the Grand Theft Auto game loading issue that was discussed here. Many people made statements like: "JSON parsing is slow", which isn't even wrong, it's just that it's not that slow. A significant part of "experience" is having a good feel for what's normal. But even there, experience can lead people astray: the more years of experience you have, the more your expectations are weighted by out-dated information! Again, this crosses many orders of magnitude. Rules of thumb from the 1990s are incorrect by a factor of a thousand, and averaging them into an overall skillset will lead to enormous mistakes.