The post The Collapsing Quality of Dev.to first appeared on Qvault.
A few years ago I found Dev.to, and was delighted by the writing experience. It felt like a platform with all the conveniences of Medium’s writing tools but wasn’t missing the features that developers need, like code blocks and markdown. I still think Dev.to probably has the best writing experience of any third-party blogging platform for devs, luckily that hasn’t changed at all. On the other hand, the reading experience, or rather the content on the platform, has dropped so hard and fast in quality that I realized a few months ago that I haven’t opened my feed in almost a year. I used to browse articles on Dev.to before checking Reddit and Twitter, but over the last twelve months, my lizard brain realized it never found anything on Dev.to, and I subconsciously just stopped going there.
What made Dev.to great in the first place?
Dev.to launched in 2015 (I believe, this was surprisingly difficult to search for). And I personally noticed it sometime in 2018. As an amateur writer looking for new places to publish my content, and as an avid reader of programming articles, I was excited to discover the platform. Here were the features that stuck out to me initially:
- Auto publish to Dev.to from an external RSS feed
- Write in markdown, with support for code syntax blocks
- Dark mode
- Welcoming community
- Good content for beginners
- Authors own their own content (per the terms and agreements)
Dev.to has always seemed to be geared towards beginners, and there’s nothing wrong with that. In fact, the internet desperately needed a place for new developers to hang out without being flamed off of platforms like Reddit and StackOverflow, or overwhelmed by the more advanced topics on HackerNews.
What went wrong?
Building a great platform is hard, but building an engaging and worthwhile community on that platform is much harder. There is a constant yin/yang relationship between content moderation and censorship needs, whether most of the moderation decisions are made by the platform itself or are crowdsourced by the users. Dev.to did an amazing thing by focusing its branding and growth strategy around newer developers. The content on Dev.to was almost exclusively entry-level JavaScript content, by beginners, for beginners.
It all went south when the community reached a point where writers realized that it’s easy to write low-effort content that will be liked by brand-new programmers, even if you’re brand new yourself. I’m not saying new devs shouldn’t be writing, I absolutely think they should. It’s that the return on investment of writing clickbaity listicles on Dev.to is much better than writing something new, interesting, or insightful.
As I’m writing this article, my Dev.to feed has the following four articles at the top:
- Top 5 IDE for Web Development – 67 likes
- Using WebSockets with React – 6 likes
- You don’t know spread operator – 11 likes
- Map, Filter and Reduce explained – 6 likes
I’m definitely judging these articles by their titles, and maybe they actually contain great content, but my experience on Dev.to recently has left me jaded. Did we really need another article that has likely plagiarized the Google SERP for map
, filter
, and reduce
usage? Does an article that lists five popular code editors deserve the attention it’s getting? My experience says probably not.
Why is it a hard problem to solve?
I’m sure the Dev.to team has realized this is a problem, so my guess is it’s a hard one to solve. Let’s try to figure out what makes the solution so elusive.
In my experience, HackerNews and /r/programming are the two best communities, at least of the larger ones, for readers to find quality programming content. The issue is that the content found there isn’t written for beginners. Dev.to made a place for newbies to write and read, but the content is getting worse and worse.
There is an important point to be made that to an experienced developer, almost all entry-level content could seem low-effort and low-quality. Let’s do our best not to fall into that trap. There is nothing inherently wrong with an article about the map
, filter
, and reduce
functions, but my suspicion is that this particular article is just a worse version of what you’d find by on the first page of Google.
Sure enough, as I now click through to the body of “Map, Filter and Reduce explained”, I see code blocks without syntax highlighting enabled, sentences without a space between the last period and the first letter of the next sentence, and a slew of grammatical mistakes that could be solved with a simple writing plugin. It’s just not high-quality stuff. This article was clearly written very quickly, without much effort. Why is it at the top of my feed?
It’s easy to get experienced developers to downvote, flag, or even outright ban low-effort content. All the articles I listed above, e.g. “Top IDE for Web Development” would never have seen the light of day on HackerNews. I’m convinced that the underlying problem is that a platform for beginners will have a smaller ratio of knowledgeable community members who have the experience required to identify poor or incorrect explanations.
What could Dev.to do better?
I think several changes could help. Dev.to has taken queues from blogging and social sites like Medium and Facebook, in that it doesn’t allow downvotes or flagging of content. This is likely done to encourage a positive and inclusive community, which is obviously a fantastic goal. The side effect is that garbage content lives on.
- Add the ability to downvote or flag content as low-quality, but without allowing other readers to see those flags. It would give the platform a way to get the good stuff to the top, but wouldn’t make newer writers feel picked on in public. It’s worth noting that Dev.to currently has something like this, but only trusted users can take those actions, and it’s clearly not enough.
- In addition to the flagging, it would be nice to be able to leave constructive feedback, without embarassing the author, and without the community labelling you a hater. In other words, I’d like to be able to leave a note on a specific part of the article, explaining privately to the author what they could do to improve the content.
- Foster a community for experienced developers. You don’t want the blind leading the blind. You still need a healthy amount of knowledgeable people in your community to help the newer folks. Keep in mind, you don’t actually need much advanced content to keep them around, but they’re leaving in droves because their contributions can’t compete with the clickbait.
- Better automatic article imports. A lot of my articles that were imported via RSS had some really janky post-import artifacts. My guess is this stuff could be mitigated by simple detection algorithms. For example,
- Automatically detecting the language of code blocks
- Adding the first image in the post as the featured one and not including it twice
- Notifying the writer of diffuculties parsing the RSS feed, so crap doesn’t get published accidentally
I like the goal of Dev.to
I really hope they make some changes, whether they be the ones I’ve suggested or even better ideas that the Dev team comes up with on their own. In the meantime, I won’t be reading anything on the platform because it’s just not interesting, and I also believe it’s unhelpful to new programmers. If you work for Dev.to and want to chat with me about my thoughts, feel free to reach out.
Ready to get coding?
Have questions or feedback?
Follow and hit me up on Twitter @q_vault if you have any questions or comments. If I’ve made a mistake in the article, please let me know so I can get it corrected!
Top comments (4)
A lot of these problems could be solved with a robust team of voluntary moderators, but in my experience of reporting blatantly obvious spam accounts, this site's moderation team is unreliable at best.
A generally available downvote-like action would definitely help, but it wouldn't solve the problem. In a feed-driven system that promotes learning in public, new low quality articles are always going to eventually push old high quality articles out of the top spots. Considering the site encourages new users to post low quality hello world articles as soon as they create an account, I think it is pretty clear the site values content churn over content quality.
Between the endless stream of new coders rewriting the same tired articles, bloggers cross-posting with no stake in the health of this specific community, and companies spamming articles for their SEO value... I hate to say it, but this place is only going to get worse.
Thanks for your article. It's clear that you've put more thought into it than the majority of authors on dev.to!
In a way I think that dev.to is a victim of the short attention spans that social media platforms have helped their users de-evolve into. It's certainly not the only factor but there seems to be this shift towards low quality, fast browsing of media.
I find personal blogs are much higher quality, at least the ones you tend to hear about percolate to the top and become well known because they are genuinely useful.
The more "Top X" type articles I see on dev.to, the further it reinforces my decision not to visit regularly. I only found this article via a "Read next" on a colleague's post, honest!
I am happy to discover your post, because I thought that the feeling that the quality of the posts got worse was just me.
I, too, when I first found dev.to thought "Oh, cool, a platform with nice, technical content" and every now and then I wrote something too. Lately I got the impression that it became very "LinkedIn-ish" with many posts like "What kindergarten taught me about team playing," "Your resume has these mistakes! Stop it!" "10 thing to do before (and after) your interview." The best post were, as you say, basic level JS.
Does limitation on using just 4 tags for each post bother anyone? Actually, I have always felt, this potential could be explored to solve the problem of their top feed algorithm. Though I do realize they might have limited this to avoid chaos or for any matter.
All thoughts are welcome.