The Soft Bigotry of Language Expectations
Posted by StartAutomating@reddit | programming | View on Reddit | 11 comments
I wrote an article about how people's expectations around what languages can do, and the way they communicate them to others, hurt people's path to learning programming and limit our understanding of new technologies and languages.
programming-ModTeam@reddit
This post was removed for being off topic for r/programming.
r/programming is not a place to share content with a primary focus on politics, personal drama, social gossip, or such.
StartAutomating@reddit (OP)
I believe this to be a very ironic response, given that the nature of the article was about how programming as a discipline should be more inclusive of communication differences.
If you mean to keep things purely technical, please clarify a bit more what that means to you. Shall I only share deeply detailed explanations? Of which programming languages? Of which technologies? Please clarify.
This article was not political and only shared personal stories as anecdotes of common experiences within the industry. I also was not gossiping. These experiences have driven many from the industry, and I very clearly avoided naming names.
I apologize if the article has caused any complaints or offense and hopefully urge you to reconsider.
somebodddy@reddit
Okay, but can we agree the developer who wrote Windows 11's Start menu in React Native deserves to be judged harshly?
StartAutomating@reddit (OP)
We can make the joke, but we haven't walked a mile in their shoes. I don't know who did that particular change, or all of the factors that led into it. I do know that these things are heavily debated, and that every time I have felt the urge to rush to judgement on a particular feature / decision I've found a complicated story beneath a simple slogan.
For an older example: I used to have a standing joke that if I ever met the person who wrote the file copy progress bar, I'd have to yell at them. Of course, eventually, I did meet that person. And I explained the longstanding promise and basically pleaded with them for a reason or two to not be angry.
And I got the reason that the copy progress bar is slow: Each copy operation has to check each shell namespace Windows supports, so that cross namespace copy can work. Choosing calm in that moment led to a greater understanding of the workings of windows.
I personally would love to have a similar conversation with the start menu team. But I don't want to judge them before I know them. Hopefully, having heard my reasoning here, you might now feel the same
Programmers are people, and I humbly believe we should treat people with kindness and respect.
lelanthran@reddit
I would like to avoid Python/PHP/JS/Ruby/etc.
In my mind, getting type errors only at runtime is a major source of frustration, and hardly anyone is adding in sufficient type hints because they are all optional and the language was never designed to expose the types anyway so it becomes clunky quite fast.
I fell, in 2026, any language that is going to be used in production needs to enforce a build step, with linting, etc.
StartAutomating@reddit (OP)
I feel like LINT tools and static analysis certainly help. I know for certain you can have static analysis tools of dynamic languages (because I've written a fair number of them).
I deeply appreciate you saying "I would like to avoid" (instead of "people should avoid"). We're all welcome to our opinions and our reasoning; we're rarely in a position to dictate practices to other people.
In the rare cases when we are in the position of dictating practices, I find it's almost always better to explain reasoning than say "thou shalt do this". The former tends to teach and help people grow and treats others as equals. The latter tends to feel condescending, and boils down to "Why? Because I said so."
One last (but not least) point:
We don't always get to choose the languages we need to work with. JavaScript, for example, is almost unavoidable if you're dealing with anything web related, since it is the only scripting language natively supported in the browser. More often than not, we're dealing with multiple projects in multiple languages and having to bridge the gaps and understand enough to work thru the problem spaces. At no point does dunking on languages help this process.
ClownPFart@reddit
So programming languages are somehow above criticism? Isn't that "its just a tool therefore you can't criticize it for some reason" argument again?
StartAutomating@reddit (OP)
The point of the essay is more about how people personalize and project in their criticisms than anything else. It's one thing to engage in a good-natured debate about the best tool for the job. It's another thing entirely to dunk on entire languages or people's choices to use them. Sadly, bad behavior is the norm.
I have too often seen people fight tooth and nail over trivialities and do so with bloody invective. And I've seen countless people leave the industry as a result.
Another major facet of my argument is that people often aren't particularly interested in discussing these things. They're more often interested in telling you why you're wrong, without trying to understand the value in other approaches. That common thread runs thru each of the language debates I mentioned, and is also a key component in the "Rust vs C" debate that currently rages.
IMO, programming is the study of problem solving and trade-offs. I believe it works best in groups that communicate well and listen to each other. Sadly, in a very long career, I've found these groups few and far between.
Lunchboxsushi@reddit
Why not take a step further in your analysis. At a high level sure, I can agree with your general message. Having a welcoming community. Shutting down ideas, culture and progress from others can't benefit the idea of progress.
What I mean by depth is that identity as an engineer is tied largely to the community and language they use, similar to what we see in our society e.g Moldavia vs Russian language discrimination in the 90s and similar we see today between Ukrainian and Russian.
A big part of those is usually anxiety or pain behind the words.
For me personally it's PHP, it runs the web, large systems successfully utilizing it but I just won't use it again and if someone asks I wouldn't recommend it even though I do know the ecosystem has matured greatly in the last decade. why? Because of the pain behind it.
I'm curious though, for those people online bashing powershell on windows wtf is the alternative?
lelanthran@reddit
I've used bash scripts in the past because, well, it's already there due to needing git bash and I already know it :-/
Powershell really is the thing to use, though, as it integrates very well into Windows; it's easier to check if a service is started, grab something from the event log, etc from Powershell.
Gullible-Recipe4484@reddit
This is a really important point. A lot of people underestimate how much “language expectations” shape how they learn and evaluate tools.
I’ve seen this in teams too—developers rejecting a stack or design just because it doesn’t match what they already associate with a “proper” language or framework, even if it’s actually a better fit for the problem.
It ends up slowing down learning and also blocks people from understanding newer paradigms (especially with things like functional patterns, serverless, or even newer JS runtimes).