I have tried to make my questions on Stack Overflow as good as possible.
First off: if your concern regards the actions of Stack Overflow users with regard to a question posted on Stack Overflow, and an objection to the apparent culture of Stack Overflow, you should ask on meta.stackoverflow.com, not here. This site is for discussing the software and the network overall - if you are complaining here about something, it should be a complaint that would make sense about other Stack Exchange sites as well, or propose policy that you think should be network-wide.
I am quite familiar with Stack Overflow's policies etc., and it makes sense that you would be concerned about similar behaviour elsewhere on the network if you encountered it; so I will answer anyway.
Onward: "trying" does not imply success. But more importantly:
They are clear, have no typos, and I even spend an extra 15 minutes making sure they are ready to post.
It appears that you fundamentally misunderstand what the standards are. "clear" does not qualify a question. More importantly, the purpose of questions on Stack Overflow is not simply for the person asking to get some specific information, i.e. personalized help. The purpose is to contribute to the library of high quality, detailed answers described in the site tour (which parallels the network-wide one).
To this end, a question that is left open needs to be:
- within the site scope, and not redundant with existing questions (so people know where to look for it)
- clearly written (so that it can be easily read), in English (so everyone knows what to expect and there are reliably people available who can read and evaluate it)
- clearly stated - i.e. describe a problem that can be understood (so that it can be answered meaningfully)
- about a problem that other people could have (so that it adds value)
- focused on one, specific issue (so that people can decide what to search for, do a search, and find the Q&A)
If we can fix these issues by editing (for example, to fix simple typos, or use clearer wording with better grammar to explain an idea that was well understood), generally we do that. Making sure that your English prose "has no typos" is the least important part of posting on Stack Overflow. (Of course, you definitely show make sure that any code posted does not have typos, and that it directly reproduces the error you are talking about.)
We close questions with the specific and direct purpose of preventing them from being answered. For duplicates, any answers should go at the duplicate target instead; for other types of questions, answers are not appropriate on the site.
In your specific case, the question was closed as off topic. I can only speculate on others' reasoning, but my guess is that they felt that the question does not represent a practical, identifiable programming problem. I would have voted instead to close the question as Needs More Focus. How-to questions on Stack Overflow need to ask about one specific, technical aspect of a project that might cause a problem for someone. "How do I train an AI model?" (the apparent substance of your question) does not qualify, and neither would e.g. "how do I make a Discord bot?" or "how do I implement [insert popular game here]?".
In other words, Stack Overflow does not host guided tutorials. The proper scope of a how-to question looks more like:
(Those are the top three questions in the Python tag that explicitly have "How do" in the title.)
Training a model obviously and inherently involves multiple steps, and it will depend upon specifically what you are training the model to do (whereas e.g. checking for a file's existence is going to be effectively the same process no matter what the name is or what it's expected to contain or why we are looking for it).
I know it is a newbie question for Machine Learning
I cannot emphasize the following point enough.
Being a "newbie", "beginner", "easy", "basic" etc. question has absolutely nothing to do with whether it should be closed or why, and your question was not closed for that reason.
Questions are closed because they do not meet the above described standards.
Meanwhile, everyone is permitted to downvote content as they see fit, for the purpose of rating its suitability for the site's goals. Not your goals. My personal policy is to downvote everything that I think should be closed, except for duplicates that present the problem clearly and have a good title. Some people have other reasons to downvote things that they don't agree need to be closed. Some people might downvote "easy" questions because they think that such questions are not useful. I think they are wrong, but this is a democratic process.
but I get so frustrated that new comers can't get any help because of people judging how their question looks at first glance. It is just sickening. I wonder if some of these people are trolls and are doing this on purpose.
I can assure you that hardly anybody "does this on purpose"; there are many checks and balances built into the system, and people with a tendency to troll will almost inevitably violate the code of conduct, in particular by leaving unacceptable comments.
I can assure you that whatever distinction you think might exist between "how the question looks at first glance" and its actual quality - per the standards we have established in order to accomplish the explicit goals of the site - is unlikely to be meaningful. It's very easy to read a question that is asking "how do I train an AI?" and see that it is not suitable for the site, and reading it more carefully doesn't change that, because it actually is unsuitable for the site.
We do not host questions because you or anyone else thinks the question is free of typos, interesting, personally important, or anything else like that. We host questions because they are valuable as part of a library of detailed, high-quality answers that can be used by others as a reference.
Newcomers absolutely can ask questions that get answered, and it happens all the time. On the other hand, I have voted to close questions that were asked by people who have had their account for more than 14 years, and left (polite, tactful) comments to explain clearly why they should know better. The question standards are exactly the same for everyone and have nothing to do with expertise.
But if you are asking a question because you just want to "get help" - without considering whether your question fits the format - without taking the time to figure out if you can ask a question that fits the format and also addresses your motivating concern - without trying to see if someone else asked it already - without trying to figure out where the problem is, or having a clear specification for the input and expected output - without trying to break the task down into logical steps and figure out what actually is causing a problem -
- then Stack Overflow is not the right place for that. By design.
I have been in several communities, such as Cloudy Nights (Astrophotography community) and even when I asked even a dumb question, they were always nice, even if they didn't have a good answer off the top of their head.
We are nice everywhere on the Stack Exchange network. As linked above, there is a very thoroughly discussed Code of Conduct, and people are expected to abide by it, and will be punished for violations.
Nothing that you describe in your post here, however, is a violation of the Code of Conduct, and nothing you describe is "not nice". Downvoting and closing questions has nothing to do with you, and is not attacking you or being mean to you. It is just conducting the site's business as normal.
When you ask a question on any Stack Exchange network site, it is not starting a "thread" on a "forum" where you are the "OP" and people are volunteering to discuss whatever it is that you're trying to figure out, and help you solve a problem. That's called a discussion forum, and there are millions of those on the Internet. But other things are allowed not to be discussion forums. Wikipedia is one of those. So is Stack Overflow.
When you ask a question on a Stack Exchange network site, rather than being "your question", it is a proposed contribution to a library. The library has an absolute right to reject such a contribution outright, and an absolute right to determine its criteria for doing so.
Anyways, I wish I had a better place to ask questions that are programming-related where people weren't so toxic and unwelcoming. Has anybody else felt this way at all about it?
Yes, countless people feel this way about it. That doesn't change the fact that this mindset is fundamentally not compatible with participating on Stack Exchange. People who feel this way generally go off and find discussion forums, and then realize that the places that let you ask whatever question you want and expect personalized help, almost always end up being vastly more "toxic" (whatever that means).
Standards like ours mean that nobody has an excuse to express anger, belittle your skill as a programmer, question your intelligence, say that you should use a different programming language / IDE / operating system etc. They mean that experts who see the same question a thousand times don't get frustrated with writing out a similar answer a thousand times and feeling like they have to customize it for everyone. They mean that when you find a question with a search engine, you can immediately tell whether it's what you wanted, directly see a clear example of the problem, easily read and understand the question. They mean that you then get high quality answers that are also written with the questioner's likely level of expertise in mind.
And almost everything that goes wrong on Stack Overflow, in my experience, is a result of not applying those standards strictly enough.