How to automate (nearly) anything

How to automate (nearly) anything

A talk about tools that allow you to develop faster. Use existing ones or build your own, it's not as hard as you might think. We also discuss some general workflow tools which help you get other stuff out of the way you can get actual work done.

By David Spreekmeester and Mattijs Bliek.
http://grrr.nl

72635a06781143410d1ef4a25bf164ae?s=128

Mattijs Bliek

July 11, 2014
Tweet

Transcript

  1. None
  2. David Spreekmeester Tech Director Mattijs Bliek Designer / Developer How

    to automate (nearly) anything
  3. None
  4. User centered

  5. Strategy Design Technology

  6. None
  7. None
  8. None
  9. None
  10. None
  11. None
  12. None
  13. None
  14. None
  15. None
  16. None
  17. None
  18. None
  19. On to the geeky stuff!

  20. 1. Before development 2. During development 3. Workflow

  21. Before development

  22. Setting up a work environment

  23. Compiling and installing by hand (the horror!)

  24. Package Managers

  25. Configuration Managers

  26. Networked Configuration Management

  27. None
  28. Configuration in the cloud

  29. During development

  30. Javascript task runners

  31. Grunt Gulp

  32. You can do a lot of stuff, such as: •

    Compile CoffeeScript or Sass/Less • Run a Node webserver • Run tests • Run commands on a remote server • Execute shell commands • Distribute files to CDN
  33. None
  34. Vast plugin repositories

  35. Connecting to other services is key

  36. Roll your own plugins

  37. Espresso machine makes coffee when start a deploy

  38. Go beyond: roll your own task runner

  39. Golem

  40. Golem does stuff, so you don’t have to.

  41. We build tasks according to our needs in everyday development.

  42. Connects you straight to the specified environment g ssh staging

  43. None
  44. What’s happening • Load server info from deploy.rb (already there

    for Capistrano) • Uses your SSH private key (already there) • Binds everything together in one simple file
  45. It’s not rocket science, but it saves a shitload of

    time.
  46. Handles the git part of features, releases, semver etc. git

    flow in Golem
  47. Generate text snippets from a file, so you don’t have

    to sync an entire database. g snippet
  48. None
  49. Spawns the database structure defined in your config file. g

    spawn
  50. None
  51. Kind of like Yeoman, but with some extra’s g build

  52. None
  53. None
  54. Syncs your asset files and database from one environment to

    another g content sync
  55. Workflow

  56. Alfred

  57. Alfred • Task launcher • File browser • Search •

    Clipboard history • Workflows
  58. Search documentation

  59. Quick project management

  60. Checking server status

  61. None
  62. Hazel handles incoming files according to rules you set

  63. None
  64. ControlPlane

  65. Context aware system config

  66. None
  67. IFTTT

  68. None
  69. None
  70. None
  71. Grrr’s Tips

  72. Be alert for repetitive, boring tasks

  73. Developing: modular, layered, shared library, thin controller

  74. Choosing apps: CLI available?

  75. Choosing platforms: API with control over all data? Gimme them

    JSON. Oh wait…
  76. What about you..?

  77. mattijs@grrr.nl @mattijsbliek grrr.nl @grrr_nl david@grrr.nl @aapit