-32

SO has helped me so much in times of need. It is crazy - sometimes I am having a huge issue with a program I'm working on at school or work, and I post it on SO and the answers come quickly and easily. Lots of time it's a typo, while others it's a deep misunderstanding of mine.

I wonder how I can fit in here at Stack Overflow. How I can contribute. In fact, I feel such a “beginner”, I don't even know where to look half the time. But I see there is now a place for /Programmers/ which leads me to wonder if there can be a site for beginners - and strictly beginners. Beginners post in Stack Overflow, and only beginners can post answers. Meaning, you must ask a question in the beginners forum in order to answer one. Or something, I'm not sure, I just want a place to connect with others who are just starting out how to learn about programming, and want to get the chance to answer other beginner questions so I can learn more (you learn 40% of what you do and 90% of what you teach).

What do you all think about this?

9
  • 11
    You are a beginner, and you get answers to your questions. I'm puzzled why you'd want something different? Good questions is your way of contributing..
    – yannis
    Commented Jul 10, 2012 at 5:54
  • 1
    I meant more of a place that is strictly for beginners - those who are still in college and taking courses on it, or going into internships where they have yet to be exposed to much, or people who arent in college yet and are futzing around on their own as a hobby. Sometimes I feel like the SO answers my questions very well most of the time, but I feel like someone who is learning it or has just learned it recently can give more insight into fundamental understanding which must accompany it. I don't know how many people here are beginners because most of the questions I see are advanced. Commented Jul 10, 2012 at 5:58
  • 4
    The main problem is that it's extremely hard to define a "beginner", in a sense we are all beginners in something. For example, I'm quite familiar with 5 or 6 programming languages, but I'm a total noob when it comes to the dreaded monstrosity that is Haskell. Should I post on SO proper or SO beginners? On the one hand my question will be trivial to Haskell aficionados, on the other I'm quite well versed on programming in general to cope with non trivial answers to my trivial question.
    – yannis
    Commented Jul 10, 2012 at 6:02
  • 2
    (cont...) And would experienced Haskell developers hang around the beginners site? Why would they, what's to keep them interested and engaged? If they don't, why would I post there and not on SO proper, thus returning exactly where we started?
    – yannis
    Commented Jul 10, 2012 at 6:03
  • 9
    Beginners post in the SO, and only beginners can answer in it. that can't really lead to quality content, can it? SO's quality comes from the "peer review" type situation that can correct errors
    – Pekka
    Commented Jul 10, 2012 at 6:06
  • I guess its a personal choice, but the point of posting in a beginners-only forum is that for whatever reason, you are in the process of learning something new, and would have less than intermediate experience in it. Commented Jul 10, 2012 at 6:08
  • The reason why that would be useful is as follows: -> As a beginner, you can see what other people who are just starting out like you have trouble with, or are currently asking about -> Beginners frequently can ask questions that are similar to other questions which have answers. A beginner who has just asked a question is much more likely to give that piece of knowledge to a new beginner who may ask a very similar question. ->beginners also can learn something new while they try to answer the questions. Commented Jul 10, 2012 at 6:11
  • This is a very agile way of learning, because instead of simply relying on older, tried and true responses, beginners, whether it be in a C++ class or mobile development, dont need to look for the "best practices" but what makes the most sense to them in the context they are learning it. Commented Jul 10, 2012 at 6:13
  • 2
    Maybe you want to look at chat.stackoverflow.com rooms. Commented Jul 10, 2012 at 6:37

2 Answers 2

17

As the Dis Count wrote in a comment,

Beginners post in the SO, and only beginners can answer in it. that can't really lead to quality content, can it? SO's quality comes from the "peer review" type situation that can correct errors

You can easily observe the lack of this effect in tags where there are a lot of beginners and few experts: the quality suffers, as most of the answering, voting, and critiquing is done by those who are least able to evaluate the quality and accuracy of what they're reading.

I suspect there are more than a few people who would be in favor of such a site simply as a ghetto in which to push questions they find boring or trivial. But this is even less reason for a beginner to want such a thing.

When it's working properly, SO offers a healthy symbiosis of beginners asking and experts answering (or critiquing other answers). Dividing it up hurts both.

13
  • 1
    Well...I'm envisioning more of a place where it would go like this: "I just learned how to implement a Vector class and I'm confused about this **" Responses: "I covered this recently, read an excellent source here about it. *gives relevant information that is very up-to-date because it was just recently learned The idea is to keep things 'fresh' and 'new' and to encourage collaborative ways of self learning and innovating amongst others who are fresh in the field. If the question goes beyond the scope of a beginner question, at least beginners can form a cohesive thought before postingit Commented Jul 10, 2012 at 6:14
  • well not "dividing" it per se. Just giving a much less trafficed site for low-priority questions beginners have on programming, where other programmers who are just "diving into" this or that langage or aspect of programming really get to learn WITH others. Commented Jul 10, 2012 at 6:20
  • The problem with that is that, for any given topic, there are a lot more beginners than there are seasoned experts. You can't hope for a low-traffic beginners' site without also hoping for a failed beginners' site.
    – Shog9
    Commented Jul 10, 2012 at 6:22
  • 4
    @user1274649 Theoretically it could work, but unfortunately we have seen in the past that most people will be in favor of such a site simply as a ghetto in which to push questions they find boring or trivial.
    – yannis
    Commented Jul 10, 2012 at 6:22
  • I see SO as a very "professional" community and think a beginners forum would be less like a "ghetto" but more like a laid-back education-styled community. Imagine all the uni kids in the world who are taking a Data structures class in the same semester or a semester apart, or intro to C++ for the first time, and instead of getting homework help from their buddies, they can get fundamental understanding by helping others like them. It can be extrapolated not to just specific courses, but people bent on learning a new language from scratch or even specific frameworks like MVC. Commented Jul 10, 2012 at 6:22
  • working with others who are on your level can also have a lot of psychological benefits, feeling of belonging and etc. Maybe im more of the compassionate type because of my gender. Commented Jul 10, 2012 at 6:24
  • I definitely see all the drawbacks, I just have yet to find a place where I feel a sense of belonging as a new programmer in a sea of experienced ones. I cant help, I'm just stupid, useless, and bad at programming because I cant answer anything. But when I do my homework assignments or an internship task I feel great because its at my speed. Commented Jul 10, 2012 at 6:26
  • 2
    @user1274649 No one cares if you can't answer anything, as long as you keep asking good questions - provided they are actually good, trivial questions are not bad as long as they are on topic and you've done at least some effort to solve the problem yourself. We all started somewhere and we all were beginners once. If anyone makes you feel inadequate, make sure to flag their comments and the moderators will take it from there.
    – yannis
    Commented Jul 10, 2012 at 6:28
  • Thanks @YannisRizos I appreciate that Commented Jul 10, 2012 at 6:39
  • 8
    @user1274649 No problem. While going through your questions, I've found something that I'm not sure you realized, in one of them you got a couple of comments from Eric Lippert, a principal developer on the C# compiler team. You asked a C# question, and got feedback from one of the designers of the freaking language! Are you sure you'd prefer it if you posted it in a beginners only site?
    – yannis
    Commented Jul 10, 2012 at 6:45
  • 4
    @user1274649 - Yannis's message about your comment from Eric highlights another point: Smart people surround themselves with people smarter than themselves. If you only surround yourself with people who are only as smart as you are and you don't challenge yourself, you stunt your growth. Get out of your comfort zone; you'll be better off :)
    – jmort253
    Commented Jul 10, 2012 at 7:39
  • @YannisRizos really? thats incredible. I think the answers here swayed my viewpoint by alot. :) Commented Jul 10, 2012 at 18:22
  • What do you guys think about a networking aspect of SO to connect professionals with beginners, beginners with beginners and everyone in-between? I think this would promote a lot of collaboration and help so many people!
    – Goahnary
    Commented Sep 25, 2014 at 18:21
-2

From the post,

Beginners post in the SO, and only beginners can answer in it.

The latter would be a mistake. Let the experts who are willing take the time to help answer it.

On StackOverflow, there is a bit of unwillingness to help beginners and sometimes even mockery. So, slide those over to people interested in helping and eliminate the rejection of questions for not matching StackOverflow's mission which are going to keep coming.

From the comments below:

I am a firm believer in always giving answers that solve questions in the best possible manor, rather than intentionally using a method that I know is not a good solution to the problem. This is especially true for newer programmers. Teaching them how to do things properly, from the start, is quite important. If you teach them techniques that are "simpler" but also undesirable then you're just building bad habits that will need to be un-learned later.

The point is as incorrect for professionals as non-professionals and thus represents a problem with StackOverflow as a whole.

First and foremost, the question must be answered as asked. Any failure to do so is discouraging, unhelpful, a waste of bandwidth and self-serving. Professional or non, they asked the question that way for a reason.

We must focus on this point. "[I]ntentionally using a method that I know is not a good solution to the problem." is not your concern. They may have a problem bounded by a constraint of a teacher, a compiler, a bug, 100 years of collective experience in another language, or a manager's refusal to use something different. If you can't help them with their problem, you shouldn't.

They may be working on a very large system where changes are required to be minimal. They may be choosing (or required) to do something the hard way to learn. It doesn't matter. They want to know. The particular question was partially skipping C++ array and pointers and going to std::vector. This makes StackOverflow a proponent and contributor to the Java School problem -- while even staying in C++.

Second, add the better and best ways to solve the problem. This is what you want to do, but it must come after addressing the initial problem.

I support both "best possible" and "as asked." But, there is a dividing line between the two. The question I quoted was "closed as too localized... This question is unlikely to help any future visitors..."

That is why we need to differentiate between the two situations: StackOverflow gets, and will continue to get, questions where someone wants to learn or do something that you and I would see as "not a good solution" or that is a particular bug or issue not of interest to the general community. StackOverflow closes those issues.

But, those people need help, too, which is not the mission of StackOverflow.

16
  • I have noticed no unwillingness to help beginners at all; in fact most of the more active (and voted on) questions tend to be very basic level questions. If you see mockery flag it and it will be quickly removed. If a question is considered outside of the scope of acceptable SO questions it doesn't matter if it's a beginner question or not, it's out of scope. Having a place for all of the questions SO thinks aren't good enough to be questions at all would just be full of garbage. The reason SO considers them out of scope is that it's too hard to generate quality answers for such questions.
    – Servy
    Commented Sep 18, 2012 at 20:04
  • In my short time on StackOverflow, I've seen far too many comments that were not professional and far too many that disregarded what the beginner was trying to learn. And, sadly, these came from people with high reputation. Now, maybe this is a bad week. But, the message comes across clear. And, yes, its very hard to help beginners -- thats why it should be out of the scope of StackOverflow in moved where a smaller community willing to help can manage. Commented Sep 18, 2012 at 20:09
  • 2
    It's important to separate being new to stackoverflow.com and being new to programming in general. Many people who are new to stackoverflow.com have problems understanding and following the rules, and tend to not get helpful responses as a result. Whether they are brand new programmers or experienced professionals doesn't change that, and moving them to a new site won't change that either. When people follow the SO guidelines and ask proper questions they tend to be well received and generate very helpful answers regardless of the skill level of the poster.
    – Servy
    Commented Sep 18, 2012 at 20:13
  • Thats fine. There are processes for dealing with new to StackOverflow. You need processes for dealing with new to a language or programming in general. Commented Sep 18, 2012 at 20:15
  • My point is that you don't. The vast majority of the problems that "new to programming" programmers have on SO are because they are new to SO. Once they learn how to use SO properly, even if their questions are at a very basic level, tend to generate very positive results already so there is nothing that needs changing.
    – Servy
    Commented Sep 18, 2012 at 20:46
  • Based on my limited, short viewing, (obviously) I disagree. And I think the most telling thing about it is that I am glad I didn't have StackOverflow when I was learning -- based on what I have seen. Frankly, that alone should be a 'hold the phone', but it isn't. Commented Sep 18, 2012 at 21:03
  • I'd like to see examples then. I've been around for a while (not as long as a lot of people though) and have not seen what you're describing (at least not outside of rare edge cases that tend to be swiftly remedied).
    – Servy
    Commented Sep 18, 2012 at 21:09
  • This recent one. Neglecting the issues of "new to Stack Overflow" such as not detailing what parts of C++ the person was allowed to use, the "great" answers are the professionally right answers of use vectors and templates. But that doesn't help the new programmer to the language learn what they were working on -- and thus learn. The discussion in the Lounge<C++> chat room backed this up. Commented Sep 18, 2012 at 21:14
  • I am a firm believer in always giving answers that solve questions in the best possible manor, rather than intentionally using a method that I know is not a good solution to the problem. This is especially true for newer programmers. Teaching them how to do things properly, from the start, is quite important. If you teach them techniques that are "simpler" but also undesirable then you're just building bad habits that will need to be un-learned later.
    – Servy
    Commented Sep 19, 2012 at 13:35
  • Responded by edit of answer. Commented Sep 19, 2012 at 16:01
  • I find your comments rather entertaining. Your solution to that specific question violates the constraints given in the problem. It says to not use a pointer, and you use a pointer. They used "more complex" solutions specifically to get around that constraint. Note that I never argued here that one should violate constraints given in a problem (although I do believe in questioning whether constraints actually need to be followed; often they don't).
    – Servy
    Commented Sep 19, 2012 at 16:06
  • I'm glad you are personally entertained. The constraint, albeit poorly stated and vague, was a range of what was taught. The disguised pointer was an attempt from what information was given and a knowledge of C++ and how things can be taught, to give an answer likely taught. The "best possible" answer alone tells people "we don't have time for your question that only serves you" and "we don't care that you have constraints." The education is missed and the question might not be answered, but we have up-votes and feel good we told them the "best possible" answer. Commented Sep 19, 2012 at 16:18
  • I fail to see how "education was missed". The best solution to that problem is to use a vector. That's the message of the post, and that's what the OP hopefully took away from that thread. That's what he should take away in my eyes.
    – Servy
    Commented Sep 19, 2012 at 16:31
  • Education was missed in that rather than failing to learn what he was doing, he moved on to something "easier". So, he has now been to a "Java School" that didn't teach important skills because they are "too hard." The best solution was to use what he was taught and expected to use. The best solution was to actually learn the language so that when it mattered, they know. And, after all that, the best answer is to use the vector when allowed. Commented Sep 19, 2012 at 16:40
  • Wait, what? You're saying that the other answers provided answers that oversimplified and didn't try to actually teach the more complex language concepts to the student? Weren't you earlier just saying that their answers were too complex and utilized language features that the OP wouldn't understand or be able to use at his skill level? SO which is it, was their answer overly simple or too complicated?
    – Servy
    Commented Sep 19, 2012 at 16:47

Not the answer you're looking for? Browse other questions tagged .