A creative person’s guide to computing

This year, for the first time, we are running the Raspberry Pi Creative Technologists programme, mentoring a small group of young people aged 16-21 years as they explore using digital technology to enhance their creative pursuits. One of our creative technologists, 21-year-old writer Hannah Burdett, recently published today’s post on her own blog, and when we saw it we wanted to show it to our audience as well: it’s a wonderful and useful piece about what it’s like to enter the world of digital making as a beginner, and why she hopes you’ll want to.

A cartoon sketch of Hannah Burdett, Raspberry Pi Creative Technologist

Hannah Burdett, Raspberry Pi Creative Technologist, by Sam Alder

It’s been six months since I started with Raspberry Pi. To begin with, I was terrified and felt like I didn’t belong, but I’ve reached a point where I’m truly enjoying what I’m learning. People think of arts and science/technology as polar opposites, but I’ve always thought that the two can be merged in diverse and constructive ways. Thankfully, Raspberry Pi think so too, and have let me mess around with ways to do this. My hope is that in the future more creative types will utilise technology in their work, and it will be beautiful. So today I’m sharing a few tips to help you get started. Of course, I’m nowhere near an expert, but I do know exactly what it’s like to enter the world of technology as an outsider and beginner.

Treat learning to code like learning a language

There is a good reason why it’s called a coding language. It has grammatical rules to structure what you’re inputting: for example, when to use brackets and quotation marks and full stops and capitals. Coding is just as vast as any other language, and there are dozens of different coding languages to choose from, each with their own idiosyncrasies. And it takes just as long to learn. You can’t expect to pick it up without using it frequently; practice is key. You need to devote time to learning the rules, but there’s plenty of opportunity to get help.

"Python for Kids" by Jason Briggs

I would recommend the book Python for Kids by Jason Briggs. It is designed for children, but suck it up and it’ll prove it be a useful tool. I use it as a reference guide, dipping in and out, but not necessarily reading it from A to Z. There are also free online courses, and an infinite amount of documentation to learn from.

It’s more creative than you think

If the thought of learning a language makes you want to cry, then don’t despair. Just as creative writers use language to create complex and thought-provoking stories, so does code. When constructed correctly, code forms a kind of linear narrative, telling the computer what happens and when, just like how stories inform the reader. Something equally creative and varied happens too, whether that’s a video game or a dancing robot. It also requires a lot of editing.

Light-up play dough models at Maker Faire UK 2009

Digital making with play dough: light-up models at an earlier Maker Faire UK, an extremely creative event | Photo by Mitch Altman / CC BY-SA 2.0

What’s more, the community of digital makers, hackers and programmers includes lots of people who are just as imaginative as writers in traditional media. When I was at Maker Faire UK, I was inspired by how creative the makers were. The exhibits were full of people who had started out with a question: ‘I wonder what happens when I do this?’ They put two things together (or five, or six), and if it explodes then it’s all the more fun (except when you have to buy another part to replace it; oh well). It’s an open, free way of exploring and creating. The key is to not limit your mind, not to set goals (although tempting) but to focus on experimenting with pushing the boundaries of the technology.

Prepare to change your mindset, and don’t be disappointed when it doesn’t work

I say when because, inevitably, it won’t work. Even if you’re following guidelines or instructions, eventually something is bound to go wrong. I struggled a lot in the beginning because I didn’t know how to make the tech do what I wanted it to, and thought I was a failure. I’ve got into the habit now of thinking, ‘Okay, why didn’t it do that?’ and ‘It’s interesting that it’s done x instead of y’. Let the technology surprise you.

A quote from Hannah, "Things will NOT go as planned..."

This is not Hannah’s handwriting; hers is probably much nicer

Part of learning is accepting that maybe you won’t be good at it straight away, or you won’t pick it up naturally. A lot of people, especially young women, feel a pressure to be good straight away. Don’t worry about other people’s expectations, just have fun with it. You may learn more slowly than others (I certainly do!) and that is perfectly okay. This is why an open mind is so useful. I’ve had to completely change my mindset over the past few months, but I’m glad I did. Although writing is creative, I’ve been doing it so long that I have a process and routine. I know what I want to write when I begin; I have set intentions and goals, and I set time limits. When it comes to programming, this mindset does not work at all.

Things will not go as you planned. Things will break, or you’ll make mistakes, and the outcome is entirely different to what you expected. This can (as it did for me) lead you to feel like you’ve accomplished nothing. The best thing is to have no expectations of yourself other than to learn something, or try something new.

Steal from your heroes and ask for help

This is a statement that often crops up in the literary world, but it applies here too. I mean, don’t literally steal; always give credit when you’ve used someone else’s code, or a tutorial. But it’s often easier to adapt other people’s work rather than make something entirely original. It also integrates you into the community, and creators will often be really pleased to see their work put to use!

Raspberry Pi have loads of online tutorials which are designed for kids, but suitable for all beginners. I have recently been creating mini projects with Scratch, a programming environment that lets you develop interactive narratives and games. It functions like code, but instead of typing, you drag and drop components to build the script. I even published a mini game which you can play yourself!

Screenshot of Balloon Popping, a game written by Hannah in Scratch

Balloon Popping, a game written by Hannah Burdett in Scratch

The best thing about Scratch is that for every project, you can look at the ‘code’ being used. I made my game by finding similar projects and seeing how they work. After doing this for days on end, I got used to the various functions, and now I enjoy throwing bits together and seeing what happens. I’ve spent so much time on Scratch I’ve actually started dreaming in Scratch code!

A screenshot of Hannah's balloon-popping game in action

Hannah’s very playable balloon-popping game, mid-pop

Scratch also has a great community, and users will always be happy to reply to forum posts if you get stuck. This leads me on to asking for help. Do it. Websites like GitHub exist so you can share your code with others, not only so they can use it, but so people can suggest improvements or fix problems. The online community is vast and amazing, so use it!

Remember, if you don’t try you don’t succeed. And I’d always prefer to try and fail than never do anything at all. If you’d like to talk more about this tech world, please feel free to contact me.

At the end of the programme, the Raspberry Pi Creative Technologists will be hosting an exhibition in order to showcase our projects: a culmination of a year’s work. If you would like to know more about my project, or would like to attend the exhibition, then keep following my blog for more information. You can also follow me on Twitter.

We’ll also be talking about the creative technologists’ final exhibition here, of course; Hannah is working on a project that lets players journey through a cooperative, interactive story that engages them in working together. We can’t wait to see what she and our other creative technologists make. Most of all, we’d love to see more people who are creative, but who might not usually consider digital technology as something they can use in their work, giving it a try. We think our Make resources are one good place to start.