Programming and problem solving at Key Stage 3
Upcoming SlideShare
Loading in...5

Programming and problem solving at Key Stage 3



Computing At School presentation, BETT 2011

Computing At School presentation, BETT 2011



Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment
  • ‘Hidden’ at the bottom of the Variables category is the Make a block button, allowing you to create a command (does something), reporter (tells you something), or predicate(tests something)
  • New blocks added to the language have, for that project, exactly the same status as the built-in,original, blocks.We can use existing blocks, and new blocks, inside more new blocksWe can even use the block we’ve just started to define inside the block we’ve just started to define (recursion)Or we can define a block that adds to the way in which we program, e.g., in a simulation program we might want to do somethings with a certain probability (see next slide)
  • An example of functional thinking. Younger children don’t see why they should handle things in the same way, whether they are numbers, strings, or actions. For example, why can’t I just tell every item in a list to multiply itself by 2?
  • This functional programming was how BYOB came into being. Brian Harvey at University of Berkeley wanted to use the interface of Scratch to give non-computer science students an introduction to the higher level concepts of computer science. Jens Mönig adapted the open source Scratch to do this. So we have a programming system being used to teach students from primary (even nursery) up to university. I use it to demonstrate concepts such as recursion and functional programming to my A-level Computing students.

Programming and problem solving at Key Stage 3 Presentation Transcript

  • 1. Creative Problem Solving Projects At Key Stage 3
    Thomas Ng
    Miles Berry
    John Stout
    Roger Davies
    Peter Marshman
    Peter Dickman
  • 2. Thomas Ng
    West Berkshire Council
  • 3. Setting the scene
    students expect lessons to be fun
    management expects lessons to be engaging
    parents expect lessons to be demanding
    universities expect lessons to be motivating
    society expect lessons to be about problem solving
  • 4. The Panel
    the building block of knowledge Miles Berry
    Scratch and BOYB John Stout
    Star Logo TNG Roger Davies
    Googe Apps Inventor Peter Marshman
    Google's view of problem solving Peter Dickman
  • 5. Miles Berry
    Roehampton University
  • 6. Learning
    Images NASA, Wellcome
  • 7. Learning Computing
    Images PCNews, Wellcome
  • 8. Learning Styles
    Images River Beach, Beppie K, Hans and Carolyn
  • 9. Three Wise Men
  • 10. Froebel Gifts
    Image Falling Water Museum Store
  • 11. Lego
    Image Andy Carol, Lego, Gadgetreview
  • 12. The Craft of Construction
    Images US Dept. of Defense, Photozou
  • 13. Pinnacles of achievement
    Image Aheilner
  • 14. Papert & Logo
  • 15. Microworlds
    More is needed than an intuitive, seat of the pants experience. The student needs to … conceptualize and ‘capture’ this world.Papert, 1980
    With scientific method, we took things apart to see how they work. Now with computers we can put things back together to see how they work, by modelling complex, interrelated processes, even life itself. This is a new age of discovery, and ICT is the gateway. Adams, 1999
  • 16. Stepping stones
  • 17. Problem Solving
    The key skill of problem solving involves pupils developing the skills and strategies that will help them to solve the problems they face in learning and in life. Problem solving includes the skills of identifying and understanding a problem, planning ways to solve a problem, monitoring progress in tackling a problem and reviewing solutions to problems. All subjects provide pupils with opportunities to respond to the challenge of problems and to plan, test, modify and review the progress needed to achieve particular outcomes.
    DfES/QCA 1999
  • 18. Case based instruction
    “Teaching begins not with a theoretical exegesis of domain concepts but with a real problem… rather than learning (and forgetting) all about a field before being allowed to solve a meaningful problem, case-based instruction is based on the belief that what you learn while trying to solve a complex problem you will better comprehend and retain much longer… The most important rationale for case-based instruction is that it at least simulates the kind of activity that students are preparing for.”
    Jonassen 2004, pp 52-53
  • 19. Troubleshooting
    Troubleshooting is among the most commonly experienced kinds of problem solving in the professional world… the problems that are most completely and accurately recalled are those that are most difficult to solve, because the problems solver was more conceptually engaged in the process.
    Jonassen 2004, p13
  • 20. John Stout
    King George V Sixth Form College
  • 21. BYOBBuild Your Own Blocks
    • is Scratch (BYOB runs Scratch projects)
    • 22. has a few (a very few) new concepts
    • 23. encourages students to design blocks,
    creating a new language for each problem
    • can be used at any age / education level
    • 24. encourages higher level thinking (abstraction)
  • Clicking this lets the student create this new block
  • 25. Then drag and drop existing blocks into the new definition
    But generalising the idea of drawing a square[draw a square [ ] ] now adds to the language
  • 26. something[ and somethingElse[ are blocks, or actions, that can be treated in just the same way as numbers, or strings
    Continuing in this way the language can be extended to fit the problem, e.g., in a project to model infection (see Roger’s presentation later), we could provide students with fallIll, recover, andbecomeImmuneblocks.
  • 27. The map block (its definition can be seen and edited) simply applies the action specified (in this case [2 * []] to the list of numbers [1 19 13] to give the expected result
  • 28. Finally a bit of fun with a serious side to it
    BYOB has a Mesh facility which allows two (or more) BYOB projects to share data using the [broadcast message] and [sensor value] blocks. We have implemented a networked PONG game, so that two students can play each other at PONG across the network.
    Details in the latest CAS newsletter
  • 29. Roger Davies
    Queen Elizabeth School, Kirkby Lonsdale
  • 30.
  • 31.
  • 32.
  • 33. A Model Of An Epidemic
    Create The Population
    Seed The Infection
    Make The Population Mobile
    Spread Infection On Contact
  • 34. Create The Population
    Seed The Infection
  • 35. Make The Population Mobile
  • 36. Spread Infection On Contact
  • 37.
  • 38. Allowing Agents To Recover
    Set A Recovery Variable
    Create A ‘Get Well’ Procedure
    If RandomNo(100) < Recovery
    Set Colour = Green
    Run ‘Get Well’ Procedure
    On Each Step
  • 39. Set A Recovery Variable
    Create A ‘Get Well’ Procedure
    If RandomNo(100) < Recovery
    Set Colour = Green
  • 40. Run ‘Get Well’ Procedure
    On Each Step
  • 41. Further Refinement
    Making Some Agents Immune
    Keeping Count Of Those Infected
    Graphing The Change Over Time
    Over To The Pupils
  • 42.
  • 43. Peter Marshman
    Park House School
  • 44. App Inventor: Features
    Design canvas with a continually updated range of object controls;
    Object controls for custom procedure implementation and for dynamic interaction with Android features;
    Drag and drop block editor to program solution;
    Download direct to phone, package for phone or direct to an emulator.
  • 45. App Inventor: Features
  • 46. App Inventor: Features
  • 47. App Inventor: Features
  • 48. App Inventor: Features
  • 49. App Inventor: Features
  • 50. Potential Uses
    Canvas drawing applications;
    Dynamic mapping applications;
    Quiz applications;
    Data collection applications;
    Subject specific applications;
    Lego Mindstorms applications;
    Animation applications.
  • 51. App Inventor: Student Experience
    Converts everyday experience of Apps into an intrigue and appreciation of programming at a basic level;
    Development of algorithmic thinking through trial and error and planning of block construction;
    Engagement through the personalisation and ownership of developed Apps that can be further developed and exhibited away from the classroom.
  • 52. Peter Dickman
  • 53. Simon Humphreys
    Computing at School
  • 54. For more information…
    • CAS materials
    • 55. CAS local hubs
    • 56. CAS conferences
    • 57. CAS online community
  • Contact