You are a Developer, the Internet is Your Friend

The internet is getting really, really big and developing it means knowing more than ever before. Do not fear: from programming languages to social networks, application frameworks to responsive design, the ever growing bucket of buzzwords that threaten our collective sanity are far less troublesome than they initally appear.

So how do designers take the plunge? What are the tricks that everyone seems to know but no one seems to tell you? And do developers really work in text editors?

As a designer turned developer, quasi-nerd turned internet ninja, and now buzzword aficionado, Charlie Gleason will tell you the secrets to how he learnt to stop worrying and love the code. With helpful tricks, tips, and a tragic overuse of puns, he wants you to be as amped about the web as he is.

Joy is all but guaranteed.

http://wds12.charliegleason.com/

“Who is this talk aimed at? Me! It’s stuff I wish people had told me as a designer starting to do development.” Charlie is a designer/dev.

He loves code and highly encourages designers to learn it.

But wait whut, he wasn’t good at maths and stuff… so why do this? You are not a bad designer if you don’t code, but you’ll be a better one if you do.

Disclaimers and uke chord warnings for the lolcats in the presentation. “Everyone wins, nobody throws fruit at me!”

“If you stuck around to do honors, or as I thought of it ‘more wine and less growing up’…”

He was inspired to make postofficebox16, an art sharing project. He designed it but was frustrated he couldn’t build it. So he tried to ask for help from a dev.

“How not to talk to developers 101″… a placement’s art project isn’t a high priority.

Learning how to learn – also important to ask “why to learn”. Not everyone has to learn to develop… the question really is “do you have something to build”? …and if not, maybe just make up something to build.

Embrace your ideas – the tram is never on time, so how could the internet help with that? Charlie once made a website for a cafe he liked. 5/10 it’s a bad idea. 4/10 someone’s already built it. The other 1/10 you won’t be able to get the domain name. But that’s awesome, it means you are working up to something great.

If you build it, they might come, but at least you learned something. Charlie built the 98 against partly because he wanted to learn how to screen scrape.

The internet is full of people who will helpfully and/or snidely answer your questions. So the only thing you really need is boundless enthusiasm for getting annoyed at your computer!

What to learn? HTML, CSS, JS. Maybe some PHP, it doesn’t have such a high learning curve. Python is very hip. Or ruby – check out Why’s (Poignant) Guide To Ruby. Don’t get hung up on what people think of the languages, just start.

Be forewarned about languages: everyone hates every one of them. Every language is hated. Everyone hates everything. Haters gonna hate. If it works it works. Find out what your friends use, what your employer uses, what you find easy to pick up.

As long as you’re thinking about it, writing it and enjoying it then it doesn’t really matter.

Charlie likes ruby+sinatra+haml+sass+git+github. Loves the fact the goal of Ruby is to make people happy.

Be ready for the fact you will get bad feedback. Do whatever to make YOU happy. If people say your choice of language is bad, or your ideas are bad, or your content is bad… don’t let that deflate you and your enthusiasm. Not all criticism is constructive!

An aside on how great you are. I think it’s worth mentioning, anyone who tells you that the language you’re using is terrible or that the code that you’re writing is terrible or that your ideas are terrible are just really boring. Don’t let that hot air balloon of your boundless self esteem be deflated by cranky humans. You are great. You have great hair, and a great fashion sense, and you’re doing good. There is a big difference between constructive criticism and being a giant jerk face. Life is short - if someone is making you feel crummy, they’re probably not worth your time. End aside!

Tools to learn? The Internet! With an exclamation mark! (get list of specific resources from site)

“Everyone has to start somewhere.”

There are sites, blogs, tutorials, books… ask your friends that make stuff! If you don’t know people that make stuff, there are meetups for people who do; coworking spaces; podcasts…

Coworking spaces – “the best way to get involved in a community is to start living in that community”.

OK so you’ve started making things and you broke it:

  1. You can walk away! Get away from the angry. Walk around the block, google lolcats. Charlie’s office has a swing – “it’s quite hard to be angry on a swing”
  2. Google it
  3. ask a friend, noting they will tell you to Google it
  4. ask Stack Overflow – but ask a sensible, detailed question
  5. find a mentor – “I’m yet to find one who couldn’t be swayed with cake”
  6. ask on IRC, but it’s terrifying…

(Digression into colour theory – every other movie poster is orange and teal. Love how Charlie distracted us with colour theory then showed us how to install stuff on the command line! Bait and switch for designers? ;))

Soapbox: we need you, ladies! Don’t be put off by crap like Brogramming memes. We need more female coders.

Four things to take away:

  1. Plan ahead – not planning is a recipe for disaster, doesn’t have to be big. But write down what you want to do and how it would work.
  2. Design to build – learning to build makes you better at designing things that have to be built. It helps when you want to advocate things like A/B testing… “If all we have is data, let’s look at data. If all we have are opinions, let’s go with mine.” – Jim Barksdale (Former CEO of Netscape)
  3. Less is more – build mobile first…
  4. Ask more questions – get onto Stack Overflow, get onto blogs, share what you learn