Steve Gourley


Scott Davis


a few of our favorite things


npm, bower, grunt


AMD Butler



Travis CI

summary sheet
let's lay a foundation
package managers
npm is a back-end package manager
bower is a front-end package manager
task runners
esrijs api
is a font-end package
bower install esri-js
not yet
the next best thing
stop gap
npm install grunt-esri-slurp
dojo build system
esri js api + the build system =
demystifying the dojo build system
two problems
# 1
hosted on a CDN
don't want to commit to version control
# 2
it is already built
slurp fixes these issues
may the slource be with you
AMD Butler
built for sublime text
install via package control
allows you to stay in the zone
get a great idea
start coding
need to add a new AMD module
scroll to the top
remember the module id
scroll some more
remember the modules order in the factory function
think of what to name the module
and then
completly forget what you were doing
AMD Butler solves this
add, remove, and sort AMD modules
something else for staying in the zone
quickly scaffold new dojo widgets
on the fence about unit tests?
so far
git clone && npm install && bower install && grunt
quickly create widgets
while staying in the zone
what are we missing
that map service...
oh it is documented in the readme
that is a great excuse
automate the entire process
the ultimate goal
low friction
publishes services
grunt deploy:dev
different environments dev, stage, prod
continuous deployment
bringing it all together
travis ci
git clone project
npm & bower install
jasmine on saucelabs
dojo build
wrap up
why did we build these tools?
building tools for yourself is fun
usually provides good ROI
Chris Wanstrath
created github
because it was something he wanted
but how do I make time?
how do I convince management
10% or 30 minute rule
build tools to be productive
build knowledge to be productive
people should notice
encourage others

Summary Sheet