cfgmgmtcamp 2017 docker is the new tarball
TRANSCRIPT
Some smart dude figured it out back in the 17th century..
“An object that is at rest will stay at rest unless a force acts upon it.”
Isaac Newton, 1687
Public Domain, https://commons.wikimedia.org/w/index.php?curid=535736
We have come a long way..1801: In France, Joseph Marie Jacquard invents a loom that uses punched wooden cards to automatically weave fabric designs. Early computers would use similar punch cards.
https://flic.kr/p/6Ba8He
Or have we ??
New technologies make us think problems of older generations (iterations?) have gone away.
Exhibit 1: Config Management
configuration management replaces bash scripting, no more scripting skills need..oh wait.
Exhibit 2: docker
Docker replaces tarballs. No more throwing code over the wall (just throw docker images instead, or docker files based on public docker images with no dockerfile)
Exhibit 3: AWS
AWS replaces VMware. No more on-premise HW lock-in with long running contracts (welcome cloud-based vendor lock in)
What's the conclusion here?
● Generally, the goal is to reduce complexity○ Is it possible to make complex systems non-complex?
Or are we just moving the complexity?
Who even asked for this?
● Are these ‘innovations’ even wanted?○ Yes! They might mask the original problem, but they
can save us a lot of time in the mean time
What makes new tech “worth it”?New products and technologies are worth the effort when:
the collective ‘cost’ of:
● implementing now, ● maintaining over it’s lifetime● and potentially moving off of it later
Is lower then:
● the ‘value’ of the savings/optimisations they create for the duration of the time we use them as opposed to staying with current tech.
What about $$$?
‘Cost’ includes tangible and intangible things eg.
● Technical debt● MTBF / MTTR
Savings/Optimisations include things like:
● engineer happiness and sanity ● Responsiveness to change requests from the business
IT → Business → IT
Ultimately: IT is a function of the business and should therefore have it’s main target set to: “whatever is best for the business”
That said, the business doesn’t always know what’s best for it
FOSS
● How does Open Source fit into this picture?○ What if a tech goes away before I stop using it? ○ Is there a service run by an external business I’m
dependent on? ○ How confident am I / What safeguards do I have that
this dependency is worth it?