Live data from Hacker News

Logical fallacies in software engineering

artur-martsinkovskyi.github.io

51–60 of 151 posts

Re: Logical fallacies in software engineering

#51
> Some engineers may use such fallacy, exposing all the technicalities of their job to cover incompetence and justify failure in rolling out feature in time.

This is certainly common, however I see more often that engineers are simply not convinced by logically sound arguments that are in fact correct and true, so you’re forced to use other methods such as authority since they’re not operating completely on reason. Despite the stereotype of engineers being logical, it’s more they’d like you to see them that way, but are really maybe just 2% more logical in their reasoning than anyone else.

Re: Logical fallacies in software engineering

#52
post #35

Earlier quoted context omitted.

In simple terms I'd say there are authoritative opinions and there is evidence presented by authorities. You may trust some authorities to provide you with all the necessary evidence to form an opinion, seek evidence from multiple independent authorities, etc. and form an informed opinion. But you cannot trust an authoritative opinion in a newspaper. Newspapers exist to make people trust them, to appeal to authority…

I don't quite the distinction you're making. A paper being published in a reputable journal is almost by definition relying on its authority. Even if they allow you to download the underlying data, it won't contain any personal identifying information of trial participants that you could verify. > Newspapers exist to make people trust them, to appeal to authority so they can influence people's opinions arbitrarily an…

> Even if they allow you to download the underlying data, it won't contain any personal identifying information of trial participants that you could verify.

Yes, that's a problem. That's why you need multiple independent authorities to get to a usable level of trustworthiness of information.

> Newspapers get people to trust them by being reliable.

If you are an expert in any subject newspaper reports on, you should be able to find plenty of evidence that it doesn't report anything how it actually is from your expert opinion. Best case it reports one tiny thing correctly and ignores all other facts important to make an informed opinion.

Re: Logical fallacies in software engineering

#53
post #34

> Appeal to authority (argument from authority, argumentum ad verecundiam) – an assertion is deemed true because of the position or authority of the person asserting it. You have to be careful with this one. When someone has enough credibility, sometimes you need to question yourself if you disagree. If you are playing chess and Gary Kasparov comes along and tells you what your next move should be, you can disagree w…

yes an no. chess is a very old, well studied game where one can improve w/ work over time. The rules don’t change and people normally agree on what are good/strong moves vs weak moves.

now, if the size of the board, how pieces move and the goal of the game would change every 3 months if Kasparov would come in and tell you that your next move is wrong it would be a pretty hard sell. Also imagine this Kasparov fellow is also into manufacturing a certain type of piece that he wants you to aggressively use to “develop” your game.

Re: Logical fallacies in software engineering

#54
post #22

The concept of "fallacies" is somewhat overdone, to the point where I'm tempted to coin the "fallacy fallacy". They are used far too often to shut down some debate: Oh, you want to do this yourself? Not-Invented-Here-Syndrom! Oh, you want to buy from a reputable vendor? Appealing to authority! I believe the "appeal to authority" fallacy is especially misguided: it's impossible to verify every statement we rely on fro…

Appeal to authority is a fallacy exactly because you can't trust New York Times just as you can't trust @TheyAreTryingToKillYou241234, but you do. An authoritative opinion is not an evidence.

Trust is not a binary thing in this context. It is OK to believe that one source is more credible than another, and as such is more useful for guiding an opinion, while still being aware that it might be wrong or misleading. This is inevitable in a society that deals with too many complex issues to be an expert on everything yourself.

An extreme example: I do not, as far as I am aware, know any of the contributors to the most recent IPCC report, nor am I qualified to independently assess its correctness or able to reproduce its underlying experimental evidence. Does this mean I should not be concerned about the effects of global warming? No, because in the absence of any better sources, the IPCC report is the most credible material I have available.

The key thing here is that I am trusting the authors to be authorities in their own field of expertise. The appeal to authority fallacy is more like trusting Prof Sir Cumulus McCloud, who is a Nobel laureate for his research into a mechanism for global warming and the lead author of a large section of the IPCC report, on the best way to make cupcakes.

(That is, while it is fallacious to assume absolute truth based on authority alone, granting some credibility in proportion is not unreasonable. A different type of fallacy, sometimes called appeal to false or undeserved authority to distinguish it, is relying on authority in one field to establish credibility in another.)

Re: Logical fallacies in software engineering

#55
post #44
post #34

> Appeal to authority (argument from authority, argumentum ad verecundiam) – an assertion is deemed true because of the position or authority of the person asserting it. You have to be careful with this one. When someone has enough credibility, sometimes you need to question yourself if you disagree. If you are playing chess and Gary Kasparov comes along and tells you what your next move should be, you can disagree w…

"Appeal to authority" is a fallacy in the case where someone asserts authority where they have none, e.g. taking a scientist's advice on a subject because they're a scientist, even though their specialisation is completely unrelated to the subject at hand. Deferring to relevant expert opinion is really the only thing you can do for the vast majority of things, since you can only be an expert in so many things. Unfort…

That’s not what it means at all. Of course relying on false authorities is bad.

Like all “fallacies” it’s not that they are useless, it’s just that you have to be aware of the traps. Even the best experts in an area often disagree, so you can’t logically deduce that expert says X means X is true.

Re: Logical fallacies in software engineering

#56
post #34

> Appeal to authority (argument from authority, argumentum ad verecundiam) – an assertion is deemed true because of the position or authority of the person asserting it. You have to be careful with this one. When someone has enough credibility, sometimes you need to question yourself if you disagree. If you are playing chess and Gary Kasparov comes along and tells you what your next move should be, you can disagree w…

I come across this one all the time, but it's usually in the form of "I know you're wrong, because person X made an argument that I don't understand, but this misunderstood summary of that argument says you're wrong".

Happens all the time with the old Donald Knuth chestnut about "premature optimization". Half the time I hear it, it's from people who don't want to optimize at all. http://www.joshbarczak.com/blog/?p=580

Re: Logical fallacies in software engineering

#57
post #37
post #34

> Appeal to authority (argument from authority, argumentum ad verecundiam) – an assertion is deemed true because of the position or authority of the person asserting it. You have to be careful with this one. When someone has enough credibility, sometimes you need to question yourself if you disagree. If you are playing chess and Gary Kasparov comes along and tells you what your next move should be, you can disagree w…

Good points. I feel software engineering as a field is growing a lot slower than it could, for a couple of reason. The first is what you mention: everyone ignores lessons from the past and try to relearn everything from scratch, reinventing the wheel and best practices over and over and over, making the same mistakes again and again. Some communities also heavily encourages concepts like how experience doesn't matter…

As a counterpoint to that, in some cases technology is changing so rapidly that things which were best practices no longer are and vice versa. Things that we take for granted now, like CI/CD, were not even technically possible 20 years ago. If people weren't constantly challenging best practices as new technology came out then we'd still be pushing our CRs through change acceptance boards.

Or think about "the cloud," "infrastructure as code," "immutable infrastructure," all that stuff that's considered best practices now couldn't have even been conceived of when we were spinning up new servers by driving to the data center and dropping a new 1U in the rack.

Re: Logical fallacies in software engineering

#58

I'm constantly fighting the sunk cost fallacy with managers, I'm surprised it hasn't been mentioned, or maybe it has been but in a different form?

"Individuals commit the sunk cost fallacy when they continue a behavior or endeavor as a result of previously invested resources (time, money or effort)" WRT software projects, what's the opposite? When I bring up sunk cost, the assumption is that I'm lobbying for wholesale rewrite. In some (not all) cases I am - take the lessons learned, maybe some algorithms, data, whatever, and rebuild. The standard rejoinder to t…

Wholesale rewrites often have huge future costs, so I don’t think dismissing them is a sunk cost fallacy.

Re: Logical fallacies in software engineering

#59
post #48
post #37

Earlier quoted context omitted.

Good points. I feel software engineering as a field is growing a lot slower than it could, for a couple of reason. The first is what you mention: everyone ignores lessons from the past and try to relearn everything from scratch, reinventing the wheel and best practices over and over and over, making the same mistakes again and again. Some communities also heavily encourages concepts like how experience doesn't matter…

Mentorship at the highest level (principle to senior and below) is desperately lacking. I vow myself when I reach that level to pass it along the best I can, but something I desperately searched for when I was starting. I pair programmed for 3 months (which I consider apprenticeship / live action mentorship) with someone who was a way better engineer than me at my first "career job" out of college. I learned more in…

> I vow myself when I reach that level to pass it along the best I can, but something I desperately searched for when I was starting.

Mentoring is one of my favorite thing. Finding people who want to be mentored is...challenging though. Probably a chicken and the egg (one of the other posters mention how people are put in a situation where they can't be open about not knowing things), but so many entry level engineers just pretend they know everything.

Completely agree with you though that this kind of dynamic would drastically improve the industry.

Re: Logical fallacies in software engineering

#60
post #32

Earlier quoted context omitted.

Isn't this correct in English? The equivalent on my first language (Portuguese) is very clearly wrong, but I've seen the English version in more than one book.

It's definitely not technically correct. "Both" in English unambiguously refers to two things.

One dictionary says "two or more" and even cites a Samuel Taylor Coleridge example with three things:

From https://www.merriam-webster.com/dictionary/both :

> both conjunction —used as a function word to indicate and stress the inclusion of each of two or more things specified by coordinated words, phrases, or clauses prized both for its beauty and for its utility he … who loveth well both man and bird and beast — S. T. Coleridge

Post reply on HN