Category Archives: Training and skills

Skills for developers, skills for institutions

Training doesn’t have to be expensive. It doesn’t have to be led by a teacher. It doesn’t even have to be called training. Key to the success of Dev8D is how it provides training in an atmosphere of friendly, playful collaboration. Developers are given the opportunity to hone their skills and learn new tips and tricks in areas they already understand, as well as developing new skills in subjects which are completely new to them. And as individuals benefit from this training, so do universities. Developers return to their institutions full of ideas for new projects – and armed with the skills and contacts to make those ideas reality.

Dev8D 2010 was divided into different zones, with varying degrees of formal training. At the top of the scale were the coding labs, in which attendees were submerged for several hours in intense training in a specific area such as Clojure or Python. Next were the workshops – group sessions to discuss specific areas such as Linked Data or cloud computing.

The expert sessions hovered in the middle of the formal to informal training scale – as a collection of 15 minute lightning talks, they varied from tips on how to avoid common security faults in university websites to a conversation about how developers could become more involved in climate change issues. Informal training took place in the Project Zone and Basecamp, places for people to show off projects they had built, work on new projects, and chat with other developers. Everywhere you looked at Dev8D, people were learning new skills or developing existing skills.

The most narrowly defined training of the week took place in the coding labs, under the guise of ‘programming dojos’. The programming dojos took the essence of paired programming and dressed it up in martial arts, as ‘Ruby on Rails Sensei’ Tim Donohue explains.

“The way it works is that everyone sits in a semi-circle, facing the screen. As the ‘Sensei’ I introduce a problem and challenge the room to solve it. Two people come up and sit in the middle; one is the pilot, who will be typing code, and the other is the co-pilot, who supports and offers suggestions. (Yes, we are mixing our metaphors!) Every ten minutes everyone moves around one place, so the co-pilot becomes pilot, the pilot sits in the semicircle and someone else comes to the middle as the new co-pilot. Everyone is involved in solving the problem, and it’s a very hands-on approach to learning a new language.”

Tom Morris was also involved as a Sensei in a Scala programming dojo. Tom believes that the real value of this kind of training environment is how it develops more than just programming skills. “You can learn how to do something in a book, but this kind of event offers a lot more,” he says. “A lot of people code by themselves, and so something like this is a good way to improve your skills and your confidence in working with other people. In the programming dojo you have to communicate with other people and make decisions as a group – exactly what you have to do in a work situation, when working on a real project.”

Dev8D is a valuable training resource – a cost-effective way for Higher Education institutions to keep their developers up to date with the industry. While the formalised training is undoubtedly useful, it can sometimes be the more informal training which yields the greatest results.

Dev8D facilitates this kind of informal training by cunningly provides lots of opportunities for developers to talk to one another. Whether it’s by building an arduinos together in the workshop or sharing a power socket in the basecamp, there are ample opportunities to meet friendly people who want to talk about their work and are happy to share their skills.

One developer who made the most of an unexpected training situation was Steve Coppin from the University of Kent. Steve met Charles Severance at Dev8D, and was able to work directly with him to create List8D Moodlefication, a plugin he had been planning to work on at the University of Kent – and which ended up winning second place in the IMS / Blackboard challenge. “Creating the plugin back at the university would have taken us two weeks,” says Steve. “But through meeting Charles we’ve actually been able to do it here at Dev8D in two days, and we’ve done it better.”

Dev8D is not just for developers, of course. Dr Peter Murray-Rust from Cambridge University is a chemist not a programmer, but he came to Dev8D because he was interested in how he might be able to learn from what developers were doing. “I had a very interesting conversation with Ben O’Steen from Oxford University about RFID tags,” says Peter. “We’re looking for ways to track items in the lab, and I’ve come away with some really interesting ideas we can start trying out straight away.”

Ongoing training is important in any industry, but in the higher education sectory it is essential. Insttitutions which don’t encourage their developers to keep training risk missing opportunities – opportunties which may lead to new research avenues, opportunities which lead to commercial applications, opportunities which will help institutions to operate better as a whole.

As budgets are tightened across higher education institutions must get smarter in how they approach training – and events like Dev8D could become increasingly useful in maintaining the skills of the sector.

Interview: Kieran Marron

kieranKieran Marron is a web developer at Eduserv, a not-for-profit organisation which delivers technology for various public sector services.

What are you hoping to get out of Dev8D?

This if the first time I’ve ever been to this kind of thing. I’m here out of sheer intrigue! Yesterday morning I attended all of the lightning talks, and I’ve also been to the Zenity coding dojo. The dojo was a very good session, it was a great way to learn from other people.

What kind of skills are you gaining by being here?

I’m very keen to learn more about Zenity, as it’s about repository data stores and sharing data. It’s definitely something we’re going to be using so it’s good to see how it’s been applied early on.

More generally it’s also good to see a whole hall of people working on madcap ideas, just trying things out together and seeing what can happen.

Of all the projects or ideas you’ve seen, which will have the greatest impact?

The 3D printer has definitely stolen the show, It’s absolutely mind boggling! The fact that anyone can do it, and it’s so cheap.

Workshop: Arduino happiness

One of the events that has been creating a real buzz at Dev8D is the daily Arduino workshop. For a couple of hours each day, groups of developers have been let loose with basic electronic equipment – think breadboards, LEDs, resistors and wire cutters – and discovering the joys of using a microcontroller to programme little lights to flash in sequence and cheesy tunes to tinkle out.  The tweets and excited chatter following the morning workshops – and the attendance at the afternoon’s more advanced sessions – all testify to the way that it has caught the imagination of Dev8D participants.

Arduino kit

At the heart of the workshop’s activities is the Arduino circuit board, a small piece of open source hardware named after the pub where, in 2005, three Italian techies came up with the idea for an inexpensive, powerful microcontroller. (The story behind Arduino is pretty cool – find out more in this Wired article from 2008)

Arduino

Since then many thousands of units of the ‘official’ Arduino board (identified by the Italian flag on the back) have been sold and, because the designs are licenced under Creative Commons, many millions more have been made and used. The Arduino is cheap, fast and flexible and, as a result, it has swiftly become the circuit board of choice for makers all over the world. Check out the Arduino Playground exhibition page to discover some of the quirky creations, which include robots, musical instruments and note-taking systems.

So what’s the appeal of Arduino?  “It’s very direct, very tangible,” says Garry Bulmer, the Dev8D workshop leader. “A lot of modern applications have got obsessed with windows and mice and keyboards and people think that’s what computers are but there are 25 times more of these around which have very different physical interfaces.”

This also makes them ideal for the work Bulmer does introducing electronics to kids in after-school clubs. “The kind of technology that high tech labs had 30 years ago to observe the world, kids have now so if they are ingenious they can do some quite radical things. It’s delightful for me for people to be able to do what used to be high tech activities.”

Arduino workshop

It’s this element that has impressed Alistair Grant, a developer who took part in the workshop in the hope that it might help him to teach programming to a younger age group. He compares using Arduino to Lego Mindstorms, a graphical language with Lego blocks that proved that you could teach even really young kids the basics of programming.

“This could work as a similar method as the concepts are similar,” he says. “Most kids love building robots and making flashing things and this is playing at it in the full way they would use it, it’s not stripping it down much or dumbing down, it’s something real to use. The breadboards are great as there are no health and safety issues with hot soldering irons involved!”

Talking to him after the workshop, he was full of enthusiasm for the potential of Arduino in his work. “This is definitely a great way to introduce younger kids to computing – if they had access to stuff like this a lot of them would be more interested in it rather than the stuff they get taught in schools.”

Arduino 2“It’s been an eye-opener,” agrees Kelvin Gan. “I didn’t think I’d find this interesting as I’m generally not interested in electronics or hardware. In school was all about building circuit boards. This, using programming, brings it into my realm.”

Although this kind of workshop may seem far removed from the everyday work of many of the developers here, there is a value in being introduced to new skills that help you to think differently.  “It’s good to sometimes do things that are very different to what you normally do as makes you look at things in a different way, and it’s always good to be reminded how quickly you can learn new stuff –  it’s too easy to get daunted by doing new stuff and forget how much progress you can make in a couple of hours,” explains Juliette Culver, another happy participant in the Arduino workshop.

Playing with Arduinos is cheap, you say? How cheap?

Chris GutteridgeMake your own Arduino LED circuit for not very much money

You need:

Breadboard (£1.80)
Battery (34p from the Poundshop)
LED (5p each)
Resistor (1p)
Red wire and black wire (5p a metre)
An Arduino (£23 or, with Open Source, could make your own for £14)

Follow the instructions and within a couple of hours you, too, can have your own Blinking LED or Doorbell of Loathing.

I have an idea: democratic web development

Chuck SeveranceCharles Severance (aka “Dr Chuck”) believes anyone can be a web developer. Here he explains how.

“My crazy dream is for everyone in the world to build their own web applications. Non-technical people are creating content online with text, images and video, but I think there’s scope for so much more. I want to help people create their own Twitters, their own Facebooks – any database-backed website they can think of.

Google have created a way in for this democratisation of web development with their Google Application Engine, which is a free hosted service for apps.

$10 a month for php hosting might not be a big deal for someone in the UK or USA, but for much of the world it’s a lot of money. But now we’re opening up web development to people who might only have access to a computer once a week, from an internet cafe.

So Google have provided the infrastructure for low-cost web applications, but we also need to give non-developers the skills to create whatever they want.

My intention with the book was to take someone who knew nothing about programming, and in a couple of weeks teach them the HTML, CSS and Python they need to create an app which can run in the Google cloud.

I want to bring down the limitations of what you can do online. I want people to leave the limitations of MySpace and instead start thinking of ‘my space’ – their space. Everyone on this planet has the right to own their presence on the internet.

Web development is art, and programming is our paintbrush. We should be opening up this community and giving everyone the tools they need to become artists in our digital landscape.”

Charles Severance’s book Using Google App Engine is published by O’Reilly.

Interview: Steve Lee talks about accessibility

Steve Lee from OSS Watch and Will Walker from GNOMESteve Lee gave a lightning talk on accessibility. Here Steve talks about why accessibility is an important issue for web developers.

“There are a several views with accessibility – the most prevalent is that it’s about helping people with disabilities to interact with technology. But it’s also about widening technology use generally.

The emergence of mobile platforms, for example, has increased the ways in which people use devices. A classic example is a SatNav in a car – it needs audio instructions because it wouldn’t be practical to use a mouse in that situation.

There are certain accessibility issues that we see all the time – one of the worst offenders is requiring users to use a mouse. Blind people don’t use mice, and many people with physical impairments use switches which use keyboard commands. So there’s no way those people would be able to use some whizzy feature you can only see if you wave the mouse cursor.

The other one we see a lot is the alt attribute of images. If you’ve got an important image on a website – and by important I mean an image with isn’t just eye candy – then you need a description of the image so that visually impaired users know what is the purpose of the picture.”

Interview: Ben Charlton talks about web security

Ben CharlotonBen Charlton is the systems administrator at the University of Kent. He gave a lightning talk on web security, going through the OWASP 10 worst web security mistakes – and how to fix them.

Why did you give a web security talk?

It’s a hobby interest for me and my day job as well, and it seemed an area that was missing on the programme.

Web security is something we’ve had a problem with at Kent, and I imagine lot of other universities will be having similar issues. Universities tend to have a lot of people doing a lot of things online, and there’s not always a great deal of attention paid to security.

I’ve already had someone come up and ask for more details – it’s impossible to cover everything on web security in 15 minutes. Hopefully the people who were in the room can now go and find out more about the issues, and it will lead to more secure websites.

What do you think your institution gains by sending you here?

Kent gain from a greater breadth of knowledge. I’ve found out about LTI – a really useful way of embedding learning objects in a VLE. That’s something we had no idea about until today. So it’s great for picking up on new technology.

Are you involved in any other communities?

List8d is another project I’ve been involved. I’m also interested in library systems.

What kind of skills are you gaining or improving by being here?

From attending Dev8D last year I knew there would be loads of different areas to get involved in. It’s amazing the things you pick up that you never expected to, just from chatting to people.

Of all the projects or ideas you’ve seen, are there any you think can be put into action straight away?

Wookie is interesting, and of course LTI has immediate applications for the University of Kent. There’s also lots of stuff that isn’t directly relevant but makes you a better programmer, like the stuff on genetic algorithms or learning about Clojure.

XKCD400

Image reproduced with permission from XKCD.com