Boxen: AATFT
-
Upload
puppet-labs -
Category
Technology
-
view
1.703 -
download
0
description
Transcript of Boxen: AATFT
BOXEN
WFARR
JBARNETTE
! "
INVENTING ON PRINCIPLE
WHAT IN THE HELL IS MY PRINCIPLE?
SOFTWARE IS TERRIBLE
DEVELOPING SOFTWARE IS HARD
INTERACTING WITH SOFTWARE IS PAINFUL
PAINFUL SOFTWARE CREATES FRICTION
FRICTION GETS BETWEEN PEOPLE AND PRODUCT
SOFTWARE SHOULD FEEL EASY TO EVERYONE
SOFTWARE SHOULD GET OUT OF THE WAY
“Help people design, build, and ship software better, together.”
"
“Help people more easily design, build, and ship things, with software.”
WE'RE GOING TO NEED MORE PORCELAINTO ENABLE PEOPLE TO SHIP
SHIPPING ISN'T JUST FOR SOFTWARE, YO
EVERYONE IN YOUR ORGANIZATION SHIPS;HOW DOES YOUR CULTURE ENCOURAGE THAT?
ENABLE #
HOW?
WE NEED A MISSION STATEMENT
TATFT
T E S TA L LT H EF & % $ I N GT I M E
“Whatever you do, make sure you are testing, because if you aren’t, all you are doing is making it harder for yourself when you revisit the code,
and making it even harder for the next developer who will inevitably have to maintain what you just wrote.”
- Bryan Liles
$
“Whatever you do, make sure you are automating, because if you aren’t, all you are doing is making it harder for yourself when you revisit the
problem, and making it even harder for the next person who will inevitably have to reproduce your solution.”
“Whatever you do, make sure you are automating, because if you aren’t, all you are doing is making it harder for yourself when you revisit the
problem, and making it even harder for the next person who will inevitably have to reproduce your solution.”
AUTOMATE PROBLEM REPRODUCE SOLUTION
AUTOMATING SOLUTIONS TO PROBLEMS LEADS TO REPRODUCIBLE SOLUTIONS
AUTOMATING SOLUTIONS TO PROBLEMS LEADS TO REPRODUCIBLE SOLUTIONS WHICH ARE EASIER THAN
SOLVING PROBLEMS UNIQUELY EACH TIME
AUTOMATING SOLUTIONS TO PROBLEMS LEADS TO REPRODUCIBLE SOLUTIONS WHICH ARE EASIER THAN
SOLVING PROBLEMS UNIQUELY EACH TIME FOR EVERYONE
A U T O M A T EA L LT H EF & % $ I N GT H I N G S
# WORK IN ENVIRONMENTS
% &
' (
)
*
class github::environment {
include clojure include go include mysql include nodejs include postgresql include ruby
$gems = [ 'bundler', 'rails' ]
ruby::gem { $gems: }
}
class github::environment::rails {
include mysql include nodejs # asset pipeline :( include ruby
$gems = [ 'bundler', 'rails' ]
ruby::gem { $gems: }
}
class github::environment::webscale {
include mongodb include nodejs include redis
}
class github::environment::hipsterstack {
include funding::series_a
# FIXME: include business_model
}
class github::environment::design {
include photoshop
# ???
}
class github::environment::legal {
include microsoft_word
# ???
}
class github::environment::hr {
include hugs
# ???
}
WE KNOW A THING OR TWO ABOUT DEVELOPMENT ENVIRONMENTS
BUT WE ARE COMPLETELY CLUELESS WHEN IT COMES TO EMPOWERING PEOPLE
OUTSIDE DEVELOPER-SPACE
WE NEED TO UNDERSTAND DIFFERENT KINDS OF ENVIRONMENTS AND THEN MAKE THEM
BETTER WITH AUTOMATION
TELLING THEM THEY HAVE TO USE OUR TOOLING TO AUTOMATE AWAY
PAIN IS A COP-OUT
# WORK ON PROJECTS
+ github/github
class projects::github {
github::project { 'github': mysql => true, redis => true, ruby => '2.1', }
}
$ boxen github
<LOTS OF TECHNOLOGY HAPPENING HERE>
AND NOW JILL DEVELOPER CAN WORK ON GITHUB
BUT WHAT ABOUT THOSE FOLKS IN FINANCE?
class projects::quarterly_taxes {
# ???
}
class projects::financial_audit {
# ???
}
# NEED DIFFERENT THINGS
# DESERVE TO BE HAPPY
# REALLY LIKE ,
OS X 10.9 "MAVERICKS" SUPPORT
NO MANUAL XCODE INSTALL REQUIRED
HIERA EVERYWHERE
UPDATING MODULES TO GET A NEW VERSION OF X SUCKS
TRYING TO RUN A SERVICE ON A DIFFERENT PORT SUCKS
HIERA FIXES THESE THINGS WITHOUT UGLY HACKS
HIERA FIXES THESE THINGS WITHOUT FORKING MODULES
YAML CHANGES ARE MORE APPROACHABLE THAN PUPPET
HINTS OF LINUX SUPPORT
REALLY SUBTLE HINTS
# grep boxen github/puppet/Puppetfile
mod "nodejs", "3.2.5", :github_tarball => "boxen/puppet-nodejs"mod "phantomjs", "2.0.1", :github_tarball => "boxen/puppet-phantomjs"mod "repository", "2.2.0", :github_tarball => "boxen/puppet-repository"
MORE CORE MODULES WILL GET SUPPORT OVER TIME
PUPPETMASTER SUPPORT
I ACTUALLY WASN'T INVOLVED IN THIS
SOMEONE TOLD ME THEY HAD DONE IT YESTERDAY
GOOD ON YA
I NEED TO BUY YOU A BEER
MENUBAR APP
LAST YEAR I HAD A TERRIBLE PROOF-OF-CONCEPT
THIS YEAR I HAVE THE SAME PROOF-OF-CONCEPT
BUT GOOD NEWS
MY ROOMMATE IS A GITHUB FOR MAC DEVELOPER
THIS THING IS FINALLY GOING TO HAPPEN
HENSON
LIBRARIAN-PUPPET "WORKS"
LIBRARIAN-PUPPET "WORKS"-ISH
YOUR SOFTWARE IS BAD
AND YOU SHOULD FEEL BAD
HENSON IS NOT A DEAD PROJECT
SOME OTHER PRIORITIES NEEDED OUR ATTENTION FIRST
CLOSING THOUGHTS
BOXEN IS NOT PERFECT
IT'S SOFTWARE
IT HAS MADE OUR LIVES A LOT EASIER AT GITHUB
IT MIGHT MAKE YOUR LIFE EASIER
DON'T USE IT BECAUSE THERE'S A BIG NAME ATTACHED
F&%$ THIS GUY
DO IT FOR YOU
HEeeeLLOBEAUTIFUL
THANKS