5 ms·
My philosophy is: 1) you cannot always be right. 2) truth is truth no matter it comes from. 3) denying or avoiding truth to protect your social rank is not e
by partycoder 11y ago
My philosophy is:
1) you cannot always be right.
2) truth is truth no matter it comes from.
3) denying or avoiding truth to protect your social rank is not ethical. admit when you are wrong and step on the shoulders of giants.
If you let the best ideas prevail, everyone wins.
If someone cares a lot about social rank, and comes up with comments such as "don't tell me what to do", "i know how to do my job", etc... that's the kind of people that you should just ignore and avoid. Those are people that are stuck in their ego bubble and will eventually stay in an ignorance limbo.
- mwfunk 11y agoThis is all fine and dandy, but it's based on a very optimistic view of human cognitive abilities. It only makes sense as a personal philosophy if you only attempt to apply it to your own behavior, and never ever use it as a way to explain away people who disagree with you. "Truth" is straight-up unattainable, and if you ever think you've found it the only thing you can be sure of is that you are wrong. It's like something you asymptotically approach by learning stuff and thinking really hard all the time, but you still never actually get there. Even in supposedly cut-and-dried things like engineering decisions, there is very little capital-T Truth. People think their technical preferences are based on objective criteria but more often than not they are just as subjective as anything else. The only difference is that they can articulate an argument that on the surface sounds like it's about cold hard facts rather than personal preferences. It's uncanny how often people who fail to get other people to do things their way feel like they lost that battle because their "truth" couldn't overcome someone else's "ego" (scare quotes intentional). It's also uncanny how often people who resent other people for trying to tell them how things should be done will perceive that as someone else's "ego" trying to steamroll their "truth". So, I do try very hard to apply those ideals of objectivity/rationality/egolessness to my own life, but even then it's on a best effort basis because the human mind's ability to delude itself into thinking things like "I am right because of logic and they are wrong because of feelings" is utterly staggering, and that is just as true of myself (if not moreso) than it is of other people. By trying really really hard to overcome this common cognitive bias, I may actually do better than some or most other people in this regard. Or maybe not. All we can do is try, and also try very hard to not fall into the trap of thinking that other people aren't also trying (perhaps in their own way that doesn't completely make sense to us).
- partycoder 11y agoThere are objective and subjective things. Philosophically speaking, you can say that the definition of a kilogram is not 100% accurate, if you want to argue for the sake of arguing. But for practical purposes we can agree what a kilogram is, and we can agree on other things as well. We agree that fork is fork, and spoon is spoon, and that a cat is a cat and a dog is a dog... despite the fact every person have a different brain and synaptic plasticity and life experiences and motivations and ways of learning, and things that make them different... Our entire civilization is based on this. There are many KPIs that can be extracted from engineering processes. Cyclomatic complexity, statement length, function length, number of arguments, when seen as cost, can help you compare code that does the same thing and have a rational discussion beyond "that's your opinion". Budget is not always an opinion, cost is not always an opinion, especially if each participant have well established rates. The Lion King, an animation film, has dozens of frames per second, each one hand drawn by multiple people. But it is consistent, and that consistency holds the film together. We can also say that if that consistency didn't exit, the film would probably not be as successful. If animators and illustrators, people considered creative/artists can be consistent, then why can't an engineer, someone with an engineering background not have the same level of consistency and attention to detail. That's not an opinion, that's a fact.
- jdmichal 11y agoIn my experience, the problem is rarely "truth", which has a disproportionate load of philosophical baggage for one little word. The problem is typically bound up in "value", and recognizing that perceptions of "truth" are bound up in differing "values" and therefore differing ideas of what's "best". That is a huge step forward in being able to understand other people's arguments and work towards commonality or compromise.
- rustynails 11y agoThis is an excellent comment. Mind you, this article and the comments are all excellent, but this one distills that truth isn't important to most people. The dynamics of conflict are very complex. For example, consider rationalising with ISIS or a discussion around religion. Sometimes, there is no compromise in a discussion. Here are two contradictory examples of extreme conflict. 1/ Don't pay the Danegeld. 2/ Don't say no to the Mongols. Both were equivalent situations, but totally different outcomes. One guaranteed annihilation (as an example). I would suggest the methods suggested work on small scale but not on a large scale (eg. Religion, Nations). Great comment. Values, not truths.
- partycoder 11y agoWell, if your values are not in the best interest of the company or project, then my views are: I don't care about your views. Companies define their values and if they're not defined you can ask a manager or stakeholder. If some anarchist dude shows up not wanting to unit test their code because of some hippie ideals I cannot care less.
- jdmichal 11y agoThat's a great viewpoint if your target is monoculture. Which is sometimes the goal, such as your example of testing. It's a terrible viewpoint if your target is persuasion or compromise.
- partycoder 11y agoIdeally you want an evolutive monoculture. Have everyone on the same page, while collecting the best of everyone's feedback. You will need of course to establish "values" as previously mentioned. Those values will differ depending on what your goal is... a proof of concept, a functional prototype, a stable product, a bulletproof platform...