Everybody is a critic. Every developer has both been on the receiving and the giving end of criticism. It is a vital part of our job, be it as code...
For further actions, you may consider blocking this person and/or reporting abuse
It’s a very nice write up. Now if you could only reject Marxism in favor of Anarchy, I think we’d find a common ground somewhere … 😉
I'm not even a proponent of Marxism, I just find his works terribly misunderstood by people who never even read it. But yes, anarchy in it's original sense (a society based on everyone's contribution for the common goal of everyone's well-being) I would wish for. Maybe a more modern version as depicted in Cory Doctorow's "Walkaway" (if you haven't already, do yourself a favor and read it, it's really that good!).
Anarchy isn't about contributing or sharing, it's about freedom from tyranny by avoiding power concentrations. But yes, human nature seems to be hardwired towards sharing, implying once free, we tend to figure out things on our own in these regards. Most sane people don't need the "tyranny of the state or representative politics" to help us give and share our meals with our next of kind ...
Please read up on the original anarchists. It might surprise you, but they were quite anti-capitalist and despised hierarchy of any kind.
The shallowness of modern minds rendered this quite interesting philosophy into "freedom from the tyranny of the ruling class".
Define "original anarchists". There are a lot of people who contribute the original idea to Jesus ... ;)
The word might not have existed 2,000 years ago in Judea, however if you read his words, there is ZERO doubt about his "political affiliations" ...
Jesus of Nazareth could also be considered anti-capitalist (remember the cleansing of the temple), but you misunderstand again: "Anarchists" were philosophers who brought forward the concept of anarchy as an answer to the question: "How (much better) would society work without the rule of authority?". The first person to call himself "anarchist" was actually the French philosopher Pierre-Joseph Proudhon.
I think Cory Doctorow gave that whole concept a great update as open-source version-controlled mini-society without the rule of authority. Seriously, read "Walkaway".
Nice summary, Alex. Some unsolicited piece of advice to add:
Make the less assumptions possible about the person giving you the criticism.
I have found this very useful, because when I least expected it, the person in question was smarter than I initially thought. I have that kind of bias that makes me think that, if you criticize my point, you must have misunderstood it. However, sometimes the one who misunderstands is you (not always, though).
So before going into a discussion on falacies and logic, first make sure that both of you are using the same terms to refer the same things and give the other person the chance to elaborate on their point until it's clear and you feel you can agree/refute it with a proper understanding of what they are trying to say.
If you manage to leave your ego (and thus your opinions) out of the argument and only provide the reasons behind it, it should make no difference. There might be other reasons that you have overlooked, but then you can pull the "Thanks for providing this perspective to improve my position." move.
Ego again. An objective argument should be about our reasons, not about us. They might be incomplete, but they should be sound.
Otherwise, great point here: asking questions to provide indirect criticism is a good way not to look too assertive.
I see why you would want to remove ego, but there's nothing wrong in admitting subjectivity. Unfortunately, it's difficult to be completely objective in every topic one discusses, specially because of biases we are even unaware of, and because not every argument is objective. Sometimes we have opinions that we interpret as facts and sometimes the subject is an inseparable part of the discussed topic.
You may make subjective remarks of opinions (especially positive ones, those are good in a code review and may improve team spirit), but don't confuse them with actual criticism.
Yeah, I guess I was thinking of general feedback, more than specifically criticism.
Hy Alex,
thank you much for your post!
One thing I realized on many discussions on dev.to (and others) is, that people do not even ask: What do you want do build? They just assume, everybody does what they do (without mentioning, what precisely they are doing). But you cannot tell, that "VDom is faster, because it eliminates unnecessary scree updates", if you do not know, what kind of app you are building. For a large scale app and a big team, this might be true, but for a small desk calculator it is certainly not.
So we find a lot of criticism based on simple misunderstandings - or should I say - a lack of willingness to listen to each other?
The world of web development is very confusing, but this diversity also results from the variety of applications and the rapid technical development. We should always keep that in mind and ask more questions before we criticize things
Thanks for the interesting article :-)
I kind of disagree with your example for "Free of ego":
I would agree with the title in the sense that you should not write/say something like: "I am such a great developer and know better so please do XYZ..."
However, by saying that it is my opinion that recursion would work better here, I also give the other person the chance to disagree. If I say: "Recursion would be better", I claim it as a universal fact (which the other person is an idiot for not realising). In my opinion, the second option is much more likely in the other person being offended and reacting defensively.
The point about freedom from ego is that 1. your assertion is supposed to be as objective as possible and thus you would be doing yourself a disservice by framing it as mere opinion and 2. the answer, even if in disagreement, is then more likely about the assertion instead of being about you.
Also, in an actual code review, I would have included an example code to prove my assertion, like I did here: dev.to/lexlohr/comment/207o0
If someone is offended, please apologize and send them a link to this post and maybe the issue will resolve itself.
Of course, it should be as objective as possible, but in the end we are (usually) not talking about the laws of physics, so in the end, it is still an opinion. It should be strongly based on facts, which you can and should explain, but in the end it is not an absolute truth (unless it is made into absolute truth by the authority of your role but that is another topic, I guess).
However, this might actually be a very cultural thing. Like in one culture, too much assertiveness is seen as arrogant while in another, you won't be taken seriously otherwise.
Thank you for that insight. Might I inquire which culture you are from and why it sees assertiveness as arrogant?
Sure: Switzerland
Hmm now why it is seen as arrogant, is a hard question :D.
It does cause a lot of misunderstandings with our neighbours in Germany, though :D.
I would guess in the end, assertiveness implies that I know XY better than you or that I know some "absolute" truth which you don't which would then again imply that I am worth more than you which would lead us to arrogance. But ofc that would also strongly depend on the relationship between the two people: Like if one is clearly more experienced than the other, they could be much more assertive than if it is not that clear.
"Better" is always subjective judgement and therefore wrong in criticism. Omit that and only bring on the reasons why you would believe something is arguably better than other choices.
But yes, if you want to strenghen your criticism, you should not disregard other choices, but again explain the reasons why you would choose otherwise, i.e.
So you do not assert a judgement, you assert your reasons for reaching that judgement - and either the recipient will take it to reach the same conclusion or will provide different reasons to reach another conclusions and the discussion continues.
Thanks a lot for writing this down Alex.
It's an important topic and necessary for once growth.
However so often misunderstood and/or misjudged.
I do find especially the logical soundness a difficult one to adhere to.
Given the example, you could argue vue and angular also have large ecosystems.
(I know it's not really the example's point)
How much "detail" is needed to provide such feedback?
Since our knowledge is limited, so is the objectivity of our criticism. That does not mean our arguments are inherently unsound (except if they are), only that they are based on our point of view that we could expand and sharpen by taking more criticism into consideration. It's very much like the scientific process: you never achieve 100% of all possible knowledge and some of the things we currently accept could be proven wrong, but at least it's the closest to the 100% that we can get to at this point.
That being said, about the detail: brevity helps, but don't hesitate to link to resources for further learning.
Abstractions are also great as the means of giving criticism ...
this reminds me of my shlomifishswiki.branchable.com/Enc... page
Good article Alex. It's not easy to write anything since all is critiqued. Keep that sense of humor.
Thank you. I hope you'll find it easier to write not in spite of criticism, but in embracing it.
good one
Extremely underrated quote 👍