Off topic: Why is asking homework questions shunned?

Discussion in 'C++' started by Juha Nieminen, Dec 7, 2011.

  1. I was wondering: Why is it an unwritten rule that we don't answer
    clear homework questions.

    What is the purpose of homework? To emulate a problem that one might
    encounter in a real-life situation, so that one gets the experience of
    solving such problems, or to find the solution by whatever mean is
    necessary.

    Well, asking more experienced people *is* a completely valid method of
    solving a real-life problem. I do programming as my payjob, and I have
    no qualms whatsoever in asking a colleague, a programmer friend or eg.
    in this very newsgroup if I encounter a problem that I cannot figure out
    nor find a solution anywhere. (Granted, this happens very rarely, usually
    because GIYF, but it does happen on occasion.)

    When someone asks a question here, we don't know how much research they
    have done already. Of course it would be best if they explained in detail
    what research they have done already and why they have to resort to asking
    here, but even if someone doesn't think about doing that (eg. because they
    are not savvy enough to know that it's "needed"), don't they deserve the
    benefit of the doubt?

    And even if they haven't done any researching, they might still learn
    something when someone else explains the problem to them.
     
    Juha Nieminen, Dec 7, 2011
    #1
    1. Advertising

  2. On 7 Dez., Juha Nieminen wrote:
    > I was wondering: Why is it an unwritten rule that we don't answer
    > clear homework questions.

    [snip]

    There are lots of homework questions that have been answered in this
    group. Most people do not complain about homework questions per se,
    but about questions that
    (A) could have been solved by searching the net,
    (B) are in the line of: Please do my homework for me, I don't want to
    know how it works, I just want a good grade.

    Apart from those question, I can't remember the last time I have seen
    some question that has been left unanswered, even though the poster
    had made some effort to solve it himself. Could you show us?

    Besides, there is a whole group that is dedicated to learning C++,
    alt.comp.lang.learn.c-c++. That's probably a more appropriate place to
    ask such questions.

    Regards,
    Stuart
     
    Stuart Redmann, Dec 7, 2011
    #2
    1. Advertising

  3. "Juha Nieminen" wrote in message
    news:4edf1b58$0$4387$...
    >
    > I was wondering: Why is it an unwritten rule that we don't answer
    >clear homework questions.
    >
    > What is the purpose of homework? To emulate a problem that one might
    >encounter in a real-life situation, so that one gets the experience of
    >solving such problems, or to find the solution by whatever mean is
    >necessary.
    >
    > Well, asking more experienced people *is* a completely valid method of
    >solving a real-life problem. I do programming as my payjob, and I have
    >no qualms whatsoever in asking a colleague, a programmer friend or eg.
    >in this very newsgroup if I encounter a problem that I cannot figure out
    >nor find a solution anywhere. (Granted, this happens very rarely, usually
    >because GIYF, but it does happen on occasion.)
    >
    > When someone asks a question here, we don't know how much research they
    >have done already. Of course it would be best if they explained in detail
    >what research they have done already and why they have to resort to asking
    >here, but even if someone doesn't think about doing that (eg. because they
    >are not savvy enough to know that it's "needed"), don't they deserve the
    >benefit of the doubt?
    >
    > And even if they haven't done any researching, they might still learn
    >something when someone else explains the problem to them.


    The answer is in the FAQ [5.2]

    "If I did your homework for you, then you might pass your class without
    learning how to write a program like this. Then you might graduate and get
    your degree without learning how to write a program like this. You might
    become a professional programmer without knowing how to write a program like
    this. Someday you might work on a project with me without knowing how to
    write a program like this. Then I would have to do you serious bodily harm."
    [Thanks to Jack Klein]
     
    Fred Zwarts \(KVI\), Dec 7, 2011
    #3
  4. Juha Nieminen

    John Bokma Guest

    "Fred Zwarts (KVI)" <> writes:

    > "If I did your homework for you, then you might pass your class
    > without learning how to write a program like this. Then you might
    > graduate and get your degree without learning how to write a program
    > like this. You might become a professional programmer without knowing
    > how to write a program like this.


    I seriously doubt that anyone who is not interested in doing his/her
    programming homework him/herself will become a professional
    programmer. Most likely the programming excercise is just a minor part
    of his/her education and I think it's better to learn to find someone
    who actually can do it than to try to do it yourself (and ending up with
    some of the code I now and then have to face :-( )

    But I am most likely biased, since I do Perl "homework" in exchange for
    books. Most people who ask my help have already given it a try, got
    stuck, and just want to see good code. Maybe Perl is somewhat of an
    exception: most examples on the Internet are extremely bad. And based on
    the example code of some teachers I would say that one is lucky to find
    a teacher who can actually code Perl.

    Do I assist in cheating? Maybe. However, in my opinion a good teacher
    should know his/her students. And if an average student suddenly
    produces better Perl than him/her maybe he/she should start asking some
    questions ;-).

    --
    John Bokma j3b

    Blog: http://johnbokma.com/ Perl Consultancy: http://castleamber.com/
    Perl for books: http://johnbokma.com/perl/help-in-exchange-for-books.html
     
    John Bokma, Dec 7, 2011
    #4
  5. Juha Nieminen

    Christopher Guest

    On Dec 7, 12:42 pm, John Bokma <> wrote:
    > I seriously doubt that anyone who is not interested in doing his/her
    > programming homework him/herself will become a professional
    > programmer.


    You are so very wrong.

    I've already had the displeasure of having to work with several people
    I tutored in college, whom I had caught buying tests, paying others to
    do homework assignments, etc.

    They do in fact get jobs.
    Interviewing for C++ jobs is so predictable, you can almost memorize
    what you will be asked before hand and get a job without even knowing
    the difference between a reference and a pointer. Seriously.

    Those people don't last long, but they do enough damage while they are
    there to really screw up the source.


    > Most likely the programming excercise is just a minor part
    > of his/her education


    It is the amjority of their education. You learn next to nothing
    listening to an old man ramble. You learn much more by having to work
    through a problem yourself.


    > and I think it's better to learn to find someone
    > who actually can do it than to try to do it yourself (and ending up with
    > some of the code I now and then have to face :-( )


    Learn how to find the resources that _enable_ you to do it, rather
    than how someone else would do the entire problem.
    There is a huge difference between asking:

    1) "Please write a program that takes comma delimited values from a
    text file, maps them to the name in column1, sorts them
    alphabetically, and writes them to another file. How do I do this?"
    2) "I saw that I should use fstream to open a file. In my example
    code below, I successfully parsed the file contents, but when I try to
    open another file with the same fstream, it fails for some reason. Why
    can't I open the second file?"


    > Do I assist in cheating? Maybe.


    Sure sounds like it.

    When I tutored in the college lab and saw some mistake a student was
    having, or some trouble they had with a concept. I'd write a small
    example program totally unrelated to their assignment that
    demonstrated the problem and solution or concept.

    Example: They didn't virtualize a method. I'd write a console program
    with a mammal class and a dog class that was derived from mammal, give
    both a method Speak() and run it once virtualizing the base class
    method and once without, showing the difference. My example would have
    nothing to do with their real assignment where they were concerned
    with a "Person" and a "Customer", but they would get the concept and
    see their error.

    There is a huge difference between enabling someone and doing their
    work for them.
     
    Christopher, Dec 7, 2011
    #5
  6. Christopher <> wrote:
    > I've already had the displeasure of having to work with several people
    > I tutored in college, whom I had caught buying tests, paying others to
    > do homework assignments, etc.
    >
    > They do in fact get jobs.
    > Interviewing for C++ jobs is so predictable, you can almost memorize
    > what you will be asked before hand and get a job without even knowing
    > the difference between a reference and a pointer. Seriously.
    >
    > Those people don't last long, but they do enough damage while they are
    > there to really screw up the source.


    In the 80's and especially the 90's it was a commonly held belief among
    the average job-seeking (related to computers) people, that programming
    is something you can easily learn in a week or two from a book. Maybe a
    bit similar to writing reports or documentation: One might not know the
    exact formatting and layout that a company requires, but one usually learns
    it easily and quickly after a couple of days. After all, computer programming
    is a bit like writing prose, isn't it? Writing your ideas on paper isn't
    all that hard, so how hard can programming be?

    Hence it was a sadly common practice for people to secure a job first,
    "learn" to program later. I have heard of actual such cases, where eg. a
    person who applied for (and got) a job in programming C++ (I think it was
    in the 90's) had no idea whatsoever about C++ (even though it was a job
    requirement), and the first day on the job he started reading a C++ book.

    Sadly, back then the people responsible for hiring programmers had
    absolutely no knowledge of programming themselves either. To them programming
    was like magic. Some person types something in the computer, and the desired
    thing happens. They have no idea how, it just does. Not only did this cause
    employers to have completely unrealistic expectations about what could be
    achieved with computer programming, they were also extremely naive: It was
    enough for someone to *claim* that they knew computer programming, and the
    employer would believe it.

    While the situation might be a bit better today, seemingly it still is
    happening. People are applying for programming jobs with little to no
    experience in actual programming (the idea still being that they will
    "learn" it on the go), and employers being naive.
     
    Juha Nieminen, Dec 8, 2011
    #6
  7. On Dec 8, 5:28 am, "Paul" <pchrist<nospam>> wrote:
    > "Stuart Redmann" <> wrote in message
    >
    > news:...
    >
    > > On 7 Dez., Juha Nieminen wrote:
    > >>   I was wondering: Why is it an unwritten rule that we don't answer
    > >> clear homework questions.

    > > [snip]

    >
    > > There are lots of homework questions that have been answered in this
    > > group. Most people do not complain about homework questions per se,
    > > but about questions that
    > > (A) could have been solved by searching the net,
    > > (B) are in the line of: Please do my homework for me, I don't want to
    > > know how it works, I just want a good grade.

    >
    > Then tell then the answer and let them get their "grades" without
    > understanding how things work.
    > Their loss.
    >
    > What exactly is a "grade" anyway? Is it some kind of academic qualification?
    > If its that easy to cheat for good "grades" their academic qualification
    > aint work the paper its written on.


    I believe in US universities ("colleges" or "schools") they're on some
    sort of continuous assessment with frequent tests. These test are
    marked ("graded") and the cumulative total is somehow reflected in the
    final degree.
     
    Nick Keighley, Dec 8, 2011
    #7
  8. Juha Nieminen

    Waldek M. Guest

    On Wed, 07 Dec 2011 12:42:10 -0600, John Bokma wrote:
    > I seriously doubt that anyone who is not interested in doing his/her
    > programming homework him/herself will become a professional
    > programmer. Most likely the programming excercise is just a minor part
    > of his/her education and I think it's better to learn to find someone
    > who actually can do it than to try to do it yourself (and ending up with
    > some of the code I now and then have to face :-( )


    As others have already mentioned, it is simply not true (sadly).
    How upset I was when after few years of work, I met a guy
    from my university whose 90% of excercises were being copied.
    Well, he even did demand them from other students, and felt
    outraged when some of us didn't comply.

    Luckily, I didn't need to work with him and AFAIK, he
    does no longer work with us.

    Best regards,
    Waldek
     
    Waldek M., Dec 8, 2011
    #8
  9. In article <4edf1b58$0$4387$>, d
    says...
    > I was wondering: Why is it an unwritten rule that we don't answer
    > clear homework questions.
    >
    > What is the purpose of homework? To emulate a problem that one might
    > encounter in a real-life situation, so that one gets the experience of
    > solving such problems, or to find the solution by whatever mean is
    > necessary.
    >
    > Well, asking more experienced people *is* a completely valid method of
    > solving a real-life problem. I do programming as my payjob, and I have
    > no qualms whatsoever in asking a colleague, a programmer friend or eg.
    > in this very newsgroup if I encounter a problem that I cannot figure out
    > nor find a solution anywhere. (Granted, this happens very rarely, usually
    > because GIYF, but it does happen on occasion.)
    >
    > When someone asks a question here, we don't know how much research they
    > have done already. Of course it would be best if they explained in detail
    > what research they have done already and why they have to resort to asking
    > here, but even if someone doesn't think about doing that (eg. because they
    > are not savvy enough to know that it's "needed"), don't they deserve the
    > benefit of the doubt?
    >
    > And even if they haven't done any researching, they might still learn
    > something when someone else explains the problem to them.
    >

    Having been a programmer for over 50 years AND a college teacher in
    programming, I find this question somewhat annoying. If one were to
    look at the _way_ such questions are posed on the Internet (and FidoNet
    before), they are often direct quotations of the written assignment. To
    many of us, this shows a total lack of effort and initiative from the
    OP, and providing an answer in the form of code will almost certainly
    result in no more than a direct pass-through to the teacher...no
    learning or understanding achieved!
    IMO, we are immersed in a cultural world where it's all too easy to
    get an answer from the 'Net or similar sources. This is unlike the real
    world, where it's often reasonable to ask for help (or greater
    understanding of the problem) - a process which _does_ lead to problem-
    solving knowledge and "growth". Simply passing through a result
    obtained from an outside source such as a NG fails to help the
    individual - but also gives the false understanding that it's how to get
    things done. I assure you an individual who tries to get someone to do
    his/her real-life work won't last very long in _any_ endeavor. Best to
    learn this all-important life lesson early on.
    However, it is quite reasonable to point the OP in a direction that
    will get them started. There are many ways to do this _without_
    actually doing the assignment itself. Offering design advice or
    resources that can get the OP started, as well as basic approaches to
    problem-solving are fine, because learning is quite possible when the
    student actually does the work.
    Not to mention the satisfaction likely achieved by the
    accomplishment... 8<}}
     
    Mike Copeland, Dec 9, 2011
    #9
  10. In article <4edf1b58$0$4387$>, d
    says...
    > I was wondering: Why is it an unwritten rule that we don't answer
    > clear homework questions.
    >
    > What is the purpose of homework? To emulate a problem that one might
    > encounter in a real-life situation, so that one gets the experience of
    > solving such problems, or to find the solution by whatever mean is
    > necessary.
    >
    > Well, asking more experienced people *is* a completely valid method of
    > solving a real-life problem. I do programming as my payjob, and I have
    > no qualms whatsoever in asking a colleague, a programmer friend or eg.
    > in this very newsgroup if I encounter a problem that I cannot figure out
    > nor find a solution anywhere. (Granted, this happens very rarely, usually
    > because GIYF, but it does happen on occasion.)
    >
    > When someone asks a question here, we don't know how much research they
    > have done already. Of course it would be best if they explained in detail
    > what research they have done already and why they have to resort to asking
    > here, but even if someone doesn't think about doing that (eg. because they
    > are not savvy enough to know that it's "needed"), don't they deserve the
    > benefit of the doubt?
    >
    > And even if they haven't done any researching, they might still learn
    > something when someone else explains the problem to them.
    >

    Having been a programmer for over 50 years AND a college teacher in
    programming, I find this question somewhat annoying. If one were to
    look at the _way_ such questions are posed on the Internet (and FidoNet
    before), they are often direct quotations of the written assignment. To
    many of us, this shows a total lack of effort and initiative from the
    OP, and providing an answer in the form of code will almost certainly
    result in no more than a direct pass-through to the teacher...no
    learning or understanding achieved!
    IMO, we are immersed in a cultural world where it's all too easy to
    get an answer from the 'Net or similar sources. This is unlike the real
    world, where it's often reasonable to ask for help (or greater
    understanding of the problem) - a process which _does_ lead to problem-
    solving knowledge and "growth". Simply passing through a result
    obtained from an outside source such as a NG fails to help the
    individual - but also gives the false understanding that it's how to get
    things done. I assure you an individual who tries to get someone to do
    his/her real-life work won't last very long in _any_ endeavor. Best to
    learn this all-important life lesson early on.
    However, it is quite reasonable to point the OP in a direction that
    will get them started. There are many ways to do this _without_
    actually doing the assignment itself. Offering design advice or
    resources that can get the OP started, as well as basic approaches to
    problem-solving are fine, because learning is quite possible when the
    student actually does the work.
    Not to mention the satisfaction likely achieved by the
    accomplishment... 8<}}
     
    Mike Copeland, Dec 9, 2011
    #10
  11. Juha Nieminen

    Ebenezer Guest

    On Dec 8, 3:18 am, Juha Nieminen <> wrote:
    > Christopher <> wrote:
    > > I've already had the displeasure of having to work with several people
    > > I tutored in college, whom I had caught buying tests, paying others to
    > > do homework assignments, etc.

    >
    > > They do in fact get jobs.
    > > Interviewing for C++ jobs is so predictable, you can almost memorize
    > > what you will be asked before hand and get a job without even knowing
    > > the difference between a reference and a pointer. Seriously.

    >
    > > Those people don't last long, but they do enough damage while they are
    > > there to really screw up the source.

    >
    >   In the 80's and especially the 90's it was a commonly held belief among
    > the average job-seeking (related to computers) people, that programming
    > is something you can easily learn in a week or two from a book. Maybe a
    > bit similar to writing reports or documentation: One might not know the
    > exact formatting and layout that a company requires, but one usually learns
    > it easily and quickly after a couple of days. After all, computer programming
    > is a bit like writing prose, isn't it? Writing your ideas on paper isn't
    > all that hard, so how hard can programming be?
    >
    >   Hence it was a sadly common practice for people to secure a job first,
    > "learn" to program later. I have heard of actual such cases, where eg. a
    > person who applied for (and got) a job in programming C++ (I think it was
    > in the 90's) had no idea whatsoever about C++ (even though it was a job
    > requirement), and the first day on the job he started reading a C++ book.
    >
    >   Sadly, back then the people responsible for hiring programmers had
    > absolutely no knowledge of programming themselves either. To them programming
    > was like magic. Some person types something in the computer, and the desired
    > thing happens. They have no idea how, it just does. Not only did this cause
    > employers to have completely unrealistic expectations about what could be
    > achieved with computer programming, they were also extremely naive: It was
    > enough for someone to *claim* that they knew computer programming, and the
    > employer would believe it.


    One coworker explained it to me in terms of "pretenders and plumbers."
    He was a plumber who got a lot of good work done. Our boss was a
    pretender who was difficult to deal with.

    >
    >   While the situation might be a bit better today, seemingly it still is
    > happening. People are applying for programming jobs with little to no
    > experience in actual programming (the idea still being that they will
    > "learn" it on the go), and employers being naive.



    I think the situation is significantly better today than it used
    to be. Tight budgets are helping to filter out a lot of the
    pretenders.


    Brian Wood
    Ebenezer Enterprises
    http://webEbenezer.net
     
    Ebenezer, Dec 9, 2011
    #11
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Wayne...
    Replies:
    15
    Views:
    782
    Toby Inkster
    Jul 23, 2004
  2. Mr. SweatyFinger
    Replies:
    2
    Views:
    2,076
    Smokey Grindel
    Dec 2, 2006
  3. jacob navia
    Replies:
    5
    Views:
    554
    spinoza1111
    May 30, 2010
  4. FAQ server

    FAQ - What questions are off-topic for clj?

    FAQ server, Jul 31, 2006, in forum: Javascript
    Replies:
    3
    Views:
    210
    Bart Van der Donck
    Aug 1, 2006
  5. FAQ server
    Replies:
    1
    Views:
    233
    Dr J R Stockton
    Oct 16, 2008
Loading...

Share This Page