Software Design Review (2009)
philip.greenspun.com
philip.greenspun.com
The only honest takeaway here is that if you want to write software as a large company, then you need technical management. The foundation of good engineering work is competence and trust; in other words, the team must have the chops and there must a trusting direction with management (both ways). All this faff about documenting every last detail and have it reviewed by "experts" for $100/hr is the most ridiculous kind of bunk. There is a time and place for technical documentation and its review, but not as a solution to a fundamentally broken team.
Why? And how is it possible for Americans to build anything while having that kind of a constraint?
Now, instead of listening to you and giving you a response, this person is in some kind of an internal spiral. They will either push back, equally emotionally, or they’ll shut down. It’s a rare bird who will take that kind of feedback in stride. Even if you find one of those, you’ve most likely lost personal capita with them in the process.
Stick to the facts and learn to manage your emotional feedback. I came up in these kind of “blunt” cultures, and it was a terrible waste of time and energy, and it took a long time to unlearn these patterns of behavior.
Because a working product is not actually the expected product.
It must be based on some specialized benmarch and criterias.
It's a lesson for business people or shareholders to learn.
Example: To fix N+1 issue in RoR application is not simple. Cheaters won't spend their efforts to fix it to release.
What reasons would developers have to 'cheat', as you call it? If they are experienced enough to recognize something like problematic N+1 queries, why wouldn't they rewrite them, regardless of the effort? Further, what reason would they have to write them in the first place, if they know better?
Normally they only care if a feature is working or not.
About performance, it's upon the developer to fix it or not.
> it's upon the developer to fix it or not.
But why wouldn't the developer fix it? What incentives do they have for leaving a known problem unaddressed?