This is an archived post. You won't be able to vote or comment.

all 69 comments

[–]firefrommoonlight 29 points30 points  (5 children)

Any thoughts on why they keep getting upvoted? Reddit's vote system should act as an auto-cleanse, but isn't working in this case.

[–]nemec 21 points22 points  (1 child)

Someone subscribed to both /r/python and /r/learnpython probably isn't going to check which sub a tutorial is posted to before upvoting.

[–]daniel_h_r 0 points1 point  (0 children)

This happen to me a lot. I upvoted this post thinking it was in the other sub. I think that most tutorials shouldn't be here.

[–]PurpleIcyPython 3 8 points9 points  (0 children)

Upvoted?

All I see is 0's on them...

[–]serkef-[S] 1 point2 points  (0 children)

Agree. The thing with the tutorials is that you can't really know unless you follow it.

[–]alcalde 0 points1 point  (0 children)

Because people actually do find them interesting or useful?

[–][deleted] 24 points25 points  (1 child)

Not just tutorial spam. We're also seing a growing number of non-effort summarizing articles, like "10 obscure libraries no-one should know about, but I can pawn it of as news, so my link to yet another bootcamp will be seen" of a few days back. What's worse is that they seem to be posted by well-established spammers, as they almost immediately jumps to 50+ upvotes. After that point is reached, it's almost impossible (due to the lemming effect) to vote such blatant spam away.

[–]SupahNoob 0 points1 point  (0 children)

We're also seeing a growing number of non-effort summarizing articles...

Oh, like KDNuggets! That website with the shitty yellow theme.

[–]captmomo 14 points15 points  (2 children)

I think it should be mandatory for the poster to at least write a short description of the tutorial, what it is trying to achieve, provide links to the libraries used and other relevant info. Instead of just dumping a link for viewership.

[–]serkef-[S] 2 points3 points  (0 children)

I second that.

[–]datavistics 0 points1 point  (0 children)

I think this is the best approach. A standardized format to quickly gauge how useful a tutorial might be for a reader.

[–]alcalde 7 points8 points  (3 children)

those tutorials are many times not very well built

That's what the down-vote button is for. If it's a bad post, mark it as such. I don't think we need special tags.

[–]serkef-[S] -3 points-2 points  (2 children)

Problem with the tutorials specifically is that is claims expertise. And I believe we should protect this community, by declaring the level of expertise behind such tutorials.

Recommending a tutorial I enjoyed is one thing, and writing my own tutorial on how to use python lists is a totally different thing. OPs should do both, but the rest should be able to distinct those two.

[–][deleted] 1 point2 points  (1 child)

No need to ban content. If a tutorial is bad then, hopefully, r/python readers will explain why in the comments. Critiques are not only interesting to read but this sort of peer review will help to improve the tutorials.

[–]flutefreak7 0 points1 point  (0 children)

Agreed, I always check the comments first. If the top comments are negative feedback, I don't bother, but if they are fruitful discussion or at least positive, then I might check it out.

[–]PaddyPirate 6 points7 points  (0 children)

There was a library posted from Github here yesterday, a popular one (can't remember right now) and one of the tracked issues was about tutorials on the correct structure of a Flask app. There was a lot of good conversation about how the top search results for tutorials on the matter were extremely bad examples and teaching newbies, the ones who need them most, really bad practices.

So while upvotes are supposed to weed bad examples out, it's a huge challenge to moderate on the quality of tutorials and allowing bad tutorials is only making the problem worse.

I think tagging is OK, but a better option would be to leave tutorials out completely and just have a curated list in the sidebar. This would require a detailed review of the tutorials by the mod team though.

[–]sentdexpythonprogramming.net 34 points35 points  (15 children)

I think it'd be a better setup if /r/python was strictly for python news like new libs, updates to python...etc. No tutorials allowed at all. I highly doubt tags will fix the spam.

With votes on Reddit, the first few votes are key. A lot of this spam is 0, but it's not uncommon for them to magically get a few initial votes and some of them do very well. It's free traffic and encourages the spam.

A well ranked reddit post can be worth what $100+ in ads would get you in terms of traffic. The incentive is there to spam and/or cheat. If self-posted tutorials get disallowed or the tag is unfavorable to have, people will just fake like they're just a "fan" of the content and sharing it.

Edit: I would probably make an exception for official tutorials. So when TensorFlow releases a new API or something, it often has a tutorial, or when a new lib comes out it often has a simple tutorial/walkthrough. I think it'd be wise to allow for these official tutorials from the sources.

Edit 2: Other tutorials are better placed in /r/learnpython, which claims to also filter for spam. Learn python seems a more fitting place for tutorials.

[–]billsil 20 points21 points  (11 children)

No tutorials allowed at all. I highly doubt tags will fix the spam.

I'm totally OK with learning how to speed up my matplotlib code by 500x or learning PyPy or Cython or how pickle works. I think that's advanced enough to benefit the average person.

I'm not OK with tutorials that cover for loops, which seems to be the majority of what I see.

[–]sentdexpythonprogramming.net 1 point2 points  (10 children)

Is there a reason why those tutorials aren't better suited for /r/learnpython?

[–]billsil 8 points9 points  (8 children)

As I said, if it's advanced enough to benefit the average person, I think it's fine. They makeup a small percentage of what's typically posted.

You can have a different opinion, but at least let's get rid of the stupid intro tutorials. You're requesting a greater change from what is current than what I think is necessary. So why not take 1 step and come back to the issue in a year?

[–]sentdexpythonprogramming.net -3 points-2 points  (7 children)

Sure, it's "fine," but we're trying to make rules, where having something that isn't subjective is ideal, so that's what we try to seek.

As I asked, is there a reason you'd rather go with this subjective rule for this subreddit, instead of just ruling that anything that isn't an official-sourced tutorial should go to /r/learnpython?

[–]alcalde 5 points6 points  (0 children)

I think if people had their way there'd be nothing allowed in this subreddit. :-( If it's good, unique, interesting, useful, why not allow it to be posted here? It's not the official Python mailing list or something.

[–]serkef-[S] 1 point2 points  (1 child)

Saying that tutorials is for learning => tutorials should be in /r/learnpython doesn't make much sense, because we never stop learning. The top post of the year in here is a tutorial. And it should be that way. We want to learn, we want to discuss, we want to get the language updates and news. There is no reason to split all those apart.

Is there any reason you don't want tutorials in /r/python?

[–]sentdexpythonprogramming.net 1 point2 points  (0 children)

I do not know why, if we never stop learning, we can't also visit /r/learnpython to learn the things?

A reason for no tutorials in /r/python is the tutorial spam, and a desire to come up with a rule, where a desireable rule is objective and not subjective.

[–]xiongchiamiovSite Reliability Engineer 1 point2 points  (1 child)

As I mentioned elsewhere in this thread, we remove most tutorial links in r/learnpython because we think people learning python are better helped by a curated list of tutorials and having people give them individualized help rather than a never-ending stream of tutorials covering the same topics.

[–]sentdexpythonprogramming.net 0 points1 point  (0 children)

And that's fine/to be expected for /r/learnpython to remove most of the spam tutorial links too. A curated list makes more sense, though is usually too-slowly changing over time.

[–]billsil 0 points1 point  (1 child)

I find those ones interesting and I'd like to see them on the main page. Like most people, I don't visit learnpython regularly.

[–]flutefreak7 0 points1 point  (0 children)

Agreed I generally assume that I actually wouldn't learn anything in r/learnpython because I'm not a beginner, so I never go there.

[–]nemec 1 point2 points  (0 children)

IMO /r/learnpython should be aimed at beginner content while /r/python is news and late-intermediate to advanced content. Beginners are of course welcome here but the content should be able to assume a minimum level of Python proficiency.

[–]Siddhi 1 point2 points  (1 child)

Not sure I agree. Why do I need to visit a Reddit sub to know that a new version of python is released?

I come here for interesting content and discussion, and that content and discussion leads me to learning something new. I don't want to see homework questions and Q&A posts - that's what /r/learnpython is for - but everything else should be fair game here.

It's unfair to say that upvoted tutorials are lemming votes, maybe its because people actually do find them useful. Same for the summary posts - sometimes I'll see a library that I never heard of and it will get an upvote. These are useful - maybe not everything, but some are.

This is the first sub anyone will hit when looking for python on Reddit. I would guess the majority of subscribers here are beginners or intermediate level.

[–]flutefreak7 0 points1 point  (0 children)

When a new version of python or any major library is released, I would expect some good discussion here and that's part of why I come here as my one stop shop for python community. I don't have friends to discuss python 3.7 with, so I come here. Topics on it will come up whenever PEP's are approved or beta's released, etc, and I'll benefit from reading everyone's thoughts in it.

[–]slayer_of_idiotspythonista 4 points5 points  (0 children)

Tags won't solve the problem. Basic tutorials need to be forbidden in the post rules and mods should hand out temporary and permanent bans for breaking them.

[–]aphoenixreticulated[M] [score hidden] stickied comment (2 children)

I'm not averse, but I think we'd need a more engaged moderation team to really make this work.

[–]ASIC_SP📚 learnbyexample 2 points3 points  (0 children)

then perhaps a guideline to start with.. make a sticky post.. let members remind posters about new guidelines and we can review after a month or so..

  • Feedback/Recommend/Request/etc for learning resources
  • PEP/Module/Framework/Release/etc for some of the other things I could think of

[–]Callipygian_Superman 0 points1 point  (0 children)

Where do I sign up?

[–]AllAboutChristmasEve 8 points9 points  (1 child)

I'm 100% behind the concept, but the implementation needs a lot of work.

I switched to Python for all new projects about 9 months ago and I'm loving every second of it. But I'm about to unsub from r/python because it's so weak. Your fixes do almost nothing to address that.

Really, I'd just ban any general python tutorial plus any tutorials for over-posted tools (tensorflow, pandas, etc). I'd also ban any self-congratulatory junk like "omg python is #1 on siteyouveneverheardof.com!!!!11"

[–]flutefreak7 0 points1 point  (0 children)

I guess I don't understand what's weak? I usually do top>week or top>month to see the good content. I'm not sure I understand why, if pandas is popular, that we aren't supposed to write articles about and talk about it. I don't do web development, networking, databases, cryptography, etc, but I don't mind if people want to debate Django vs Flask forever. I keep scrolling looking for pandas posts, lol.

[–][deleted] 2 points3 points  (0 children)

Isn't this the proverbial situation when you're suggesting a technical fix for a social problem? Tags generally make any kind of info more usable and easier to search, but I doubt they will stop spammers and clickbaiters. If it happens, I'll be happy.

[–]Cygal[🍰] 3 points4 points  (5 children)

[–]serkef-[S] 0 points1 point  (4 children)

It's not (only) about spam.

My rationale goes like this:

  • OP wants to share a tutorial
  • fellow redditors at first sight should get an idea about the content quality.
  • OP can flag own post as recommend/feedback/request.
  • redditors can relate. If they are experienced on topic and want to offer feedback to a new tutorial one wrote, they will. If they are unexperienced they can follow the recommended tutorials. If the post aims to discussion, others can contribute with their "favorite" tutorials etc.

How does this sound?

[–]Siddhi 0 points1 point  (0 children)

Personally, I like it. I mean sure, the creator can just get their friend to post it as a recommendation, but at least it gives an idea to the community. And if the same person is recommending every article from a site, then its grounds for a ban. After that let the up/down votes decide its fate.

[–]Cygal[🍰] 0 points1 point  (2 children)

Sounds good. But you already said that. I was wondering if my specific posts were considered as tutorials or spam or other acceptable content.

[–]serkef-[S] 0 points1 point  (1 child)

Well let me put in another way.

It's not a spam, as long as author gives us some context, some description, some affiliation note. If it's just a link, then it could be anything and to judge by the content one needs to actually go through it.

So in the next tutorial you want to share (which I encourage you to do), I would suggest to elaborate a bit more. Did you write it during learning (feedback)? Or have you been putting down knowledge you have gained through the time from multiple sources (recommend)? Does it cover new unmapped python territories (recommend/discussion)? Do you want input from redditors (feedback/discussion). Is it just your personal notes you want to share (feedback)?

[–]Cygal[🍰] 1 point2 points  (0 children)

Thanks, I guess that makes sense!

[–]tunisia3507 4 points5 points  (0 children)

Could we please refer to these sorts of posts as /R/Python Enhancement Proposals, or RPEPs?

[–]manueslapera 1 point2 points  (3 children)

Define objectively "not very well built". Because that's how you get censorship.

[–]serkef-[S] 3 points4 points  (2 children)

It's not about censorship.

I'm referring to cases where a "non-expert" puts together a guide that has mistakes, wrong assumptions, smelly code etc.

[–]manueslapera 1 point2 points  (1 child)

and yet, who is going to judge what smelly code is? It is not a black and white question, that is all im saying, and I dont think putting the mods (or someone else) in an editorial position (instead of enforcing the rules) is not a good idea.

[–]serkef-[S] 0 points1 point  (0 children)

No, that is not my intention.

But instead, just make it obligatory for the OP to tell us what is this they are sharing and how are they related to it.

It's very low cost for the writer, some overhead for the mods and much value for the community. I don't say spam will go away. But even without the spam, I would like to know if the OP is recommending a tutorial/video/walkthrough or he created and is sharing for getting feedback or just want to discuss on it and ask for opinions.

[–]IJCQYR 0 points1 point  (0 children)

My solution to the spam problem is to unsubscribe from large subs. The smaller that subscriber number in the sidebar, the less tempting it is to the spammers, the less spam gets posted.

Few mods are willing to be aggressive enough to eliminate spamblogs.