3 ms·
Auto mechanics at least have the common sense to repair things the same way, so that the next mechanic can work on the next fix in a few hours instead of first
by moksly 5y ago
Auto mechanics at least have the common sense to repair things the same way, so that the next mechanic can work on the next fix in a few hours instead of first having to spend 10 weeks getting into the “mindset” of the previous mechanic.
Seriously, it’s not best practices when everyone apply them differently.
- mym1990 5y agoThere are many, many ways to write even a small piece of code/functionality and small sub-optimal choices can lead to tons of entropy down the road. To compound this, almost every solution is going to be different, and there just isn't a '300 Page Manual on Servicing Your Jaguar' equivalent for every possible software solution. While I get the gist of what you're saying, I think building and repairing physical things is different from building and repairing more abstract things.
- polygotdomain 5y ago...but software engineers are not "repairing" things, we're building systems. Mechanics repair things in a similar way because there's literally repair manuals from the manufacturer that tell them how to repair your vehicle because _the manufacturer_ has thought of how to repair things. You'd be surprised how much variation there is in the solution when it comes to autofabrication, and yes there's similar amounts of "figuring it out" that there is in the software world. Quite frankly the automechanics <-> software engineer analogy is apples to oranges.
- moksly 5y agoI mean, mechanics aren’t exactly happy that it’s become like that though. Used to be that they could repair every car, but now they are tied to brands because they need certifications and special tools. Not because the manufacturer needed the tools to build the car, but because without them, anyone could repair it. > we're building systems. Someone has to maintain them.
- polygotdomain 5y agoMy overall point was how the roll of a mechanic is not really the right comparison to a software engineer. There's always been factory repair manuals, and while repairs used to be something that were more common across brands and something more accessible to the weekend wrench turner, that doesn't change that the manufacturer had explicit guidance that was there to follow. The "specialization" aspect of things from a mechanical standpoint is a by product of additional complexity and advanced proprietary systems. Consumers (and regulators) ask far more of a modern car than what could be delivered with simpler, purely mechanical systems. Whether it's safety, emissions, reliability, or just features, as those evolve and progress, repairs and maintenance get more complicated and involved. >> We're building systems > Someone has to maintain them Software maintenance and vehicle maintenance is fundamentally different. Vehicles have wear items that need replacing (brakes, hoses, tires, etc), consumables that need to be changed (oil, lubricants, belts, coolant), and parts that are subject to mechanical wear. Systems don't have any of those things. The closest analogs I can think of would be upgrading a dependency or maybe bug fixes. While some bug fixes might be small changes to fix typos or incorrect logic, some bug fixes may be significant enough to necessitate redesign of subsections of the software. You wouldn't expect your mechanic to redesign your car's brake system because you found it wasn't stopping as quickly as you'd like it.
- schwartzworld 5y agoI have never hired a contractor or mechanic who had good things to say about the work done by the previous guy.
- moksly 5y agoIt’s not even that though. We have open source projects with multiple private companies are supposed to work together. Which they do, but it took years of setting up governance to get people to agree on what the best best practices were. I mean, at that point it’s not really best practices anymore, because that implies that they have a broad adoption.