Programming and problem solving at Key Stage 3


Published on

Computing At School presentation, BETT 2011

Published in: Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • ‘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

    1. 1. Creative Problem Solving Projects At Key Stage 3<br />Thomas Ng<br />Miles Berry<br />John Stout<br />Roger Davies<br />Peter Marshman<br />Peter Dickman<br />
    2. 2. Thomas Ng<br />West Berkshire Council<br />
    3. 3. Setting the scene<br />students expect lessons to be fun<br />management expects lessons to be engaging<br />parents expect lessons to be demanding<br />universities expect lessons to be motivating<br />society expect lessons to be about problem solving<br />
    4. 4. The Panel<br />the building block of knowledge Miles Berry<br />Scratch and BOYB John Stout<br />Star Logo TNG Roger Davies<br />Googe Apps Inventor Peter Marshman<br />Google's view of problem solving Peter Dickman<br />
    5. 5. Miles Berry<br />Roehampton University<br />
    6. 6. Learning<br />Images NASA, Wellcome<br />
    7. 7. Learning Computing<br />Images PCNews, Wellcome<br />
    8. 8. Learning Styles<br />Images River Beach, Beppie K, Hans and Carolyn<br />
    9. 9. Three Wise Men<br />
    10. 10. Froebel Gifts<br />Image Falling Water Museum Store<br />
    11. 11. Lego<br />Image Andy Carol, Lego, Gadgetreview <br />
    12. 12. The Craft of Construction<br />Images US Dept. of Defense, Photozou<br />
    13. 13. Pinnacles of achievement<br />Image Aheilner<br />
    14. 14. Papert & Logo<br />
    15. 15. Microworlds<br />More is needed than an intuitive, seat of the pants experience. The student needs to … conceptualize and ‘capture’ this world.Papert, 1980<br />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<br />
    16. 16. Stepping stones<br />
    17. 17. Problem Solving<br />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.<br />DfES/QCA 1999<br />
    18. 18. Case based instruction<br />“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.”<br />Jonassen 2004, pp 52-53<br />
    19. 19. Troubleshooting<br />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.<br />Jonassen 2004, p13<br />
    20. 20. John Stout<br />King George V Sixth Form College<br />
    21. 21. BYOBBuild Your Own Blocks<br /><ul><li> is Scratch (BYOB runs Scratch projects)
    22. 22. has a few (a very few) new concepts
    23. 23. encourages students to design blocks,</li></ul> creating a new language for each problem<br /><ul><li> can be used at any age / education level
    24. 24. encourages higher level thinking (abstraction)</li></li></ul><li>Clicking this lets the student create this new block<br />
    25. 25. Then drag and drop existing blocks into the new definition<br />But generalising the idea of drawing a square[draw a square [ ] ] now adds to the language<br />
    26. 26. something[ and somethingElse[ are blocks, or actions, that can be treated in just the same way as numbers, or strings <br />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. <br />
    27. 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<br />
    28. 28. Finally a bit of fun with a serious side to it<br />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.<br />Details in the latest CAS newsletter <br />
    29. 29. Roger Davies<br />Queen Elizabeth School, Kirkby Lonsdale<br />
    30. 30.
    31. 31.
    32. 32.
    33. 33. A Model Of An Epidemic<br />Create The Population<br />Seed The Infection<br />Make The Population Mobile<br />Spread Infection On Contact<br />
    34. 34. Create The Population<br />Seed The Infection<br />
    35. 35. Make The Population Mobile<br />
    36. 36. Spread Infection On Contact<br />
    37. 37.
    38. 38. Allowing Agents To Recover<br />Set A Recovery Variable<br />Create A ‘Get Well’ Procedure<br />If RandomNo(100) < Recovery<br />Set Colour = Green<br />Run ‘Get Well’ Procedure <br />On Each Step<br />
    39. 39. Set A Recovery Variable<br />Create A ‘Get Well’ Procedure<br />If RandomNo(100) < Recovery<br />Set Colour = Green<br />
    40. 40. Run ‘Get Well’ Procedure <br />On Each Step<br />
    41. 41. Further Refinement<br />Making Some Agents Immune<br />Keeping Count Of Those Infected<br />Graphing The Change Over Time<br />Over To The Pupils<br />
    42. 42.
    43. 43. Peter Marshman<br />Park House School<br />
    44. 44. App Inventor: Features<br />Design canvas with a continually updated range of object controls;<br />Object controls for custom procedure implementation and for dynamic interaction with Android features;<br />Drag and drop block editor to program solution;<br />Download direct to phone, package for phone or direct to an emulator.<br />
    45. 45. App Inventor: Features<br />
    46. 46. App Inventor: Features<br />
    47. 47. App Inventor: Features<br />
    48. 48. App Inventor: Features<br />
    49. 49. App Inventor: Features<br />
    50. 50. Potential Uses<br />Canvas drawing applications;<br />Dynamic mapping applications;<br />Quiz applications;<br />Data collection applications;<br />Subject specific applications;<br />Lego Mindstorms applications;<br />Animation applications.<br />
    51. 51. App Inventor: Student Experience<br />Converts everyday experience of Apps into an intrigue and appreciation of programming at a basic level;<br />Development of algorithmic thinking through trial and error and planning of block construction;<br />Engagement through the personalisation and ownership of developed Apps that can be further developed and exhibited away from the classroom. <br />
    52. 52. Peter Dickman<br />Google<br />
    53. 53. Simon Humphreys<br /> Computing at School<br />
    54. 54. For more information…<br /><ul><li>CAS materials
    55. 55. CAS local hubs
    56. 56. CAS conferences
    57. 57. CAS online community</li></li></ul><li>Contact<br /><br /><br />