Skip to content

Instantly share code, notes, and snippets.

@theotherzach
Last active January 3, 2016 01:49
Show Gist options
  • Save theotherzach/8391882 to your computer and use it in GitHub Desktop.
Save theotherzach/8391882 to your computer and use it in GitHub Desktop.

#The JavaScript Developer’s Playbook

Writing production quality JavaScript is hard, but it's not impossible. This talk looks at the patterns, tools, libraries and workflows that Test Double uses to be successful with this challenging language in the browser. I talk about the pain we've felt from mistakes we've made and how that informed Lineman.js, our build tool.

We'll cover when it's a good idea to isolate the frontend code and how to do that. I'll talk about stubbing API calls so that frontend workflow can be free of server side concerns. Finally, we'll cover the testing libraries and tools that Test Double uses to keep code sane.

###Outline

####Who We Are ####What We Do

  • SPAs - Isolated from Backend
  • Whole Projects - backend + frontend
  • Libraries - No server
  • Servers - Node, Clojure, Rails
  • Work in a variety of cultures. Cannot depend on Asset pipeline.

####Workflow

  • Tech Choices (Lineman, Angular, Jasmine, CoffeeScript)
  • HTML prototype
  • outside in - drill down
    • e2e tests
    • unit tests
  • Stub out API calls, use as a document to spec out server API
  • Handoff to server team or move

####Lineman

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment