23 ms·
The Hating Game
- jqm 12y ago"An acutely negative mindset..." Some people may say front end developers are not "programmers" in the strict sense of the word, but I believe much of this still applies... http://edu.mkrecny.com/thoughts/be-nice-to-programmers http://edu.mkrecny.com/thoughts/be-nice-to-programmers
- turb0 12y ago"teaming with polarized opinions" I'm not sure if that's a pun or a typo, but I sincerely appreciated it either way. This article was a good read. Not everyone has the happy circumstance to work with the "latest and greatest" stack.
- bjt 12y agoI was assuming a typo, but good point about the pun.
- bshimmin 12y agoOne problem with front-end development at the moment is that there are such a ridiculously large number of ways of doing things, such an incredible rate of churn, that there is this sense that you have to say something to justify whatever choices you've made. Perhaps because the actual arguments for choosing, say, Webpack over Browserify really aren't very strong (perhaps both are great solutions to the same problem; perhaps neither are perfect solutions and will be superseded in another six months!), there is a tendency to resort to an emotional and dismissive argument, the so-called "smack talk" mentioned in this article. Certainly it's frustrating for any front-end developer who has invested his time in learning Grunt only to find out he should now be using Gulp, or Broccoli, or make(1)...
- nostrademons 12y agoThere's nothing wrong with saying "I chose technology X over technology Y because they are basically the same, they each have small advantages in certain areas but nothing that will materially impact our success, and making any decision is better than making no decision." I remember the last time there was this sort of fragmentation and polarization in the web framework world (2005-2007), I chose Python & Django over Ruby on Rails because, well, I liked it better (that and the RoR community had a certain evangelistic quality to it that turned me off, while Pythonistas are basically like "Yeah, it's a tool. I can build cool stuff with it. Let's move on and solve some problems"). I'll freely admit that it doesn't matter, Ruby is a fine language, and Rails is a fine framework. But they do largely the same thing, I've never once regretted my choice, and I've been able to build some pretty cool things with the energy that wasn't expended getting emotionally involved in language/framework/tool wars.
- mod 12y agoThey're pretty interchangeable in my experience. I've used both in side projects (where the choice is fully mine) and usually the decision comes down to libraries I'm going to use.
- deleted 12y ago[deleted]
- smacktoward 12y ago> There's nothing wrong with saying "I chose technology X over technology Y because they are basically the same, they each have small advantages in certain areas but nothing that will materially impact our success, and making any decision is better than making no decision." Well, except that saying that X and Y are effectively the same is not a great method of getting booked to speak at conferences about X and write articles for sites dedicated to Y. It's the truth, of course, but if your main goals are self-promotion and/or demonstrating how smart you are, it's not going to help you much.
- mod 12y agoI don't see why "they're effectively the same, but I chose X and have been using it for Z years now, and I'm widely considered an expert" would be any different from...I don't know, denying that they're the same. If anything, denying it would be evidence of ignorance, no?
- SomeCallMeTim 12y agoSigh. I had just about decided on using Browserify in my current projects (instead of Require.JS), and now I have to find out there's ANOTHER option... (Though looking at one comparison [1], I guess I'm sticking with Browserify moving forward.) It does feel like information like this is siloed: Everyone talks about their own favorite solution, and few actually make intelligent comparisons. I didn't know about gulp until after I'd already set up grunt, for instance, and I don't really want to tell the team "now we're using gulp" after having selected grunt only two months ago. I hadn't even heard of Broccoli until just now, either. I obviously need a better JavaScript news feed. That said, I don't feel a need to slam gulp or say grunt is great. But something that the article misses is that the kind of loud, rude argument that it describes is a basic, well-known psychological reaction to insecurity: The less self-confidence you have, the more you feel the need to be loud about your opinions. And I think a lot of JavaScript developers are insecure, based on the evidence. [1] http://mattdesl.svbtle.com/browserify-vs-webpack http://mattdesl.svbtle.com/browserify-vs-webpack [2] https://en.wikipedia.org/wiki/Psychological_projection https://en.wikipedia.org/wiki/Psychological_projection
- TheOtherHobbes 12y agoI don't think it's insecurity. You get community status and improved job offers by creating and managing a high-profile project. So the field is a firehose of high-profile projects, whether or not they're needed. It's possible a very large and complex generalisation of Conway's Law, between groups that barely communicate: http://en.wikipedia.org/wiki/Conway%27s_law http://en.wikipedia.org/wiki/Conway%27s_law Then you get aggressive opinionation about the projects, but really that's a secondary phenomenon. One problem is there are no objective metrics for framework or language quality. I don't think anyone knows if objective metrics are even possible, never mind how they would work. So you pretty much just make a choice that works for you and stay with it until something obviously much better comes along. And if it doesn't - if it's obviously much different, but not so obviously better - you can still be getting useful work done. The seductive promise is that Framework X will make the job take half as long and produce half the bugs. I doubt that's ever true in practice, for general values of X, especially when you consider learning/retooling time.
- jkoudys 12y agoYou've basically described 99% of the PHP development community there too. When there are so many ways to do something, it fosters the worst kinds of pedants, who don't seem to understand that "using exactly the same syntax/libs/style that I use" isn't the same thing as writing good code. I've seen people over on reddit's /r/shittprogramming make posts about how someone used a 2-space indent instead of a 4-space indent, and _that_ got upvotes.
- trhway 12y ago> I've seen people over on reddit's /r/shittprogramming make posts about how someone used a 2-space indent instead of a 4-space indent, and _that_ got upvotes. absolutely not surprising given that there is even a pretty popular language with indent base syntax out there.
- collyw 12y agoI think this applies all over, not just to PHP. You read plenty of comments about always "write tests first" or 100% test coverage, ignoring the fact that many businesses don't have the resources, and just want something quickly. Even if it is a bit buggy, the something that works for 98% of the cases today is better than something that works for 100% of cases in two months time. I stared filling in an application form the other day: do you prefer A) I prefer "standard" solutions because they work and are easier to implement and maintain. B) I prefer to create from scratch because it fits better the needs and offers better performance. Without a context this question is entirely pointless to me. And I will be judged on it? There people obviously have their ideals and I am going to be judged on them. There is no "it depends" in the answers.
- jkoudys 12y agoYikes, that's bizarre. I don't even think the conclusions they draw are even correct: there are many solutions I build from scratch because they're easier to maintain. e.g. this morning I needed to fetch data from 3 APIs: google analytics, twitter, and soundcloud. I could have downloaded the PHP lib they bundled for each of them separately, read their docs, and pulled my data from those. Instead, I just looked up their API docs, found the endpoints I needed and fetched what I needed with libcurl. I think it's easier to implement and maintain 3 simple calls to curl than it is 3 different libraries. Conversely, there are many 'standard' solutions that perform quite well, e.g. underscore.js has many methods, such as its .each(), which often outperform their builtin counterpart. Questions like that are like being asked if you prefer: A) A backhoe, because it gets the job done faster. B) A shovel, because you have finer control without being told what it is that you're actually digging.
- ineedtosleep 12y ago> [...] there is this sense that you have to say something to justify whatever choices you've made. Whenever I somehow get time to work on a new "weekend project", I go through that every time. I know better and should stick to the rivers and lakes that I'm used to, but when working with (often) sub-par code in my day job, I always have the itch of trying new shiny things. After I get that out of my system, I often keep my own "standard" stack and force myself to just say "No" to the new tools that are not fit for the project. At that point, I've probably wasted the entire weekend playing around with tutorials and fiddles to see that going through the learning curve isn't worth the time.
- judk 12y agoThe only argument you need to justify your choice is the results you got from it. Now if you have no results, you can use petty argumentation instead.
- ummonkwatz 12y agoI agree. FE technologies are in and out of fashion faster than anything else, it seems. Dig in and hate away and then maybe your knowledge will get a slightly longer ROI.
- serve_yay 12y agoI agree that this sort of thing is bad, but that notion is starting to reach saturation level. At least for the things I read on the web. Boorish teammates, hostile speakers, misbehavior at conferences, people dismissing technical ideas for dumb non-technical reasons, etc. are indeed all bad things. Noted. Also, maybe part of the problem is thinking/assuming that a bunch of front-end devs are going to be "your people". Yeeuch. It's a job, some of those people you will like and get along with, most of them less so.
- acomjean 12y agoThis is one reason despite its oddities, I like php. Maybe because it because as a php programmers we're used to being the butt end of jokes, maybe because we think the language is eventually going to end up a backend serving json... but the people I've met at php conferences have been nice, humble and interesting. More talk about projects than tech. Haven't met a lot of dismissive people or people badmouthing other languages.
- claar 12y agoThat's funny; for me, it's the one annoyance I have with PHP. I love PHP; there's some really neat modern OO methodology and cutting-edge ideas and best-practices that I'd love to share on HN, for example. But with the PHP-haters, the downsides of sharing outweigh the benefits. So like the OP article says, quality PHP developers just put their heads down and get back to work. Let Laracasts do the best-practices evangelism and move on.
- jkoudys 12y agoIf you're looking to find some rude, inappropriately hostile PHP pedants, there are plenty of them on IRC. A language that has so many ways to do one thing attracts a lot of people who believe their way of doing that thing is correct and anyone who disagrees is an idiot.
- discreteevent 12y agoFor a few years there I felt good (on a very superficial level) when I had to use java for some project because it was so uncool. As soon as an orthodoxy sets up I just have a default reaction. Its immature I'm sure. But you have to remember those teenage years and how absolute and stifling that orthodoxy of what's in and what's out could be. At this stage though Java is getting so old that it seems no longer a threat to people so they are backing off (from the superficial, social point of view. There are still technical pros and cons to be debated)
- Puts 12y agoThis industry has become too anxious. It's like the new standard is when ever someone makes an post like "10 books you should read" and the first comment here on HN is "Why the hell are you telling me what to read?". When I express my opinions I don't have to account for anyone. My opinions are my opinions and I'm going to be proud of them. And personally I want everybody else to feel the same. Be opinionated and be proud!
- otterley 12y agoIt is a subtly different - and more persuasive - thing to say "Here are 10 books I liked, and here's why" than it is to say "Here's 10 books you should read." Imperative statements tend to evoke more visceral reactions than indicative ones.
- larrys 12y ago"Imperative statements tend to evoke more visceral reactions than indicative ones." Also as a general rule they will get more linkbaity attention.
- meric 12y agoWhen I use "you" in a sentence, people compare who they are to the "you" I've described, by trying to find differences. When I use "I" in a sentence, people compare who they are to me, by trying to find similarities. That's why the former is more persuasive.
- meric 12y agoLatter.
- tjradcliffe 12y agoIt's OK to be opinionated (I am) and it's OK to be proud of one's opinions (ditto) but the issue comes when we go into promotion mode, claiming everyone must share our opinions or be an idiot (I feel this way about some things, not others) and insisting that everyone needs to learn about the background for our opinions (likewise). In the particular situation when platforms are multiplying and the years behind us are littered with the corpses of failed initiatives that promised a world enough and time, the call to learn The One Best Technology becomes stale and annoying. It looks like an invitation to waste our time rather than becoming more expert with the technology we've already invested a lot of time in, and are just hoping we can make that time worthwhile before it becomes obsolete.
- ChuckMcM 12y agoIf this is a 'thing' it explains a lot. I tried to engage some front end developers on their stack and got the whole smack talk thing thrown back at me. I was trying to figure out if it was something I said or what.
- sheensleeves 12y agoReminds me of a "too long; did read" psychoanalysis link: http://rint.rechten.rug.nl/rth/dennen/a-panal.htm http://rint.rechten.rug.nl/rth/dennen/a-panal.htm Freud had it that sublimated aggression provides energy. Like all things w/ an indisputable theorist, I'm not sure if he's on the right page. However if it was true, it would explain the value in developer holy wars. Quote from the above link --> The sublimated libido, according to Freud, contributes to the formation and maintenance of permanent object relations and to the 'molding of psychic structures'; once the psychic structures are formed, the energy is at the disposal of the ego and the superego. Similarly, aggressive energy is 'neutralized' (Hartmann, 1952) and thus can be transferred from the id to the ego. According to Hartmann, Kris & Lowenstein, "the capacity to neutralize large quantities of aggression may constitute one of the criteria of ego strength".
- notacoward 12y agoThe bad news is that what the author's seeing is only the tip of the Hating Game iceberg. Over here on the back end there has always been a lot of bonding through hate, and it reached toxic levels long ago. I've been on projects that were the target of unjustified hate from people who had never even installed or run it, or had any idea how it worked or was different from any alternative, just because that was The Meme. I've probably slung my share of snark myself. Mention Lustre to a Ceph fan, MongoDB to a Riak fan, Solaris to a Linux fan (or vice versa), and watch the sewer floodgates open. It's long since time we developers in all specialties tried to turn the corner on this issue.
- steele 12y agono vi v. emacs?
- DiabloD3 12y agoVi vs emacs isn't really comparable. Emacs is a lisp VM with a built in full scale editor. I'm not saying emacs is wrong, but they are just completely different ways of building editors.
- btilly 12y agoActually they are comparable. Someone starting out in programming needs an editor, and they are two of the options you have to choose between. Simply saying that they are not comparable doesn't help that person decide which environment to use. I should also point out that in theory vimsh is just as powerful a programming language as Elisp. People don't use them the same way, but you theoretically can.
- wtbob 12y ago> I should also point out that in theory vimsh is just as powerful a programming language as Elisp. People don't use them the same way, but you theoretically can. That's a bit of a Turing tarpit, though. A one-instruction computer can compute any function, too, but I wouldn't want to use it. Likewise, vimsh isn't awful, but it's not a general-purpose language (elisp has a lot of warts at this point, but it is general-purpose, even if it wouldn't be my first choice for anything but extending emacs) and it's Yet Another Language; at elisp is a Lisp (which is a virtue).
- ExpiredLink 12y agoBTW, the page doesn't render properly in my browser (current FF).
- saidajigumi 12y agoFWIW, looks fine in FF 36.0.1 here, same as in Chrome 41. Maybe you have an extension that's causing issues?
- ExpiredLink 12y agoHere is a picture that shows the problem: http://i.imgur.com/iunhbuR.jpg http://i.imgur.com/iunhbuR.jpg
- saidajigumi 12y agoBingo! The dual sidebars are independently scrollable (via overflow-y: auto on the relevant containers). On recent OS X versions with the vanishing scrollbars, this looks great. But on other platforms (e.g. Windows, such as you're using), boom!
- anigbrowl 12y agoThis is a general problem in modern communication, thanks in large part to the accelerating factor of the internet. It's evolved to the point that making observations about the weaknesses of an overly adversarial/confrontational position is dismissed as a 'tone argument,' along with negative insinuations about the proponent's motives. It seems as if many people prefer to be in a social echo chamber and express violent rejection of anything that is considered foreign to that environment. I wouldn't be surprised if there is some obvious model for this in the world of cell biology.
- mpdehaan2 12y agoFrom running a large OSS project, the general passive-aggressive (or just plain aggressive) complaint ratio to the amount of "thanks, this is awesome" ratio can be quite overwhelming and painful at times. Usually. I've basically resolved to not complain about anything given to me for free, ever, at least on twitter, because I've felt so much of it. "Why I personally prefer X vs Y" is ok. For twitter, it can be anything from a software project to some customer service guy somewhere, but it's important to remember that real people are out there. That guy's boss might be a jerk to person XYZ about what you said about his software on twitter, even if you weren't particularly upset. And you definitely didn't make the author feel very good either. And who are you to complain when you couldn't build it yourself, and are putting in much less energy? If you have a problem with free OSS bits, help fix it, or use something else. If you've paid for something, this is what support departments and customer service groups are before too. ( This blog is good reading on the subject too - http://powazek.com/posts/3368 http://powazek.com/posts/3368 )
- dreamweapon 12y agoI got the impression he was hiding his own fear of inadequacy behind a wall of disapproval and smack talk. I know this method. I used to use it myself, when I felt for sure I’d be fired from the team as soon as they realized I’d never used Handlebars. Fascinating. In that this episode represents an only slightly exaggerated instance of a pattern of such profoundly dysfunctional and self-blocking behavior in the community that has become so widely entrenched that it is beyond epidemic proportions; it has practically become the new norm.
- athesyn 12y agoOr maybe he was being exceedingly dismissive because it's funny? I don't understand the need to make all these assumptions.
- pnathan 12y agoThere's certainly a Thing where you tribalise through aggression. There's also a Thing where you signal your knowledge about crappy solutions by peeing on the crap; this informs others that you have enough knowledge to Not Use Crap. (or, alternatively, showcase yourself as an elitist jackass. ymmv).
- theVirginian 12y agoThis sort of negativity is not just unhealthy, it can make it really difficult for beginners to figure out where to start and realize that it actually is okay to start pretty much anywhere. When I was learning how to code, every single day I would come across some new package or framework that was described as being revolutionary and awesome by the people who supported it while other similar stuff that I had been previously interested in was just basically shit on unequivocally. I don't personally know of any other field that does this sort of thing and it made it extremely difficult and negative before I realized how many people in tech are just full of hot air. Hacker news is not immune from this behavior either. Nearly every day I read an article and I think "wow, that might be really cool if I ever have time for it" but then I read the comments section and 90% of the comments go out of the way to disagree with EVERYTHING that the author said. It can be really off-putting to be honest.
- codyb 12y agoThat's true. It's very easy to get caught up in that echo chamber even as an experienced developer.
- Red_Tarsius 12y agoI have a hypothesis, but it's VERY silly. Programming, like many tasks created in the 20th century, is not nearly as physically demanding as traditional jobs. People who work behind a desk 24/7 feel emasculated and try to compensate by showing off their expertise through aggression. It's a game of dominance and frustration. Of course, this is totally unproven.
- JustSomeNobody 12y agoClose. When we program it's from our heads. If anyone questions why we do something, it's as though they are questioning our intelligence, so the natural (for some people) reaction is to be defensive.
- AdeptusAquinas 12y agoTo elaborate with an example: when you pick a programming language or framework you presumably have other options which you don't take for whatever reason. The reasons for picking something over others don't need to be strong: its what I use at work, its what a friend uses are probably a lot more common than 'this programming paradigm is better'. When someone else comes along and says you made the wrong choice, or even if they stop at just championing their own, different choice and therefore 'implying' you are wrong, its easy for individuals who might not have their self-awareness guards up to respond as if they were being personally attacked. Even if your original choice isn't something you, all being equal, don't really care that much about.
- deleted 12y ago[deleted]
- deleted 12y ago[deleted]
- ajoy39 12y agoI'm actually largely experiencing this issue right now trying to pick a front end framework for an FOSS project. I know I'm using Rails on the backend because that's what I'm most comfortable in, but I can't decide between Angular.js and EmberJS and 99% of the articles comparing the two just sound attack-ey and biased and I don't want to make a decision based on someone else's preconceived biases. If anybody knows a good compare/contrast between Angular and Ember for use with Rails that is, mostly, unbiased and doesn't resort to "this framework is better because holy shit did you see how the other one solved this same problem in a slightly different but horrifically terrible way?" I would greatly appreciate it.
- myefforts 12y agoWhy not try a quick prototype with both? FWIW Rails + Ember seems a fairly common choice.
- woah 12y agoGonna hate here, but I've had to work with angular and it was unpleasant. The api is strange and the docs openly recommend hacking around it. Lmk if you want me to find an example.
- mgkimsal 12y agoI'd like to see some examples. Not specifically because I doubt you, but because I don't. That was my early impression of Angular, but I can't remember anything specific, just an overall impression.
- noir_lord 12y agoDepending on your requirements don't rule out other frameworks. I use Knockout (which is supported, just had a release, picked up some new core devs and added component support) extensively and I like it a great deal. It's not as large as either Angular or Ember but it's worth a look. Steve Sanderson has an awesome video on it [1] which is worth a watch even if you aren't interested in Knockout, fella clearly loves and is passionate about what he does. [1] http://blog.stevensanderson.com/2014/06/11/architecting-large-single-page-applications-with-knockout-js/ http://blog.stevensanderson.com/2014/06/11/architecting-larg...
- runewell 12y agoGreat article, I myself have been both on the sending and receiving end of such discourse. I like OSX and love Node.js which can become a source of confrontation. Talk about node.js in the Reddit programming sub and prepare for the backlash :)
- Animats 12y agoThere's a good reason for this - pick an unpopular toolchain and you can become unemployable.
- deleted 12y ago[deleted]
- mfisher87 12y agoI work in an office with a mix of highly professional, low-ego workers and highly dismissive, high-ego workers. No history of freelancing there that I know of. One group is multiples easier to work with... guess which. If I were to try and draw a line, I'd be more general and say that it depends on culture during early career. You can learn one of two lessons: That aggression is required and accepted way to win an argument, or that aggression is an unacceptable way to reach the correct solution. Both lessons are true in certain contexts, and depending on which goal is valued more in your culture (winning argument or correct solution), you'll learn one or both of these two lessons. If you truly believe that you will find the most correct solution alone, without the help of your team, you're very likely to learn lesson #1 and behave that way. That type of person, though, is destined to make a huge mistake and learn the hard way how to collaborate.
- deleted 12y ago[deleted]
- me1010 12y agoI agree... almost. You are dismissing the reality that some people are actually smarter than others. There are some people who really do have a real vision of a 'best' solution. However, it is true that collaboration is the requirement for a working relationship and thus a product out of that working relationship... But, the collaborative effort and resultant end product is always, by necessity, a non-ideal solution for at least a portion of the end-users. Keeping this in mind, it can be understood that "the best product doesn't win" -- rather, the most popular and most agreed upon solution or product is what wins. In summary -- I agree that negativity and/or aggressiveness in pursuit of a solution leads to a unworkable /collaborative/ environment... But I disagree that the collaborative environment produces the best product or solution to a problem [programming or general] Warning! I am not one of the smart ones. I tend to sit in a corner and doodle like the article writer. Perhaps, if the collaborative environment was less collaborative and more constructive, I would participate more... see Office Space for better answer.
- mgkimsal 12y agoI played this game a bit in the late 90s and early 2000s, and ... it's just so tiring. And largely pointless. So many good points in the comments here, they've triggered so many more thoughts. I talk about this topic on and off at user groups now and then - informally, not full on presentations, but usually get thanked by someone afterwards. There are so many tool choices that it's really really hard to even trust anyone's 'review' of the tool landscape, even in a particular vertical niche. And so many people that are writing the tools (and promoting them) are, in fact, primarily tool authors, not necessarily having to face the sort of 'in the trenches' problems that most devs have to deal with (both technical and political). Denouncing tech XYZ because you're using ABC is often, I've found, done because the person wants some external feedback that they made the 'right' decision. Public (on forums or f2f) signaling of the choice you made, with some 'reason', lets people support you and your choice. There's certainly more to it, but that seems to be the root motivation I've seen in a lot of people in my locality who behave this way in public. I've told the story about being at a ColdFusion developer conference, helping set up chairs the night before. One of the speakers starting ragging on PHP. Of all the people to be picking on an 'easy target' like PHP, I would have thought CF devs would be more sensitive to that sort of trash talk, likely having been on the receiving end more often than not. Not this guy - we were all treated to a 5 minute rant about how shitty PHP was is, PHP devs need training wheels to use the internet, etc. Unbelievable, but right there in front of me. When I did it, I was trying to make sure my reasons for my choices were 'correct' (tech X was faster to write, faster to execute, cheaper, etc). After a few more years around the block, it became apparent that there are generally so many more factors at play that are not always readily apparent, and often, the best choice is the one someone already knows, because estimating learning time for 'newtechX' is essentially impossible (doubly so for stuff that's not even out of beta yet). Argh... maybe we can get Rachel to come speak at one of our local dev groups - this message needs to be driven home more, I think.
- turbostyler 12y agoI find it sexist that the author chose to use the words "this guy" and "don't be him". Would she be writing this same article if the presenter at the conference were a woman?
- cciivv 12y agowas that a drawing of the presenter? or just following the statistical prevalence of male programmers? was his male-ness really the focus of the picture, or was the artist just using the proper pronouns for the character? was his masculinity being presented as the cause for his behavior? It does suck that a man is the default for this, but IMO it's a projection of toxic masculinity (i.e. Patriarchy).
- jsmeaton 12y agoThat was such a small part of the article I don't think it's even worth calling out. Sibling comment mentions the relevancy to the actual graphic, that's probably all it is. Author also called out her own negativity previously. This isn't "men shouldn't be so negative". It's "we as frontend developers shouldn't be so negative". Context.
- makomk 12y agoI find it sexist that you're complaining about her using the words "this guy" and "don't be him". Would you be writing the same comment if the blogger was a man? (Not even joking. There are far more gendered comments by men in this HN discussion that didn't get this kind of response.)
- turbostyler 12y agoWhat is satire?
- prawn 12y agoI don't see why not.
- w0rmwood 12y agoWe do tend to get very tribal/ideological. This likely happens in all fields, but that doesn't excuse the behavior. Getting tunnel vision and only thinking a specific way of development/design is right is problematic. There's a difference between this and just general "best practices". The latter are positive and suggestive whereas the former tends to be very absolute.
- lorddoig 12y agoReligion is borne out of not knowing what on Earth is the right thing to do, and hence having to adopt a certain approach instead of being convinced by the merits of one over the others: it's policymaking in the absence of facts. Do something for long enough and it becomes a part of who you are (your so-called "worldview"), at which point an attack on the thing is actually an attack on the ego, and we'll naturally and automatically defend it with the same dirty emotional bullshit trickery we use to gloss over all our insecurities. The toxicity of this is not limited to front-end development, of course -- this is, in fact, the very framework we base modern democracy on. It's just lots of completely unqualified people (myself included) making a great deal of noise based on shitty information, then - once it inevitably goes tits up - we get together and point the finger at some scapegoat to absolve ourselves of liability. We like to think that as a society we've developed from the primitive peoples of yore, but really all that's happened is that communication tech and industrialism has allowed us to mass produce and saturate our world with the achievements of a very, very select few and thereby create the illusion of universal progress. This entirely baseless pretence is giving unjust confidence to the (figuratively) blind, who are now leading us into a society of completely misguided moral absolutes: one in which local government officials will parent your kids for you with legislation, physicists will be lynchmobbed for the wrong choice of shirt, and Github will outlaw the use of the word 'meritocracy' for fear of intimidating the weak. So yes, these issues are very important, but HTML and CSS hate games are the least of our worries.
- blhack 12y agoHmm, while I understand this (I've even written about it before!) I wonder about this specific example. Maybe another example would be better (for instance: people who hate on PHP). I've seen plenty of people present things as literally the worst, but they're doing so in a very tongue in cheek way. For instance: javascript is totally stupid and does totally stupid things stupidly (unlike go, which is awesome, and doesn't do stupid things) - The Presentation (given by a huge javascript fan who literally writes javascript all day every single day).
- yarou 12y agoI actually disagree with the entire premise of this article, and the sentiment of that premise. This seems to be a thinly veiled attempt at censoring free speech; "you hurt my feelings, therefore you are not allowed to talk." Frankly, I'd much rather have someone like Linus chew me out, because at least it's an honest and clear criticism. The tech industry prides itself on being an open and transparent environment, and I don't think that should change because someone's feelings got hurt.
- jschwartzi 12y agoLinus's butt-chewings are generally specific to one aspect of someone's code. He doesn't generally say "Framework X sucks because Y, let's all talk about how much it sucks for several hours instead of being productive." I suspect that in many cases he gets frustrated when people repeatedly do something he's asked them not to do because he has to review their patches over and over again.
- mvc 12y ago> He doesn't generally say "Framework X sucks because Y Not sure how relevant frameworks are to the world of kernels but I'd imagine he'd chew you out if you tried to get any C++ into the kernel.
- deleted 12y ago[deleted]
- imhelpingu 12y agoShe touches on this in the comments there, but I see this becoming especially problematic in exclusionary hiring practices. You can go to an interview as an expert in a given language, but if you don't know what framework a company just happens to use, you'll lose the job and they might give it to a novice who does. Also, I would be curious to know which conference she is referring to. I realize this is a pandemic problem, but if she would name some names it might get the ball rolling on turning things around.
- spencer414 12y agoI appreciate you highlighting a sentiment that I too have felt at many meetups and in the JS community. It's toxic and unproductive.
- j_baker 12y agoI don't think there's anything wrong with being negative per se. I work at Google, and can think of a couple of developers who complain about others' products a lot. And they can usually get away with it, and in fact even be popular simply because they're helpfully negative. What's wrong is when someone is unhelpfully negative. This is the person who just complains no matter what happens.
- spain 12y agoThis article strikes so many right notes for me and I can easily come up with even more examples of it in action, like systemd. I'm sure there exist valid criticisms but there's also a lot of people who would hate it just to look smug or feel like they're smarter to reject something so popular[0]. "If there's a lot of people who like something, and I find a reason to detest that thing, that means I know something they don't. Go me. Everyone will think I'm cool and respect me. Bring in the upvotes." I also used to be the guy to swear by Emacs and C, bitch about how awful Java and C++ are with all the crappy IDEs (despite never having tried them out, just reading articles and comments bashing them). Eventually I matured a little and tried both out, then tried a few IDEs like NetBeans, QtCreator, and PyCharm, and I actually prefer them now. If I had never broken out of the "hating circle" I would only be able to write programs in Lisp and C. Some of you may think that's fine, even preferable. Personally in retrospect I'm happy to have widened my horizons. [0] This is from my own experience, I used to do that.
- BasDirks 12y ago"When we monger hate, we inspire these guys. These guys are all kinds of trouble, even if they aren't outright malicious. We can spread spread harm through them." You are doing the we vs. them thing, not just in this sentence, but throughout the text. It's never the right approach. There's some us and some them in all of us. I see this often in writing on social issues in tech; a strong tendency to categorize and polarize, even when intentions are good. Regardless, I find the article well written and on point.
- Cthulhu_ 12y agoWhat the author describes is just one step into becoming a godlike developer. I can't find a link / attribution right now, but it starts off as new, then you get skills and start to feel smug and good about yourself - which is in a lot of cases combined with a hating on other developers or packages. The next two steps are disillusionment - taking a fall, realizing you're still a very new developer, etc, and only from there on out do you start to develop into a more exemplary Good Developer. Or not, everyone's different.
- snarfy 12y agoWe would all do better to lead by example. Instead of bashing technology X, show everyone how good technology Y is. There is no need to be negative about anything. There is enough negativity in the world to go around.
- hownottowrite 12y agoIn my experience, the continually evolving art of programming lends itself to cognitive dissonance. One has a history of doing something in manner X and yet manner Y holds clear promise. Two thoughts collide. In some individuals is expressed as a rejection of Y leading to entrenchment in X. The byproduct is irritation or even rage.
- collyw 12y agoI see the opposite. Relational Databases are a perfectly good tool and will fit 90% of the applications being developed. But NoSQL is shiny, and we have to try the new way (despite the fact the new way was what people were doing before relational databases came along). Likewise with back end languages. We have plenty of good mature solutions on the back end, but people want to use Nodejs. Fine if your use case is many concurrent connections, but otherwise why not use something more "traditional" (mature, tested, understood).