A few months ago, I was pretty disheartened. I wrote a blog that I put thought and effort into, and it got only +163 votes and basically no discussion. Meanwhile, a dumb parody I had published just 5 days earlier got +959 votes. Ok, but let's say that this is a bad example, maybe my explanation was bad or uninteresting or people just don't care about residual graphs that much. That's fair.
But I suspect this is a bigger trend. I don't know if my memory deceives me here, but I feel like some years ago there were more high-quality, educational blogs with active discussion. WeakestTopology posted a math blog recently and there are no comments, the blog might just slide out of Recent Actions pretty soon. This seems to happen a lot with such blogs, especially on "advanced" topics.
What I see a lot instead is poor quality content. Lots of blogs like "please debug my code" and "how can I improve" just overwhelm all other content. A lot of comments have extremely bad quality. They are poorly formatted (please tell me — how is it possible that an adult who goes to university doesn't know that there is no space before a period?), often incoherent and disorganized, start with "bro really thought", show a complete lack of reading comprehension or are just plain wrong. It's funny and sad at the same time how often I see greys teaching cyans how to become purple. It seems that too many people have given up on even simply downvoting, let alone debunking low quality content.
Especially blogs about cheaters. Fighting cheating is a noble cause, but can you please at least format your blog well? Use paragraphs, organize your writing, link to submissions. Preferably don't bother with screenshots or links to someone bragging about their rank 2632 on LinkedIn. And familiarize yourself with the system.
Years ago, I used to look at the Codechef discussion board and laugh at what a mess it was. I was happy that Codeforces was much better. Today, I feel like Codeforces blogs are exactly like the Codechef board I used to laugh at.
Here's a poll. If your account is at least 5 years old, please vote.
Something stupid about Codeforces is that accounts need to be actively competing in order to be able to upvote/downvote blogs or comments. Since I haven't competed on Codeforces for a while, I'm unnable to upvote or downvote (even though I recently hit front page as a top 10 contributor). Any upvotes/downvotes I try to do gets silently reverted after a short while.
I think that this results in more advance topics getting fewer upvotes since a large part of its intended audience is made up of old, likely "inactive", accounts.
I think that you are generally right and that there are at least three reasons that may be the source of this feeling.
The basic-to-intermediate stuff has been thoroughly explained already. For example,
LCA
,HLD
,SQRT-trick
,Convex-Hull trick
etc. are all very useful things that are hard to come up with on your own (at their respective level) and make interesting topics for blogs. But there are already blogs about those topics. So now we are left with more and more obscure, high-rating topics to write about, which happens less often as they require someone who both knows about them and has enough free time and will to write about them. And then the writer is rewarded with a proportionally smaller response. So they are less frequent.Blog ideas spark more often after rounds. I often see a percentage of blogs describing another approach to some problem from a recent round, or a participant that was persistent enough to explore the problems a bit further, digging up some interesting blog ideas. With more and more rounds having ad-hoc problems, there are less opportunities to discover those generalizable ideas that are useful for other contests that are good blog ideas.
It's hard to discover good blogs and the TOP section is several hours behind. Good blogs tend to drown in poor quality content like another
cheater exposed!!11!
blogs just due to the sheer number of those. I feel like there are no good ways to discover them beside from theTOP
section andRecent actions
, both of which have some issues with how long a blog is there. Especially in the times of high activity due to events in the real (programming) world that get extensive coverage. Tracking whether your favourite blogwriters have recently posted is rather cumbersome.EDU
section is also not the solution, as many interesting blogs do not get placed there (I think).Do you mean Catalog? EDU is for "official" courses. If you find a blog that deserves to be in Catalog, PM me and I will add it (if I agree that it deserves to be there, lol). I sort of agree that Catalog is not the solution, though. It feels more like an archive. You file educational content there for future generations, but I doubt that it does much in terms of sparking active discussion.
As for ad-hoc, ideally ideas in ad-hoc problems should be generalizable and if they are interesting enough, they should become standard techniques after a while.
Yes, sorry, I meant Catalog.
bro really thought he could do something about it hahahahahahah
I don't know what discussion you expect on educational blogs. You take a topic, you tell the world something about this topic. People may write "thanks", but that's hardly a discussion. If you messed up they might correct you. If you explained some place bad they might ask a question, but that should be cleared with a couple of comments and never brought up again.
Also, your blog looks long and it is hard to gauge whether it will be interesting and whether there will be something new for me. I haven't read it, and I almost certainly won't.
This is my general take as well, except I am not high gm — lgm level and I just don't like to read theory-related stuff that much unless it's presented in a way someone like me can enjoy and understand (Which I don't expect to be btw, I'm no mathematician).
The last theory/edu blog I read was the Noam Queue a while ago when I had a problem where I thought it'd be useful (fantastic blog btw). And there you can see there are many comments saying "thanks", "nice blog", "cool trick", or ideas on extensions / proofs. It's still not a lot but it's more than what's typical nowadays. And that was 4 years ago. I guess fft's point is that now that doesn't exist anymore, so rather than meaningful discussion it's a lack of uhh community reception and interaction?
I presume edu blogs have always been the same for you, but do you think there's any reason why it has changed for other people? I'm wondering if it's smt like a larger portion of the CF userbase not being college students studying this kind of theory-based stuff [not even sure if this is true lol but there must be some reason for less activity]. Whether or not the theory is actually hard, maybe it's just not medium that the new CF userbase enjoys consuming.
EDIT: on a side note, perhaps it has to do with there being more math related theory blogs than like DS/algo ones, like even if you look back in history blogs on more math related things don't get as much reception as stuff on Segbeats or whatever @_@ [citationneeded]
Yes, things like the comments in Noam's queue blog is exactly what I mean. I understand that there's not always much to say, but I do feel like the number of comments is at least a partial indicator on community engagement.
The psychological effect of receiving not much interaction at all is pretty strong. It makes you feel like there is no point in writing things up if no one will really care.
To me there's a simple reason. Blogs like WeakestTopology might be actually interesting, but it's just way too advanced for me to understand it or make use of it. Basically just like Wielomian said, all basic topics which are useful have already had a lot of blogs about them. When you post something too advanced, you can't expect everyone to read it. Maybe the community is getting worse with time, but that isn't the sole reason.
they seem pretty normal to me
why do we think the same way(2)
You registered a year ago.
Well I have seen a few 5+ year old blogs, so I feel like I know what I'm talking about. I don't think that the social aspect of cf has changed that much, so perhaps you are just misremembering things, or you have simply outgrown the social aspect of cf to some extent. Misremembering things is more common than most people think: oftentimes people reminisce about "the good old days" when, in reality, those days weren't much different from these days. So, instead of cursing the darkness, I think that you should light a candle and live your best life right now. In a few years, you might look at these days as "the good old days" and you might wonder why you weren't so grateful for them at the time. And, before you thank me, you are very welcome for my unsolicited advice.
I didn't know if I was imagining it or not but I also started to notice the "bro really thought" type comments online, but for a lot of websites.
I think this is part of a broader trend of online communities (Youtube, reddit, social media, etc) becoming more mean/edgy/doomer in nature. I don't know why this happened (or if I am imagining it)
Well, "bro really thought" specifically is some meme, so of course it's a trend.
But more broadly, I agree with you and kind of sense some attitude shift (which I might well be imagining). I think there are roughly two attitudes:
I think more people might be shifting to type 2. Reddit definitely feels like it has shifted, though I've never really liked Reddit. Youtube has probably always been this way though.
You are correct in that Reddit is more braindead than ever. You can say anything, and as long as it is leftist / satanic / both, it will get updoots.
I voted "I joined less than 5 years ago".
I don't think it's gone downhill. Low effort meme blogs could get massive upvotes before. Repetitive noob questions and terribly written noob blogs over and over have been a staple of... everywhere, including CF, over many years. Useful posts often ended up underappreciated before. The hourglass symbol got added because of so many necro comments. Blogs sliding out of recent has always been extremely easy.
You're just forgetting how it really was, or you didn't pay attention to it before, or disregarded it out of some belief you wanted to hold, or you enjoyed things more before and are looking for an explanation... or whatever other reason you can find yourself.
Can't say if it's slightly more common but feels like the quantitative difference isn't huge and nothing has fundamentally changed. There's always been a lot of low rated people AND a lot of new people coming in, and that's shaping the discussion.
Why did you vote that? Your comment seems to clearly indicate that you have the other opinion.
I didn't, it was a joke. Why else would I loudly announce how I voted?
I think the comment sections can act as a sample test case to kinda prove your point
(P.S. no offense to dude who posted this comment. I just do a random sampling lol)
Covid era was peak because people really took CF seriously back then.
I'm certainly seeing more (both good and bad) memes after 2020.
It was always like that. "Funny" shitposting was upvoted a lot. For example Link1 Link2
Lots of blogs like "please debug my code" and "how can I improve" were also overwhelming 5 years ago. The only thing that changed during 5 years is more crying about cheaters and AI. Everything else feels the same.
I think it would be good if blogs had flair/tags so that, if a blog is educational, they can upload it with an 'educational' tag. Otherwise, there could be an 'other' category. I don't read many blogs because it's mostly just newbies shitposting/asking questions related to a probelm.
I have an idea. We can keep the blog sections as it is and along with it we can also introduce a rating based blog section. So for example a blog section for ranks newbie,pupil and specialist can be tied together, a separate blog section for expert, candidate master and master all together and similarly for the rest.
Any person can view any rating specific blog section but a person can only post to their current rating blog section.
This solution will help useful blogs not get nuked to oblivion by other not so useful blogs and everything will be very organized and since the blog sections are rating wise, the quality of those sections will also be accordingly.
I feel like despite the fact that this is an amazing website (and I mean it, its the best out there), the discussion features are kind of outdated. We need better ways to organize the discussion. Maybe we should have an official discord or smth like that. Just some random thoughts. I know the phenomenon you pointed out is a different matter.
Because every web forum is like this. Just like every sport has cheating. Codeforces and CP are no different. Stupid people are everywhere and when Codeforces develops its fame these people naturally come and do what they do with any other topic.
I've started by writing a long reply, but I'm way too tired, so here's the short version. Please forgive me for getting straight to the point.
I think you're looking at it wrong.
The post you're referencing is, from a quick skimming, quite advanced and requires much attention to understand. Compare it to your older posts:
On flows, from 2 years ago. Every somewhat skilled competitive programming has heard that flows solve some problems, so they see this post as an opportunity to improve in solving practical tasks.
Collection of little techniques, from 3 years ago. It's a very general topic, helpful and understandable to lots of people and with zero complicated ideas except the Erdős–Szekeres theorem, the last technique in the list.
As we go further into the past, the level of the content falls. You grew, which is a good thing, but the average level of the community didn't, at least not as much. Eternal September, older people leaving CP, and all that. And it's hardly surprising that complex posts have fewer interactions than simpler ones.
So +163 on a complex post is a good result.
Now, here's the thing. The topic of the last post is not actually complex, the presentation just makes it seem harder than it is. Competitive programmers are not professional writers, I don't think you are either. That's a hard skill, mostly because you need to make compromises and commit to trade-offs you might not be comfortable with. I'm not a professional writer either, but I've had my posts get to top 1 on HN and I publish to Reddit occasionally, so I'm slowly getting there and learning some things. So I can give some advice on that if you're interested.
I see tons of improvements you could make to your blog that'd make it more accessible and engaging. I'm not just bitching, I've rewritten half of it just for fun to make it more understandable (IMHO), and I like the result. I can publish the full version and compare our approaches if you want me to.
Actually, flows is good comparison. It seems that your perspective is the opposite, but I was not satisfied with the presentation in the blog you linked and thought that the blog on residual graphs was better. Perhaps not.
I'd very much be interested.
Actually, I did not really intend for this blog to be "why did you only give me +163"? I guess that's another lesson about writing blogs — you may have one point in mind, but if you open with the wrong example, people will see it as about something else.
I still think this was the focus, or at least the trigger that made you write this post. It's like you applied the same formula (find interesting content, write about it) for a while and then it stopped working, so now you're confused and hurt. You're looking for an explanation, and the most reasonable one is that Codeforces discussions became less lively, which you tried to confirm with this blog. But I don't think that's the right explanation, and I think the two options (CF was good, now bad; CF always bad) in the post are both wrong (CF is both good and bad, nothing changed about CF, the way you measure it changed).
I think you are racist. How is it fault of people for not knowing the English well, if they do not come from good English speaking societies?
I'm not talking about speaking English well anywhere in the blog.
I did not say "speaking English," I said "knowing":
well, what do you expect? When you write something easy to understand, then a there could be a lot of newbies, pupils, specialists that upvote you, but when it is too complicated then they don't upvote you because they probably don't understand. You wouldn't upvote something you don't understand, right?
I mean, there are whole blog posts with certain LGMs bragging about how they don’t know any advanced technique but they’re top anyways, so naturally ‘educational’ blogs are less interesting nowadays. Not to mention, as others said, the concept of a good problem has a hard requirement of not including any advanced techniques, so why would anyone care about that?
Want to share interesting takes on algorithms or techniques? Go hold presentations at ICPC contests (you probably still think those are good, you old fashioned man). Leave Codeforces to the true programmers.
Contribution should be based not on upvotes, but on how many people added the blog/comment to favourites. Because if it's a shitpost people will upvote it and move on. If it's something useful, they'll upvote and add it to favourites to go over it several times later to understand it better. Inclusion of a blog post into the catalog should also give a massive contribution boost.
Lack of comments in educational blogs is pretty expected, these blogs are for reading and learning mainly.
Low-quality content can just be ignored. Visibility of high-quality content can be improved by introducing "top blogs by number of favourites in the last week\month\whatever". But it requires extra functionality, not sure if CF team has enough resources for that.
that moment when you realize a random "how to improve?!?!?!" post got more comments than this and any recent educational blog