September 14th, 2024

Contempt Culture

The article highlights the harmful "contempt culture" in programming, which excludes women and minorities. It calls for inclusivity, self-reflection, and accountability to foster supportive programming communities.

Read original articleLink Icon
Contempt Culture

The article discusses the pervasive "contempt culture" within programming communities, where developers often criticize languages like PHP and Java, leading to a toxic environment that excludes individuals, particularly women, from participating. The author reflects on their own experiences of internalizing this contempt and how it contributed to a sense of elitism and exclusion. They acknowledge that such behavior not only alienates others but also stems from personal insecurities about their own skills and choices. The author emphasizes that the intent behind these criticisms does not mitigate the harm caused, as it fosters an unwelcoming atmosphere for those who may not have had the same opportunities or backgrounds. The piece calls for a shift in attitude, urging developers to celebrate diverse programming narratives and to create inclusive communities rather than perpetuating cycles of mockery and exclusion. The author advocates for self-reflection and accountability, encouraging individuals to challenge contemptuous behavior and to foster a more supportive environment for all programmers.

- Contempt culture in programming leads to exclusion, particularly of women and minority groups.

- The author reflects on their own role in perpetuating this culture and its negative impacts.

- Intent does not excuse harmful behavior; the repercussions of contempt are significant.

- A call to action is made for developers to foster inclusivity and celebrate diverse programming backgrounds.

- Self-reflection and accountability are essential for changing community dynamics in tech.

Link Icon 9 comments
By @tacitusarc - 5 months
I developed in PHP professionally for a while. The language was objectively terrible. But Laravel was great, and so was TLOEP, and some other stuff. I think the reason people would ridicule it so much was due to how many bad libraries, bad practices, and bad information was prevalent within the community. The community may have been welcoming, but much of the time it was the blind leading the blind. My understanding is that it has improved dramatically over the past 10 years.
By @to11mtm - 5 months
> No, really, cut it out. If you need to make fun of a language, do it with your own language, inside your own community.

Agreed. I have nicknames due to some of the diatribes I've gone on regarding C#/.NET but it's what I do and I am always willing to be challenged.

> JavaScript is really good at this, because they’re trying to help people write better code within JavaScript.

Now now we all get to pick on JS

-----

Also, I just really feel the need to throw out the statement, you can still have contempt out of a 'language', even a 'circle' you know about, for extreme derp.

I.e. if it becomes obvious talking heads are just doing what the salespeople Gartner led them down the path towards due to a magic quadrant and are thing both too big and too small for your org, it's OK to have contempt for that too.

By @hi-v-rocknroll - 5 months
Hack is pretty awesome, but it's difficult to build from source and find doc on. (Like a lot of Meta stuff, it's not well abstracted and maintained for external consumption and it's missing pieces and support materials.) In a lot of ways, reminds me of other tools without nice build processes like nix, bazel, klee, perl's cpan, istio, and samurai (ninja build's twin). Downloading binaries from the internet maybe convenient but aren't suitable for all uses, esp. distro packaging.

Tools with nice build processes: golang, (free)nginx, beanstalkd, memcached, erlang, elixir, rust, uv, pipx, and pnpm. RPM packages.

Tools with okay build processes: gradle, gcc, clang/LLVM. cmake. DEB packaging. GNU's stuff is more-or-less consistent, but autotools (automake/autoconf/m4) configure scripts are sequential, slow, and pedantically redundant. Haskell is a pain to build from source, because like go, it requires bootstrapping... which is difficult on a new platform; PSA: please don't bootstrap languages without a maintained, functioning, widely-portable, alternative reference implementation.

Tools that need improvement: openssl's configure flags are poorly documented but they're better than they were, ruby and ruby native extensions. conan. A number of Apache's (mostly Java) projects are prone to enterprise overengineering, XML, excessive but outdated features, too many options, and lack of simplicity and sane defaults. JVM (Java and not) apps can be JITed fast, portably, and run securely, but.. there's a complexity management tax and gotchas overhead. Scala footgunned itself going corporate, but Clojure and Kotlin are decent.

By @slater - 5 months
This has been posted a few times... :D

https://news.ycombinator.com/from?site=aurynn.com

By @paulgerhardt - 5 months
Contempt culture is a form of negative reinforcement which has a clear utility function: it drives behavior change by reducing undesirable actions, which can be critical in certain learning environments or social communities.

I'd agree with the author's point that its blanket use is an anti-strategy but wouldn't go so far as to tell people to "shut up".

By @jmclnx - 5 months
This has been happening long before 2000 and I doubt it will ever end :).

In IT very early days, it started out as lite fun joking, but quickly morphed into what we have now.

Plus it is not only in Tech where this occurs. Just look at the various Automobile Communities to see this on steroids

All this is is a form of "My ** is bigger that yours".

By @throwaway81523 - 5 months
From 2015. And while I shouldn't generalize from one example, I dated a Java programmer once and she treated me like an object.
By @naming_the_user - 5 months
The question you have to ask yourself is whether people are taking the piss out of the good languages.

PHP is just objectively crap in a way that Python or Rust aren't.

_Someone_ has to develop for Windows, though I'm ever so glad that that someone isn't me. Etc.