Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Core Java
Blue—a language for teaching object-oriented programming
SIGCSE '96 Proceedings of the twenty-seventh SIGCSE technical symposium on Computer science education
Jumping into Java: object-oriented software development for the masses
ACSE '98 Proceedings of the 3rd Australasian conference on Computer science education
Java as a teaching language—opportunities, pitfalls and solutions
ACSE '98 Proceedings of the 3rd Australasian conference on Computer science education
In search of the inverse curriculum
Proceedings of the 2nd Australasian conference on Computer science education
Problem-based learning of first year computer science
ACSE '96 Proceedings of the 1st Australasian conference on Computer science education
The design of an experiential component for a formal methods computer science subject
ACSE '96 Proceedings of the 1st Australasian conference on Computer science education
What is a good first programming language?
Crossroads
Learning objects in a multimedia interactive environment: the codewitz project
CompSysTech '04 Proceedings of the 5th international conference on Computer systems and technologies
Guidelines for a multiple-goal CS introductory course: algorithmic problem-solving woven into OOP
ITiCSE '05 Proceedings of the 10th annual SIGCSE conference on Innovation and technology in computer science education
Teaching parallel computing to science faculty: best practices and common pitfalls
Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming
ACE '06 Proceedings of the 8th Australasian Conference on Computing Education - Volume 52
Parson's programming puzzles: a fun and effective learning tool for first programming courses
ACE '06 Proceedings of the 8th Australasian Conference on Computing Education - Volume 52
Teaching high performance computing to undergraduate faculty and undergraduate students
Proceedings of the 2010 TeraGrid Conference
Assessment frequency in introductory computer programming disciplines
Computers in Human Behavior
Hi-index | 0.00 |
Over the years there has been an ongoing debate about which computer language to adopt for a first programming subject. Although some may not agree, the current consensus is that the object-oriented languages are winning the argument, and Java has increasingly become the language of choice for teaching beginners. But choosing the language is only the first step in designing a first programming subject. The adoption of an object-oriented language such as Java offers an opportunity to completely rethink our approach to teaching first-year programming, an opportunity that should not be missed. In this paper we identify what we see as the non language-specific core issues, and discuss how we approached these issues when designing and teaching a programming subject for beginners.