DEV Community

loading...

How dev.to (occasionally) rubs me up the wrong way

Pavel Morava
・3 min read

Imposter syndrome

Recently, I've read several articles dealing with imposter syndrome. Full of optimism and reassurance, the papers try hard to soothe the irritated consciousness of poor souls that deemed themselves unworthy.

People often need a gentle maternal caress, encouraging them to continue on the mournful journey through challenges and obstacles. Still, these motivational speeches often result in boosted egos of certain authors who do not hesitate to bring authoritative advice despite the minor issue of knowing nothing substantial.

For instance, one of them has posted a mind-blowing list of how to learn Python in one week. If I were a beginner, I would greatly appreciate it since one week of my life is a reasonable price to pay. Unfortunately, after dabbling with Python for seven years, eight months, and 14 days (yes, I know the time span exactly because I can deduce it from my checkio account), I was rather enraged that nobody had informed me that Python was that easy.

Trust me; I would rather have this author suffering from the imposter syndrome rather than sharing such wisdom here (or anywhere else). It feels like a blatant scam to me; I saw real-life newbies struggle with programming. One week is often not enough to run their first hello world, much less conquer the vast land of Python fundamentals.

One girl whom I guided online failed even in downloading and installing Python under Windows. Which, by the way, brings me to another bullet.

Programming language recommendation for beginners

Several times, I've encountered programmers, infatuated with their language of choice (sometimes, I even suspect them that the language of their choice is the only programming language they know) who do not shy away from recommending languages like C, C++, C#, Java, or JavaScript to beginners.

There are several excellent reasons why not to do that. As I said before, many beginners do not manage basic things (considered commonplace by a slightly advanced IT student), so pushing them into gory details of hardware (C, C++), industry OOP (Java, C#), or sloppily designed (JavaScript) languages borders with a criminal offense.

Even the arguments provided by their proponents feel otherworldly. Learn C or C++ because they are lightning-fast. I beg your pardon? Similarly, why not teach driving F1 racing cars to teenagers attempting to get their driving licenses? It would make sense because F1 racing cars trump the ordinary, slow, and safe hatchbacks, don't they?

VS Code extensions and themes

The final bullet deals with the irritating, but a considerably less dangerous avalanche of articles, tirelessly repeating the same stuff over and over again.

I would not mind, but the majority of these extensions, praised by their authors, are the first ones that appear as soon as one opens the extension sidebar in VS Code. Am I really the only one who bothers to check this very sidebar every now and then?

But not only that, their authors, instead of naming these articles timidly like THE WELL KNOWN EXTENSIONS I USE AND YOU ALL PROBABLY KNOW, advertise them like THE EXTENSIONS YOU HAVE NEVER HEARD OF. Preposterous!

Learning by writing

Ending my rant here, I would like to remind all online writers that there is nothing wrong with enforcing their knowledge and skills by writing articles.

Even tens of thousands of write-ups are bearable, even if they bring nothing new to the table. However, I would suggest reconsidering the way of how to present them to the online audience.

The title I SOMEHOW MANAGED TO IMPLEMENT THE SUPER SORT AND I LOVE TO HAVE FEEDBACK is more honest and less misleading than HOW TO WRITE THE SUPER SORT, especially if the code threatens to blow up at the first run.

I may be spoiled by the time spent on checkio.org, where the most common thing was browsing and commenting on other people's code (I have not been an active member for several years, though), but what else are we supposed to do on the platform, mainly visited by developers?

What do you think?

Discussion (22)

Collapse
inhuofficial profile image
InHuOfficial • Edited

Slow fucking clap.

However you have cause and effect mixed up. You are blaming authors for the problems in the system and society.

Why do people keep writing articles on how to "master" a subject in 1 week, 1 day, 1 hour etc?

It is because the DEV audience is predominantly beginners, brought up in a stressful world that teaches them that all their friends are perfect (social media) and they can be anything they want to be (parents, schools etc.). That is the societal cause.

Then we have the system cause - all the jobs seem to be front end (for entry level positions) and front-end is the "exciting" part, you can see the results instantly, people will compliment you on a beautiful design, I don't think I have ever been complemented for an efficient SQL statement or robust user input validation.

So that is what people look to learn, DEV organises tags by popularity so people follow JS, CSS, React etc.

They hear about those things and so the opinions in those articles form the echo chamber that guides them to seek more of that content out. So more of that content is produced and the cycle continues.

You and I would have been the same if we had been fed and shaped by that crap.

That is why those articles are popular.

New developers, completely overloaded by the 200 different framework options need a shortcut.

They are looking for someone to give them that "magic bullet" that means they too can be like their favourite instagram developer who produces a different software package every week at 18 years old.

They don't know how to analyse the content that person produces (is it stolen and reskinned, do they have other people helping them) or worse yet, admit that that person is better than them (because they are told that everyone is equal). That is a life lesson that hits most people hard (the cause of the "imposter syndrome"), some people are more talented, find your own talents and work on improving them.

As a quick aside in my own rant 😉🤣, while I agree with your general premise, you have to be careful as "your bias is showing", you criticise others for pushing a language but then go on to slate JavaScript...see how easy it is to become the very thing you hate?

If someone who is impressionable and admired you read this article they would assume JavaScript is bad and avoid it. It is the same as the PHP is bad crowd. They are easy languages to learn, so there are too many crappy examples, the language itself is not inherently bad, the example eco system is and that is just inevitable with any language that becomes popular.

As a final though: clickbait, unfortunately, is a necessary evil if you want the mega views on anything other than the core "React, Git, VS Code" subjects that people rush to. Perhaps that is a symptom of people only knowing those techs, who knows.

I write my articles and then "clickbaitify" (yes, that is my term for it) the titles to get people to click.

Why? Because we live in the "over information age", people have short attention spans, they are weary, they want something exciting. So clickbait wins.

You and I cannot change that, we must just do what we can by producing good content (in our own opinions obviously) within the parameters of the game.

"Dont hate the player hate the game" has never been more apt, but I prefer "Don't hate someone for playing the game better than you, find your own way to play at the top level"...I obviously will never be a motivational quote writer as it is too wordy but it captures my beliefs!

Anyway, my rant was nearly as long as your whole article and probably made no sense as I haven't proof read it.

Have a ❤ and a 🦄 and go create some fucking awesome content to counter act the tide of shit, quality will win eventually!

Collapse
hanpari profile image
Pavel Morava Author

Your rant was excellent. And I agree with your points fully, especially that people are desperately looking for shortcuts.

As for sloppily designed Javascript - the language was designed in a week. I would not be able to do that, it is impressive, but still, the design was rushed and never corrected, so it is full of strange behaviors that makes it unfit for beginners.

Still, I believe that your rant is better than mine. 👍

Collapse
inhuofficial profile image
InHuOfficial • Edited

Haha perhaps I am just more angry so ranting comes naturally, I doubt mine is actually better 🤣

I don’t disagree with JS being flawed, but as a beginner language I would argue it is great because even if you do something badly it is forgiving. Will it instill bad practices? Almost certainly yes, but it allows for quick progress and immediate feedback.

You can open codepen and try it, a very low barrier to entry!

Think about how we learn anything.

“Light always travels in a straight line” is the first thing you get taught.

Then you learn about refraction and realise it isnt so simple, then you learn that light is affected by gravity and can bend, then you learn that the speed of light isnt actually constant it is only constant in a vacuum etc.

I could also argue from your side though as I am always telling people to learn HTML properly before anything else due to accessibility...but it isn’t sexy enough so people don’t listen until they need to! 😜

I think that is parallel to “learn a proper language” first as you learn good practices from the start, but you need more knowledge before you actually create something useful, so the learning curve is front weighted etc.

Thread Thread
hanpari profile image
Pavel Morava Author

I may shock you, but when I was gently pushing my children towards programming, I introduced Scratch to them. Scratch was designed for beginners and it is fun. But right now, I am satisfied with my daughter being able to create folders and files.

My biggest requirement right now is for them to prefer notebooks over smartphones. :)

Programming in real languages is bloated with jargon and options that beginners do not need at all.

Thread Thread
inhuofficial profile image
InHuOfficial • Edited

I love that you are teaching your kids to code. Even if they don’t become developers it is a useful skill in terms of problem solving etc. that everyone should learn! Even if all they ultimately end up doing is writing excel formulas to balance their bank account!

As for notebook over phone...if you mean PC notebooks then good luck...if you mean paper notebooks then even more luck 🤣. Just get them a Bluetooth keyboard, at least they will learn how to type properly. 😂

P.s. never really looked at scratch, but that is the second or third time someone mentioned it so that is on my list to look at!

Thread Thread
hanpari profile image
Pavel Morava Author

It is not that bad. They play games on notebooks and know keyboard reasonably well.

My son is solving little puzzles with programming robot games, my daughter with her cousin attempted to shoot and edit video from their favorite online game.

And constantly, I remind them not to neglect mathematics 😉

Thread Thread
inhuofficial profile image
InHuOfficial

Have we found the perfect parent? Quite possibly! 😜❤️

Thread Thread
hanpari profile image
Pavel Morava Author

My children beg to disagree. 😭

Thread Thread
inhuofficial profile image
InHuOfficial

You haven't convinced me otherwise, no child should think their parents are perfect, it means you aren't teaching them boundaries! Number 1 parent award is on route! 😋🤣

Collapse
woshimbo profile image
Woshimbo

Enjoyed reading all of that, I'm somebody coming in late to the programming game. Old job took me away from tech, but found myself back to it. Random ramble incoming, if y'all don't mind. Not too great at communicating, so if by chance you decode the randomness.. Input is adored, haha.

It really is confusing knowing nothing about programming, especially with ADHD. Trying to learn it has so far ended with me learning basics about BASIC, C, C#, Javascript, Python, a little Rust, and Swift. (Can't make anything.)

Programming fundamentals and languages lead to computer science, to cyber security, forensics, networking, etc.

Then even ended up studying law and health because of those rabbit holes, then back to hardware, circuits, especially components of different "boards".

Frequencies and signals, data, more networking, morse code, kernel, MIDI, amateur radio, podcasting, (Still dunno how I ended up there.) then more things security and even ended up bug hunting a bit.

Just so much, and the reason why is because of wanting to know what's going on beyond the wall, the interpreter, compiler, etc.

Is that normal?? Not just the wanting to know, but the mystery hole journey. Hahaha, feels like I've been in wars and just so much more. I've been wanting to focus on C, but.. Gotta try making an income soon, so settling on a browser game. Especially since I only have an iPhone and iPad to work with at the moment since my PCs are temporarily out of commission.

(Currently learning HTML and JavaScript at the same time, including networking. CSS will follow soon.)

My true interest is creating games, music, utilities, and cyber security. Writing too, I'm sure it's been noticed. Ai and machine learning is a huge fascination as well.

I don't like dependencies and try staying away from 3rd party anything. If I'm gonna create, I wanna learn, know what what does and how it does. So yes, I'm trying to program.. (Is systems a thing? I enjoy developing systems in documentation? Character stats, etc. "Builds")

I made a post and had great replies, but just still curious to see what y'all think. Advice is always attempted to be taken. (Although it usually just creates more questions in my mind.)

Thanks and sorry for reading, hahahaha. Just like to see what people think, and please know. I am NOT trying to find shortcuts, just trying to find the right language I guess.. Web development seems optimal, I want to stay away from app stores but then there's the issue of creating utilities, since it's web.. Connectivity is needed in order to use? (Read a bit about "progressive web apps" but still clueless about it.)

Collapse
hanpari profile image
Pavel Morava Author

Well, I guess you should focus on one thing instead of jumping from one thing to another.

Dabbling with things here and there won't take you anywhere. I was thinking similarly, but at the end, learning Django was a good thing.

Collapse
woshimbo profile image
Woshimbo

Yeah, it's tough. I will also look in to Django. About to read up on PHP, I do understand what you mean. It's just that once something is started, (even a Shortcut on iOS) well let's just say I ended up with 16 decently sized comments before even finishing or even starting the very first action I created, haha.

A portion of them being questions to myself, but not sure if it's pointless questions or something to explore.

Here's an example question.

  1. Does blank space in a word processor which is used for programming consume memory? I have been told no before but space is still space that a process would have to go through to find the next character.

Every space or even pixel is data, or resources? I know it would be a minuscule level, but the little things always add up.

It's a similar question to file systems. How much resources does having to go through each folder of files, etc take. This is the kinda stuff that gets me. It always ends up getting to the point of depth where finding the information for what may follow actually becomes a true challenge.

Feels like this mindset really is a hindrance, I hate it at times but just can't help myself. Not knowing is simply not knowing and it's uncomfortable. Hahaha

Thread Thread
hanpari profile image
Pavel Morava Author

Learn about the YAGNI concept, then. It is never a good habit to overthink simple things.

Take simple project and finish it. Or if you are curious, Python checkio is full of useful stuff, but you won't see them unless you solve the problems there. So you can stay motivated.

Thread Thread
woshimbo profile image
Woshimbo

Makes sense, just kind of trying to make best practice and full out optimization a thing from the get go. Feel like it's a must, especially since some day in the future I may be able to test my random theories and concepts out and they will rely on every bit they can get as far as timing, optimization, etc.

You're right though, if something can be optimized and improved.. What better practice is to alter something without breaking it, so I'll focus on getting stuff done. Appreciate you, and funny thing. Was pretty set on JavaScript but I started reading on PHP and Django.

Gonna do my best to stick to Python for now. Already have Pythonista 3 and it can be used with Shortcuts.

Random question, been eyeing this app for weeks now.. It's a Jupyter Notebook, for Python related stuff apparently. Know anything about it?

Thread Thread
hanpari profile image
Pavel Morava Author • Edited

Remember

Taken from fsharp for fun and profit.

As for Jupyter Notebooks, it is not only related only to Python. Originally, JuPyteR stood for Julia, Python and R - and right now it supports a variety of programming languages.

You can try it in VS Code. Just create file with the ipynb extension or you can try it online here.

Thread Thread
woshimbo profile image
Woshimbo

I have no PC at the moment, they're kind of, uhhh. Well, part of programming I will learn to fix them in due time, hahaha.

Oh, I just meant this app in particular. Every other Jupyter thing costs money, besides this one and apparently it's better than the paid ones. The same developer also has.. I will just link them.

apps.apple.com/us/app/carnets-jupy...

apps.apple.com/us/app/carnets-jupy...

apps.apple.com/us/app/a-shell/id14...

Even has a miniature version of the a-shell.

Just not sure why, but yeah.. For weeks, keep ending up looking at it. Might just download em and be done with it, not sure.

Yeah, safety is programmed in my head. Worked in plants for a few years, was kind of the "safety guy" without the title. "Cause I care." Haha, not going to explain why or go in to story mode, but looking at code terrifies me, or used to.. Just getting to the point where I will read it and starting to download things like that and such again, hence the learning of networking amongst other things.

Collapse
jankapunkt profile image
Jan Küster

I think this "learn XYZ in a Werk" is some kind of fallacy: people outside to the system don't know it's complexity and tend to underestimate the time required to learn it. At the same time those who write these articles are already into it and do not take into account that THEY need one week for all the topics but for a bloody beginner this is easily a month or two to get to that level.

My Suggestion:

"learn XYZ in...

1 day = 1 week
1 week = 1 month
1 month = 3+ months

"Master XYZ in..."

If there is a time given related to master something and it's less than 5 to 10 years of full commitment, it's a scam or the author doesnt know anything about it

Collapse
hanpari profile image
Pavel Morava Author

I am afraid that people writing these articles have not mastered the subject yet. This is why started with the imposter syndrome. They are simply imposters :) Or geniuses that managed to do it in one week themselves. I guess the former is closer to truth.

Collapse
aheisleycook profile image
privatecloudev

at least it isnt facebook. facebook coding groups are worse because the moderation is usually abysmal(former facebook programming group moderator an admin)

Collapse
hanpari profile image
Pavel Morava Author

I cancelled my FB a long time ago, so I missed this experience. :)

Collapse
aheisleycook profile image
privatecloudev

yea you were smarter than me. i like this platform better because it doesnt rnadom spammers not revelent to coding which seems to be common issue with those groups