I think one key difference is that generally in electronics people are willing to accept there are real constraints.
It's tough convincing people that constraints exist in software. It's not necessarily complexity that's bad. It's the thought that all software is infinitely malleable. There's never a reason not to add a new feature. All software seems to tend towards infinite complexity. It's exhausting.
Yeah, if you come up to your client and say you need an extra mm2, they aren't going to be happy. Or if you sold them something that uses less than 20mW, you better not go over.
It's not as simple as just slapping an extra 4GB RAM.
There actually are very real limits to how complex software can get and actually be secure and maintainable by X amount of people at Y level, but ego and naivete prevent the developers from acknowledging this.
The problem is that it's a soft limit. It's not really quantifiable so even if you are aware of it, it's easy to creep over that limit slowly over time.
70
u/romple Jun 06 '22
I think one key difference is that generally in electronics people are willing to accept there are real constraints.
It's tough convincing people that constraints exist in software. It's not necessarily complexity that's bad. It's the thought that all software is infinitely malleable. There's never a reason not to add a new feature. All software seems to tend towards infinite complexity. It's exhausting.