3 ms·
Imo, programming isn't very different than assembling cars or jets. What makes it difficult is the uniqueness of every project: it's always a novel car engine,
by akomtu 5y ago
Imo, programming isn't very different than assembling cars or jets. What makes it difficult is the uniqueness of every project: it's always a novel car engine, developed by a team who came up with a new combustion process, and it's a novel car frame with bespoke electronics that the engine needs to be hooked up to. Don't expect 12V from the battery: you'll need to build a custom adapter for it. Even the wheels aren't standard. Everything is in flux, every single component has its quirks, unexpected behaviors, and is constantly updated. Just attaching wheels needs the mechanic to be an expert in wheel and car frames manufacturing, because the unique steel recipe used to make this frame may be incompatible with this particular type of rubber.
What would make programming easier is hardcore standardisation of everything, so wheels are always round, engines have standard bolt patterns and car frames have standard size room for an engine and wheels. What makes such standardisation difficult is the complexity of what needs to be standardized: nobody has enough mental capacity to fully grasp the software equivalent of the car engine and make a sound standard for it. This is why most standards are a mess of exceptions on hundreds of pages.
- trhway 5y agoWhat you describe though isn't a car building process, it is a Formula 1 team. In Formula 1 you get ahead by using non-standard everything, and even if there is a clear rule, the teams still try to stretch and loophole it to get advantage.