SlideShare a Scribd company logo
Textual Programming in
Key Stage 3
Tim Eaglestone
Dorothy Stringer School, Brighton
Our scheme of work
Kodu

Scratch

Ruby

7
E-Safety
Validity &
Bias

Networks
Computer
systems

Ruby

8
Binary &
logic
Information:
finding &
making

Internet of
things
App design 1

Coding

9
Data:
storage and
transmission

App design 2
What’s being used?
Python
SmallBasic
Java
JavaScript

Ruby
Why not others?
What language should you choose?
-What you know/are comfortable with
-What support can you get?
-Ease of use
-Ease of installation
Python: IDLE
Small Basic
Java—Greenfoot
JavaScript
KidsRuby
A progression in coding
STAGE

LEARNING TO CODE ACTIVITY

Preoperational
(Many students
get stuck here)

Concrete
Operational

•Spotting keywords
•Identifying numbers and data (variables)
•Spotting syntax elements (such as block starts and ends)
•Recognising constructs (sequences, loops, conditions)
•Tracing (running through the code on paper step by step)
•Explaining the code in English in the form of a trace (“first it does this, then it
does that…”)

•Explaining the code in English in terms of its function (“This code sorts an
array from smallest to largest”)
•Using diagrammatic abstractions
•Completing conservation exercises (e.g. “This method is not finished.
Complete is so that it returns …”)
•Completing reversing exercises (e.g. “Heres some code that does X, Y and Z.
Write some code that does the reverse: -Z,-Y then -X.”)
•Transitive inference (where a student might have to hold several possible
program states in mind to answer a question, or generalise a system’s response
by reading a fragment of code)

Adapted from Concrete and Other Neo-Piagetian Forms of Reasoning in the Novice Programmer, R. Lister, Uni. Sydney, 2011
Example
Example questions
A hierarchy of questions could go something like:
•What does the command on line 8 do?
•What about those on lines 2 and 3?
•What lines are any numbers on?
•What’s different about the numbers on lines 6 and 7
compared with line 5?
•What lines mark the end of a Ruby block?
•What does the number in line 5 do?
•What about those in lines 6 and 7?
•Describe what happens in lines 5 to 10.
•Draw on paper what you think this program does.
•Can you explain in words what you think this program does.
•Draw a flow chart that represents this code
Small Basic Example
Python Example
Software & Programming
(Lesson 1: An introduction using
Ruby)
Code

Apps – e.g. word processors
and spreadsheets

or
interpreted

compiled

{

Utility programs– e.g.
virus
scanners, backup

software

if(x==2){
print
“foo”;
}

Decode

EXECUTABLE
loaded into RAM

CPU
Fetch

Execute

The Central Processing Unit
(CPU)
The CPU is the core of the
computer. It ‘processes’ all the
computer programs.
Textual programming in key stage 3
Some Ruby Code
Look at this code

What does it do?
What about this?
The code...

The output...
Enter and run these programs
Press the
Program 1

button before entering the second
one
Program 2

In your books, go through each program line by line
and try to explain what each line does.
Textual programming in key stage 3
Textual programming in key stage 3
Conservation exercise
Textual programming in key stage 3
Diagrammatic abstractions & starting to write their own code (transitive inference?)

More Related Content

PPTX
Introduction to Functional Programming and Clojure
PDF
The State of #NLProc
PDF
Practical NLP with Lisp
PDF
Lisp Machine Prunciples
ODP
Introduction to Python
PPT
Notesparadigms
PDF
Learning to Translate with Joey NMT
ODP
Introduction to Functional Programming and Clojure
The State of #NLProc
Practical NLP with Lisp
Lisp Machine Prunciples
Introduction to Python
Notesparadigms
Learning to Translate with Joey NMT

What's hot (6)

PPTX
Fine tuning large LMs
PDF
Elixir紹介
PPT
Python Learning for Natural Language Processing
PPTX
Natural Language to Visualization by Neural Machine Translation
PDF
Meeting13
PDF
Deep learning for NLP and Transformer
Fine tuning large LMs
Elixir紹介
Python Learning for Natural Language Processing
Natural Language to Visualization by Neural Machine Translation
Meeting13
Deep learning for NLP and Transformer
Ad

Viewers also liked (14)

PDF
experince cert Mobiserve
PDF
3.3.4 Simple Capacitive
PPTX
Portal and Intranets
PPT
PPTX
Евгения Шкуратова - "Яндекс - это мы!"
PDF
Bongiorni_Currents_Smart_Water
PDF
L’apprentissage et le numérique : de la recherche de questions aux question d...
PDF
L’enseignement des langues par les cours en ligne ouverts et massifs : de la ...
PDF
Présentation du rapport intermédiaire de la recherche « MOOC Afrique : Analys...
PDF
How to Deliver Kick Ass Salesforce Training Without Breaking A Sweat or Break...
PDF
C# Web. Занятие 15.
PDF
C# Web. Занятие 07.
PDF
Общие темы. Тема 01.
PPTX
Network Effects
experince cert Mobiserve
3.3.4 Simple Capacitive
Portal and Intranets
Евгения Шкуратова - "Яндекс - это мы!"
Bongiorni_Currents_Smart_Water
L’apprentissage et le numérique : de la recherche de questions aux question d...
L’enseignement des langues par les cours en ligne ouverts et massifs : de la ...
Présentation du rapport intermédiaire de la recherche « MOOC Afrique : Analys...
How to Deliver Kick Ass Salesforce Training Without Breaking A Sweat or Break...
C# Web. Занятие 15.
C# Web. Занятие 07.
Общие темы. Тема 01.
Network Effects
Ad

Similar to Textual programming in key stage 3 (20)

PDF
APU RoR Workshop Series #1 - Introduction to Programming
PPTX
Hello World - Introduction to coding.pptx
KEY
Thinking Like a Programmer
PPTX
grade 10 2023.pptx
PPTX
Ruby -the wheel Technology
PPTX
Programming Development LifeCycle11.pptx
PPT
introduction to computer programming CPPL1.ppt
PPT
01CHAP_1.PPT
PPTX
Power Point Introduction To Programming 1
PDF
ProgFund_Lecture_1_Introduction_to_Programming.pdf
PDF
Fundamentals of programming with C++
PDF
Module 201 2 20 just 20 basic
PDF
Module 1 2 just basic-
PDF
Ruby an overall approach
PPTX
Introduction to Coding
PPTX
Lecture-1.pptx . this is about the computer program
PDF
Rubykin
PDF
Intro to Programming (1)
PPTX
Introduction to Programming kkkkkkkkkkkkk
APU RoR Workshop Series #1 - Introduction to Programming
Hello World - Introduction to coding.pptx
Thinking Like a Programmer
grade 10 2023.pptx
Ruby -the wheel Technology
Programming Development LifeCycle11.pptx
introduction to computer programming CPPL1.ppt
01CHAP_1.PPT
Power Point Introduction To Programming 1
ProgFund_Lecture_1_Introduction_to_Programming.pdf
Fundamentals of programming with C++
Module 201 2 20 just 20 basic
Module 1 2 just basic-
Ruby an overall approach
Introduction to Coding
Lecture-1.pptx . this is about the computer program
Rubykin
Intro to Programming (1)
Introduction to Programming kkkkkkkkkkkkk

Recently uploaded (20)

PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PPTX
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
01-Introduction-to-Information-Management.pdf
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
Anesthesia in Laparoscopic Surgery in India
PDF
VCE English Exam - Section C Student Revision Booklet
PDF
A systematic review of self-coping strategies used by university students to ...
PPTX
Institutional Correction lecture only . . .
PPTX
GDM (1) (1).pptx small presentation for students
PDF
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
PPTX
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
PPTX
Pharma ospi slides which help in ospi learning
PPTX
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PPTX
Lesson notes of climatology university.
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
O7-L3 Supply Chain Operations - ICLT Program
O5-L3 Freight Transport Ops (International) V1.pdf
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
Microbial diseases, their pathogenesis and prophylaxis
01-Introduction-to-Information-Management.pdf
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
Final Presentation General Medicine 03-08-2024.pptx
Anesthesia in Laparoscopic Surgery in India
VCE English Exam - Section C Student Revision Booklet
A systematic review of self-coping strategies used by university students to ...
Institutional Correction lecture only . . .
GDM (1) (1).pptx small presentation for students
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
Pharma ospi slides which help in ospi learning
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Lesson notes of climatology university.
Abdominal Access Techniques with Prof. Dr. R K Mishra

Textual programming in key stage 3

  • 1. Textual Programming in Key Stage 3 Tim Eaglestone Dorothy Stringer School, Brighton
  • 2. Our scheme of work Kodu Scratch Ruby 7 E-Safety Validity & Bias Networks Computer systems Ruby 8 Binary & logic Information: finding & making Internet of things App design 1 Coding 9 Data: storage and transmission App design 2
  • 4. Why not others? What language should you choose? -What you know/are comfortable with -What support can you get? -Ease of use -Ease of installation
  • 10. A progression in coding STAGE LEARNING TO CODE ACTIVITY Preoperational (Many students get stuck here) Concrete Operational •Spotting keywords •Identifying numbers and data (variables) •Spotting syntax elements (such as block starts and ends) •Recognising constructs (sequences, loops, conditions) •Tracing (running through the code on paper step by step) •Explaining the code in English in the form of a trace (“first it does this, then it does that…”) •Explaining the code in English in terms of its function (“This code sorts an array from smallest to largest”) •Using diagrammatic abstractions •Completing conservation exercises (e.g. “This method is not finished. Complete is so that it returns …”) •Completing reversing exercises (e.g. “Heres some code that does X, Y and Z. Write some code that does the reverse: -Z,-Y then -X.”) •Transitive inference (where a student might have to hold several possible program states in mind to answer a question, or generalise a system’s response by reading a fragment of code) Adapted from Concrete and Other Neo-Piagetian Forms of Reasoning in the Novice Programmer, R. Lister, Uni. Sydney, 2011
  • 12. Example questions A hierarchy of questions could go something like: •What does the command on line 8 do? •What about those on lines 2 and 3? •What lines are any numbers on? •What’s different about the numbers on lines 6 and 7 compared with line 5? •What lines mark the end of a Ruby block? •What does the number in line 5 do? •What about those in lines 6 and 7? •Describe what happens in lines 5 to 10. •Draw on paper what you think this program does. •Can you explain in words what you think this program does. •Draw a flow chart that represents this code
  • 15. Software & Programming (Lesson 1: An introduction using Ruby)
  • 16. Code Apps – e.g. word processors and spreadsheets or interpreted compiled { Utility programs– e.g. virus scanners, backup software if(x==2){ print “foo”; } Decode EXECUTABLE loaded into RAM CPU Fetch Execute The Central Processing Unit (CPU) The CPU is the core of the computer. It ‘processes’ all the computer programs.
  • 18. Some Ruby Code Look at this code What does it do?
  • 19. What about this? The code... The output...
  • 20. Enter and run these programs Press the Program 1 button before entering the second one Program 2 In your books, go through each program line by line and try to explain what each line does.
  • 25. Diagrammatic abstractions & starting to write their own code (transitive inference?)