3 ms·
>You don't have to prove that COBOL-based system XYZ won't blow up in your face or that frames-in-frames webpage mycompany.com/abc won't eventually look unprofe
by ksk 11y ago
>You don't have to prove that COBOL-based system XYZ won't blow up in your face or that frames-in-frames webpage mycompany.com/abc won't eventually look unprofessional and affect the company's brand.
You can't tell someone they're doing it wrong if what they're doing is making them money. That is the bottom line.
If my car is running fine, a mechanic telling me about my messed up gear alignment and replacing the clutch pressure plate thats 'about to die' isn't going to convince me to spend $3543 in parts and labor. That is what it sounds like to non-CS people.
You can educate yourself about one aspect of car, but unless you're actually a mechanic yourself its trivial for an expert in a field to bilk someone outside of that field.
As a developer, it would be super easy for me to make-up technical debt, talk about API complexity, brittle design and what not, but ultimately no manager is just going to allow a developer to go about changing the design for no perceived gain (to them). This is not necessarily a bad thing, as the vast majority of developers, are simply mediocre and are poor judges of what constitutes good design anyway.
- humanrebar 11y agoTrue enough. Your developers could be incompetent and lying to you, but they could just as easily be incompetent and/or telling you what you want to hear. > You can't tell someone they're doing it wrong if what they're doing is making them money. That is the bottom line. This is exactly the problem, though, isn't it? If it's easier to believe someone who tells you "we can keep muddling along indefinitely" than someone who tells you "this will cause problems eventually", then you have some sort of cognitive dissonance to counteract. In other words, what is the right response when your mechanic tells you "replace your breaks or you'll eventually die in a fiery car accident"? I'm pretty sure the answer isn't "well, I don't understand cars, so I'm going to defer this decision until you can quantify how soon I'll be dead".
- ksk 11y ago>then you have some sort of cognitive dissonance to counteract. Well, you have to deal with the reality of how humans think. That cognitive dissonance is called the human condition. It is impossible to live life if one were to not have any biases or gut instinct. You'd have 1000 football games between two teams just to eliminate the different variables in order to determine which team was better. You'd have to visit a restaurant that served you shitty food, again and again till you made sure that it wasn't just a one-off, You'd have to allow a person to run a company into the ground multiple times just to make sure the previous failures were not the result of poor judgement, and so on. Chance and probablity rule our lives. Also, your brakes example is unsatisfactory. When people use brakes they get an immediate feedback which lets them know if they're working adequately. And even so, people are more likely to believe a mechanic when it comes to brakes precisely because they could die if they get it wrong.
- humanrebar 11y agoWell the car analogy itself was unsatisfactory because you can replace an entire car but you certainly can't just replace whatever tech makes up your competitive advantage. I was just going with the analogy. Anyway, replace "brakes" with "fizzschlider" since the point of the analogy is that the person making the decision isn't an expert in the problem domain.