Books · Coding · Computer Science · Emerging Trends · Programming · Teaching

Connected Code

Title: Connected Code

Author: Yasmin B Kafai
English | July 18th, 2014 | ISBN: 026252967X | 200 pages

Connected Code: Why Children Need to Learn Programming
Why every child needs to learn to code: the shift from “computational thinking” to computational participation.

Coding, once considered an arcane craft practiced by solitary techies, is now recognized by educators and theorists as a crucial skill, even a new literacy, for all children. Programming is often promoted in K-12 schools as a way to encourage “computational thinking” – which has now become the umbrella term for understanding what computer science has to contribute to reasoning and communicating in an ever-increasingly digital world.

In Connected Code, Yasmin Kafai and Quinn Burke argue that although computational thinking represents an excellent starting point, the broader conception of “computational participation” better captures the twenty-first-century reality. Computational participation moves beyond the individual to focus on wider social networks and a DIY culture of digital “making.”

Kafai and Burke describe contemporary examples of computational participation: students who code not for the sake of coding but to create games, stories, and animations to share; the emergence of youth programming communities; the practices and ethical challenges of remixing (rather than starting from scratch); and the move beyond stationary screens to programmable toys, tools, and textiles.

Books · Computer Science · Programming · Teaching

Prelude to Programming

Title: Prelude to Programming (6th edition)

Author: Stewart Venit
2015 | 816 Pages | ISBN: 013374163X
Prelude to Programming is appropriate for Pre-Programming and Introductory Programming courses in community colleges, 4-year colleges, and universities. No prior computer or programming experience is necessary although readers are expected to be familiar with college entry-level mathematics. Prelude to Programming provides beginning students with a language-independent framework for learning core programming concepts and effective design techniques. This approach gives students the foundation they need to understand the logic behind program design and to establish effective programming skills. The Sixth Edition offers students a lively and accessible presentation as they learn
Core programming concepts
  • data types
  • control structures
  • data files
  • arrays
Program design techniques
  • top-down modular design
  • proper program documentation
  • style
Problem-solving skills for
  • basic programming tools and algorithms
  • data validation
  • defensive programming,
  • calculating sums and averages
  • searching and sorting lists
Hardware · ICT · Music · Programming · Teaching · Web Resources

Sonic-Pi: Music for Raspberry Pi

Sonic Pi: The Live Coding Synth for Everyone.

Simple enough for computing and music lessons.
Powerful enough for professional musicians.
Free to download with a friendly tutorial.

Learn to code creatively by composing or performing music in an incredible range of styles from classical to algorave.

Created at the University of Cambridge Computer Laboratory
with kind support from the Raspberry Pi Foundation.
Sonic Pi is an Open Source Project released under the MIT Licence.sonic

There is a great article in the newest MagPi Essentials: Check out this cool TedTalk about the Sonic-Pi


Computer Science · ICT · Programming · Teaching · Video · Web Resources

ICT GCSE Resources in the UK System

ICT GCSE Revision

The General Certificate of Secondary Education (GCSE) is an academically rigorous, internationally recognised qualification awarded in a specified subject, generally taken in a number of subjects by pupils in secondary education in England, Wales and Northern Ireland over two years (three years in certain schools). One of the main changes to previous educational qualifications in the United Kingdom was to allow pupils to complete coursework during their two years of study, which was marked by their teachers and contributed to their final examination grade. There has been a move recently from doing coursework and modular examinations for part of the course when pupils would take exams throughout the course to an end of year exam after the two years of study (a ‘linear’ series). The exams are being revised to make them more difficult such as testing skills from a whole text in English instead of part of a text. Coursework has now been replaced by Controlled Assessments in certain subjects, in which the student completes a number of assessed pieces of work which will ultimately count towards their final examination grade in the specified subject. The Controlled Assessment component of the qualification is usually done under exam style conditions. GCSEs being phased in from 2015 generally have little to no coursework/controlled assessment influence on the final grade. Here is a link to the Wiki article to find out more about GCSE implementation.

The GCSE ICT Revision section of Revision World

Revision World is part of a group of revision websites, offering you thousands of free GCSE and A Level revision resources and study help advice. Use Revision World to create your own free study planner or revision timetable.

BBC Bitesize Resources – ICT systems and their usage

Bitesize is the BBC‘s free online study support resource for school-age students in the United Kingdom. It is designed to aid students in both school work and, for older students, exams. The Key Stage 1 section covers 18 subjects: Art and Design, Computing, Design and Technology, English, French, Geography, German, History, Mandarin, Maths, Modern Foreign Languages, Music, Physical Education, PSHE and Citizenship, Religious Education, Science, and Spanish. The Key Stage 2 site covers the same 18 subjects. The Key Stage 3 section contains 33 subjects. The GCSE section of the website contains 37 subjects.

gcse Bitesize

Discovery Education Secondary is an online service that gives secondary school teachers access to 1000s of easy-to-use, engaging resources across 16 subject areas, with creative tools to make lesson planning quicker and easier.

Resources are created by experienced teachers and curriculum specialists, and draw from trusted sources, such as the Discovery Channel, Science Channel, Animal Planet and BBC Worldwide.  It is designed to empower teachers and inspire students’ curiosity about their world. Here is a flyer showcasing Discovery Education resources – DiscoveryEducation_Secondary

Finally there is a great site for ICT games and quiz resources called where you can search for free resources by topic.

Interactive ICT games & quizzes


Books · Computer Science · Programming · Teaching · Web Resources

Coding in Primary Grades

I believe that computer coding should be started in primary school. There are a number of programming languages that have been developed specifically for young people. Here are a couple of languages Microsoft Small Basic and Scratch resources. The Microsoft site is amazing in the amount of teacher resource material it contains. Scratch, which was developed at MIT, is also amazing. Millions of projects, created by kids all over the world, enrich the learning community hosted there.

Title: Learn to Program with Small Basic: An Introduction to Programming with Games, Art, Science, and Math

Authors: Majed Marjji, Ed Price
English | ISBN: 1593277024 | 2016 | 304 pages

Small Basic is a free, beginner-friendly programming language created by Microsoft to inspire kids to learn to program. Based on BASIC, which introduced programming to millions of first-time PC owners in the 1970s and 1980s, Small Basic is a modern language that makes coding simple and fun.

Learn to Program with Small Basic brings code to life and introduces you to the empowering world of programming. You’ll master the basics with simple activities like displaying messages and drawing colorful pictures, and work your way up to programming playable games! You’ll learn how to:

Store and manipulate data with variables
Process user input to make interactive programs
Use if/else statements to make decisions
Create loops to automate repetitive code
Break up long programs into bite-sized subroutines
Inside, you’ll find hands-on projects that will challenge and inspire you. You’ll command a turtle to draw shapes, program magical moving text, solve all kinds of math problems, help a knight slay a fearsome dragon, and more! Each chapter ends with extra practice examples so you can take your programming skills to the next level!

Title:  Super Scratch Programming Adventure!: Learn to Program By Making Cool Games

Authors: The LEAD Project
Publisher: No Starch Press | 2012 | ISBN: 1593274092 | 160 pages

Super Scratch Programming Adventure!: Learn to Program By Making Cool Games (Repost)
Scratch is the wildly popular educational programming language used by millions of first-time learners in classrooms, libraries, and homes worldwide. By dragging together colorful blocks of code, kids quickly learn computer programming concepts and make cool games and animations.
In Super Scratch Programming Adventure!, kids learn programming fundamentals as they make their very own playable video games. They will create projects inspired by classic arcade games that can be programmed (and played!) in an afternoon. The books patient, step-by-step explanations of the code and fun programming challenges will have kids creating their own games in no time.
This full-color comic book makes programming concepts like flow control, subroutines, and data types effortless to absorb. Packed with ideas for games that kids will be proud to show off, Super Scratch Programming Adventure! is the perfect first step for the budding programmer.

Here is a self directed video training title for teaching kids programming by building cellphone apps.

Title: APP programming for kids

MP4 | Video: AVC 1280×720 | Audio: AAC 44KHz 2ch | Duration: 2.5 Hours | 217 MB
Genre: eLearning | Language: English

Source: Udemy Training 

In this course you will learn the basics of programming and you will create your very own Flappy Bird type game.

Join us in this amazing course were you will learn hot to start programming new and exciting games for mobile platforms. You do not need to have ANY previous experience as this course if for the new programmer.

At the end of this course, you will have a clear understanding on how basic statement like FOR, IF, WHILE, etc work and you will create your very own Flappy Bird type of game!!!

This course has been design for those who might want to venture into APP programming but might be afraid of not knowing or how to do things. The approach taken by this course will allow the student to get immersed into hole new world of possibilities. Remember, I am here to help you succeed, so if you have questions, please ask, I love to answer!!

Note: All the books presented in this blog. Include the original cover and review provided by the publisher. This information is used to accurately promote and show respect for these resources, the authors and the publishers.

Books · Programming · Software · Teaching

Kids and Programming? What’s the deal?

from the Guardian wrote an article in 2014 called “Why every child should learn to code” where he goes into a story I have heard a hundred times…

from the Telegraph wrote an article in 2013 called “Teaching our children to code: a quiet revolution” where she did the same …

Computers are everywhere… our supercomputer cell phones could stage another moon landing hoax … kids use computers but don’t know how they work… new jobs that need coding are being created all the time …

Unfortunately the message is not getting through. Here is Halifax, in 2016 it is pretty much not happening. We are not teaching our children at any grade to code. What is not understood about how important this is? Is it money or will to change or inertia?

I think we should hard children young and teach them programming in many forms.

Here is on good book for doing that.

Title: Programming for Beginners: Learn to Code by Making Little Games

Author: Tom Dalling
English | ISBN: n/a | 2015 | 90 pages

So you want to learn how to write code. As of 2015, software developers are in demand, which makes software development quite a lucrative career. I also think it’s a lot of fun. You type in some text, then the computer does what you say! And if you already own a computer then it’s basically free, other than the time that you invest.

Programming is a creative endeavour. You can create whatever you want, and then interact with your creation. It’s an eye-opening experience to make something that asks you questions, and responds to your answers. I hope you will have that experience very soon, as you start working through this book.

However, the learning curve can be very steep and frustrating. The majority of programming books and tutorials are made for people who already know the basics. They are too advanced for true beginners – people who have never written any code before – which makes them difficult to absorb if you are just beginning to learn.

You don’t need to know anything about writing code, or making software. You will need some basic computer skills – like downloading, opening, and saving files – but everything else will be explained here, step by step, starting from the very beginning.

This book is designed to be your first step into the world of computer programming. It teaches the fundamentals – the core concepts that programmers have used for over 50 years. With a knowledge of the fundamentals, you will have the ability to learn the more advanced concepts that come next.

Here is one great program that is doing that.