Software architecture is harder than it looks. Where's your alternative tidier solution?
I agree that libtool is ugly, but it lets you build on different systems with different management that are immune to harmonisation. The sound mess is similar: people refusing to give up their own ideas on what constitutes a good solution. We don't have a magic wand to make people reach consensus. The best we've managed is Jobsian totalitarianism, and even that doesn't always produce the right answer.
I'm working on a very radical but very speculative answer: replace compatibility guarantees with tests, try to be harmonious by making it much easier to make changes to code one didn't write. More info: http://akkartik.name/about. But it's likely to be wrong, and even if it isn't, it'll take the rest of my life to convince myself and maybe others.
Comments
Software architecture is harder than it looks. Where's your alternative tidier solution?
I agree that libtool is ugly, but it lets you build on different systems with different management that are immune to harmonisation. The sound mess is similar: people refusing to give up their own ideas on what constitutes a good solution. We don't have a magic wand to make people reach consensus. The best we've managed is Jobsian totalitarianism, and even that doesn't always produce the right answer.
I'm working on a very radical but very speculative answer: replace compatibility guarantees with tests, try to be harmonious by making it much easier to make changes to code one didn't write. More info: http://akkartik.name/about. But it's likely to be wrong, and even if it isn't, it'll take the rest of my life to convince myself and maybe others.