Requirements for a first year object-oriented teaching language. - Michael Kölling; Bett Koch; John Rosenberg (SIGCSE, 1995)

A Flexible Object Invocation Language based on Object- Oriented Language Definition. - Mark Evered; Axel Schmolitzky; Michael Kölling (Comput. J., 1995)

An object-oriented program development environment for the first programming course. - Michael Kölling; John Rosenberg (SIGCSE, 1996)

Blue - language for teaching object-oriented programming. - Michael Kölling; John Rosenberg (SIGCSE, 1996)

I/O considered harmful (at least for the first few weeks). - John Rosenberg; Michael Kölling (ACSE, 1997)

Testing object-oriented programs: making it simple. - John Rosenberg; Michael Kölling (SIGCSE, 1997)

Support for Object-Oriented Testing. - Michael Kölling; John Rosenberg (TOOLS (28), 1998)

Tools and techniques for teaching objects first in a Java course. - Michael Kölling; John Rosenberg (SIGCSE, 1999)

On Creation, Equality and the Object Model. - Michael Kölling; John Rosenberg (TOOLS (32), 1999)

The Problem of Teaching Object-Oriented Programming, Part I: Languages. - Michael Kölling (J. Object Oriented Program., 1999)

The Problem of Teaching Object-Oriented Programming, Part 2: Environments. - Michael Kölling (J. Object Oriented Program., 1999)

The design of an object-oriented environment and language for teaching. - Michael Kölling (1999)

Concurrency, objects and visualisation. - Chris Exton; Michael Kölling (ACSE, 2000)

Objects first with Java and BlueJ (seminar session). - Michael Kölling; John Rosenberg (SIGCSE, 2000)

Guidelines for teaching object orientation with Java. - Michael Kölling; John Rosenberg (ITiCSE, 2001)

Objektorientierte Programmierung mit Java - eine praxisnahe Einführung mit BlueJ. - David J. Barnes; Michael Kölling (Pearson Studium, 2003)

Experiences with IDEs and Java teaching: what works and what doesn't. - Keitha A. Murray; Jesse M. Heines; Michael Kölling; Tom Moore; Paul J. Wagner; Nan C. Schaller; John A. Trono (ITiCSE, 2003)

Introducing unit testing with BlueJ. - Andrew Patterson; Michael Kölling; John Rosenberg (ITiCSE, 2003)

Supporting interactive invocation of remote services within an integrated programming environment. - Bruce Quig; John Rosenberg; Michael Kölling (PPPJ, 2003)

The BlueJ System and its Pedagogy. - Michael Kölling; Bruce Quig; Andrew Patterson; John Rosenberg (Comput. Sci. Educ., 2003)

greenfoot: combining object visualisation with interaction. - Poul Henriksen; Michael Kölling (OOPSLA Companion, 2004)

Enhancing apprentice-based learning of Java. - Michael Kölling; David J. Barnes (SIGCSE, 2004)

Going Interactive: Combining Ad-Hoc and Regression Testing. - Michael Kölling; Andrew Patterson (XP, 2004)

Opportunities and Challenges with J2SE 5 for Introductory Programming Teaching. - Michael Kölling; Poul Henriksen; Davin McCall; Bruce Quig; John Rosenberg (FECS, 2005)

Teaching polymorphism early. - Joseph Bergin; Eugene Wallingford; Michael E. Caspersen; Michael Goldweber; Michael Kölling (ITiCSE, 2005)

Game programming in introductory courses with direct state manipulation. - Michael Kölling; Poul Henriksen (ITiCSE, 2005)

Interactive Visualisation and Testing of Jini Services. - Bruce Quig; Michael Kölling; John Rosenberg; Phillip Steele (QSIC, 2005)

Resolved: objects early has failed. - Owen L. Astrachan; Kim B. Bruce; Elliot B. Koffman; Michael Kölling; Stuart Reges (SIGCSE, 2005)

Objects-early tools: a demonstration. - Joe Bergin; Kim B. Bruce; Michael Kölling (SIGCSE, 2005)

Java lernen mit BlueJ - eine Einführung in die objektorientierte Programmierung (3. Aufl.). - David J. Barnes; Michael Kölling (Pearson Studium, 2006)

A novice's process of object-oriented programming. - Michael E. Caspersen; Michael Kölling (OOPSLA Companion, 2006)

Process in oo pedagogy: a "killer" workshop. - Carl Alphonce; Jürgen Börstler; Michael E. Caspersen; Adrienne Decker; Michael Kölling (OOPSLA Companion, 2007)

Group work support for the BlueJ IDE. - Kasper Fisker; Davin McCall; Michael Kölling; Bruce Quig (ITiCSE, 2008)

Greenfoot: a highly graphical ide for learning object-oriented programming. - Michael Kölling (ITiCSE, 2008)

Nifty objects for CS0 and CS1. - Joe Hummel; Carl Alphonce; Joe Bergin; Michael E. Caspersen; Stuart Hansen 001; James E. Heliotis; Michael Kölling (SIGCSE, 2008)

Using BlueJ to Introduce Programming. - Michael Kölling (Reflections on the Teaching of Programming, 2008)

Introduction to Part III Teaching Software Engineering Issues. - Michael Kölling (Reflections on the Teaching of Programming, 2008)

Introduction to Part IV Assessment. - Michael Kölling (Reflections on the Teaching of Programming, 2008)

Apprentice-Based Learning Via Integrated Lectures and Assignments. - Michael Kölling; David J. Barnes (Reflections on the Teaching of Programming, 2008)

Java lernen mit BlueJ - Eine Einführung in die objektorientierte Programmierung (4. Aufl.). - David J. Barnes; Michael Kölling (Pearson Studium, 2009)

ILE-idol. - Sally Fincher; Stephen Cooper; Michael Kölling; Ian Utting (ITiCSE, 2009)

Resurrecting Programming. - Michael Kölling (PPIG, 2009)

STREAM: A First Programming Process. - Michael E. Caspersen; Michael Kölling (ACM Trans. Comput. Educ., 2009)

Repositories of teaching material and communities of use: nifty assignments and the greenroom. - Sally Fincher; Michael Kölling; Ian Utting; Neil Brown 001; Phil Stevens (ICER, 2010)

Greenroom: a teacher community for collaborative resource development. - Neil Brown 001; Phil Stevens; Michael Kölling (ITiCSE, 2010)

What's next for programming teaching tools: thoughts and speculations. - Michael Kölling (Koli Calling, 2010)

Comparing alice, greenfoot & scratch. - Sally Fincher; Stephen Cooper; Michael Kölling; John Maloney (SIGCSE, 2010)

Motivating programmers via an online community. - Poul Henriksen; Michael Kölling; Davin McCall (J. Comput. Sci. Coll., 2010)

Greenfoot: introduction to Java with games and simulations. - Michael Kölling (J. Comput. Sci. Coll., 2010)

The Greenfoot Programming Environment. - Michael Kölling (ACM Trans. Comput. Educ., 2010)

Alice, Greenfoot, and Scratch - A Discussion. - Ian Utting; Stephen Cooper; Michael Kölling; John H. Maloney; Mitchel Resnick (ACM Trans. Comput. Educ., 2010)

Objects First with Java - A Practical Introduction Using BlueJ (5th Edition). - David J. Barnes; Michael Kölling (Prentice Hall, 2012)

Web-scale data gathering with BlueJ. - Ian Utting; Neil Brown 001; Michael Kölling; Davin McCall; Phil Stevens (ICER, 2012)

Evaluation of Subject-Specific Heuristics for Initial Learning Environments: A Pilot Study. - Fraser McKay; Michael Kölling (PPIG, 2012)

Teaching with greenfoot and the Kinect: a novel way to engage beginners (abstract only). - Michael Kölling; Neil Brown 001 (SIGCSE, 2012)

Building an open, large-scale research data repository of initial programming student behaviour. - Michael Kölling; Ian Utting (SIGCSE, 2012)

Predictive modelling for HCI problems in novice program editors. - Fraser McKay; Michael Kölling (BCS HCI, 2013)

A tale of three sites: resource and knowledge sharing amongst computer science educators. - Neil Christopher Charles Brown; Michael Kölling (ICER, 2013)

Bringing computer science back into schools: lessons from the UK. - Neil Christopher Charles Brown; Michael Kölling; Tom Crick; Simon L. Peyton Jones; Simon Humphreys; Sue Sentance (SIGCSE, 2013)

This much I know: thoughts on the past, present and future of educational programming tools. - Michael Kölling (SIGCSE, 2013)

The design and implementation of a notional machine for teaching introductory programming. - Michael Berry 001; Michael Kölling (WiPSCE, 2013)

Meaningful categorisation of novice programmer errors. - Davin McCall; Michael Kölling (FIE, 2014)

The state of play: a notional machine for learning programming. - Michael Berry 001; Michael Kölling (ITiCSE, 2014)

Blackbox: a large scale repository of novice programmers' activity. - Neil Christopher Charles Brown; Michael Kölling; Davin McCall; Ian Utting (SIGCSE, 2014)

Die Schnittstelle zum Programmieren: Gedanken zum Re-Design von Programmierumgebungen. - Michael Kölling (SEUH, 2015)

Using BlueJ to Code Java on the Raspberry Pi. - Amjad AlTadmri; Neil C. C. Brown; Michael Kölling (SIGCSE, 2015)

Frame-Based Editing: Easing the Transition from Blocks to Text-Based Programming. - Michael Kölling; Neil C. C. Brown; Amjad AlTadmri (WiPSCE, 2015)

Lessons from the Design of Three Educational Programming Environments: Blue, BlueJ and Greenfoot. - Michael Kölling (Int. J. People Oriented Program., 2015)

Introduction to Programming with Greenfoot - Object-Oriented Programming in Java with Games and Simulations, Second Edition. - Michael Kölling (Prentice Hall, 2016)

The Cost of Syntax and How to Avoid It: Text versus Frame-Based Editing. - Amjad AlTadmri; Michael Kölling; Neil C. C. Brown (COMPSAC, 2016)

Evaluation of a Frame-based Programming Editor. - Thomas W. Price; Neil C. C. Brown; Dragan Lipovac; Tiffany Barnes; Michael Kölling (ICER, 2016)

Novis: A Notional Machine Implementation for Teaching Introductory Programming. - Michael Berry 001; Michael Kölling (LaTiCE, 2016)

Frame-Based Editing: Combining the Best of Blocks and Text Programming. - Neil C. C. Brown; Amjad AlTadmri; Michael Kölling (LaTiCE, 2016)

Beyond text: The future of IDEs. - Michael Kölling (VL/HCC, 2016)

Heuristic Evaluation for Novice Programming Systems. - Michael Kölling; Fraser McKay (ACM Trans. Comput. Educ., 2016)

Most common fixes students use to improve the correctness of their programs. - Draylson Micael de Souza; Michael Kölling; Ellen Francine Barbosa (FIE, 2017)

Frame-Based Editing. - Michael Kölling; Neil C. C. Brown; Amjad AlTadmri (J. Vis. Lang. Sentient Syst., 2017)

Blackbox, Five Years On: An Evaluation of a Large-scale Programming Data Collection Project. - Neil C. C. Brown; Amjad AlTadmri; Sue Sentance; Michael Kölling (ICER, 2018)

Stride in BlueJ - Computing for All in an Educational IDE. - Michael Kölling; Neil C. C. Brown; Hamza Hamza; Davin McCall (SIGCSE, 2019)

A New Look at Novice Programmer Errors. - Davin McCall; Michael Kölling (ACM Trans. Comput. Educ., 2019)

Blackbox Mini - Getting Started With Blackbox Data Analysis. - Neil C. C. Brown; Michael Kölling (SIGCSE, 2020)

Panel: Lessons Learned in Propagation. - Michael Kölling; Colleen M. Lewis; Leo Porter 001; Christopher Lynnly Hovey (SIGCSE, 2021)

A Frame of Mind: Frame-based vs. Text-based Editing. - Neil Brown 001; Charalampos Kyfonidis; Pierre Weill-Tessier; Brett A. Becker; Joe Dillane; Michael Kölling (UKICER, 2021)

Strype: Bridging from Blocks to Python, with Micro: bit Support. - Pierre Weill-Tessier; Charalampos Kyfonidis; Neil Brown 001; Michael Kölling (ITiCSE (2), 2022)

Transitioning from Blocks to Text. - Neil C. C. Brown; Michael Kölling; Charalampos Kyfonidis; Pierre Weill-Tessier (SIGCSE (2), 2022)

Getting Started with Source Code Analysis for Programming Education Research. - Neil C. C. Brown; Michael Kölling; Charalampos Kyfonidis; Pierre Weill-Tessier (SIGCSE (2), 2022)

An eye tracking study assessing the impact of background styling in code editors on novice programmers' code understanding. - Kang-Il Park; Pierre Weill-Tessier; Neil C. C. Brown; Bonita Sharif; Nikolaj Jensen; Michael Kölling (ICER (1), 2023)

Machine Learning-Based Automated Grading and Feedback Tools for Programming: A Meta-Analysis. - Marcus Messer; Neil C. C. Brown; Michael Kölling; Miaojing Shi (ITiCSE (1), 2023)

Strype: Frame-based Python in the Browser. - Neil C. C. Brown; Pierre Weill-Tessier; Michael Kölling (SIGCSE (2), 2023)

Java: What's New and How Might It Change Our Teaching? - Michael Kölling; Pierre Weill-Tessier; Neil C. C. Brown (SIGCSE (2), 2023)

Quick Fixes for Novice Programmers: Effective but Under-Utilised. - Neil C. C. Brown; Jamie Ford; Pierre Weill-Tessier; Michael Kölling (UKICER, 2023)

From Blocks to Professional Development - Thoughts on the Future of Educational Programming. - Michael Kölling (WiPSCE, 2023)

Novice Use of the Java Programming Language. - Neil C. C. Brown; Pierre Weill-Tessier; Maksymilian Sekula; Alexandra Lucia Costache; Michael Kölling (ACM Trans. Comput. Educ., 2023)

Grading Documentation with Machine Learning. - Marcus Messer; Miaojing Shi; Neil C. C. Brown; Michael Kölling (AIED (1), 2024)

Writing Between the Lines: How Novices Construct Java Programs. - Neil C. C. Brown; Victoria Mac; Pierre Weill-Tessier; Michael Kölling (SIGCSE (1), 2024)

Strype: a Versatile Python-like Programming Environment for Novices. - Pierre Weill-Tessier; Neil C. C. Brown; Michael Kölling (WiPSCE, 2024)

How Consistent Are Humans When Grading Programming Assignments? - Marcus Messer; Neil C. C. Brown; Michael Kölling; Miaojing Shi (CoRR, 2024)

Principles of Educational Programming Language Design. - Michael Kölling (Informatics Educ., 2024)

Automated Grading and Feedback Tools for Programming Education: A Systematic Review. - Marcus Messer; Neil C. C. Brown; Michael Kölling; Miaojing Shi (ACM Trans. Comput. Educ., 2024)

Informatics in Schools: Why, What, Who - and How to Initiate Change? - Neil C. C. Brown; Michael E. Caspersen; Michael Kölling (ITiCSE (1), 2025)

Menagerie: A Dataset of Graded Programming Assignments. - Marcus Messer; Neil C. C. Brown; Michael Kölling; Miaojing Shi (SIGCSE (2), 2025)

Howzat? Appealing to Expert Judgement for Evaluating Human and AI Next-Step Hints for Novice Programmers. - Neil C. C. Brown; Pierre Weill-Tessier; Juho Leinonen 001; Paul Denny 001; Michael Kölling (ACM Trans. Comput. Educ., 2025)