As the new semester starts soon, I am interested in research regarding the teaching of introductory programming courses. I would like to improve my university course and I am looking for scientific papers on that topic.

One trend I have seen is that some students (a smaller group) are interested in computers or they have already some programming background. They are fine and learn a lot. But the majority of students struggle at the first step of programming (hard to set up Eclipse, a lot of errors at the beginning, etc.). Is this just my view or is this documented in literature?

I would like to make this 'first step' into programming as easy as possible for students. As a first start I found "A Gentle Introduction to the Art of Object-Oriented Programming in Java"

  • 9
    $\begingroup$ It's horrible to think that the first step of programming is setting up eclipse. $\endgroup$ – Dave Clarke Sep 7 '12 at 6:05
  • $\begingroup$ The answers to this question may contain useful material for you. I also know that there is lots of material on the webs, what have you found googling? $\endgroup$ – Raphael Sep 7 '12 at 7:30
  • $\begingroup$ Regarding your comment: I'm not wholly convinced that this is an appropriate place for this question, and continue to be confused that the community seems to welcome questions about programming education, and not programming. That being said, in my humble opinion, if part of teaching a first course in programming is setting up Eclipse, I feel like something is being done irreparably wrong. $\endgroup$ – Patrick87 Sep 7 '12 at 15:46
  • $\begingroup$ @Patrick87: So is spending the first month teaching how to use a terminal, navigate the Unix filesystem, and run a compiler via command line an appropriate part of an introductory programming course then? $\endgroup$ – Adam Parkin Sep 11 '12 at 20:18
  • $\begingroup$ @AdamParkin No, I don't feel like that's a good part of a first course in programming, either. We may have different definitions of "setting up"; while it's not programming, making sure students know how to compile and run code is something that needs to be done, whether it's taught or not. $\endgroup$ – Patrick87 Sep 11 '12 at 22:31

Here's a survey paper and there are others.

You might want to consider the inverted method also known as outside-in, which differs from the traditional bottom-up approach.

This article on the application of problem-based learning to first year programming reports some successful results, mainly in terms of secondary skills learned by students. The cost is a major investment and restructuring by those involved.

| cite | improve this answer | |

Here is a new ars technica article entitled Is it true that "not everyone can be a programmer"? on teaching programming including academic papers analyzing the efficacy of teaching methods/approaches and capability of students, two stack exchange questions on the subject, Jeff Atwood's opinion etc.

| cite | improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.