I've observed the same thing in the EdTech space (e.g. ClassDojo, Google Classroom), and I think a big part of that is being self-serve forces the company to build _actually good_ software, not just software that sells well to the district, state, etc.
What's required to sell software to large buyers is very different from what's required to make the product useful, but in the long-run, it's the utility of the product that makes it valuable to end-users, and the success of the end-users _eventually_ determines how the buyers make decisions. Self-serve software tends to prioritize the things that will make it easy to sell and improve in the future.
> Here’s how the hack went down: Two attackers accessed a private GitHub coding site used by Uber software engineers and then used login credentials they obtained there to access data stored on an Amazon Web Services account that handled computing tasks for the company. From there, the hackers discovered an archive of rider and driver information. Later, they emailed Uber asking for money, according to the company.
This is part of what v5 is fixing by enabling AOT by default in development (and production).
AOT compilation converts an Angular template to TypeScript that is then type-checked. So on v4+, an `ng build --aot` performs type-checking.
But since that's not great developer ergonomics, v5 has included enough performance improvements on AOT that it's reasonable to enable in development (see "TypeScript Transforms"). And then that means that development includes the type-checking compilation step!
Having just seen a whole bunch of React shops when interviewing for a front end position, a _lot_ struggle with React but also really enjoy it. Definitely don't see a significant difference in the end from Angular, they're really similar frameworks.
I think the ones that really have invested in making React work in their org but move a _bit_ faster, but Angular making strong decisions and providing really good patterns out of the gate is extremely valuable.
Both are great frameworks, so adopt works best for your company, your team, and your product!
I think the biggest problem with flags like --emergency is if they end up in daily use, such as git --force. Then, they are both sudo-level AND used without a lot of though.
Having run an (internal) app that is deeply integrated with Google Sheets for about a year, I think that Sheets is good and bad. It's _extremely_ powerful for allowing business users to easily get access to and manipulate data manually. Downside is that it really struggles past a few thousand rows when you've got more than 20 or so columns. Definitely good for a quick and dirty way to expose data to internal users, but it essentially can't scale. Engineers need to be ready to move off of it if the system works.
The new GitHub changes allow you to group a set of comments into a "review" that then notifies the recipient all at once, along with letting you mark the PR as "approved" or "needs changes".
What's required to sell software to large buyers is very different from what's required to make the product useful, but in the long-run, it's the utility of the product that makes it valuable to end-users, and the success of the end-users _eventually_ determines how the buyers make decisions. Self-serve software tends to prioritize the things that will make it easy to sell and improve in the future.