Tuesday 31 December 2013

Open Data

I like Open Data, and I don't use it nearly as often as I should do in class.
Open Data is a great resource for classes, it can be used in programming lessons, spreadsheets, databases and they are just the IT/Computing related lessons I can think of from the top of my head, let alone the other subjects it could be used in. Using Open Data gets away from using the boring, repetitive and non-real world examples that get used in classes like film databases, or music libraries, etc.
So where can you get Open Data from?
My post the other day on the CareerHack Challenge pointed to one source of Open Data that could be used.
In November 2013 there was a Parliament Hack event run by ReWired State and UK Parliament. There was a great page with links to Open Data etc (which you can find here) that they shared for the event.
Then there is the official data.gov.uk which has all types of official data for you to use.
If you look at the ReWired State site there is a page of up and coming Hack Days. As I write this there are two coming up one in January (a Foreign and CommonWealth Office Hack Day) and a National Hack the Government Day in March. The National Hack the Government Hack Day has a "micro site" for it here. There is a great google doc spreadsheet on there that has lots of links to Open Data sources (go get it).
By keeping an eye on these Hack Days, and the hash tags they use on twitter it is possible to discover new sources of Open Data or remind you of new ways to use existing ones already knew of.
You can also get MP expenses data! (which can be found here)
The nice thing I like about teaching programming (and this would apply to spreadsheets etc) is that it is easy to embed functional skills like maths into the lesson. For instance take the MP expenses data you can get the students to analyse their local MPs expenses, and answer questions like what is the average (mean) rent paid by an MP, and how does your local MP's rent compare? Get them to use different measures of average. Or how about getting them to do some simple stats like standard deviations and variance on the data?
As my CareerHack post showed the data for that requires making requests to a website and getting JSON responses. While others like the MP data comes as a csv file. This gives a lovely variety in getting the students to access data in different ways. Real world examples.
Open Data is such a great resource. It gives students real world data to work with, gives opportunities for students to access data in different ways, and gives opportunities to involve students in wider issues like politics and social issues.



Saturday 28 December 2013

CareerHack AppChallenge 2014

The UK Commission for Employment and Skills (UKCES) are running a competition. They are billing it as a £20,000 App Challenge. Which technically it is, HOWEVER that is the sum amount of the prize money on offer. The actual first prize is £10,000, with a second prize of £5,000. Now that doesn't add up to £20,000 does it? Well it does if you add in the special prize of £5,000 for any student in the age range 16-24, and studying in Further Education within the UK. Pretty good hey?

So what are UKCES looking for to be in with a chance to win this money? They are looking for people to design apps that use the data from the Labour Market Information (LMI) for All website in "new and innovative ways".

The contest started on the 18th November 2013, and closes at 5pm GMT on the 21st February 2014.

Go read up on the rules etc (links below)

You can contact on Twitter: @appchallenge and @lmiforall
They mention these hashtags to use: #careerhack #lmiforall

Further Info Here:
Contest Web Page
UKCES Page
LMI for All Website

When I get back I will be encouraging my students to enter this competition. I think this is a great idea, and I hope some of them will take up the challenge. It would be nice to use our STEM Fair in March to show off some of the entries.

Now here is a first, considering the name of this blog, there hasn't been any coding so far.
So I knocked up a small Python program that accesses the LMIforAll api to get a list of Standard Occupational Codes (soc) for a keyword. A lot of the other api's need this soc code to work.



Not the best example, and not the best coded Python by a mile. But it does give a very simple example of accessing the LMIforAll api, which is sadly missing at the moment from their site.
I say sadly considering the fact they have a special prize for students, and with the popularity of Python in schools/colleges I think this is a little bit of an oversight. Yes they have an example of a web app (HTML/javascript if I remember correctly, I didn't investigate it too much), and there is an Objective C example I came across, but nothing in Python.

You can get further info on the requests library here. How to install the requests library here.

UPDATE1: Added use of Syntax Highlighter for displaying the Python code
UPDATE2: Note the Python code is 2.7 

Saturday 21 December 2013

A Concern About KS3 Computing

"understand several key algorithms that reflect computational thinking [for example,ones for sorting and searching]; use logical reasoning to compare the utility ofalternative algorithms for the same problem" [The National Curriculum in England - Framework Document, Sept 2013]
While I was preparing for my talk on mapping Python to Keystage 3 (for sake of openness I don't teach KS3, I teach 16+) the above quote stood out to me and made me very concerned about a new possible future of the teaching of computing.
Last year in a discussion with an examining board representative a comment was made about how for databases the vast majority of submissions were for film databases. The impression given was there was no variety, no "real world" application.
When I saw the above quote and the examples given I instantly feared that the new KS3 computing version of the film database is going to be sorting and searching algorithms, especially the bubble sort.
I know how busy teachers are (being a lecturer at an FE college gives me a bit of insight here), I also have a pretty good idea the sort of background a lot of those who will have to teach this have (the CAS site is great for this sort of thing, getting a pulse of things, and I have seen the resources going up to be shared). All the indications at the moment seem to be a focus on sorting and searching, and very little on other key algorithms. And busy teachers with very little time will fall back on resources available to them, and what they are comfortable with.
So I know what you are thinking, "that's fine and dandy saying this but what other algorithms should we be teaching?" This is where I think the DoE wimped out. They should of given more examples to guide teachers. By just mentioning sorting and searching that is all some teachers will cover. Especially if they do not have a computer science background.
Does the book 9 Algorithms That Changed The Future just cover sorting and searching algorithms?
No, it covers cryptology, data compression, pattern recognition, error-correcting, as well as page rank and indexing.
And there is the hint about what other algorithms should be covered.
How about a free resource in the flavour of the month programming language for education Python? Here is a pdf book Hacking Secret Ciphers with Python: A beginner's guide to cryptography and computer programming with Python , which you can also buy (please do, as the proceeds go to support the EFF) as a physical copy. So no excuse not to also cover basic cryptology now along side sorting and searching algorithms.
I know time is in very short supply but this Christmas "break", however if you are a computing teacher, or moving from ICT to computing get the book Algorithms Unplugged. It's very accessible, and will hopefully widen the options available on what algorithms you teach.
The book covers 41 algorithms in 4 main areas (sorting and searching, arithmetic and encryption, planning coordination and simulation, and optimization) written using "colloquial and nontechnical language". So there should be plenty there to choose from.
I'm not saying don't cover sorting and searching, they still need covering. What I am saying is make sure you don't place so much emphasis on them to the detriment or exclusion of other algorithms.
Hopefully this has given some food for thought, pointed you in the direction of where to go for ideas and information on algorithms, and helped me sleep at night knowing my worries are unfounded.


Tuesday 17 December 2013

Games Britannia 2014 Program


Below is a summary of the program of events that Games Britannia have lined up for 2014 with links.
  • 16th January 2014 - Sumo Digital Coding Master Class (click HERE for full details)
  • 24th January 2014 - Industry Lectures and GB Competition Brief (click HERE for full details)
  • 10th - 12th June 2014 - Schools Workshops (click HERE for full details)
I will say I already have my ticket booked (via the EventBrite page) and there are not many tickets left when I just looked. So I will write up the days event for here when I go.

I am interested in the Games Britannia Competition Brief, it's something I want to have my students on the Level 1 and 2 have a go at this year.

Sadly the Sumo Digital Coding Master Class is for University students only. 
While it really is a bit of a lottery getting the workshops you want for the Schools Workshops. The problem I have is that I have 93 students I'd like to take to that! Will have to discuss logistics with the organisers before hand. 

If you get to any of the above events let me know how you got on in the comments. If you are going on the 24th January then say hi to me. I will be wearing a retro video game t-shirt of some sort (probably a manic miner one).



Saturday 7 December 2013

CamJam December 2013

Just some snaps taken from the CamJam (a Raspberry Pi Jam in Cambridge).
The Picade currently shipping to the kickstarter backers! and will be available to buy some time next year. I missed the kickstarter so will have to wait. But be sure I will be buying this.
Above: Now this is what I call a robot arm, unlike the Maplin one I have, this one looks less of a toy.
Below: Seven Segments of Pi, a kit that can be bought that teaches electronics and programming.
Below a fully kitted out robot controlled by a Raspberry Pi, this has every sensor you can connect to a Pi built by Matthew Timmons-Brown aka The Raspberry Pi Guy.
Below Ryan Walmsley aka Ryanteck with the new robot kit he is going to be selling real soon.
If you haven't been to a Raspberry Jam then the question has to be why not? Especially if you are in education and/or a Pi user. You get to meet fellow enthusiasts, get ideas for projects from seeing what others have been doing (show and tell area) or from discussions with others, learn (workshops and talks), and basically have a good time.
A word of warning they can be expensive! With online retailers attending with their wares, it's very easy to walk out with a load of goodies. As my little bundle below shows (another Pi, a case, and a wireless keyboard) from the show today.
It is nice to have the online retailers at these events as they give you that chance to physically see the goods before purchasing.
Hey you even get sneak peak at stuff like the HDMI-Pi kickstarter project, which is an affordable 9" HD screen for the Pi (photo about of Dave and Alex doing their speed talk about it). Some news was announced like the dual 5v and 12v power , 2 HDMI ports, and a USB port that provides 5v power.
Next CamJam is 8th February 2014.
Update: Below some close up (ish) photos of the HDMI-Pi.
Update 2:
Below the Pibrella on a Raspberry Pi