TYPES OF COMPUTATIONAL THINKING
What Forms of computational thinking
will our children need when they grow up?
Notes for pre-conference Teachmeet
Computing at School (CAS) Conference 2014
University of Birmingham 20-21 June 2014
Prepared for rapid 10 min. presentation
the night before the conference (20th June).
School of Computer Science, University of Birmingham. ____________________________________________________________________________
Installed: 20 June 2014
Last updated: 4 Aug 2014; 6 Aug 2014; 10 Aug 2014
This summary is
A partial index of discussion notes is in
Partial list of kinds of programming worth teaching.
(Explained in more detail in the PDF/Flash presentation linked below.)
(As stated above: this is not a complete list of types of programming.)
- Bumpy Programming
- Numbery Programming
- Gadgety Programming
- Chatty Programming
The recent Turing Test result (June 2014) created a huge furore, but perhaps we
can ignore over-blown claims for the scientific or philosophical interest of the
Turing test (which Turing himself never proposed as a test for anything) and
point out the educational benefits of teaching children to build increasingly
sophisticated chatbots (e.g. moving from pattern-based rules to grammar-based
rules, then adding semantic content referring to a simulated world.Developing chatbots can start very simple, then grow more complex, more
challenging, and require more and more AI programming, as shown by some of the
examples in this collection of Videos introducing symbolic AI Programming:
A 30 year old example toy chatbot developed for teaching AI at Sussex University:
Wikipedia on the "Turing Test"
Discussion of confusions about the so-called "Turing test":
Hundreds of online comments can be found by searching for: "Turing Test" 2014.
- Arty Programming
- Presentation programs
- Lifey Programming
(use "Enjoy Life" button on top left).
- Modelling Programming
- Gamey Programming
- Exploratory Programming (Many kinds)
- Utility ("Application" or "Appy") Programming
- Teachy (tutorial) Programming
- Thinky programming (most relevant to educating educators)
There are many kinds of "thinky" programming, several described in
the PDF slides in the Related Links section below.
Main point: We must foster educational diversity, not regimentation
If we focus education on too small a subset of the possible topics that can be
taught effectively between the ages of about five and eighteen, we impoverish
the "gene pool" of ideas available to the nation for many different purposes for
decades to come. That applies to researchers in many fields concerned with
information processing systems, where programming experience is (unfortunately)
not part of their standard education, e.g. psychology, biology, neuroscience,
philosophy -- leading to poor quality thinking about the mechanisms being
studied, often combined with expert(!) use of shallow statistical methods.
PDF SLIDES PROVIDING BACKGROUND MATERIAL AND SOME OF THE
OF THE TALK ON 21st June:
Talk 105 What is computational thinking? Old (2012) and new (2014) versions:
RELATED LINKSMy invitation to talk at CAS 2014 was based on this 2012 invited presentation at
the Manchester conference of ALT: Association for Learning Technology, available
http://www.youtube.com/watch?v=QXAFz3L2Qpo (about 22 minutes)
A more detailed presentation on varieties of computational thinking is available
in flash format (at slideshare.net) or PDF:
What is computational thinking? Who needs it? Why?
How can it be learnt? (Can it be taught?)
(FLASH at slideshare.net)
PDF Slides: 2012 and 2014 versions.
Maintained by Aaron Sloman
School of Computer Science
The University of Birmingham