DEV Community

Cover image for Destructive arguments used in technology discussions on social media that have to die
Christian Heilmann
Christian Heilmann

Posted on • Originally published at christianheilmann.com

Destructive arguments used in technology discussions on social media that have to die

Social media is a wonderful thing as it does give everyone a voice. This can be a problem when that voice is used to bring other people down or make them feel small. As developers, we never shy away from giving out opinions. But maybe we should consider the effect these have on people. When it comes to creating noise and stressing developers out, there are a few patterns people follow on social media that have to go away.

Gatekeeping: You aren't a professional if you don't use ${thing}

This is utter tosh. Over my career I've heard this dozens of times. In almost all cases the thing that would have made me a professional vanished in a few months. And got replaced by the next new shiny. I know highly professional developers working with woefully outdated tools and technology. Partly because their product demands it. But also because they are effective using it and don't see any need to learn a different one.

Assumed baseline: You forgot to do the most basic things, you are horrible to ${people}!

This is one I struggle with a lot. Valid HTML, the most basic accessibility features and a readable syntax are second nature to me. Using all these makes sure you don't block people out, and you make it easier for people to maintain and run with your work. But calling people out publicly for basic mistakes isn't helpful at all. This is a pattern you see a lot in social media. Almost every positive post will have someone find a flaw in it that could offend a certain group. Pointing this out may be important, but it is also a major bummer.

Fear mongering: These are the only skills employers are looking for!

What engineering managers want from a new hire and what ends up in job ads differs a lot. This is a problem we need to deal with in our market. In almost any job I started in I had half the skills listed in the job description. It is never one killer technical skill that will make you stand out. It is how good you are in taking on new challenges and integrate into existing structures and needs. Companies don't need rockstars, they need people who can integrate into a well-working system. That we list a plethora of skills that are hot right now in job ads is annoying.

Wisdom of the ancients: This never worked before and will fail now!

I talked about this in more detail in my "Shut up old man" post and is a real problem. The longer you work in development, the more tainted you get. This slows down innovation and frustrates fresh, excited people around you. One big step towards becoming a tech lead is to use your experience to help people grow. Not to let your horrible memories taint possible great new things to come. Enthusiasm is never a bad thing when it is being channelled into useful actions. Often things that were impossible for me to achieve are no issue for new developers in an evolved environment.

My pet setup: Why don't you use alpenhorn.js like real professionals?

I keep encountering this as comments from people asking to contribute to a project. It is reverse gatekeeping, telling me to earn their contribution by subscribing to their idea of a perfect setup. Even when the project in question is a decade old and has thousands of contributors. It is pure hubris to demand the product to change. A better way is to point out what benefits it would bring to reconsider a new architecture. That way you'll learn soon why it isn't that easy. For most projects, there is never any time for re-architecture, no matter how messed up they are. It is tricky and scary to replace an aircraft engine mid-flight.

Copying the big players: This is used to build ${bigproduct}, so it will be even better for ours

This fallacy is rampant. It is annoying how many projects are huge because they started with a "big player" bootstrap. Frameworks and libraries are great to get a project off the ground fast. They are also vital for companies with huge projects and hundreds of developers. So, if you want to create something quick and you know you will re-write it soon anyways, fine. If you think that using the products the big players use makes your product scale and grow as fast, good luck. Fact is, you hardly will ever build anything from scratch when a company hires you. Companies have budgeted training on the job to get people proficient in the tools they use. The idea of publishing these platforms to the world is to cut down the amount of training for new hires. Not to enable lots of competitors to work as efficiently.

What do to instead of posting things like these

I'm forcing myself to be calmer, to care less about things being "obviously wrong" and to listen more intently. And to block out unnecessary noise. If you do the same, you'll find being a developer in today's world is pretty darn amazing and that what you know is already a lot - and maybe enough.

This is part of a bigger post about noise and stress for developers and how to avoid it.

Top comments (14)

Collapse
 
scottishross profile image
Ross Henderson

90% of Tech Twitter is split between these arguments and useless engagement bait.

"As a dev..."
"What's your setup"
"What's your favourite JS framework and why is it x"

In fact, Tech Twitter needs to stop talking about JavaScript 90% of the time.

Collapse
 
codepo8 profile image
Christian Heilmann

You forget all the arguments about which editor to use, in which theme and using which "code optimised" font :)

Collapse
 
bovermyer profile image
Ben Overmyer

What do you mean you didn’t spend $200 on a bespoke coding typeface? What’s wrong with you??

Collapse
 
activenode profile image
David Lorenz • Edited

Honestly if there are people acting like that I immediately assume they are "Juniors" in a Generic Semantic Perspective. The actual tech experience is only a small subset of being Senior & Mature. Being the latter you have to show empathy and acknowledge that everything is driven by use cases and needs plus context

Collapse
 
activenode profile image
David Lorenz

"I'm forcing myself to be calmer, to care less about things being "obviously wrong" and to listen more intently"

Same. If people start to be loud (capslock) and toxic I might just block them to stay sane

Collapse
 
miguelmj profile image
MiguelMJ

These are the only skills employers are looking for!

I've heard this a lot and I hate it... What if I'm just interested in certain technology? What if I really have use cases in mind that don't involve getting a new job? What if I just want to understand better another software that uses certain technology?

Collapse
 
eecolor profile image
EECOLOR

The longer you work in development, the more tainted you get.

That's a pretty bleak look at things. But before I can make an argument against this statement I would first like to read your other article. However, it seems your website is down.

Collapse
 
codepo8 profile image
Christian Heilmann

works here. Well, tainted may be too strong a word, but if you're not careful you can get into pretty annoying habits of discarding things quickly.

Collapse
 
eecolor profile image
EECOLOR

Yes, it is working again :-D

Thank you for taking the time to write these articles. While I can agree with the sentiment I do feel uncomfortable about the way you present it. In this article most of the sections contain arguments explaining why the 'thing people say' is bad.

These arguments are presented as being facts, like this one:

The longer you work in development, the more tainted you get.

As you stated:

Well, tainted may be too strong a word, but if you're not careful you can get into pretty annoying habits of discarding things quickly.

This nuance contains the critique I have, 'too strong a word' and 'you can get' (not being a guaranteed consequence). I think it is important to nuance arguments like that because otherwise you might be feeding the same machine you are fighting.

As for this particular statement, I have a slightly different view on the matter. In my observation as developers gain more experience they are more able to predict the amount of work. We can see more clearly the amount of work and for example the consequences of switching to a new framework.

What I am trying to say is that it might be helpful to present you arguments a bit more careful. That would allow you to separate facts from observations and personal logical conclusions. I think it would also help the reader to more easily think about the things you are saying.

As a last critique: It would be nice for each section to have some pointers on how to approach the situation differently. You clearly have experience and I'm sure you understand where the sound of these voices is coming from. What would you say to one of these persons (that happens to be nice and sensible) saying these things?

Again, thank you for taking the time to write these things down.

Collapse
 
bovermyer profile image
Ben Overmyer

The other thing to consider here is that we need to gently help people correct course when they exhibit behavior like this. Getting angry or frustrated with it tends to alienate the people we could be helping.

Also… I used to be guilty of all of these, I think, at various points in my career. Learning to recognize them as toxic was a transformative experience for me.

Collapse
 
mjoycemilburn profile image
MartinJ

Well said. I'm all for new ideas, but maybe you can have have too much of a good thing. After a while, the continual churn becomes positively destructive. A bit more general cynicism like this would be welcome.

Collapse
 
fullstackchris profile image
Chris Frewin

Just ignore the haters and keep truckin', these arguments can really be made for any occupation, and I think its more endemic of the social media / digital posting world we live in today.

I'm also very much a supporter of the idea to simply ignore the noise. As for the xyz hype, it's always helpful and encouraging to remember that the huge majority of technology systems run on "ancient" technologies like Java, JQuery, and even COBOL - and they work just fine.

Though I will still say for any starting or juniors it can be a bit fun (and useful) to follow some of the hype trains, it's how I "got in early" with React and Gatsby when I was starting out.

Collapse
 
mxglt profile image
Maxime Guilbert

Clap Clap Clap

Collapse
 
svgatorapp profile image
SVGator

Gate-keeping is the worst! Never considered your take on copying big players. Makes a bunch more sense when you put it like that.