Last changed 28 Nov 2018 ............... Length about 1600 words (15,000 bytes).
(Document started on 25 Jan 2018.) This is a WWW document maintained by Steve Draper, installed at You may copy it. How to refer to it.

Web site logical path: [] [~steve] [Home] [educ] [this page]
Other related pages: [Effect size] [Invite to seminar] [Educ. refs]
Linked circle of topics relevant to CCSE: [Adey&Shayer] [Papert's gears] [Early play] [spatial] [curricula] [methodology]

School curricula for HE subjects

By Steve Draper,   Department of Psychology,   University of Glasgow.

If we were to agree that compSci should be taught in some form in schools, then what kind of topics should it have?

Alternative preface

Adey & al. also did a project on cognitive acceleration for primary schools — obviously with different materials.
Adey, P., Robertson, A. and Venville, G. (2002) "Effects of a cognitive acceleration programme on Year 1 students" British Journal of Educational Psychology vol.72 no.1 pp.1-25. doi:10.1348/000709902158748

Again, their underlying idea is that the right curriculum for leading on to physics, maths, (compSci) at age 16, or age 17-18 in HE is NOT those subjects' contents BUT the cogAcc "CASE" materials. I.e. presumably they would vote against the whole idea of the TeachCS courses, or at least that this other regular school subject (CogAcc) would have a bigger effect on success at compSci in HE, than CompSci in school would.

  1. The TeachCS pedagogical approach used by ECole
  2. The overall structure of this seems to be 3-dimensional.

    1. SALs (significant aspects of learning):
      1. Understanding the world through computational thinking (pure science)
      2. Understanding and analysing the technology of computing (Applied Science = Engineering)
      3. Creating: Designing, building and testing computing solutions (Applied Science = Engineering)

    2. Themes
      1. Process
      2. Information

    3. Core Concepts
      1. Structuring processes
      2. Patterns in processes
      3. Structuring and manipulating information
      4. Computing systems.

  3. Preparation for later learning in the discipline
  4. There are some results showing that some childhood activities predict later success or failure at compSci and/or programming. Main types:

  5. CMU ideas about the role of informal hobbies
  6. The CMU anthro study implies lessons for any discipline, about whether to presume that Ls come with a long history of hobby versions of the subject. Ignoring this is to waste the time of Ls with such a history; to teach to it, locks out Ls who don't have this background. This is about disciplinary knowledge in advance but acquired for fun, i.e. learned without a curriculum.

    Margolis,J. & Fisher,A. (2002) Unlocking the clubhouse: Women in computing (MIT press) ISBN 0262133989 GU lib record=b2734515 [Gender gap in education. CMU study of women in computing. Effect of different childhood out-of-school activities]

    See also

  7. Dijkstra's views on teaching computing
  8. See this paper by Dijsktra: On the cruelty of really teaching computing science

    See my comments on its ideas: xxxx

  9. Computational thinking
  10. "Perhaps computational thinking is simply the thinking skills of computing science that can be transferred to other disciplines."

    What is computational thinking?

  11. Denning rebuts the idea that CT causes programming ability.

  12. Wohl related issues
  13. His 3:

  14. Eternal core concepts from the total discipline (and from what is taught in HE programmes)
    1. As in Paul Nurse's 5 key concepts in Biology: deep reflection in a discipline on what concepts have been and still are key ones; both in history and in stating core concepts.
      1. The cell. The basic atom of life: all life is made of cells, which are both the structural and functional basic units.
      2. The gene. Basic unit of inheritance; and some non-obvious properties e.g. recessive genes. Mendel rediscovered by 3 or more groups around 1900.
      3. Evolution by natural selection. (Darwin published 3 years after Mendel's work was, but didn't know it.)
        1. Life evolves i.e. changes.
        2. The mechanism leading to adaptation is natural selection.
        [Can't have NatSelection without cells and genes; so intellectually, genes precede evolution.]
        My own points on Darwin's theory: The current form of a species depends on:
        1. Degree of adaptedness;
        2. Competition and w.r.t. what. If monopoly then no great adaptedness, functionality.
        3. History: what you inherited regardless of its suitability to the current challenges.
        [DNA is not seen as a key concept in this list.]
      4. Life as / IS chemistry (i.e. materialism, not vitalism with life as a distinct kind of thing).
        Each cell has about 100,000 different chemical reactions going on simultaneously.
      5. Information and systems perspective. This 5th key concept is still crystalising out of current thought. Developing an account of biology in terms of the management of information, and of systems.
    2. What we used in Quintin's new business course as a framework:
      • Sorting / searching (better than printed paper with 1 fixed sort order)
      • Data storage, memory, cloud, databases. Big data. Data fortresses for strong confidentiality (privacy).
      • Connection. Internet and WWW, not unlinked desk top computers. Dbs plus internet => call centres.
      • Processing, speed, Moore's law
      • HCI / UID
      • New AI = deep machine learning. Long history but only now (2017) the technology to do it big time and routinely, because now we have big data and big computational processing power for the neural net learning.
      • ?Graphics: Long history of dev. Each advance in UIDs tends to require new graphics to enable it. (Same has been argued for VGames.) → Is this the same as HCI? Should this include other sensors e.g. GPS, thumbprint readers, ...

  15. Big (new) comp. topics that I missed
  16. Big (new) issues for school curricula
  17. The essence of programming skill /knowledge
  18. These are my own idea of the essence of progging to take away for future general use.

    Metacognitive skills

    1. Debugging. You will always succeed, always after 3 times as much time as you calculated; except in the (rather few) cases where what you wanted is impossible for anyone to program or any machine to compute i.e. your goal or requirements are what is wrong and must be changed or abandoned.

    2. How to pick a project of the right type and right size to use to teach yourself (e.g. a new progLang).

    Problem ↔ programming solutions structures / schemas / frameworks / (mega-) patterns

    3. How to think – separately – in programming about:
    1. Sequence-centered problems / solutions
    2. String and data-record processing. One-pass processing of data streams, mostly textual not numeric.
    3. Data-centric [Michael Jackson as well as one side of OOP]. Design the data (types), and secondarily attach functions to them.
    4. ?Function-centric? Design the functions (procedures), and attach bits of data secondarily.
    5. Objects as things with independent timelines; separate threads exec in parallel. Design independent parallel execution, and other things secondarily.
    6. "Whenever" commands: p-rules as endless parallel daemons or interrupts; — independent condition-action rules,
    7. List processing (LISP)
    8. Errors: tests and err-messages to catch errors in a way useful to the human user / programmer. Design around the human operator and how to keep them best able to keep the underlying work under way.
    9. DWIM. In natLang; in quite a few current UIs; could say, in google/IR; plus the cost underneath, and intermittent breakdowns.

  19. Practical IT use here and now, including "hygiene"
  20. Like schools teach bits on the Highway Code; Anti-bullying; Safe sex.


    Should / could introduce to the kids a number of:
    1. Generic application programs e.g. spreadsheets;
    2. Specific programs i.e. custom software.

    And for each:

    1. Get them familiar with using it successfully.
    2. Get them familiar with what happens when various things break (storage, speed, web access).
    3. Get them familiar with how to fix these breakdowns.

    This is simultaneously:

    I.e. we could combine [B2] and [D].

  21. IT practical skills:   WP, Spreadsheets, web searching ...
  22. Basic useful skills, like writing (in various genres; and for widely different purposes).

  23. The differences amongst these are about the issue of foundations vs. preparations.
  24. Is education different now?
  25. Thomas,Douglas & Brown,J.S. (2011) A new culture of learning: Cultivating the imagination for a world of constant change (No publisher: sold by Amazon only) [only about 120 small pages] ISBN 978-1456458881 GU lib. record=b2937259 [social collective learning]

    This book generally tries to analyse how education and learning is different now in the age of huge information online, and social media.

Web site logical path: [] [~steve] [educ] [this page]
[Top of this page]