COMPILE
WITH STYLE
CODING FOR CREATIVITY

    Pearl Chen
    Google+: gplus.to/pearl
    Twitter & Slideshare: androidsNsheep
% OF MY LIFE
SPENT WITH TECHNOLOGY




       with technology   without technology
FUTURE % OF MY LIFE
SPENT WITH TECHNOLOGY




    looks like Pac-Man   does not look like Pac-Man
DON’T RUN AWAY
FROM CODE!

           CODE




           YOU?
HAVE NO FEAR!
THERE IS HELP.

             CODE   HELP




            YOU?
CODE LITERACY WILL
BE ONE OF THE MOST
IMPORTANT ISSUES OF
EDUCATION IN THE
COMING DECADES.
EACH YEAR IN THE
CANADIAN TECH
INDUSTRY:
~19,000 NEW JOBS
                   source
JOBS THAT DIDN’T EXIST
10-20 YEARS AGO
SandFibers
(fly)light
txt2hold
klab.eventbrite.com
CuteCurcuit ANerve
XS Labs
TOP 3 REASONS
FOR LEARNING CODE:

1. SELF EXPRESSION
2. …
3. …
TOP 3 REASONS
FOR LEARNING CODE:

1. SELF EXPRESSION
2. DYNAMIC CONTENT
3. …
We Feel Fine
I Want You To Want Me
TOP 3 REASONS
FOR LEARNING CODE:

1. SELF EXPRESSION
2. DYNAMIC CONTENT
3. INTERACTIVE
PixelJunk Eden
Braid
TOP 3 REASONS
FOR LEARNING CODE:

1. SELF EXPRESSION
2. DYNAMIC CONTENT
3. INTERACTIVE
BONUS: IT PAYS WELL!
craib.com
Ladies Learning Code
MOAR!
RESOURCES TO GET YOU GOING:

slideshare.net/androidsNsheep
           (or search “TIFF Nexus”)




                   Google+:
                   gplus.to/pearl
SO YOU WANT TO LEARN…
GENERAL CODING SKILLZ

      Beginner resources:                         And beyond…
      •   Ladies Learning                         •   Friends of ED
                                                      (Series of books aimed at “Every
          Code (Classes held ~1-2 times               Designer” or code beginners. Now
          per month in downtown Toronto;              part of Apress and super annoying
          topics vary.)                               to filter for on apress.com but look
                                                      for their logo on the cover of books
      •   Processing (Projects are                    at the bookstore.)
          called “sketches” due to the simple
          and easy coding environment but         •   Safari Books Online
          you can make very complicated               (Online version of tech books from
          things the better you get at learning       various publishers. FREE with
          this simplified version of Java.)           Toronto library card! Great for doing
                                                      all your reading or previewing
      •   Scratch (aimed at children for              before you buy or borrow a hard
          game making but everyone’s a kid            copy version.)
          at heart, right? Drag and drop
          blocks to help you understand
          logic.)
SO YOU WANT TO LEARN…
HOW TO MAKE YOUR OWN WEBSITE

      Beginner resources:                         And beyond…
      •   My Ladies Learning                      •   A List Apart (Think of it as a
                                                      newspaper for people who make
          Code JavaScript                             websites.)
          slides (I haven’t tested this
          outside a classroom so please tell me   •   jQuery or mootools
          if it works as an online resource!)         (Two of the most popular JavaScript
                                                      frameworks that help you write
      •   Eloquent JavaScript                         interactive elements quicker than
          (Available as a print book or as a          regular JavaScript)
          FREE online interactive version.)
                                                  •   WordPress (Use it as a blog
      •   w3schools (Always keep it                   or as a “content management
          open in another tab and refer back to       system” (CMS) for any website
          it when you need to reference               whose content changes often.)
          anything HTML, CSS, or JavaScript.)
SO YOU WANT TO LEARN…
HARDWARE INTERFACING OR CREATIVE CODING

      Beginner resources:                           And beyond…
      •   Arduino (Inexpensive and                  •     Making Things
          beginner-friendly microcontroller
          board. The programming
                                                          Talk, 2nd edition
          environment looks a lot like                    (Intermediate hardware projects)
          Processing because they share
          similar roots. Check out Creatron and     •     Programming
          other places in Toronto to buy
          electronics components.)                        Interactivity, 2nd
                                                          Edition (Get the low down on
      •   openFrameworks                                  Processing, Arduino, AND
          (A C++ library created for artists. Not         openFrameworks. #win)
          as easy as Processing to get started
          with but C++ is the basis for most
          hardcore gaming languages so it’s a       * Remember that some books can be found via
          good place to start… or stick to for      the Safari Books Online portal on the Toronto
          various projects.)                        Public Library website.

TIFF Nexus: Compile With Style

  • 1.
    COMPILE WITH STYLE CODING FORCREATIVITY Pearl Chen Google+: gplus.to/pearl Twitter & Slideshare: androidsNsheep
  • 2.
    % OF MYLIFE SPENT WITH TECHNOLOGY with technology without technology
  • 3.
    FUTURE % OFMY LIFE SPENT WITH TECHNOLOGY looks like Pac-Man does not look like Pac-Man
  • 4.
    DON’T RUN AWAY FROMCODE! CODE YOU?
  • 5.
    HAVE NO FEAR! THEREIS HELP. CODE HELP YOU?
  • 6.
    CODE LITERACY WILL BEONE OF THE MOST IMPORTANT ISSUES OF EDUCATION IN THE COMING DECADES.
  • 7.
    EACH YEAR INTHE CANADIAN TECH INDUSTRY: ~19,000 NEW JOBS source
  • 8.
    JOBS THAT DIDN’TEXIST 10-20 YEARS AGO
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
    TOP 3 REASONS FORLEARNING CODE: 1. SELF EXPRESSION 2. … 3. …
  • 16.
    TOP 3 REASONS FORLEARNING CODE: 1. SELF EXPRESSION 2. DYNAMIC CONTENT 3. …
  • 17.
  • 18.
    I Want YouTo Want Me
  • 19.
    TOP 3 REASONS FORLEARNING CODE: 1. SELF EXPRESSION 2. DYNAMIC CONTENT 3. INTERACTIVE
  • 20.
  • 21.
  • 22.
    TOP 3 REASONS FORLEARNING CODE: 1. SELF EXPRESSION 2. DYNAMIC CONTENT 3. INTERACTIVE BONUS: IT PAYS WELL!
  • 23.
  • 24.
  • 25.
    MOAR! RESOURCES TO GETYOU GOING: slideshare.net/androidsNsheep (or search “TIFF Nexus”) Google+: gplus.to/pearl
  • 26.
    SO YOU WANTTO LEARN… GENERAL CODING SKILLZ Beginner resources: And beyond… • Ladies Learning • Friends of ED (Series of books aimed at “Every Code (Classes held ~1-2 times Designer” or code beginners. Now per month in downtown Toronto; part of Apress and super annoying topics vary.) to filter for on apress.com but look for their logo on the cover of books • Processing (Projects are at the bookstore.) called “sketches” due to the simple and easy coding environment but • Safari Books Online you can make very complicated (Online version of tech books from things the better you get at learning various publishers. FREE with this simplified version of Java.) Toronto library card! Great for doing all your reading or previewing • Scratch (aimed at children for before you buy or borrow a hard game making but everyone’s a kid copy version.) at heart, right? Drag and drop blocks to help you understand logic.)
  • 27.
    SO YOU WANTTO LEARN… HOW TO MAKE YOUR OWN WEBSITE Beginner resources: And beyond… • My Ladies Learning • A List Apart (Think of it as a newspaper for people who make Code JavaScript websites.) slides (I haven’t tested this outside a classroom so please tell me • jQuery or mootools if it works as an online resource!) (Two of the most popular JavaScript frameworks that help you write • Eloquent JavaScript interactive elements quicker than (Available as a print book or as a regular JavaScript) FREE online interactive version.) • WordPress (Use it as a blog • w3schools (Always keep it or as a “content management open in another tab and refer back to system” (CMS) for any website it when you need to reference whose content changes often.) anything HTML, CSS, or JavaScript.)
  • 28.
    SO YOU WANTTO LEARN… HARDWARE INTERFACING OR CREATIVE CODING Beginner resources: And beyond… • Arduino (Inexpensive and • Making Things beginner-friendly microcontroller board. The programming Talk, 2nd edition environment looks a lot like (Intermediate hardware projects) Processing because they share similar roots. Check out Creatron and • Programming other places in Toronto to buy electronics components.) Interactivity, 2nd Edition (Get the low down on • openFrameworks Processing, Arduino, AND (A C++ library created for artists. Not openFrameworks. #win) as easy as Processing to get started with but C++ is the basis for most hardcore gaming languages so it’s a * Remember that some books can be found via good place to start… or stick to for the Safari Books Online portal on the Toronto various projects.) Public Library website.

Editor's Notes

  • #3 More than half my life writing code.
  • #4 The future looks bright!
  • #5 But not everyone is like me. People are scared of code!
  • #6 That’s why I’m here. ;)
  • #7 VERY IMPORTANT!
  • #8 Source:http://www.ictc-ctic.ca/uploadedFiles/About_Us/ICTC_News/News_Items/ictc_outlook_2008-2015_e.pdf
  • #9 Because of Internet and computer improvements, look at all these new jobs! (Sorry, Wordle doesn’t let me make a word cloud out of phrases, e.g. “mobile designer”)Forbes: “Every company is now a software company” – even Ford Motors cannot survive the future by just making cars, they must make “computers on wheels”http://www.forbes.com/sites/techonomy/2011/11/30/now-every-company-is-a-software-company/
  • #10 But things happen as an evolution. As a teenager, I liked to make bead jewelry like this one I found on Etsy. (Note: not mine!)
  • #11 I like to call myself a digital or electronic artisan – “knitting with LEDs”. Made (fly)light in my undergrad at Ryerson University. Had to learn BASIC to program PIC chips.
  • #12 txt2hold created at CFC Media Lab with 4 residents/students who were not programmers. Without code (Java), this project would not exist.
  • #13 As an independent educator, I run Arduino & Android workshops. Uses Java + Arduino code. The “Internet of Things”… objects that reach out to your current communications streams.
  • #14 ANerve by CuteCurcuit really inspired my thoughts about “mobile” devices and the Internet of Things. It’s a Bluetooth “accessory” for your mobile phone; forwards text messages to your sleeve.
  • #15 Image pictured is not mine but it uses the same stuff I want to make Android-powered curtains out of; it’s called Nitinol or Flexinol or simply “muscle wire”.Because I can program, I can be as creative as I want – no need to be restricted by stuff I can find at a store.
  • #16 There’s something very powerful from making SOMETHING out of NOTHING!Hard to hire someone to do the programming for you: need to find the right personality match, need to describe what’s in your head which might be difficult especially when experimental, need a budget, sometimes hard to find a developer at all since they are so in demand.If there’s something you’ve always wanted to invent, knowing how to code will get you closer. You can at least get a rough prototype done yourself.
  • #17 Projects can breathe as if they have a life of their own. (e.g. sunrise/sunset times change, weather is never the same)There’s data everywhere ready for you to make into a story.
  • #18 Jonathan Harris is one of my favourite storytellers. He takes data from online sources (or gathers it himself) and uses that data to tell us what it means to be collectively human.Example: We Feel Fine, written in Processing (based on Java)
  • #19 Another example: I Want You To Want Me, written in OpenFrameworks, a C++ library.
  • #20 Interactivity allows you to incorporate your user into your medium. (Game devs know this.)
  • #21 You don’t need to build a Call of Duty to be a game developer. Lots of non-traditional games out there. PixelJunk Eden made me run out and buy a PlayStation that same day!
  • #22 Braid: PLAY IT! DO IT!You can makes games in many languages: C++, Flash, Unity, JavaScript.Game-specific tools: GameMaker, Game Salad, Scratch
  • #23 If you’re a developer and you’re starving, it’s probably by choice.If you’re jealous when you hear about startups being valuated at millions of dollars… LEARN TO CODE!
  • #24 As a freelance developer, I was paid well enough to give me the freedom and opportunity to work on my own projects on the side.Programming skills applied to the Craib corporate site: HTML, CSS, JavaScript, jQuery, some Flash; is actually a modified Wordpress site.
  • #25 Speaking of Wordpress, there is a basic need to work on our online public profiles. At a Ladies Learning Code session, a big room (on a Saturday) is filled!LLC is a grassroots educational organization founded in Toronto. 4:1 student to teacher ratio – no one feels lost!I was lead instructor for the first one: Introduction to JavaScript.
  • #26 Will finish off by stating that I never finished Computer Science. In fact, I only finished one semester of it. (I have a Bach of Fine Arts!)SO DON’T LET THE IDEA OF NEEDING TO GO TO SCHOOL STOP YOU!!I learned most of what I know via books and online resources. (Thankfully, more and more grassroots organizations popping up every month.)THANK YOU AGAIN!