New users/programmers
-
- Posts: 1215
- Joined: Tue Jan 09, 2007 7:03 pm
- Location: Leuven, Belgium
New users/programmers
I don't know what the general opinion on this is, but something is bothering me
I see a lot of beginner programmers on this forum posting threads which all come down to:
"I tried something, it didn't work, I don't know what the error code means, please throw working code at me"
A lot of these threads get replies from more experienced users with actual working code; while this will fix the OP's problem, he won't be gaining anything from it since he isn't learning anything at all, and he will probably come back a couple of days later because he ran into another problem
I come from an OS development scene, and the policy on those forums is the following:
1. If you have a question and we see that you don't understand the language you're working with, we'll point you to a general programming forum
2. If you do understand your language and error codes, we'll try to help you fix your problem by giving a global description of how your problem could be tackled, but we never give full working code (pseudocode can be OK in some cases)
I've seen a lot of people new to the scene evolve to experienced OS hobbyists in mere months, and I think the irrlicht forum could greatly benefit from this too
As I said, I don't know what the general opinion on this is, so please reply
I see a lot of beginner programmers on this forum posting threads which all come down to:
"I tried something, it didn't work, I don't know what the error code means, please throw working code at me"
A lot of these threads get replies from more experienced users with actual working code; while this will fix the OP's problem, he won't be gaining anything from it since he isn't learning anything at all, and he will probably come back a couple of days later because he ran into another problem
I come from an OS development scene, and the policy on those forums is the following:
1. If you have a question and we see that you don't understand the language you're working with, we'll point you to a general programming forum
2. If you do understand your language and error codes, we'll try to help you fix your problem by giving a global description of how your problem could be tackled, but we never give full working code (pseudocode can be OK in some cases)
I've seen a lot of people new to the scene evolve to experienced OS hobbyists in mere months, and I think the irrlicht forum could greatly benefit from this too
As I said, I don't know what the general opinion on this is, so please reply
-
- Posts: 758
- Joined: Mon Mar 31, 2008 3:32 pm
- Location: Bulgaria
I think it`s OK, nobody`s born a programmer. Starting to learn programming while trying to create some simplistic game (but with almost zero knowledge and great expectations) makes it much easier to start and soon or later this person will start on his own.
About point 1 and 2, well I guess this is what makes this community different from the others, and in a good way IMO.
I think if we cut this kind of help we`ll lose those users, which will move to another, maybe easier engine. Plus, everybody`s giving his opinion/help/advice by free will, so if somebody doesn`t want to give a hand for sth that is too obvious to him, he doesn`t have to. He`s free not to enter the "Beginner`s help" section too. Telling someone to link the needed libs is not such a pain or time wasted. It`s like to say "Mothers, don`t help you babies to start walking with each step, because they`ll learn to walk that way and will always call you to help them walk even when the`re say 40?!" Which, may really decrease the time babies learn to walk on their own, but unfortunately will increase the percent of babies with broken noses, hands, heads, knees and necks...I've seen a lot of people new to the scene evolve to experienced OS hobbyists in mere months, and I think the irrlicht forum could greatly benefit from this too
About point 1 and 2, well I guess this is what makes this community different from the others, and in a good way IMO.
"Although we walk on the ground and step in the mud... our dreams and endeavors reach the immense skies..."
-
- Posts: 1215
- Joined: Tue Jan 09, 2007 7:03 pm
- Location: Leuven, Belgium
I'm not saying we should drop all help for inexperienced users, I'm saying we should help them in another way.shadowslair wrote:I think it`s OK, nobody`s born a programmer. Starting to learn programming while trying to create some simplistic game (but with almost zero knowledge and great expectations) makes it much easier to start and soon or later this person will start on his own.
I think if we cut this kind of help we`ll lose those users, which will move to another, maybe easier engine. Plus, everybody`s giving his opinion/help/advice by free will, so if somebody doesn`t want to give a hand for sth that is too obvious to him, he doesn`t have to. He`s free not to enter the "Beginner`s help" section too. Telling someone to link the needed libs is not such a pain or time wasted. It`s like to say "Mothers, don`t help you babies to start walking with each step, because they`ll learn to walk that way and will always call you to help them walk even when the`re say 40?!" Which, may really decrease the time babies learn to walk on their own, but unfortunately will increase the percent of babies with broken noses, hands, heads, knees and necks...I've seen a lot of people new to the scene evolve to experienced OS hobbyists in mere months, and I think the irrlicht forum could greatly benefit from this too
About point 1 and 2, well I guess this is what makes this community different from the others, and in a good way IMO.
If you don't understand the language you're working with, you aren't going to increase your understanding by letting someone else write code for you
You will however increase your understanding when you're offered documentation on how the language is structured, how its principles work, how to read API's, how to read error codes, etc.
This could be in the form of a book, a tutorial, a forum post, or whatever you see as good documentation.
If a posted problem is actually irrlicht-related however, you could help by giving references to the API (which in irrlicht's case is available in a well-documented form online), or by explaining which elements in the engine could be used to solve the problem so the user can create his own implementation.
I think you can agree with me on the fact that you always remember (parts of) concepts/techniques which you built yourself in different projects, leading to increasing quality of your projects as time progresses, as opposed to using code someone else made (I'm not saying people should re-invent the wheel for everything they want to do, but I learned from experience that writing code yourself allows for greater productivity in graphics/game programming)
Babies do learn how to walk by falling and getting up again (and by repeating this process), but in the end it's the baby who has to do the walking while the mother can only help by supporting the child and by comforting it when it falls.
A programmer could let someone else do the work for him, slap his own name on it and get the same result as by coding it himself, but he will not have gained any experience by doing so.
Good programming practices start by learning the basics and by gaining experience by learning the basic principles, reading up and doing research, asking good questions, and experimenting with the code yourself (preferably applying the KISS* principle)
*KISS: Keep It Simple, Stupid!
-
- Posts: 758
- Joined: Mon Mar 31, 2008 3:32 pm
- Location: Bulgaria
The beginner forum is deliberate not just for Irrlicht beginners but also for people which are rather new to programming. A lot of people start coding because they want to do computer games. And we have a big community here with many people who started coding that way themselves, so we often can help them with their first steps. So why send them away instead of just helping? I wouldn't even know where to send them - I think we already have a rather good place for newbies here. And I've also seen several programmers here get better way faster than I did in my time (which was in the pre-net-stone-age...).
Also we usually do recommend pretty soon getting deeper into examples, documentation or c++ programming when a new user asks several times simple questions. But no need to scare people away on the first few posts - everyone does a few stupid questions when he's new.
I don't worry much about too detailed answers, I think people who want to learn will read them careful and try to understand and will be happy about every detail. If some beginners just copy-paste stuff that seems to work instead of really understanding it they will be back with the next question soon - and chances increase each time that someone pushes them then towards really learning the stuff.
Recommending to read documentation and examples is certainly always ok :-)
Also we usually do recommend pretty soon getting deeper into examples, documentation or c++ programming when a new user asks several times simple questions. But no need to scare people away on the first few posts - everyone does a few stupid questions when he's new.
I don't worry much about too detailed answers, I think people who want to learn will read them careful and try to understand and will be happy about every detail. If some beginners just copy-paste stuff that seems to work instead of really understanding it they will be back with the next question soon - and chances increase each time that someone pushes them then towards really learning the stuff.
Recommending to read documentation and examples is certainly always ok :-)
Last edited by CuteAlien on Wed Dec 22, 2010 5:57 pm, edited 1 time in total.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
I think part of the issue is that of a new programmer, barely grasping the language trying to start out on a 3d graphics engine. I know that when I started out learning to program, I had a 3d game in mind, however I told myself that until I get a grasp on things I'd create a simple 2d shooter. I used a few of the SDL libraries along with this tutorial set.
I won't say that this is the best way to learn to program a game, however starting out with Irrlicht after only running through a part\whole C++ book creates a steep learning curve...
As to just pitching answers to newer folk... Many of the questions about linking the libraries and getting rid of the classical "undefined reference to createDevice(...." can be boiled down, and added to the wiki so all we have to do is link them to it. I like to believe that most folks want to understand how things work, but having worked in the computer lab of my college, there's considerably too much traffic at the beginning of a semester of "It doesn't work, fix it for me."
shadowslair brought up a good point... If it's easier to post in a forum instead of read through tutorials\readme's\documentation, then why do so? We live in a society (at least in the US) of boiling things down so people don't have to think.
I won't say that this is the best way to learn to program a game, however starting out with Irrlicht after only running through a part\whole C++ book creates a steep learning curve...
As to just pitching answers to newer folk... Many of the questions about linking the libraries and getting rid of the classical "undefined reference to createDevice(...." can be boiled down, and added to the wiki so all we have to do is link them to it. I like to believe that most folks want to understand how things work, but having worked in the computer lab of my college, there's considerably too much traffic at the beginning of a semester of "It doesn't work, fix it for me."
shadowslair brought up a good point... If it's easier to post in a forum instead of read through tutorials\readme's\documentation, then why do so? We live in a society (at least in the US) of boiling things down so people don't have to think.
The Open Descent Foundation is always looking for programmers! http://www.odf-online.org
"I'll find out if what I deleted was vital here shortly..." -d3jake
"I'll find out if what I deleted was vital here shortly..." -d3jake
-
- Posts: 1215
- Joined: Tue Jan 09, 2007 7:03 pm
- Location: Leuven, Belgium
Maybe a sticky with links to good C++ tutorials and common programming errors and problems in the beginner forum could help then, as long as users are reminded there is such a sticky
And I really don't want to scare off new users, new users can only help the engine grow, but I just think we could benefit from a method for helping new users become contributing members efficiently
Maybe I'm viewing this too much from an engineers point of view instead of from a hobbyists point of view
And I really don't want to scare off new users, new users can only help the engine grow, but I just think we could benefit from a method for helping new users become contributing members efficiently
Maybe I'm viewing this too much from an engineers point of view instead of from a hobbyists point of view
-
- Competition winner
- Posts: 1123
- Joined: Sun Jun 10, 2007 11:14 pm
Yes, that is what the sticky FAQ is for - which starts with a link to a c++ tutorial and then goes on mentioning a few common problems. Also we occasionally remind new users of that. I think the tread is not locked - so if you miss something in there just add it.Radikalizm wrote:Maybe a sticky with links to good C++ tutorials and common programming errors and problems in the beginner forum could help then, as long as users are reminded there is such a sticky
About the idea from Lonesome Ducky about splitting it further - it's maybe a good idea, but I'm not sure if new users will be able to know if their problem is about programming problem or about the engine. We already move questions from advanced to beginners once in a while. There's this strange correlation going on that the less someone knows the more advanced he thinks the questions is and also just the other way round - advanced people will put the hardest questions into beginner :-)
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
-
- Posts: 1215
- Joined: Tue Jan 09, 2007 7:03 pm
- Location: Leuven, Belgium
That's why I always check both beginner and advanced forums to see if I can help someone, which resulted in me seeing a lot of these 'my code doesn't work, please fix it for me' threads, which then resulted in me creating this thread ^^CuteAlien wrote: There's this strange correlation going on that the less someone knows the more advanced he thinks the questions is and also just the other way round - advanced people will put the hardest questions into beginner
I don't know how big or how active the group of moderators is here, but the problem between knowing whether to post in the programming forum or in the beginner forum could be handled by the mods moving the threads (if they would be willing to do this), as I don't think there'll be such a massive flow of misplaced threads so the mods can't handle it anymore
But the thought of having thousands of miss-categorized old posts in the forum would probably drive half the coders into madness ^^Radikalizm wrote: I don't know how big or how active the group of moderators is here, but the problem between knowing whether to post in the programming forum or in the beginner forum could be handled by the mods moving the threads (if they would be willing to do this), as I don't think there'll be such a massive flow of misplaced threads so the mods can't handle it anymore
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
-
- Admin
- Posts: 14143
- Joined: Wed Apr 19, 2006 9:20 pm
- Location: Oldenburg(Oldb), Germany
- Contact:
The way I usually handle this is to answer in the beginners section as fast and as short as possible. This will leave enough work for the original poster where the learning takes place. And it avoids others to answer, which might be too specific and detailed. But I don't think that we need rules for this. If people want to help further, or beginners are too lazy to really learn that stuff, it's not our job to prevent them from doing so.
<warning, aggressive stance in progress>
I truly hate the stupidity of a 'go read something to understand it' answers. If you dont want to help, then dont. It's really that simple. Noone on this forum is asking anyone else to change their life, teach them some personal life changing method for post graduate learning or to help them become the world's greatest programmer. They are just simple folk who are trying their best to learn a little bit about programming in the few hours that they have available during the week. They really dont just hit a small snag and immediately post for working code. More likely, they already spent FAR more time searching, trying and coding for the answer than they have to spare, but just dont get it. Most on this forum are just hobbyist programmers and not professional coders. Posting that someone should go read the API is just arrogance in action, directed more towards making the poster feel superior than actually helping the person with the question. We answer some questions but not others. I assume that means that we are selecting what topics are newbie questions that someone needs to just 'go read the docs' on, and others are truly worthy of our time to actually help someone. I again sumbit that this has more to do with the person answering the post than the original poster. Where the line is drawn is just determined by the person answering, not the level of the OP. So if you feel that the newbie needs to go read the docs and you certainly arent going to program this for him/her because you feel that they should learn it themselves, then maybe you arent the target audience for the question and you can just skip it to go give your ultra high level programming advice to the people who ask 'real' questions. The OP wont miss your smugness, and the people that you do answer will certainly appreciate your code. I talso gives the intermediate level folks a chance to step up and help the newbies, the same way that someone stepped up and helped them. Otherwise, there is no need for a forum at all. We can simply put a webpage out on the net that boldly states for everyone who visits, the the API documentation is at www.irrlicht.API.com and that any and all questions should be easily answered there.
As I said, it is an aggressive rant, but I stand by my thoughts on it.
Seven
I truly hate the stupidity of a 'go read something to understand it' answers. If you dont want to help, then dont. It's really that simple. Noone on this forum is asking anyone else to change their life, teach them some personal life changing method for post graduate learning or to help them become the world's greatest programmer. They are just simple folk who are trying their best to learn a little bit about programming in the few hours that they have available during the week. They really dont just hit a small snag and immediately post for working code. More likely, they already spent FAR more time searching, trying and coding for the answer than they have to spare, but just dont get it. Most on this forum are just hobbyist programmers and not professional coders. Posting that someone should go read the API is just arrogance in action, directed more towards making the poster feel superior than actually helping the person with the question. We answer some questions but not others. I assume that means that we are selecting what topics are newbie questions that someone needs to just 'go read the docs' on, and others are truly worthy of our time to actually help someone. I again sumbit that this has more to do with the person answering the post than the original poster. Where the line is drawn is just determined by the person answering, not the level of the OP. So if you feel that the newbie needs to go read the docs and you certainly arent going to program this for him/her because you feel that they should learn it themselves, then maybe you arent the target audience for the question and you can just skip it to go give your ultra high level programming advice to the people who ask 'real' questions. The OP wont miss your smugness, and the people that you do answer will certainly appreciate your code. I talso gives the intermediate level folks a chance to step up and help the newbies, the same way that someone stepped up and helped them. Otherwise, there is no need for a forum at all. We can simply put a webpage out on the net that boldly states for everyone who visits, the the API documentation is at www.irrlicht.API.com and that any and all questions should be easily answered there.
As I said, it is an aggressive rant, but I stand by my thoughts on it.
Seven
Hehe... when I read the first post of this topic the name 'Seven' immediatly came into my mind and now he is the one critizing people for not helping newbies in the way he does. (No offense)
However I'd say we should just keep things as they are. If people will post fully working code to newbies they should continue doing so. It's their time they spent on writing and debugging this code.
Today I'm very glad that people didn't throw working code at me when I started programming. If they had I probably would have searched another hobby.
If newbies don't want to read the API/Docs they can simply ignore the posts telling them to do so, can't they?
However I'd say we should just keep things as they are. If people will post fully working code to newbies they should continue doing so. It's their time they spent on writing and debugging this code.
Today I'm very glad that people didn't throw working code at me when I started programming. If they had I probably would have searched another hobby.
If newbies don't want to read the API/Docs they can simply ignore the posts telling them to do so, can't they?
Software documentation is like sex. If it's good you want more. If it's bad it's better than nothing.