Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Automate Your Tools (Fall 2014)

Dave Rupert
September 30, 2014

Automate Your Tools (Fall 2014)

In this episode I talk about the benefits of automating, autonomating, and friendlier-izing your development environment.

Dave Rupert

September 30, 2014
Tweet

More Decks by Dave Rupert

Other Decks in Design

Transcript

  1. AUTOMATE

    YOUR TOOLS
    Dave Rupert / davatron5000

    View Slide

  2. ~1HR OF
    CAR ANALOGIES
    DISCLAIMER: I know very little about cars.

    View Slide

  3. PARAVEL

    View Slide

  4. http://shoptalkshow.com

    View Slide

  5. http://a11yproject.com

    View Slide

  6. B.A., JAPANOLOGY
    ೥ςΩαεେֶଔۀੑ
    ΞδΞจԽͱݴޠ ೔ຊઐ໳

    View Slide

  7. TABLE OF
    CONTENTS
    Talk about web stuff
    Talk about car stuff
    Talk about command line stuff
    Fail at a live demo
    ¯\_(π)_/¯

    View Slide

  8. “Web Design is getting too
    complicated. I can’t stay up-
    to-date with all the cool new
    tools and tricks. In my day…”

    View Slide

  9. View Slide

  10. View Slide

  11. WHY?

    View Slide

  12. Designers Developers
    The Front End
    SKILLS
    of Web Publishing

    View Slide

  13. COMPLEXITY

    View Slide

  14. PREPROCESSORS
    /scss
    _base.scss
    _grid.scss
    _type.scss
    _buttons.scss

    style.scss

    View Slide

  15. ATOMIZATION

    View Slide

  16. UNIX
    PHILOSOPHY
    Small is beautiful.
    Make each program do one thing well.
    Build a prototype as soon as possible.
    Use software leverage to your advantage.
    Mike Gancarz (1994)

    View Slide

  17. AUTOMATION
    Making robots do our grunt work.

    View Slide

  18. ࣗಈԽVS ࣗಇԽ
    Automation Autonomation
    Made up by Toyota.
    A part of “Lean Manufacturing”
    A real word.

    View Slide

  19. AUTONOMATION
    “Automation with a human touch.”
    1. The machine shall detect malfunctions and stop itself.
    2. No defective parts will be produced.
    3. Easy to locate the cause of any malfunction.

    View Slide

  20. View Slide

  21. WHY YOU MIGHT
    WANT TO AUTOMATE
    1. You like making more money with less effort.
    2. Your company would like to reduce overhead.
    3. You want more time with your spouse/kids/pets.
    4. You would like to do less grunt work.

    View Slide

  22. https://twitter.com/djcoreynolan/status/428019344342151168

    View Slide

  23. APPS & GUIS

    View Slide

  24. YOUR CODE EDITOR

    View Slide

  25. MAKE IT YOURS
    1. Find a theme.
    2. Add plugins.
    3. Tweak settings.
    4. Learn quick keys.
    https://gist.github.com/davatron5000/7215566/

    View Slide

  26. HIGHLIGHTING

    View Slide

  27. CUBIC-BEZIERS!

    View Slide

  28. JS LINTING

    View Slide

  29. GITHUB
    mac.github.com windows.github.com

    View Slide

  30. CODEKIT
    incident57.com/codekit/

    View Slide

  31. PREPROS
    alphapixels.com/prepros/

    View Slide

  32. MIXTURE
    mixture.io

    View Slide

  33. MODERN WEB
    DEVELOPMENT
    Fetchers, Runners, and Scaffolders

    View Slide

  34. PROTOTYPES

    TRUMP IDEAS

    View Slide

  35. …BEHOLD!
    The greatest web development tool the
    world has ever known…

    View Slide

  36. THE COMMAND
    LINE INTERFACE
    est.1969

    View Slide

  37. Last login: Sun Feb 17 11:22:19 on ttys003
    dave on my-macbook.local in ~
    $

    View Slide

  38. View Slide

  39. View Slide

  40. View Slide

  41. DON’T FEAR
    FAILURE

    View Slide

  42. BETTER WITH
    FRIENDS

    View Slide

  43. CLI ANATOMY*
    $ tool
    * Not official UNIX talk here
    The task you want it
    to perform
    The app/program
    you want to use Optional stuff
    you may need
    File/folder/URL
    to use as data
    Destination
    File/folder/URL

    View Slide

  44. DAILY SHELL
    $ cd ~/Dropbox/dev/
    $ compass watch
    $ touch index.html
    $ jekyll serve --watch
    $ git push origin master
    $ npm install node-thingys

    View Slide

  45. Bower
    BUILT ON

    View Slide

  46. // 1 minute install:
    1. Goto nodejs.org
    2. Click “Install”
    3. Done.

    View Slide

  47. FILE FETCHER
    Fetches files and dependencies from the
    cloud so you don’t have manually.

    View Slide

  48. $ bower install fitvids
    // installs jquery AND fitvids
    Download plugins and dependencies:

    View Slide

  49. TASK RUNNER
    Runs mundane (simple or complicated)
    tasks over and over and over.

    View Slide

  50. Common tasks (usually verbs):
    $ grunt build
    $ grunt watch
    $ grunt test
    $ grunt serve

    View Slide

  51. Common tasks (usually verbs):
    $ gulp build
    $ gulp watch
    $ gulp test
    $ gulp serve

    View Slide

  52. SCAFFOLDING
    Generates complete prototypes and
    scaffolds in milliseconds.

    View Slide

  53. Rapid application development:
    $ npm install -g generator-webapp
    $ yo webapp

    View Slide

  54. DEMO TIME:
    Build a sample website
    with the command line.

    View Slide

  55. THANKS
    Dave Rupert
    @davatron5000
    github.com/davatron5000

    View Slide