6 ms·
Can we stop the bashing of bashing please? Bashing serves a useful function. Not all bashing is productive, but just focusing on positive aspects of every lan
by djcapelis 17y ago
Can we stop the bashing of bashing please?
Bashing serves a useful function. Not all bashing is productive, but just focusing on positive aspects of every language without any critical thought doesn't work. I would agree if you wanted to change your call for more balance and less comments that contain just bashing.
Critical thought and critical analysis requires criticism, it isn't pretty, but that's how things work sometimes.
As a reference, this is some of the more well-written criticism I've seen on languages and its existence makes the Internet a better place: http://yosefk.com/c++fqa/ http://yosefk.com/c++fqa/ (And I say this being rather fond of C++ actually. I disagree with a few of the points made, but I can't deny this is a very nicely laid out critique that bashes C++ in such a comprehensive way it's nothing short of an excellent read.)
- jacquesm 17y agoThere is constructive criticism and there is 'bashing', which I mean to read as being one step shy of attacking those people that use something out of choice or need. The parallel with religion is a strong one: If you criticize something that's great. If you start to use your criticism to increase your own stature or if you use it to demean others ('real programmers don't use x') then you've gone from criticism to bashing and it serves no purpose. Just like the catholics and the protestants in Ireland would go out of their way to try to force the others to 'live like they do'. Just because it's different does not automatically make it wrong. Some people drive Yugos, others drive BMWs or Audis. Arguably they all have their shortcomings and advantages, the market place decides who is 'best' for a particular application and budget. Constructive criticism is not telling someone the stuff they use sucks because yours is better, it is telling someone what good things you can do with your toolset. Then you can objectively compare the two and you'll most likely end up somewhere in the middle. The typical basher has already made up his mind beforehand, and will not move a micron to middle ground. As soon as you start to make arguments like everybody should use X because everybody knows Y sucks (with or without specifics) it is no longer constructive. If your stuff is hot shit then do something awesome with it and tell me about it. That's a thousand times more powerful and productive as an argument than any kind of explicit or implied criticism will ever be accompanied by a 'drop what you're using' advice, especially if it comes packaged in the typical internet rant.
- djcapelis 17y agoPlease tell me exactly where the line is between bashing and criticism and then get the entire world to agree with it. I agree with you that there's a lot of bad criticism out there, but you draw a distinction where none exists and overall your critique of criticism was did nothing to address fundamental issues. pg's disagreement hierarchy posted on here every couple of seconds is a much more thorough call towards constructive criticism and actually provides workable and useful advice. Here you're just going off and saying "wouldn't it be nice if we didn't have evil X in the world?" Sure, it would be nice if it was more civil. Did you want to actually make any real suggestions on how to bring that about? Going off and criticizing all criticism and rambling on about how we should all just focus on the positive attributes of all the languages we discuss is just downright lazy and populist.
- jacquesm 17y ago> Please tell me exactly where the line is between bashing and criticism and then get the entire world to agree with it. That's a rather high standard don't you think ? If the people on HN on average would agree with it that would be good enough for me. > I agree with you that there's a lot of bad criticism out there, That's good :) > but you draw a distinction where none exists and overall your critique of criticism was remarkably poorly written, not well thought out and did nothing to address fundamental issues. I apologize for my lack of writing skills and apparent deficiencies in my thinking faculties, since you leave out specifics I'll have to assume that you meant all of it. Let me try again: There are lots of languages out there, most of them were created out of some kind of need, they fulfilled a purpose or they wouldn't have existed. To blindly argue that one language is better than another out of either a personal attachment to some language or a perceived shortcoming in the intellect of those using it is counterproductive. Languages are like individuals, they come to life, have a period when they're in their prime and they will fade to obscurity, their best features will continue to live on in the DNA of those that follow it. If we concentrate on what's good in languages and we try to use that knowledge to improve our understanding and our toolsets then we are using criticism and comparison in a positive way. To simply tear down the tools 'the other guy/gal' is using is counterproductive, it will not change minds and in fact will leave all the participants with a bad taste. I think - after reading your comment, maybe mistakenly so - that we can do a lot better than that. > pg's disagreement hierarchy posted on here every couple of seconds is a much more thorough call towards constructive criticism and actually provides workable and useful advice. Here you're just going off and saying "wouldn't it be nice if we didn't have evil X in the world?" I don't know where you keep getting the world from I didn't bring that in, but, if you want to interpret it that way, don't you think it would be nicer if we didn't have evil X in the world? And given the option to change would you hold on to evil X even after a suggestion was made that could change the world for the better ? I'm not in PGs league, either as a programmer, a writer or a businessman, and I don't profess to be, but I'm allowed to speak my mind. > Sure, it would be nice if it was more civil. That's good, we agree again. > Did you want to actually make any real suggestions on how to bring that about? Once again my apologies if my writing isn't perfect, this is not my first language, I try my best. The suggestion was to analyze those languages that we apparently despise and to find their 'good bits' so we can implement those in other languages. This will help to remove the barriers between those languages and will make switching from one to another easier than it is today. > Going off and criticizing all criticism and rambling on about how we should all just focus on the positive attributes of all the languages we discuss is just downright lazy and populist. I thank you for your constructive criticism and hope that I've been able to address your points.
- axod 17y agoThe point is, it doesn't really matter. Can you imagine a forum on poetry forever debating which is the better language french/german/english?
- weavejester 17y agoNatural languages and programming languages are two very different things. The choice of natural language usually doesn't make a huge difference to the length and quality of a sentence. Conversely, the choice of programming language can make a very big difference.
- axod 17y agoI disagree. Most natural languages have bugs. These bugs often provide the basis of jokes, but they're bugs. Ambiguity, verbosity, tongue twistiness, etc in natural language would certainly cause you to steer clear of certain words, but we don't feel the need to reinvent the English language every year, or keep switching to other languages that seem to have less bugs.
- weavejester 17y agoWhat do "bugs" have anything to do with it? Natural languages take a long time to learn, and do not differ considerably in expressiveness or conciseness. Programming languages take a relatively short time to learn, and there are large and significant differences in expressiveness and conciseness. For instance, contrast: sum = foldl (+) And: public static int sum(Iterable<int> numbers) { int total = 0; for (int n : numbers) total += n; return n; } Rarely do you find such pronounced difference in expressiveness between natural languages.
- jacquesm 17y agoNatural languages solve these things with 'jargons', which are effectively DSLs. I isn't rare at all to come across words in one language that require a full sentence in another. Fingerspitzengefuehl in German is a nice example. It requires a full page of explanation: http://en.wikipedia.org/wiki/Fingerspitzengef%C3%BChl http://en.wikipedia.org/wiki/Fingerspitzengef%C3%BChl And it still misses some nuance of the German that I can't quite 'place my finger on'.