Exploratory Coding

[Note – this is my first #28daysofwriting post (1 day late starting!) and I only have 21 minutes left…apologies for the potential brevity and lack of focus.]

This afternoon, my Year 6 class and I explored the third session in our current Computing progression of learning. We are artists is our current unit which, adapted from the Rising Stars Computing scheme of work, involves using a range of programs to create artwork. Fusing geometry and coding is the theme flowing throughout our topic and the children are investigating the potential benefits of using digital tools to present artistic ideas.

Having already explored Inkscape to design tessellating patterns, today we moved on to designing Mayan inspired art using Scratch. As with most Computing lessons where ‘new’ pieces of software are introduced (the children have used Scratch before, but required some time to ‘get used’ to the tools available again), I began the session with a ‘five minute madness’ recap. This involved giving the children a set amount of time to explore, play and investigate the software with the freedom to create anything they liked.

8539385636_b8a725a8b7_z

Photo: https://www.flickr.com/photos/chelotic/

Within minutes, the children had changed their sprite, edited their backgrounds and developed a range of algorithms to make their sprite achieve a range of different outcomes. This activity very naturally led to a range of discussions about how different scripts could be utilised to produce pieces of art. The pen script then spread across the class like wildfire and towards the end of the five minutes, the group had begun their own pieces of art.Screen Shot 2015-02-02 at 20.03.48

After a couple of plenaries to raise questions, provoke thinking and direct pupils attention to specific scripts that would help them achieve aesthetically pleasing art and effective (debugged) algorithms, I modelled how the ‘repeat’ control script can be used to loop the creation of shapes and achieve a pattern. Teacher modelling of skills in my classroom rarely receives applause from my class. However, after modelling an example algorithm to a group of children in order to support their developing programming skills, an applause spread around the classroom. It was fantastic.

The power of Computing to inspire young people is huge and during this session it became clear that through exploring new skills and concepts in coding, children’s imaginations can be fuelled. Certainly, my class were excited and engaged to be learning genuinely new skills and understanding (something that sadly can be lost at some points in Year 6… this could lead to an entirely different blog post later this week). My class, I hope, are coming to realise the endless potential that Computing can offer. In terms of its potential to open, rich learning opportunities, I certainly am.

Advertisement

#Naace14 Conference Friday Breakout Session 2

Phil Bagge Adding a strand of Computing Science into Computing/ICT

*These are a few of my notes from Phil’s excellent workshop – all resources available on his site here*

*Excuse errors – live blogging and note taking*

What percentage do you teach computing vs digital literacy? 30 / 70 (roughly). *Again, links to the idea that there is more to technology in schools than just computing. Don’t forget the rest! 

Phil has found that debugging is the most important aspect of computing. From experience, we as teachers want to fix things. Debugging is about empowering children to fix things themselves and giving them the responsibility. It is not the teachers job to debug pupil code and fix their problems – important to raise this point with classes when beginning to teach them. *This develops independence and allows them to make mistakes! Limited timescales in digital literacy aspects bring temptation to teachers to solve problems for the children. Through computing children should be empowered to solve the problems themselves.

Burgers, Sandwiches and Side Salads. Analysing and interpreting the curriculum for computing. What to focus on (the meat) and how to support this (the bun). *See Phil’s slides for more explanation.

Planning has been influenced by the children; they have given excellent ideas and inspired planning tweaks. All available online here.

Phil shared his software ‘best fit’ for where certain pieces of software have been used most effectively in different year groups.

Screenshot 2014-03-28 13.32.10

(source: http://code-it.co.uk/resources/primaryproglang.pdf)

Scratch – allows users to make what they want. Kodu is great but is limited to making games. Scratch provides a variety of types of programming for learners. Sharing the fact that children ‘buy in’ to Scratch and have gone home and downloaded, taking what they have learnt in school back home. Online community can provide children with a community to learn from outside of school with video resources included (flipped model).

Phases of programming

What can it do? Give children different experiences of things that they can change, adapt and move forward.

Decompose before build. Break a programme up into all the bits it took to compose it. As you make, refer back to decomposition. Why? Because they will be decomposing in the future.

Give children blocks without the order. Experiment – can you make it do what you want it to? Celebrate

Blocks and speech. Read and understand the blocks and what they mean. Read the code! *Code comprehension is really important. No point in slotting blocks together unless you actually understand what it means and what it is going to do. 

Similar but not the same. Give children a piece of code that is similar to the one they need to create.

Model physically. Allows children to understand what is happening – they can see it. E.g. the forever loop (modelled perfectly by the audience!).

Tinkering. Play with stuff! Learning through play. If they’ve completed the task and showed an understanding of the key concept allow them to tinker, explore and adapt code.

Extension tasks and challenge cards. Build into lesson in order to support and stretch pupils. *Important to remember with ICT/computing lessons in general that there are differing levels of ability. It is like any other lesson we teach! Sometimes I feel this can be forgotten. Similar issues with marking and feedback in technology lessons.

Decomposed games planning. Play a basic game. Plan own games using tactile resources (playground, chalk, paper, pen). Break up the idea and plan the game.

 

Training teachers to code. All start at the same level. Choose one language to start with. Teach a module. Classes teach relevant modules. Come back and evaluate.

Not all Computing Science needs to be programming. Playground games, making sandwiches, getting up algorithm.

Internet side salad. Taking apart and discussing ‘search’ using the classroom environment. *See website for more. 

 

Just for reference: Phil’s infamous jam sandwich video:

 

#Naace14 Conference Friday Breakout Session 1

Rob Curran Using CoderDojo principles to inspire and enhance learning

As a mentor, Rob says he is learning all the time and that attending CoderDojos develop his understanding too. *I think this is what many teachers will experience as we implement a new curriculum for computing. This is a great aspect of the new curriculum that teachers should embrace, even though for some it may be daunting. Excellent way of engaging young people and their parents in learning something new. Children remixing standard scratch games to change background, costumes, speed of movement, etc. *Links to ‘remix’ that was mentioned this morning. ‘Skill set determines what is on offer – but not necessarily what takes place!’ Children always present and talk about their work at the end of the dojo.

CoderDojo resources available open source to all. Available here. These come with a health warning – resources are not always easy to follow by someone who has not lead a session like that before.

Pertinent question from audience around CRB checks for adults supporting the young people at dojos. Working with Hays Recruitment to ensure all adults are checked.

‘Be the guide on the side’ is a saying that also came up in the flipped learning session yesterday. *As a teaching approach, this supports learning across the curriculum and is not just useful when introducing coding concepts. 

Questions from audience

Any comments on how to achieve this standard of learning inside school without parents at learners sides with computing skill sets? This is an issue for us all to consider. These sort of events could be run between schools in a local area and therefore learn from each other (and perhaps invite specialist teachers to lead and other teachers learn alongside). A little like sports events where schools are all invited to one space to complete sports activities, perhaps there could be locally organised coding events. 

Issues surrounding pupil engagement, especially in areas of deprivation where parental involvement might not be so strong. Narrowing the digital divide? 

Comment from audience – In a class situation when learning coding (and other things!) the model of learning in groups and teams can be used to effect.