Code Org offers a wide rage of self guided learning that allow pupils to follow their own interests and understanding, including app development
The London Grid for Learning; History Of Computing offers a full range of Ks5 resources and cross curricular resources to provide context and reality to themes and concepts
LGfL provides a wide range of Computing and ICT resources as well as content that can support the cross curricular use of technology across the school. See LGfL Showcase
LGfL offers a wide range of resources, materials and software that provides opportunities for pupils to apply and develop cross curricular use of ICT and technology in the full range of curriculum subjects.
Code Academy offers a range of learning resources for pupils
Coder Dojo is a global network of free computer programming clubs for young people.
Code Club; a nationwide network of volunteer-led after school coding clubs for children aged 9-11
The LGfL History of Computing provides context, history and teaching materials for Ks3-5 to deliver a rounded and reflective learning experience, rather than skills based learning
Scratch can be downloaded and offline or using the online development and sharing toolkit can add a whole new dimension of crowd sourcing and group development
LGfL offers J2E's programming environment, modelled on Scratch.
Kodu Games creator can be accessed via free software and shared on Pc or Xbox and needs minimal pre-experience with coding to get an excellent quality outcome
The LGfL Python tutor provides reactive and developing activities that can be used to understand the core principles of Python language, developing from the coding basics of the HTML tutor
J2Code Environment provides access to Logo activities and environment online with teaching content, help files and code exchange
The LGfL HTML tutor provides reactive and developmental HTML training for pupils to understand how HTML coding can be used as a basis for understanding structure and programming theory
Code Academy offers a range of learning resources for pupils including CSS
Resourcing
Programming languages
Each of the major programming languages used at KS3 has strong arguments to its use as a medium of instruction. Teaching programming should aim to give pupils the underlying skills of sequence, selection, repetition, etc. and not just the ability to use a particular programming language.
Which programming language should I use?
Consider the following when deciding which language to use when teaching programming.
- How well do I know the language? You need to support pupils from the least to the most able. Choosing a language you know well or can learn quickly makes you better prepared to handle questions and fix problems, and to signpost extra help for the most able pupils.
- Are there high-quality resources and a community to support teaching and learning? Can you effectively teach the curriculum in the way you want to, and seek help if needed? Finding pre-made and differentiated resources will make it easier to support your class and help you plan/adapt great lessons.
- Can pupils easily access the language at school and at home? Installing programming languages at school can be problematic. Your network managers may prefer certain products and it is a good idea to discuss your preferred language with them. You will almost certainly have pupils who want to do more programming at home. Is there a free, portable and/or web-based version of the language you are using, so they can develop their interest?
- Visual languages such as Scratch and Kodu are an excellent starting point, but be aware that many pupils may have experience of these from primary school. General-purpose textual languages such as Python, Visual Basic.NET and Java allow for a wide range of project work, including graphics, apps and games.
- The formula language of spreadsheets is a textual programming language (albeit a limited one) that provides some insight into functional programming. Most spreadsheets offer a textual scripting language such as VBA or JavaScript to create more complex functionality.
- Several languages (such as Logo) control the behaviour of a turtle or robot while at the same time introducing the idea of a textual language. Many general-purpose languages also offer this functionality.
- Javascript is a fully featured programming language and can be used to teach programming. HTML and CSS are examples of specialised and declarative text-based markup languages that cannot be used to solve computational problems.