279 karma · joined December 29, 2011
Relevant xkcd: https://xkcd.com/2044/
There is such a thing as reasonable upgrades and necessary replacements. But long-term FAANG software projects are built like sedimentary rock -- layers upon layers. This bloat has a real cost in performance but hardware upgrades help defer the problem and users pay for it.
[1] https://www.ibisworld.com/us/industry/ohio/bars-nightclubs/1...
"No compile/no codegen" sounds nice until you get slow compile times because a type system is slow VM, the error messages are so confusing it's hard to tell what's going on, and there's no debugging tools.
That being said, change is inevitable, so this desire for maintainability can't prevent all change.
It's a shame they couldn't find a way to balance these things.
Ultimately people weigh each method differently. I think you are pidgeonholing them into two categories.
I think that's unwise, since it hurts the potential for you to grow your "EQ", so to speak.
I use vim, IDEs, debuggers, printf debugging, whatever works. A tool is a tool. I guess my holier-than-thou position is against the idea that there's one right way to do anything.
I don't know what kind of languages/environments you use, but I recommend investigating and trying out some popular technologies and architectures that are allowed in the scope of your work. Try to understand the pros and cons of each approach.
When you want to know the "right way" to do something, try reading the code of the most experienced programmers and successful projects written in the same languages/environments as yours. Very little in software is "new" so chances are someone has tried it before. Maybe LLMs are good for this, but I usually just read the code.
Focus on iterative improvement not destinations, because you'll never be "done" you just move onto the next project and the next technology. You'll get better as long as you're trying to learn new things.
Within minutes of turning it on I get broken features, disjointed UIs, poor performance, outdated software, and exploitative functionality. Not just from third parties, who are a big problem, but Microsoft itself! They've had decades to address these issues but instead just chase marketable ideas. If they course corrected even a little every year they'd have something viable but it doesn't seem like that's part of their corporate culture.
But I guess I'm wrong because they're a multi-trillion dollar company and still dominate the PC market.
That or it's their franchisee's problem and they don't have any incentive to fix it.
https://www.techdirt.com/2023/10/31/the-retail-theft-surge-t...
https://apnews.com/article/national-retail-federation-organi...
I'd like to see the other usual suspects addressed too but it seems like the doctor shortage is a big part of the problem.
It's usually better to avoid it unless necessary, but many web developers overengineer their pages with JavaScript to the point where it's a problem.
At their core, web pages are documents not apps.