By using this site, you are accepting "session" cookies, as set out in the site's Privacy Policy
Resources for learning about computing and programming . . .
See below for links to download ZIP files with a complete package of each day's handouts and resources. The handouts also include links to sites to download other software.
MyEasyPages™ - www.myeasypages.co.uk Use MyEasyPages™ to create a simple web page . . . . . . and show friends and family can see what you've produced
Arithmetic of Computers - www.arithmeticofcomputers.co.uk A structured guide to some of the basic maths of number systems and computers
Found something useful that isn't mentioned here? . . . Any ideas? Thoughts? Comments? Suggestions?
Then email me with details at Info@CodingIsFun.co.uk
CodingIsFun™ is FREE for non-commercial use, but . . . . . . COSTS time, effort and money to develop and maintain!
DONATIONS towards the cost of this and associated work, would therefore be much appreciated.
Thank You!
Not got a PayPal account? No problem! Just pay through PayPal with your credit or debit card.
Examples of suggested suitable donations (for personal / non-commercial / non-profit use) are:
PLEASE NOTE : The standard terms and conditions for use of this site are forpersonal / non-commercial / non-profit use ONLY. If you would like to use this site or any of the materials on it for anycommercial or profit-making activity, PLEASE CONTACT ME at Info@CodingIsFun.co.uk.
I am (amongst other things) an IT technician in a local primary school and these are based on a series of sessions I ran in the school's computing club (as part of the school's Gifted and Talented programme). For me, this was both challenging and very rewarding, though it could not have worked without the support I received from the teaching staff and also a parent who came to many of the sessions and helped work with the pupils, for all of which I am very grateful.
Due to the numbers of pupils involved and the time available, each session was run with either 1 or 2 groups of pupils within an 80 minute period - with ideally no more than 6 in a group, though numbers are more important for some sessions than others. This meant pupils had either 40 minutes (usually very tight) or 80 minutes (often with ample time to let questions and discussion roam quite widely). With the club running on 2 days a week, that meant each session was delivered up to 4 times.
The main aim was to enthuse and open doors to the world of computing. Computing is also a highly practical skill. Variety of material and giving pupils as many opportunities as possible to do and see things for themselves were therefore high priorities.
None of the sessions was aimed at turning pupils into competent programmers - there wasn't enough time for that anyway. But every session could easily be extended and used as the starting point for work in a particular area.
The material is also designed so that it could be used for a wide range of ages. While the school computing club members ranged from ages 8 to 11, that might just as easily have been 12 to 15 or 16 to 18, though the way the material would then be presented and used would have been different (for example, the assumed level of mathematical knowledge would obviously change).
There are also themes running throughout many of the sessions, which I've tried to highlight in the notes. Hopefully these help to avoid the sessions feeling like a lot of unrelated snippets.
As ever, with differences between UK and US English spelling, choices have to be made. I live and work in the UK, so generally use UK spelling (e.g. colour), but many programming environments and libraries have their origins in the US and use US spellings (e.g. color) and, when referring to specific programming features I therefore refer to them using those spellings in the hope that that will minimise confusion. Those are my choices - if you want to alter any of the materials to reflect your choices, or translate them into other languages, please feel free to do so. If you do, letting me have a copy that I could put up on the web site would however be appreciated.
For anyone using these resources to work with others, there is an assumption that you are either already fairly familiar with relevant aspects of computing or willing to work through the material yourself to acquire sufficient familiarity. If anything here gives you problems or isn't clear, please feel free to contact me at Info@CodingIsFun.co.uk
Please note that some of the handouts include references to documents / files / images that it is assumed are available to pupils on your computer / network. So you may need to make minor changes to reflect wherever you have stored them / how pupils should access them.
Lastly, everything here was actually used and worked. But do please check that it works for you before you try to use it as configurations, versions etc. may vary. And please let me know if you have any problems or think there is anything that might be changed or updated to make life easier for others.
A short introductory session to find out who might be interested in joining the club!
A simple competition for pupils
A few notes from the school's Open Day
Use MyEasyPages™ to create a simple web page . . . . . . and show friends and family what you've produced
A simple introduction to programming in JavaScript
A bit of a challenge . . . . . . how good are you at writing (and following) simple instructions!
Getting started with Scratch A simple, but powerful, graphical programming tool
Simple hardware . . . . . . a game with a PIC microcontroller
Hardware and software . . . . . . graphics and coding
Mobile apps and graphics
Visual Basic for Applications - a programming language built into Word, Excel . . .
More Hardware and software . . . . . . a game on the Pi
Learn the maths of how computers do arithmetic . . . . . . bases, binary etc.
A little bit about some core skills Well worth learning even if you aren't going to become a programmer.
This is a general list of possible additional resources that may be useful (in addition to those in the main Resources pages).
But please note that I have not tried using all of these so you'll need to put in a bit of groundwork yourself.
If you have any helpful comments on any of them or any others that might be added, please contact me at Info@CodingIsFun.co.uk.
Visual Studio is the name for Microsoft’s suite of Integrated Development Environments. 2012 is the latest version. Follow the Learn More link for downloads of versions for developing for Windows Desktop, Windows 8, Windows Phone and Web Sites. Express is the (slightly) stripped down free edition. Microsoft Visual Studio 2012 Express
The previous version, Visual Studio 2010 is also still available. Follow the See Download Details link for versions including the C# is the programming language. Other lnguages are available such as Visual Basic. Express is the (slightly) stripped down free edition. Microsoft Visual Studio 2010 Express
You might also be interested in Visual Studio 2010 for Windows Phone. With this you can develop XNA and Silverlight Apps for Windows phones (Silverlight also runs on PCs as well as Windows Phone 7). Microsoft Visual Studio 2010 Express
Somewhere in all this if you want to work with databases you may want to install some edition of SQL Server.
And you’ll probably encounter the .NET Framework, which is the technology that underpins a lot of Microsoft development stuff and helps link up various diverse technologies, development languages etc.
Note that Windows 7 or later is recommended for all this, even if not necessarily absolutely critical – and, as with all development software, plenty of RAM (my PCs have 6GB) and plenty of hard disc space are recommended.
For fancy graphics you’ll also need XNA Game Studio 4. XNA technology runs on Xbox consoles and Windows Phone 7 as well as on PCs. As a humorous aside, note that there are some people who claim XNA stands for "XNA is Not Acronymed". Microsoft say XNA doesn't stand for anything. Microsoft XNA Game Studio 4
Note that if you have a “.ac.uk” email address (or provide other accepted academic credentials) you can probably register at Microsoft’s Dreamspark site and get the “Pro” editions of this (and other) software [for non-commercial use only!] for free. Microsoft DreamSpark
For loading ISO disc images (which is what you get with some of the downloads), a tool like MagicDisc is helpful – or use Nero or any other CD/DVD burning software to burn the images to disc. Magic Disc
If you want to develop web sites, Microsoft’s web server is called Internet Information Server (IIS) – and ASP.NET is the web server extension that links IIS to the .NET Framework (and hence to development in .NET languages like C#) – there are plenty of (relatively) cheap web hosting companies that offer packages including IIS / ASP.NET / SQL Server and lots more – this is the one I use. Fast2Host
This is very versatile and quite powerful. As well as building the robots in the kit, you can design your own, with motors, lights and various sensors. Programming the robot can be very simple or as complex as you want it it with Lego's own easy to use graphical software or add-ons to Microsoft Visual Studio. Simple programs get stored and run on the Lego Minstorms NXT brick itself. For more complex things you can communicate with a PC while it is running and have a program on the PC control the robot. The robot connects to a PC via USB or Bluetooth. You'll probably want the 8547 kit (or the 9797 kit for education) to start with (unless Lego have come up with a newer version) - note that the Lego online shop is unlikely to be the cheapest place to buy it (unless you can get a special price for schools / academic institutions). Lego Mindstorms
For extra parts / spares, consider hunting on eBay . . .
For more advanced programming in C# using Visual Studio, download the .Net library from MindSqualls . . .
Note also that there is a new Mindstorms EV3 generation of products due out in 2013.
3D graphical programming - similar in concept to Scratch but maybe a bit more advanced. Alice
Graphical programming from Microsoft for PC and XBox. Kodu Game Lab
Tools for learning to programm in Java on Windows, Mac or Linux. Greenfoot
Software for app creation for mobiles from MIT. App Inventor
An alternative to PIC programming. Arduino
A simple robot that works with Raspberry Pi, Arduino - and Shrimp - processors. ShrimpBot
A grass roots organisation that aims to promote the teaching of Computing at school. Computing at School
A magazine (online and print) with lots of stuff about computing and its applications. Created with the aim of sharing the authors' passion about all things to do with Computer Science and published by Queen Mary University, London. CS4FN - Computing Science for Fun
A network of volunteers to run coding clubs in schools. Code Club
Software to learn programming in Ruby. Hackety Hack
A network of software developers and designers aged 18 and under. Young Rewired State
A wide range of devlopment boards based on PIC microcontrollers from MikroElectronika. MikroElectronika - EasyPIC
*** WARNING *** Do *** NOT *** confuse this with easypicDOTcom It is *** STRONGLY *** suggested that you block access to easypicDOTcom And do *** NOT *** use Google to search for EasyPIC
A JavaScript framework, rapidly becoming the de facto standard for simplifying programming in JavaScript, including providing lots of cool effects and solving a lot of the cross-platform web browser compatibility issues. Also think about using JQuery UI. JQuery
A language that extends JavaScript to make it a lot more friendly - and plugs into Visual Studio 2012 to give developers a much smoother development experience. Works with JQuery, but remember to include the jquery.d.ts TypeScript definitions file. You may also want to install the Web Essentials Visual Studio extension. TypeScript
Any ideas? Thoughts? Comments? Suggestions?
Found something useful that isn't mentioned here?
Any questions or difficulties?
Or after any further information?
Then email me at Info@CodingIsFun.co.uk
CodingIsFun™ originated with a series of sessions run outside normal school time in a primary school club, with small groups of children aged 8 to 11 (though CodingIsFun™ is just as much about teenagers and students as it is about younger children), aimed at giving them a broad flavour of what computing is about.
The emphasis was on having fun, getting them involved and variety rather than a systematic effort to turn them into programmers.
It certainly felt ambitious, but none of the pupils dropped out - the club was entirely voluntary, with no compulsion to attend - and the feedback was very positive.
And for the record (for anyone who might expect otherwise), it wasn't just boys - there were plenty of girls and they were just as good as the boys - but then it was a woman, Ada Lovelace, who arguably wrote the first ever computer programme!
Quite a lot!
I'm now running these sessions in 6 local primary schools - and developing ideas for other sessions. I'm involved with Royal Institution Masterclasses I'll be starting a series of sessions in a local secondary school as part of their lower sixth enrichment programme. I'm getting involved with staff at some local schools to introduce computing to them - especially in the context of Computing in the new National Curriculum from September 2014. And extending that to work with the Local Education Authority's Central Enfield City Learning Centre.
So things are quite busy
The simple answer is wherever it needs to to help get youngsters enthused about computing and programming.
It is (and probably always will be) a work in progress!
For one thing, computing doesn't stand still.
For another, there are lots of other people creating resources and tools and a major part of the aim of CodingIsFun™ is to help you find them.
CodingIsFun™ web site and content Copyright © TenScope Limited 2012, 2013, all rights reserved
Company registration no. : 06656008
Registered office : Suite F3 Sunley House, Olds Approach, Watford, England, WD18 9TB, United Kingdom
Contact Email : Info@CodingIsFun.co.uk
Use of this web site is subject to these Terms and Conditions and this Privacy Policy
JQuery is used under the terms of the MIT License. For further details, see http://jquery.com
Usage of code from (or based on code from) the following sources is also acknowledged: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf
Use of relevant web sites and resources drawn from them is subject to the relevant terms and conditions specified on such web sites, including copyright and recognition of relevant trademarks.