Meet New People! Learn to Code! Eat Snacks!


As I mentioned a few weeks ago, I’ve started attending OpenTechSchool workshops to get a better understanding of computers, and to meet other people starting out in this field. It has been wonderful and I’d recommend anyone else to give it a go as well. Check out the video above to find out some more about the workshops and how OTS operates.


My experience with OpenTechSchool also got me thinking. Could their techniques work in other subject areas? Why not OpenScienceSchool or OpenMusicSchool, for example?

It doesn’t appear immediately plausible. Programming seems uniquely ideal for this kind of environment- the programming tradition stems from self-taught programmers offering their advice and experience (and occasionally their brutal smackdowns) to newbies who are also learning through books, websites, forums, and good old-fashioned ‘trying things out’.

CC-BY toolmantim on Flickr

On the other hand it seems to me that OpenTechSchool works, not because of its subject matter, but because it makes the best use out of both technology and people. There’s less pressure on a single teacher to create their own materials, and there’s no need for expensive textbooks. The curriculum is developed collaboratively and shared online. Once the initial core curriculum is written, coaches can spend more time focusing on the learner. Online version control means it’s easy to collaborate, adapt and improve the material, and the open license (CC-BY-SA) means it can be used by anyone, anywhere, sparing redundant creation of similar material.


Allowing each student to choose their own pace also seems an important aspect to this approach. In a traditional teaching environment, the teacher’s pace may be just right for some students, but others may be bored, confused or lost. With OpenTechSchool, the learner sets the pace and the coaches are proactive in offering support where needed.

Surely for any subject area, it would be worthwhile getting as much one-on-one teaching contact as possible, for the student’s confidence and comprehension and for the teacher to get a better understanding of each student’s progress and the effectiveness of the material.


The first prospective subject to enter my mind was language learning- my parents were both English language teachers and they speak multiple languages, so growing up, my house was always full of dictionaries and languages, and I’ve picked up some along the way. My Spanish is rusty, but I’ve hacked away at German for long enough that it will finally behave. What high school French I have left sounds like an offensive impression of a Frenchman choking on a baguette. My language abilities are nothing compared to a real European, but by now I’ve at least got a good feel for the learning process, and I think an OpenLanguageSchool could definitely work.


The social environment of these workshops is a great advantage for learning programming languages, and it’s also an absolute necessity for spoken languages. You can’t learn a language in isolation. Like programming, it’s through practical application (SPEAKING) that you really learn – the theory is good for filling in gaps, improving technique and expanding your understanding.

I told you there were snacks. CC-BY toolmantim on Flickr

It’s already common for people to meet up in the real world to learn and teach languages together, via language exchange or tandems. Mostly this is an entirely offline activity (though sometimes facilitated through online sites).

Where I see an opportunity is in the enhancement of this offline community by working together with online tools and activities, by using open educational resources like video, audio, texts, lessons or software together.


There are certainly many people who would be interested in such an idea, and there is a huge wealth of language-learning resources online already. The real work and the real opportunity is in curating and managing such resources, and building a structure for this kind of learning. Organisations like P2PU and Wikiotics or the Center for Open Educational Resources and Language Learning are all interesting initiatives to watch for the future, or better yet, get involved with now. As the number of language learning resources grows, and the organisation of these resources improves, the opportunity for more effective mixing of on- and offline learning becomes greater.


Language learning is just one of many areas where this approach could be effective. It would be wonderful to see the OpenTechSchool-style learning environment ‘go mainstream’ and become a regular part of the learning experience in many different fields. Not as something that replaces schools, university or independent study, but a way to enhance the learning experience and provide support and encouragement to learners of all backgrounds, income and interests.

Having no cost or barrier to entry makes it as easy as possible for people to join in. It brings education to people who would never normally have sought out or signed up for an evening class or traditional course. And it encourages people to continue educating themselves throughout their lives, not just for their career’s sake but for their own enjoyment and empowerment.


On that topic, If you want to improve your language learning with useful online tools and free software, check out this intro to Learning With Texts and Anki, or contribute to the Tatoeba translation project. Or if you want to help out the free and open source software community, you can contribute translations with Zanata.

Getting Technical with Open Education

This post originally appeared on my blog at

My open source smartphone is still causing me grief, I don’t know what kind of voodoo controls my internet router, and I’m constantly finding myself stuck in boring, repetitive tasks on my computer, thinking ‘there must be a way to automate this.’ The smugly insubordinate part of my mind tends to reply with a snide ‘Yes, there most certainly is. And it’s WONDERFUL. Such a time-saver. Pity you don’t know how…’

I’ve started to get the feeling that many things might be easier if I were a bit more tech-savvy.

We interact constantly with electronic devices and complex software and it’s very easy to feel daunted, to want to ignore what’s going on ‘under the hood’ and leave that to the experts. This does have the effect of penning people in as consumers of technology, rather than empowering them to use or adapt technology to their needs.

But what if, like me, you’re just not the techy type? I’m not at school any more, surely it’s too late to learn all that? This week, I decided that no, it’s never too late. I’m not usually one to give aspirational quotes from venture capitalists, but Fred Wilson does have one good line which I particularly like:

A young man asked me for advice for “those who aren’t technical”.
I said he should try to get technical.

Now I’m trying to use open source hardware and open educational resources to help me get digitally literate. First, something hands-on – the classic open hardware device, the Arduino microcontroller. As well as serving as the brain of 3D printers, radio controlled lawnmowers and sex toys, Arduino is a very practical way to learn both electronics and programming. The board is open hardware, so you can make one yourself if you like, and there are plenty of tutorials and crazy projects all over the net for learning and inspiration.

For people like me who don’t know their cathode from their anode and can’t even program a thermostat, the official Arduino starter kit is a great introduction. It comprises a 15-project handbook, the Arduino itself, and various electronic components. There are also sensors which convert heat, light, and sound into electrical energy, and actuators like motors and LEDs which covert electrical energy into whizzy spinny flashbang energy (I believe that’s the technical term).

You’re guided through building each electronic circuit before you’re shown how to control its behaviour using the Arduino programming environment. So far I’ve put together a simple colour-mixing lamp, a light-controlled theremin and a 4-note keyboard, and there’s still many more projects to go… there’s great motivation to program, because your code has to be right if you want it to do anything! The working project is then a well-earned treat. Good dog.

Believe it or not, this is a working 4-note keyboard...

Believe it or not, this is a working 4-note keyboard…

But what works for me and works for your spaniel might not necessarily work for you. There is no one ‘best way’ to teach – some people are visual learners, some are verbal learners, some prefer a mix of different methods. There’s huge potential in free online education – using text, video and other tools to offer a quality education to anybody with an internet connection.

The idea has taken off in many ways, but amongst the swarm of lecture videos and merit badges, it’s difficult to know where to start, how to stay motivated and where to ask for help. That’s where the word of the moment, the MOOC, comes in. A Massive, Open Online Course – thousands of people taking a free online course simultaneously – going through the same material, and getting together in study groups and online forums, helping each other out with homework and problems. Usually these MOOCs are organised by one or two core lecturers who provide structure, feedback and guidance, but I’m throwing myself into a more experimental course: ‘A Gentle Introduction to Programming’ with the Python language, taught by the ‘Mechanical MOOC‘.

This is a learning lab of Peer to Peer University (P2PU), and the material for this course is gathered from other online providers – primarily MIT, Codecademy, and a textbook called ‘How to Think Like a Computer Scientist‘.

John Guttag's Introduction to Computer Science CC-BY-NC-SA MIT OpenCourseWare

John Guttag’s Introduction to Computer Science CC-BY-NC-SA MIT OpenCourseWare

As opposed to other MOOCs, the Mechanical MOOC is designed to run automatically – it’s now in its second intake of students. I’ve been receiving emails from ‘The Machine’ who seems a most amicable robot, having introduced me to my study group and recommended that I watch a Monty Python movie as preparation for the course. So far it’s hard to know what to expect – I’ve completed the first week’s reading, coding and writing activities, and watched the first online lectures. It has been 8 years since I last sat in a university lecture, but it’s remarkable how quickly the same feeling returns… my eyelids start drooping, my attention begins to wander, I start focusing on unusual details on the ceiling. At least this time around it’s socially acceptable for me to attend lectures in my pyjamas. I am still learning – but probably advancing more thanks to the textbook and Codecademy content. The course runs for 8 weeks so I’ll keep you posted on my progress!

One issue raised recently by Timothy Vollmer of Creative Commons is that the first O in MOOC originally signified ‘open access’ (free and unlimited entry) and ‘open material’ – but now organisers seem to be forgetting the open material. That’s partly the case with this MOOC too. The resources are available without cost but are not truly free-as-in-speech – their licenses include ‘Non-Commercial’ or other restrictions which prevent someone from reusing, remixing or translating a work and using it in a lesson if they are being paid, which rules out a huge amount of use cases.

So it’s great to see the approach of OpenTechSchool, an recent initiative started here in Kreuzberg, whose approach includes both free access and open materials. Every week in a local co-working space, they offer workshops, meetups and classes, focused on bringing new people (particularly more women) into programming, and supporting them in their learning.

Their whole curriculum is on github, and under a Creative Commons-Attribution-ShareAlike license, meaning that anyone can submit improvements or download, remix and reuse material (as long as they share their changes too). This means simple improvements and fixes can be added on the fly, and difficult areas that might need a re-write can be flagged to be dealt with before the next class is given.

Students go at their own pace and learn from practical experience, and all the organisers and tutors are volunteering their time to develop lessons and help out at workshops. So far they’ve offered courses in Python, JavaScript, Github, Django, and coming up are workshops on Arduino and user interface design. It’s not just the curriculum that can be used and adapted by others, but actually the school itself – you can take their model as inspiration, use the code and materials, get some tech-friendly people together and start your own local OpenTechSchool.

I’m going to continue with my Arduino adventures, jump into some workshops at OpenTechSchool, and in 8 weeks’ time I’ll report back on my experiences with the Mechanical MOOC. In the meantime, I’m interested in finding out more about what’s out there. I’ve found plenty of free-as-in-beer educational resources online, but I’d like to hunt out more free-as-in-speech options. Any other suggestions for the best way to ‘get technical’?