TopPodcast.com
Menu
  • Home
  • Top Charts
  • Top Networks
  • Top Apps
  • Top Independents
  • Top Podfluencers
  • Top Picks
    • Top Business Podcasts
    • Top True Crime Podcasts
    • Top Finance Podcasts
    • Top Comedy Podcasts
    • Top Music Podcasts
    • Top Womens Podcasts
    • Top Kids Podcasts
    • Top Sports Podcasts
    • Top News Podcasts
    • Top Tech Podcasts
    • Top Crypto Podcasts
    • Top Entrepreneurial Podcasts
    • Top Fantasy Sports Podcasts
    • Top Political Podcasts
    • Top Science Podcasts
    • Top Self Help Podcasts
    • Top Sports Betting Podcasts
    • Top Stocks Podcasts
  • Podcast News
  • About Us
  • Podcast Advertising
  • Contact
Not in our directory?
Add Show Here
Podcast Equipment
Center

toppodcastlogoOur TOPPODCAST Picks

  • Comedy
  • Crypto
  • Sports
  • News
  • Politics
  • True Crime
  • Business
  • Finance

Follow Us

toppodcastlogoStay Connected

    View Top 200 Chart
    Back to Rankings Page
    Software How-To

    Arrested DevOps

    Arrested DevOps is the podcast that helps you achieve understanding, develop good practices, and operate your team and organization for maximum DevOps awesomeness.

    Advertise

    Copyright: © Copyright 2013-2021 Arrested DevOps

    • Apple Podcasts
    • Google Play
    • Spotify

    Latest Episodes:
    Vendors: Frenemies or Friends? with Michael Ducy of The Goat Farm Feb 12, 2016
    Show notes

    This is a joint episode with The Goat Farm, the enterprise DevOps podcast, with all three Arrested DevOps hosts plus Michael Ducy from The Goat Farm. The conversation started when Matty and Michael, both at Chef, were in Seattle training the sales engineers and got talking about being a partner to customers rather than someone handing over a bill of sale. Bridget is at Pivotal and Trevor is at 10th Magnitude, so everyone has been on both sides of the vendor table. Trevor opens with a customer who recognized Trevor as the guy from the podcast and wants to work together because sometimes Trevor sounds smart.

    Using DevOps to Sell DevOps

    Michael says the Seattle training was built around value stream mapping and Kanban, so the sales engineers would have some DevOps fundamentals as tools for conversations with customers. Trevor asks what value stream mapping is, and Michael explains that you draw a current state map of how a piece of work flows through a process and where time is spent, then build a future state map that removes the waste. It comes from lean manufacturing, and Gene Kim is a proponent of it in The Phoenix Project. Michael has done enterprise software sales for eight years, mostly on the presales side at BMC, Instratius (which Dell acquired) and Chef, and now manages Chef's East presales team. Michael wants to be less of a demo jockey and bring more value to the conversation.

    Five Kinds of Salesperson

    Bridget says the golf-and-wine stereotype doesn't match the field people encountered at Pivotal. Matty introduces The Challenger Sale, which describes five profiles: the hard worker, who makes the calls and follows the process, the lone wolf, who ignores the process and closes deals with a Rolodex, the relationship builder, the problem solver and the challenger. The problem solver says "tell me where it hurts and I will sell you the Band-Aid," while the challenger teaches you something about your business you didn't know and acts as a trusted advisor.

    Bridget pushes back that you need a relationship before you can challenge anyone. Matty's answer is that the relationship builder means you buy from me because you like me, and Michael adds that many CIOs buy from the same salesperson they have bought from for 20 years. Trevor, as a principal consultant, lands in the problem solver role, and says Matty is probably half problem solver and half challenger. Michael says you have to wear different hats depending on the customer, since some know their problem and some have read about DevOps and called the DevOps company to buy it.

    Eight Units of DevOps

    That leads to a recurring question: "do you want to sell them 8 units of DevOps today, or do you want to sell them 4 units of DevOps over the next 15 years?" Bridget says you sometimes have to give people what they need, not what they want. Matty explains that with a subscription model, selling a customer something they aren't ready for creates a churn customer who will cancel in a year.

    Selling in an Open Source World

    Michael contrasts the proprietary days. The customer knew little about the software, the documentation was behind a login, and a $2 million deal meant convincing everyone through executive relationships. In the open source world, the customer is often smarter about the software than Michael is and asks why they should pay Michael. The sale runs through the individual contributors who sell it upward to the economic buyer. Bridget adds that if those people can't look at your code on GitHub they will veto it, and Michael says you're also selling the community, which gives customers other people to share the pain with, where in the proprietary world you're "always angry at the vendor for not giving you what you need." Bridget adds that customers can choose among vendors, since other companies also help with Chef and commercial Cloud Foundry.

    Matty describes r/sysadmin complaints about vendors' cold calls, with SolarWinds getting the worst reputation, and the flip side: when you do your own discovery, there's a lot you don't know to look for, which is the advantage of a trusted advisor. Michael says one reason for leaving BMC was the constant wondering "what are you trying to hide" when documentation was behind a paywall, and recalls an executive saying the customer shouldn't be able to download the software because it's enterprise software and complicated. Bridget says that at Pivotal, missing public information is usually because nobody has had time, not malice, and describes a ThoughtWorks person who found an error in Pivotal's docs and was pointed to the GitHub repo to submit a PR.

    Good Vendor Relationships

    Bridget says that as a Chef customer at Drama Fever, Bridget happened to run into Julian Dunn, who was doing product management for the thing Bridget was unhappy about, and who told Bridget where it was on the roadmap, with no secret handshake. Matty's example is a rep from Serena Software on a small deal of about $50K, who talked about the roadmap and told Matty that Matty wasn't ready for something yet, so they'd get Matty there. It paid off: they later partnered in a big way, and Matty says a hard sell on the problem as described would have gotten them barely anything.

    Proof of Experience

    Michael says Chef used to run proofs of concept the traditional way, with experts setting up the tool, writing the customer's use case and demoing that the software solves the problem. They realized that was broken, and now "it's more about can the customer solve their use cases with the software." Matty recalls the Fast search POC at Apartments.com, six weeks with the vendor's engineer building everything. If Matty came in and wrote Chef code to install WebLogic, "it proves that Matt can write Chef code," which doesn't help you because Matty doesn't work for you. Matty calls it a proof of experience, a time machine to see what it will be like, and says it is physically and emotionally exhausting and Matty's favorite part of the job. The sign that it is working: "when the stickers go on the laptop, you know the deal's on its way."

    Michael says the point is to challenge expectations in enterprises that say they could never work that way, by having people do it. Bridget adds that if only one part of the organization is in the room, the parts that are always at war aren't, and you sell them the units and they don't use them, so you have to get everyone in the room, since you can't just buy a tool. Michael quotes Adam Jacob: the tool reinforces the culture and the culture reinforces the tool.

    Everyone Is in Sales

    Matty quotes Nathan Harvey: "everyone's in sales in your organization." Bridget found a 2014 tweet of Bridget's own for a presentation to a sales organization at a quarterly business review, "DevOps is culture, princess. Anyone who tells you differently is trying to sell something," and Andrew Clay Shafer's reply was "everyone is selling." Michael brings up Daniel Pink's To Sell Is Human, which says one in nine Americans work in sales and the other eight are selling something too. Michael says the presales team teaches value stream mapping, Kanban and pair programming during the POC, and then at the end tells customers that what they just did is foundational DevOps, and that they had no idea the presales team had done "the DevOps on them." Bridget adds that they did the DevOps for themselves.

    Closing thoughts: Matty, who never expected to be good at sales, doesn't think wanting to change the world and being a good salesperson are mutually exclusive, and asks listeners to skip the assumption that everyone is selling snake oil: "Assume positive intent." Bridget, who as a sysadmin was lied to about IOPS, is humbled by how much customers trust them, and says sometimes the right answer is to stop hating each other and talk, which is what Bridget calls "DevOps therapy."

    This was a special co-production with The Goat Farm. Don't forget to subscribe to their Enterprise DevOps podcast on iTunes or Stitcher!

    • The Challenger Sale In Less Than 10 Minutes
    • “To Sell Is Human” - by Daniel Pink
    • Value Stream Mapping

    Check Outs

    Michael

    • "I’ve discovered that tweeting something inflammatory about Docker will give you a really popular tweet."

    Bridget

    • PetFinder.com - searching for that adoptable pet of your dreams

    Trevor

    • Bryan Fuller co-producing the new Star Trek TV series
    • posh-git

    Matt

    • git-blame-someone-else
    • New DreamWorks/Netflix Voltron series title announced - Voltron: Legendary Defender
    • Snarky Agile Tees

    Upcoming Events

    • DevOpsDays Rockies is offering a 10% discount for ADO listners with the code ADO2016

    Upcoming CFP's

    • DevOpsDays Rockies and DevOpsDays Seattle CFP open until February 28th
    • ChefConf CFP open until February 29
    • DevOpsDays Atlanta CFP open until March 1
    • Dockercon CFP open until March 18
    • Platform/Spring One CFP open until March 24
    • DevOpsDays Vancouver and DevOpsDays Minneapolis CFP and Abstractions open until March 31
    • DevOpsDays Washington, D.C. open until April 15
    • DevOpsDays Salt Lake City open until April 19
    • DevOpsDays Amsterdam open until May 30

    Chocolatey Goodness With Rob Reynolds Jan 30, 2016
    Show notes

    Trevor said a few things about Chocolatey on the switching operating systems episode that caught the attention of Rob Reynolds, its creator, so Rob comes on to set the record straight and walk through where the project is headed. Rob lives in Topeka, Kansas, is a senior software engineer on the Windows team at Puppet Labs, and created Chocolatey a little over four years ago. Trevor opens with an apology for spreading misinformation, and Rob's answer is that nothing said was really incorrect.

    Where Chocolatey Came From

    Rob was moving from company to company and repeating the same silent-installer work each time, and wanted to make the concept more global so the wheel wouldn't need restarting, including when working outside the company firewall. The goal was to be able to sit down to pair with someone who didn't have Notepad++ and fix it quickly instead of doing "the nice long yak shave." At the time Rob was on the NuGet team, which had decided not to approach machine package management. They joked that if they ever built one they'd call it Chocolatey NuGet, since it wasn't vanilla NuGet packages, and the name stuck.

    The Community Feed and Trust

    Rob's one clarification is that Chocolatey is a decentralized package management tool, and in production "you definitely don't want to be depending on the community feed." There is little control and very low trust there. Trust is something they are building, and package signing is the next big step, giving traceability from who you think created a package to who actually did. Companies can and do use Chocolatey by creating their own packages, hosting them on an internal repository, and never touching the internet. Community feed packages typically point to a binary at an official distribution point, with a checksum (many packages have one, some still don't) and the silent arguments to install or upgrade it.

    Underneath, Chocolatey works through the NuGet packaging framework plus automation scripts, which are currently PowerShell, with Script.cs support to come. Script.cs is a C# scripting tool with a REPL that runs on Mono, which Trevor finds exciting.

    The Rewrite

    Chocolatey started as a command line app written entirely in PowerShell, which meant starting PowerShell on every command and paying a one to two second startup penalty. It had about 20-some thousand lines of code and became interesting to maintain. For maintainability, speed and the possibility of going cross-platform, Rob decided to take the pain of a rewrite in C#. It was in beta for a while and came out that March. Rob says the goal is to make Chocolatey look like what you would expect from a Linux package manager, and that there is more work to do.

    Hosting Your Own Packages

    Trevor asks how a company mirrors community packages when they point at external download sites, as when Trevor's Notepad++ install broke. Rob says you currently have to edit each package, a process called repackaging. The business version coming next year will make that a single command that fetches the package and its downloads, puts them internally, and rewrites the package to point there. The paid versions will also add virus checking and, for pro users still on the community feed, an alternate private CDN so a vendor's 404 doesn't break the install.

    Moderation, the Verifier, and the Validator

    Rob says a free service still costs money, and after three or four years of running the site, it came time to decide whether to keep pouring money into it or find a business model. Rob ran a Kickstarter last year, which succeeded. Moderation was introduced in October 2014, and before that a package went live the moment it was uploaded. It was popular but they probably turned it on too early, before the infrastructure automation was ready. Some maintainers push up to 200 packages at a time, so automation on one side and human review on the other doesn't work very well.

    A couple of weeks earlier they released the verifier, which checks existing packages every two weeks to see if they still install, and emails the maintainer if not. On new submissions it runs headlessly through Vagrant, installs Chocolatey, sets up a sandbox, installs the package, and checks the uninstall too. Chocolatey takes a registry snapshot on install so it can uninstall automatically, which means about 80% of packages need no uninstall script. The validator checks quality and consistency against about 35 rules, such as naming guidelines, where an icon is hosted, and use of Start-Process, and posts notes on the package page. Only when a package installs cleanly and passes validation does a human reviewer step in, mostly to read the install script and check that the download comes from the official distribution point. Rob says the messaging is not being reported back to users yet, because they want it short and rock solid.

    Trevor asks about malicious packages. Rob says they haven't found one, but "it only takes one." They have seen packages that use SourceForge, which pulls down malware. To see more of what an install touches, they plan to add Turbo, a tool formerly called Spoon that can diff a container to show every registry key and file touched.

    Compared With Linux Package Managers

    Rob says Chocolatey lacks virtual packages, so a package can't depend on "a PDF reader" and have Adobe or Sumatra satisfy it, and it lacks concepts like replaces or conflicts. It also has no package indexes, so it hits remote systems whenever you query. Checking for upgrades took about four minutes in the old PowerShell version and about 40 seconds in the C# version, which is still too long, and with indexes it should take under a second. It has a CLI and a GUI, called Chocolatey GUI, which Trevor suggests could be renamed.

    Growing Pains and Getting Involved

    Microsoft's OneGet is a package manager aggregator that talks to other package managers, and the Chocolatey provider for it is unfinished, since the few volunteers working on it are stretched thin. Rob wants help from people who know PowerShell and C#, and would like it done in the first half of the year. Rob is also dealing with growth: downloads went from about 5 million total before moderation to, by Rob's account, another 20 to 25 million in the following year, and the site handles about a terabyte a day and 4 to 7 million requests. Approvals have slowed, and "we've sort of failed, that we didn't get the automation in place as quickly as we needed to." Rob works on stability problems on personal time, sometimes taking PTO, because as the guy behind Chocolatey, Rob hears about outages.

    To get involved, Rob points to the mailing list and Gitter, taking over a package whose maintainer has disappeared, or the Up for Grabs items, which are often small and documentation-related. Rob says a longtime user once said "once you go chocolatey, you don't go back." Puppet has a Chocolatey provider and Chef has a cookbook, and there is more coming for offline use. Rob also likes the open source business model, since the paid version keeps driving features into the free one. Rob's closing plea is for better documentation, ending with: "Chocolatey, it's awesome. Use it."

    Check-Outs

    Rob's pick is Turbo, and another pick slipped Rob's mind, so Trevor jokes it will be posted as Rob's latte thoughts. Trevor recommends playing with DSC and Windows Management Framework 5, Agents of S.H.I.E.L.D., and David Bowie's new video Blackstar. Rob adds that both Puppet and Chef have DSC providers, and that it is a sign of Microsoft doing things differently and more openly.

    • Chocolatey.org
    • Chocolatey Mailing List
    • Chocolatey on Gitter

    Open Source with Phil Dibowitz Jan 20, 2016
    Show notes

    Matty corners Phil Dibowitz, a production engineer at Facebook, at the Chef Community Summit in October 2015 and talks open source: how it has changed over Phil's career, why companies do it, and how someone who benefits from it can start giving back. Phil hasn't been on the show before, and, as Matty tells it, didn't run away fast enough.

    Phil's Background

    Phil has spent a couple of years building a pattern at Facebook for teams to own their own tiers of machines. Phil's team wrote low-level core cookbooks that expose an API on attributes, so setting a sysctl or adding a cron job is a variable assignment in your own cookbook, with no need to understand every kernel tunable or every other cron job on the system. They deliberately used templates and notifications so that deleting those lines from a cookbook cleans everything up. It took a couple of years to get everyone migrated. Along the way Phil got deeply involved in the Chef community as a maintainer, most recently adding multi-package support, and mentions internal Facebook tools people have found useful, like Taste Tester and Grocery Delivery.

    Phil will hit five years at Facebook in November. Before that came Google, working on Gmail infrastructure, and before that at Ticketmaster, where Puppet and Chef didn't exist yet, so a group of them wrote their own configuration management system called Spine. It was very cool for its day, Phil says, but it never had a community and wasn't maintained, and the industry had moved on by the time of Phil's return to it.

    Open Source Because It's the Faster Way

    Matty describes the odd alternate universe at ChefConf, with Mark Russinovich and Jeffrey Snover on stage talking about running Linux on Azure, and says it feels like Michael Corleone: every time the Windows chapter looks closed, they pull Matty back in. Matty asks how open source has evolved over Phil's career.

    Phil got into the industry young by hacking on open source as a kid, and when interviewing at Facebook wanted to be able to open source what they built. Phil sees a shift since the late '90s, as Linux, Apache and the browsers showed open source would not only work but be better. What changed is that companies no longer do it for moral reasons: "the best way to move fast is to let everyone else help you move fast." Phil's example is the HipHop PHP to C compiler, which Facebook released and tried to build a real community around, including engaging the Zend community, so a lot of the work now gets done for them. It is also why nobody at Facebook wanted to write a new config management system when good ones were being maintained.

    On Microsoft, Phil says it was lip service for a long time, but thinks large parts of the company have bought in and finds it exciting. Like Chrome and Firefox, each side makes the other better, and Phil doesn't expect Linux and Windows to merge. Matty adds the open source that doesn't accept PRs as the lip-service version.

    Plumbing Isn't Your Competitive Advantage

    Matty says enterprises used to keep quiet about how they worked, so the only stories were from Facebook, Netflix and Etsy, which is where the unicorn idea came from, and clients would say Matty was the fifth person that day to tell them they should be like Netflix. Matty credits the DevOps Enterprise Summit for getting companies like Target, Nordstrom and GE to talk. Most of what gets shared is plumbing, not competitive advantage. Netflix doesn't open source its video encoding, and if someone is going to disrupt Facebook it won't be by being better at building 300,000 servers fast. Phil calls it infrastructure scaffolding.

    DevOps Isn't New

    Phil wants to comment on the history. As a junior admin in the '90s, Phil asked a mentor what made a senior sysadmin, and the answer was being able to read the code of the applications you deploy and to bridge the gap with developers and DBAs. "That's what DevOps is," Phil says, and "it drives me nuts when people talk about, oh, look at this new idea that we just came up with, and it's never been new." Matty quotes a friend who has been doing DevOps for a long time, "back when I just called it work," and suggests the current wave corrects a pendulum swing toward admins who only care about the box. Phil's take is "those people are just bad at their job." Matty says the problem is that there are a lot of them.

    Lawyers, Precedent, and Policy

    Getting a company to release code is the harder part, Phil says. Inside a company you have to persuade a legal team to give a thing away, and Phil has been lucky to work with lawyers who weigh the risk against the value and decide. Lawyers weren't trained on releasing internal intellectual property as open source until recently. Now there is a decent chance someone in marketing, business and legal will get it, and you can find a path through the gauntlet even at an older company.

    Matty says that's the realization that every company is a software company, and the rest of the business has to catch up. Matty adds that lawyers worry about setting a precedent for the IP they are protective of, and Phil says that is where written policies come in, guidelines on what you'd release and what you wouldn't. Phil's sign that open source has reached critical mass is that a stranger on a plane, even a flight attendant, has heard of it.

    Tooling and Inclusivity

    Phil says two things have changed in communities. The first is tooling. Running a project once meant juggling patches that no longer applied and email threads you forgot to reply to, and contributing meant knowing a project's patch policy. With GitHub you send a pull request and don't even need to join the mailing list.

    The second is inclusivity, which Phil says the community is struggling with. Phil describes being a "loud, obnoxious, aggressive guy," and says someone who isn't may feel steamrolled and go away. The project needs both: people who feel able to bring ideas, and the culture of ripping apart a patch so the contributor can make a better one, without hard code review becoming an excuse to attack someone. Phil says ChefConf strikes a good balance, with people around to help with code of conduct issues, and that "the tooling kind of was stage 1, and this is stage 2."

    How to Start Contributing

    Matty asks how someone who gets a lot of value from Chef but isn't going to commit to core as a first step should begin. Phil started around 12 or 13, when a little Perl was readable but bug fixes were out of reach, by writing docs. Phil maintained the IPFilter FAQ, watched the mailing list, and put questions that came up three or four times on a webpage. Phil's view is "there's no meaningless contribution," and adds "Any contribution is a contribution, we're a community." Matty adds meetups, facilitating a talk, and even whitespace fixes. Phil mentions people on projects who aren't coders but triage bug reports, asking for debug logs and version numbers so developers don't go back and forth six times.

    Phil also wants people to remember there are no gatekeepers. Phil cites a DEF CON 101 talk that tells newcomers that no speaker is above them, and says the same goes at Chef: go talk to Adam, who loves talking to people, and "there is no one above you or better than you." If someone comes off as a jerk, tell an organizer, because everyone does by accident sometimes.

    What Surprises People About Facebook

    Asked for something surprising, Phil says internally the goal is to do the best thing for the user, with constant discussions about privacy, and that user trust is your bread and butter for any company where people share things. Phil points to a line in the S-1: "we make money to build products, we don't build products to make money." Phil has never stayed at a company longer than two and a half years except here, and says the technology was the draw and the company is why Phil stayed.

    • Panel Discussion from ChefConf 2015: Have Your Bets on Open Paid Off? Moderated by Cade Metz, Wired Magazine Panelists: Mark Russinovich (Microsoft), Jeff Arcuri (Gap), Phil Dibowitz (Facebook)

    • Errata: "We're no longer an airline. We're a software company with wings." Matt's quote at 17:02 was from Alaska Airlines, not United Airlines.


    Platforms with Kelsey Hightower and Andrew Clay Shafer Jan 13, 2016
    Show notes

    Bridget hosts solo and talks platforms with Kelsey Hightower and Andrew Clay Shafer, a colleague of Bridget's at Pivotal. The show opens and closes with Andrew's New Year's goal of being more like Kelsey Hightower, to which Kelsey replies that it is Kelsey's goal too and Andrew wishes Kelsey luck. It is a wandering conversation, and Bridget lets it wander, but the two of them agree on more than a cage match would need.

    From Automating Everything to Platforms

    Andrew says it wasn't a moment when things switched. Andrew saw the same patterns of success across projects of many scales, and realized the architecture you are automating matters as much as the fact that you automate it, and that automation can entrench bad practices. Kelsey says when good patterns are found they become foundational, like moving something into a language's standard library. The trap is people wanting the platform to do everything, and if you're truly a unique snowflake you'll need third-party packages outside the standard.

    Andrew separates standards from patterns, since standards aren't always good patterns, and says what we are participating in is a trend for complexity to move up the stack. As practitioners recognize patterns and abstract them, we can stop reimplementing them and solve some other problem that creates value for the business.

    Context Is the Missing Piece

    Kelsey says people rarely account for situation. Kelsey's analogy is house hunting: the same style of house is built differently in the hills, the city or the suburbs. If you get one user per hour you can use almost anything for your platform, and if you get a billion requests per second some things that don't matter to the rest of the world matter to you. Engineers rarely get enough time to evaluate the full situation before someone says they need something by Friday.

    Andrew adds that experience changes what you can see. Without scars, two solutions look equivalent when one is far better, though Andrew notes some organizations have frozen their tech stack in amber for a decade, so years of experience isn't the only factor. Andrew thinks microservices, platform as a service, DevOps and continuous delivery are all aspects of one phenomenon, the patterns from high-performing organizations that deliver services that are highly available and rapidly changing. If you want all those qualities, "you're going to converge on something that starts to look suspiciously like a platform as a service."

    Kelsey says when it works, it works, and Andrew counters that everyone has a different threshold of pain and what they call working may not be. Andrew brings in Tolstoy: happy families are alike and unhappy ones are unhappy in different ways, and the high-functioning organizations look similar.

    Fashion, Tribalism, and Abstractions All the Way Up

    Bridget asks what to pay attention to among containers, schedulers and orchestration. Kelsey says if managing infrastructure isn't your job, you pick a platform like Heroku and write the app. Otherwise you'll have to compromise: adopt something that exists, or use a fraction of it and build on top. Kelsey thinks the debate is fueled by emotional attachment to tools, and Andrew adds that "everything in tech, even though it looks like it's about logic and reason, is really about fashion and tribalism." Kelsey's version is that if you're great at Bash you attack every problem with Bash, like Batman's utility belt, and "You can write bad code in any language." Kelsey also thinks people play a zero-sum game, and abandon a platform like Heroku over one missing feature and reinvent the whole wheel.

    Andrew describes the arc of the thinking as it played out for Andrew. You feel powerful the first time you configure a server with Puppet, and then 100 servers, and then you have Amazon, and it turns into the Fantasia broom story: the brooms become their own problem and you need another layer to orchestrate them. Bridget asks if it's abstractions all the way down, and Andrew says of course, the complexity is moving up the stack.

    Fear of Losing Control

    Kelsey says there is a real fear of yielding control to a service that just works. If we do this long enough, will we never be able to buy a server and configure it, and end up renting forever? Kelsey half sympathizes, because some people want to look under the hood, though Kelsey says it slows platforms down: Cloud Foundry needs BOSH partly because it has to support so many install targets, and the number cited is 80,000. Andrew says some of the fear is people attaching their tribal identity to their tasks, so that the ability to do that thing is what defines them. Kelsey jokes about people who think they can hit eight nines in a single data center in their backyard, and Andrew calls it Dunning-Kruger.

    Andrew points out that this replays every time: moving from assembler to C brought the same worry about losing control. "You don't fight the future. You just have to figure out where you want to live inside of it." Kelsey notes stuff from the '70s is still running, and Andrew describes sedimentary layers that never go away, pointing out that the mainframe business's top line grew every year for the last decade.

    Containers, APIs, and Unikernels

    Kelsey says the true benefit of containers, stripped of hype, is that they let you swap out what's underneath more easily, and that the new legacy we create will be easier to deal with in 30 years. Andrew argues that much of the benefit comes from Linux having won as a standard: the syscall interface is what got standardized. Bridget notes cgroups and namespaces predate Docker, which made them accessible. Andrew agrees, but says what became accessible was using them, not the mental model of how they work, so what's being iterated on is the abstraction.

    Kelsey says "containers mean nothing without the API," and when people say containers they mean Docker's API. Unikernels would only swap one containment technology for another, and you can't introduce a new containment boundary without an API. Andrew agrees they aren't usable until they're in fabrics with tooling like Docker's, and recommends an interview that argues unikernels are exokernels, which Andrew doesn't buy.

    Kelsey also says "You should not be using Kubernetes directly for all of your needs." Kelsey works lower in the stack and Andrew higher, and if you're building a Cloud Foundry-like thing on top of Kubernetes, you're probably wasting someone's time. Kelsey's endgame is that you have an app in a bundle, and you don't care whether it runs on unikernels, VMs or containers.

    12-Factor Apps and 12-Factor Ops

    Andrew introduces 12-factor ops, the other side of the 12-factor contract. Each factor implies that something exists to make the app work, so if the app is configured through environment variables, something had better inject them. When people say they don't need a platform because they have Docker, Andrew says "that's adorable," and asks how they deployed things before platform as a service. Your platform might be Heroku, or a configuration management tool, or Julie running a shell script in a loop. Kelsey adds that we've neglected app behavior because humans will look at the logs and do the needful.

    How to Choose

    Asked to be prescriptive, Kelsey has people whiteboard how their organization works before they look at tools, since no tool does everything, and then asks whether they are willing to own the missing piece. Andrew says to work out what you're trying to accomplish and back into a solution, and to think about how automatable your architecture is. Andrew gives an example: if your service needs an order-dependent stateful install process, that process is the lower bound on your recovery time, and in practice worse, because you have to figure out what state you're in and unwind first. Separating state from statelessness gives you more power regardless of automation choices.

    Kelsey says people need to get over the hump of change, and some code changes need to be on the table. Andrew points to a sentence in the Borg paper that Andrew thinks most people miss, that most of what ran on Borg had an embedded web server broadcasting metrics about the application's health. Kelsey says we used to probe apps from outside with Nagios, and they should just report their health, as New Relic did by importing one package: "We've learned too much in 30 years. No more excuses." Andrew adds that Spring Boot ships with embedded metrics, and the Netflix open source circuit breakers come with those patterns.

    What Comes Next

    Andrew expects mass enterprise adoption of cloud and many failures, because adoption isn't always enlightened. Andrew tells of being asked to help a company that wants the DevOps and then, after the analysis, asking whether Andrew could help them do it without changing anything. At that point, Andrew says, you should just use Puppet, because they have political issues to work through first.

    Kelsey predicts people will be forced to outsource compute by things outside their control. Machine learning services, petabytes of data per day and IoT data volumes go beyond what a team can build, and Kelsey thinks there will be six or seven platforms that mature and work. Andrew adds that high performers didn't set out to do DevOps, they were pushed by Darwinian force, and the organizations that seem healthy haven't met theirs yet.

    Kelsey's last word, on the Kubernetes workshop at OSCON that Kelsey now chairs, is a conclusion: "Most people do not want to run it themselves. It's a fallacy." So the material will be about what to do next.


    2015 in review Dec 31, 2015
    Show notes

    Matty, Trevor and Bridget record the second year-end episode together, with Trevor and Bridget in the same room in Minneapolis, and go through conferences, favorite episodes, site stats and what they saw in the wider DevOps world. Trevor opens by noting they've made it through two years, slightly over. The cold open is Bridget: "Pink-haired thought leadership as a service is valuable enough for Pivotal to pay me to do it."

    Delight and Animated GIFs

    Matty spoke at ChefConf, the first time all three hosts were in the same place and all spoke, with a talk on automating animated GIFs in HipChat. Bridget's case for it is that people dread swapping a heavyweight process for a new terrible one, and animated GIFs in a chat app make them realize "I could actually have fun with this DevOps thing." Matty ties it to Adam Jacob's ChefConf keynote on bringing delight: the one feature Adam required in Chef Delivery was support for animated GIFs, and the system profiler being called Ohai adds no technical value but makes people grin. Matty shows embedded YouTube videos and GIFs in Chef Delivery demos, and even the stodgiest enterprise loves them.

    A Year on the Conference Circuit

    Matty went to DevOpsDays Rockies, which was held in a data center, and the talk of tours prompts Bridget and Matty to trade data center stories: Bridget recalls a designed-as versus built-as floor plan mismatch that meant moving two racks days before a $5 million supercomputer delivery, and Matty still likes pretty cable management. Matty also spoke at ALM Forum, enjoying non-DevOps audiences because "you don't have to be super insightful," and gave The 5 Love Languages of DevOps, which works well at agile and app dev events. Bridget's counter is that many people attend Velocity for the first time and gravitate to the culture track, with the CFP deadline on January 11th.

    The best story is DevOpsDays Minneapolis. Bridget pushed Matty to submit an Ignite talk about Pete Chessbot, a Markov bot that mangles Pete Cheslock's tweets, and Matty confirms, on the record, to be the bot's owner. To keep the talk funny, Matty asked Pete to fill the slides with bot tweets and send them to Bridget so Matty wouldn't see them. The first slide appeared with no warning, so the first words of the talk were "fucking Cheslock." Pete insisted no instructions had arrived, and Matty pulled up the sent email from the front row. The email said: "dude, how do you DevOps while you're illiterate?" Bridget thought the real surprise made it better.

    Matty also praises That Conference in the Wisconsin Dells, "summer camp for geeks," where 60 to 70 people came to a talk about Chef at a .NET-focused audience and Channel 9 interviewed Matty. Trevor made a speaking debut at ChefConf with the Fresh Prince of Azure rap, which now serves as an icebreaker with every client, then spoke at DevOpsDays Chicago on contributing to open source and at Days of .NET about Chef, twice, after a coworker took a job at Microsoft. Bridget spoke at about 23 events, including OSCON, Velocity New York and Amsterdam, ChefConf and KubeCon, and co-presented with former and current coworkers, preferring the conversational format, which "feels more like a podcast."

    Jobs After the Show

    A running joke is that being on the show gets people new jobs or promotions, with Trevor, Bridget, Katherine Daniels and Jill Jablinski cited, and a listener tweets that getting mentioned got them a new job too. Matty's proposed fee for a promotion is a high five, a tweet or an iTunes review. Bridget notes that being a regular host helped with moving to Pivotal, and that Kyle Kingsbury opened a consultancy around Jepsen after the distributed systems episode.

    Memorable Episodes

    The hosts call out the Microsoft episode with Jeffrey Snover and Jessica DeVita, which became the most viewed YouTube video, the Docker episode with James Turnbull, which was the most listened to, finally landing Andrew Clay Shafer during a day and a half in Minneapolis, and an episode with John Willis that hadn't been released yet. Bridget's highlight is the cognitive neuroscience episode with Courtney Nash and Lindsay Holmwood, and Matty discovered that episodes without Matty were fine, after resisting them at first. Matty says "I don't think we had any turkeys this year." Bridget and Trevor also credit Matty for the editing, the site overhaul and the feed wrangling.

    The site is now statically generated from a GitHub repository, so pull requests with fixes are welcome, and Matty fixed a title typo pointed out weeks late. Visits went from 14,000 to 24,000, listens from 76,000 to 204,000, and per-episode averages doubled to between 5,000 and 7,000.

    What They Saw in DevOps

    Bridget now visits customers, including government types working hard to change, and some who want DevOps "without changing anything." Matty says it's the year the C-levels get it, as part of strategic planning, but organizations balk at "the right hard thing." Trevor sees Windows shops adopting test-driven infrastructure. Matty fields the question "what's your container story?" from people with no plan, comparing it to asking "what's your computer strategy?" A manager at Bridget's Agile Day open space said a VP had decided the company was doing microservices and asked about the downsides.

    Matty says enterprise DevOps as a separate category faded in 2015, credit to DevOps Enterprise Summit, and reminds everyone that under 15 percent of organizations do configuration management, so the echo chamber is "1% of 1% of 1% of IT in the whole world." Bridget adds that "there is no such thing as greenfield," since what ships yesterday is legacy today, and that a vendor's answer should be "I don't care which one you use, just use something." Matty says the real question is how to do the thing and not which tool, and that the best thing about the year is companies like Target talking about what's behind their firewall. Bridget describes Target's dojo, where groups get a 30-day challenge and come back to spread the change: "It's practice."

    Events

    • ChefConf (all three hosts were speakers, and we actually were in the same place at the same time!)
    • DevOpsDays Rockies (Matt was a speaker)
    • ALM Forum (Matt gave his 5 love languages talk)
    • DevOpsDays Minneapolis (Bridget was an organizer, Matt did an ignite about @petechesbot)
    • ThatConference (Matt gave a talk)
    • DevOpsDays Detroit (Matt gave a couple talks)
    • Bridget spoke at about 23 events, including oscon, velocity NY and Amsterdam, Chef Conf, QCon, and more. And she’ll be giving a tutorial at oscon in May.
    • Bridget also went on tour with her team, which was pretty awesome.

    Memorable Episodes

    • Dave Zwiebeck and Mike Rembetsy joined us to talk about Blamelessness (Matt points customers to this episode all the time)
    • Jefferey Snover and Jessica Devita came on the show to chat about Microsoft stuff
    • We talked Docker with James Turnbull
    • We finally got around to having Andrew Clay Shafer on the show
    • Talked about culture change with Bill Joy (Matt also sends customers to this episode all the time)
    • Discussed the basics of ITIL and how it can work (or not) with DevOps
    • Bridget enjoyed such moments as talking cognitive neuroscience with Courtney Nash & Lindsay Holmwood and talking about failure in distributed systems with Kyle Kingsbury.

    ADO Updates

    • No new hosts added this year, but it’s the first full year being “staffed up”, whatever that means
    • We sometimes do eps without all the hosts! Which allows for a bit more scheduling flexibility
    • Redesigned the website! This means now if you find errata in the show notes, etc, you can go right ahead and send the fixes to us via pull requests at github.com/arresteddevops/ado-hugo
    • Stats!
      • 14,361 visits in 2014
      • 24,293 visits in 2015
      • 76,655 listens in 2014
      • 204,001 listens in 2015
      • Most listened to episode - the Docker episode (devops means docker, right?)
      • In 2014, averaged between 2,500 - 3,000 audio listens/downloads
      • In 2015, we now average between 5,000 and 7,000 downloads (double!)
      • Most watched YouTube video was the Microsoft episode
    • We’ve had a lot of awesome linkage this year, and we appreciate everyone who links to our epsiodes!

    Links

    • The Chef Prince of Azure - Trevor's talk at ChefConf 2015
    • Cooking Up Drama - Bridget's talk at ChefConf 2015
    • DevLOLOps: How To Automate Your DevOps Hilarity - Matt's talk at ChefConf 2015
    • Velocity 2016 Call for speakers
    • DevOps In The Machine - Matt's DevOpsDays MSP talk about @petechesbot
    • That Conference (Summer Camp For Geeks)
    • Matt on Channel9 at That Conference
    • The Audacity to Podcast

    Check Outs

    Bridget

    • https://cloud.gov/ - if the us government can innovate, you can too.

    Trevor

    • Fallout 4 was pretty cool

    Matt

    • The Force Awakens. Period.
    • devopsconferences.org You can follow the list at @devopsconfs. This account tweets alerts about CFP dates.
    • Speaking of people who got promoted after being on the show, recommend Sasha Rosenbaum’s talk “Single Person of Failure” at Devopsdays SV

    Podcast Recommendation

    Software Defined Talk (they need a more memorable URL)


    Measurement and Sharing with Nicole Forsgren Dec 15, 2015
    Show notes

    Matty sits down with Chef's Dr. Nicole Forsgren, recorded at the Chef Community Summit, to cover the two parts of CAMS the show hasn't gotten to: measurement and sharing. Matty apologizes at the end for taking so long to edit and publish it. The conversation is mostly practical: what to measure first, how to get the numbers in front of people who don't speak your language, and how to measure culture without giving up and calling it squishy.

    From an AS/400 to a PhD in Charts and Graphs

    Matty says Adam Jacob likes to say Nicole has a doctorate in charts and graphs. Nicole started on an AS/400 doing programming and system administration, in green screen, "laying cable in 4-inch heels," which Nicole says is true. Nicole then got a PhD in management information systems, wanting to look at how technology use plays into business outcomes, and how organizational and cultural factors affect it, which is really CAMS, Nicole says. Nicole's focus since the dissertation has been tech professionals, and a story follows about the dissertation advisor calling excitedly after the announcement that Nicole was joining Chef to say "you were right" that sysadmins were a population worth studying.

    Why Measure

    Matty says measurement isn't just monitoring, like Nagios paging you when a disk hits 80%. It's how you tell that the needle is moving as you change things, and shorten the feedback loop. Nicole agrees that monitoring is good, since you want to know when everything is on fire, but says measurement at the start of a transformation matters because you have to understand where you've been and where you're going, and communicate that to your team and beyond. Vocabulary is part of the problem. Lead time can mean code commit to deploy, ideation to deploy, or deploy to delivery, and dev, ops and QA may each use the same term differently.

    Nicole's advice is to measure it, write down what it is and how you capture it, and name it something meaningful. If Nicole says lead time and you say cycle time and the numbers don't line up, you can compare notes on what each of you is measuring and why they differ, and "it's no longer a fight." If you start with a baseline, even an ugly one, you can tell whether changes to tooling, practice, process, culture or team structure are making a difference. Nicole describes the path as starting with a handful of metrics in a spreadsheet, moving to exploratory correlations and visualizations, and eventually predictive analyses of what happens if you turn a knob, which some of the most innovative companies are doing.

    Measuring in Terms of Selling Shoes

    Matty says the ultimate driver is selling shoes, so the job of the sysadmin is "really not uptime," it is facilitating the business selling shoes. Nicole's suggestion is to treat your work as a product for a customer who may be elsewhere in the company, and to create your own little marketing deck of basic metrics that show quarter over quarter what value you provide. Nicole thinks Amazon is an example of internal infrastructure that became a product. To find where to start, ask what your company does, how it makes money, what your executives care about, and how you directly support that. If you sell shoes and you're on the infrastructure team, you limit downtime because you provide the infrastructure for shoes to be sold, even if that means EDI and the FedEx order making it through.

    Nicole was on the metrics group of Gene Kim's DevOps Enterprise Forum, which set out to name the ten most essential metrics for everyone and, by Nicole's recollection, started with 155. They settled on three areas: internal facing, external facing, and culture, since culture is a big indicator of when things are going well or about to break. The white paper was released at the DevOps Enterprise Summit and is linked below. Nicole's practical advice for a team is "Start with 3. Honestly, start with 3," and treat it like an MVP you can add to. Nicole also warns that measurements drive behavior, and that showing improvement with the resources you've been given may earn you more resources, or a seat at the table when those decisions are made.

    Bimodal IT

    Matty gives a snarky summary of Gartner's bimodal IT, where one half of IT does the cool DevOps and Docker work and the other keeps the mail servers and desktops running. Matty's view is that the traditional half should be measuring how it drives the business as well, and that it often measures things that just make its own job easier, and brings up the sysadmin subreddit complaining about the head of marketing wanting a MacBook.

    Nicole says bimodal IT is a thing right now, since companies can't transform all at once, but Nicole doesn't think it is sustainable. As lead on the 2014 State of DevOps report, Nicole has data from 20,000 respondents, and the trade-offs between throughput and stability that ITIL suggests, which would justify a bimodal approach, "never show up anywhere in the data." Instead, "you're either doing it or you're not," all fast, all slow or all in the middle. Nicole is watching stock trading and air travel, with systems like Sabre, where everyone is terrified to touch legacy systems. Matty tells a story from Matty's time at a big bank, where a computer operator in the basement pointed at a machine nobody had seen before and said nobody knew what it did, but they weren't going to turn it off.

    For traditional IT that has a solid reason to run as it does, Nicole says that is an even stronger reason to collect metrics and tell the business, because otherwise the business asks, as Matty puts it, "why aren't we just using Gmail?" Or, Nicole adds, why aren't you doing the DevOps. Nicole's advice is to be the one architecting the new service and not to have the rug pulled out from under you. Nicole and Carolyn Rowland have given a half-day workshop on communicating value and being a strategic partner to the business.

    Sharing: Speaking the Other Person's Language

    Matty's talk The 5 Love Languages of DevOps comes up, and the point that what matters to you may not matter to your CFO, so it just sounds like complaining. Matty's story is from Apartments.com. A web service was throwing something like 14,000 fake errors a minute because of a bug, flooding the logs. The sysadmin on Matty's team kept trying to get it into a sprint, and Matty at the time figured product just didn't understand. It wasn't communicated in a way product cared about, since product's question was whether there had been an outage. What actually got it fixed was Splunk dashboards on the wall, one with a dial in the red at 14,000 errors a minute, which the GM walked past and asked what the hell it was. Matty admits that isn't a good way to sell. Matty quotes Bill Joyce from the DevOps culture change episode: "if you ever find yourself saying, this is crystal clear to me, why aren't they seeing it? Then it's more about you than it's about them."

    Nicole loves the dashboard. Three measures is a nice number because you can hold it in your head, and it fits on a reasonably priced monitor on a wall. Across three periods, even if the first baseline was horrendous, the GM or CFO who walks by sees progress. Nicole suggests big letters and few words, so it's readable across a room. Matty remembers a website performance report sent to the board with so much data nobody cared about most of it, and Nicole's answer is that "your team is gonna want 37 metrics," but executives should get three or four, the ones that show improvement plus maybe one that doesn't. That one is your business case: we've optimized as much as we can with tooling, and I need the headcount, because I refuse to work my team insane hours, and here's the data to show it.

    Measuring Culture

    Matty says people insist you can't measure culture. Matty recalls Bernard Golden's line that "culture is for yogurt." Nicole says the squishy culture girl label gets applied to Nicole, but culture matters, and it tends to be a leading indicator: if it tanks for no expected reason, go check on your team, since it is often a sign your tooling is about to fall apart. If you want to avoid the squishiness entirely, you can proxy. You can't take the temperature of culture, but you can look at HR data like attrition rates, at access to natural light, which Nicole jokes is bad news for teams in the basement, and at work hours.

    Better, in the 2014 State of DevOps report they used a six-item measure based on research by Ron Westrum, also used in 2015 and included in the white paper. It's a survey on a 1 to 7 scale from strongly disagree to strongly agree, and Nicole, who has a background in psychometrics, says it has been shown to be statistically valid and reliable across samples of 9,000 and 5,000. The six statements are "On my team, information is actively sought," "On my team, failures are learning opportunities, and messengers of them are not punished," "On my team, responsibilities are shared," "On my team, cross-functional collaboration is encouraged and rewarded," "On my team, failure causes inquiry," and "On my team, new ideas are welcomed." Matty recognizes it from taking it at Chef, and Nicole says Jez was hired shortly after and used it.

    Because it is a latent construct, you can average the answers into one number per person and combine them for a team, and look at any single item that comes out low. If everyone scores low on failure causing inquiry, look at your practices: are you doing blameless postmortems, and are your backup systems so bad that failure is scary? Nicole suggests a hack day around making things fail, with silly prizes, and then remeasuring. That item in particular is a strong predictor of both IT performance, in throughput and reliability, and of organizational performance. It's all open. Nicole's last word is not to give up when a measure stops working, because "it's always just an improvement kata," and it has probably stopped working because your processes have improved.

    • Metrics For DevOps Initiatives from the DevOps Enterprise Summit 2015
    • Nicole's Working Papers
    • Nicole's Google Scholar Page

    DevOpsDays 2015 Year In Review With John Willis Dec 01, 2015
    Show notes

    Matty, Trevor and Bridget finally get John Willis on the show, after pestering John since practically the beginning. John has been to more DevOpsDays than anyone else in the room and sits on the core team with Bridget, so the conversation is part history lesson, part organizer's handbook and part year in review. Along the way it gets to burnout, diversity and the code of conduct, and John says burnout beat any technology discussion this year.

    What a DevOpsDays Is

    John gives the short version. It grew out of BarCamps and open spaces, and Patrick, whom John calls the godfather of DevOps and of DevOpsDays, ran the first one in Ghent in 2009 out of frustration at not being able to get the organizations approached to address devs and ops working together. John says the only American there was probably John. John had been listening to a podcast about agile operations when John almost had an accident, so taken was John with the idea.

    The format is usually two days. Mornings have invited keynotes and talks chosen through a CFP, and afternoons are open spaces where attendees make up their own topics and sit in circles. What John loved from the start was the lack of ego, after an early career in rooms full of people with medals of honor who couldn't have a technical conversation: "it seems like everybody checks their ego at the door." Matty has a version of the podcast-in-the-car story too, listening to DevOps Cafe, yelling at the radio that this could never work at Apartments.com, and then hearing Jez tell the HP LaserJet firmware story.

    From One Event to 22

    The first DevOpsDays was in 2009, and there were two big ones in 2010, and the plan was to tolerate only two a year, one in Europe and one in Silicon Valley next to Velocity. John says that in the early years only a quarter to a third of the room were first-timers, and the Silicon Valley event was mostly a reunion of the same people. Now, with 22 events this year, about 75% of any given room is new. That is exciting, John says, though it is a little bittersweet. Silicon Valley decoupled from Velocity this year and had about 80% new people, so "Silicon Valley became like everywhere else," and John missed the usual 20 minutes of talking Deming with Ben Rockwood. The upside is local flavor, like the after-party at Target in Minneapolis, and Bridget's "deep dish DevOps" in Chicago.

    Matty compares it to Lindy Exchanges from Matty's swing dancing days, which began as local events and turned into the same event with the same traveling DJs in every town. The point is that a DevOpsDays in Des Moines shouldn't be a carbon copy of Minneapolis. Bridget says that is why the core team insists on local organizers, and mentions a group that wanted to hold a destination DevOpsDays in Las Vegas, which didn't come together.

    Venue Horror Stories and How Big to Get

    John's cautionary tale is from a few years back. The Silicon Valley event was going to be at Google, and about a month out Google said it wouldn't provide food, then a couple of weeks before it asked every attendee to sign an NDA. The organizers held a red-alert call and moved to a warehouse at the last minute. The next year they tried a hotel, which was a disaster, with a bill that had Patrick calling to ask what in the hell was going on, and John joking that they were about to be hit with "oxygen charges." Bridget adds that "coffee's like $60 a gallon." John's lesson is that volunteers who don't know hotels shouldn't work with them.

    Bridget's partner Joe has worked in hotel event technology for almost 20 years, which is why the second Minneapolis event, at a hotel with about 370 people, went smoothly. The first was at a university and they outgrew it, partly because the breakout rooms were on different floors from the main hall and each other, and "we didn't really think it would be a problem and we were wrong." John says the proximity of the open space rooms can make the difference between good and great, and tells of a New York event where the discussion was half done by the time you walked to the room.

    On size, Matty says Chicago has sold out both years, that about 90% of people register in the last two weeks, and that keeping it around 300 means you could talk to everybody and everyone shares the same morning. Bridget doesn't think DevOpsDays has to cap at 300, and says Austin is bigger and it depends on local needs. For a first event, Bridget's advice is to look at your local meetup's attendance, since you might get three to four times as many people. Matty and John both advise following the standard format the first time, which Matty frames as the shu-ha-ri idea: "First it's obey, then detach." Chicago stuck with the template the first year and ended up with what Matty calls "exactly bog-standard DevOpsDays," and John adds that Austin, which has run five, took some heat for going to dual tracks.

    Microsoft Comes to DevOpsDays

    Trevor is the one host who has never organized one. Trevor has been to parts of two Chicagos and spoke at the second, nervous about talking open source to Microsoft people, and says the crowd was warm anyway. Trevor had also submitted a talk for the first Chicago, and sat in the next room listening to the organizers decide not to include it. Matty says, "I fought for you," and that it was the top call.

    That leads John to Jeffrey Snover, whose talk was rejected at an early Silicon Valley DevOpsDays because it was from Microsoft, even though John and Damon had had Snover on DevOps Cafe and were pushing for the talk. On their pre-call, John and Snover discovered they had both worked with Tivoli. As John tells it, Snover was told not to work on what became PowerShell, took a demotion and did it anyway. Matty offers the opposing thought that Snover said on this show that the fight created Snover's resolve, and John gives the Sherlock Holmes and Moriarty comparison. Now Microsoft presentations and sponsorships are common at DevOpsDays, "as it should be," and Snover has keynoted Amsterdam. Matty says Snover is already lined up for Austin.

    The Year in Events

    Trevor made only Chicago. Bridget spoke in New York, ran Minneapolis, and showed up in Silicon Valley for about an hour at a sponsor booth. Matty spoke at the first DevOpsDays Rockies in Denver, did an Ignite in Minneapolis, helped run Chicago again, and gave a talk and an Ignite in Detroit. John did 10 in 2015, including Paris, New York, Austin and Amsterdam, and says Austin, where the organizers are family, is where John's heart is.

    John also loved the first government DevOpsDays in Washington, DC, at the US Patent Office, which Nathan Harvey put together. Nathan championed John for a keynote on the history of DevOps, and most of the talks were from people inside government agencies fighting the same battles. John's favorite of the year was Minneapolis: a day early at the Target DevOps Dojo, a lineup with Mary Poppendieck, and an Ignite by John's 12-year-old son on R and data science. Matty followed that Ignite with slides about a Markov bot built from Pete Cheslock's tweets and wondered what kind of jackass Matty was, though John's kids couldn't stop talking about the bot.

    Burnout

    The theme John cares about most started at SCaLE early in the year, when John learned that a young man from the community had died, someone John had gotten to know over a few years. It stayed on John's mind for a week. John wrote a blog post about burnout that ran on the IT Revolution blog and got a big reaction, and was then asked to give a keynote on it in New York. Someone who spoke after John, about their own anxiety, told John the article gave them the courage to do it.

    Burnout open spaces followed. In Austin, Josh Corman asked a circle of 40 or 50 people how many had seen a therapist, and about 30% raised their hands. John wondered aloud how many would have done so four or five years earlier, and Josh answered, "how many people 40 minutes ago would have raised their hand." Three Velocities in a row have run a burnout session. John says the keynote ended because of not wanting to capitalize on a tragedy, and that the upside is that "things that were possibly hidden in a closet" are now being discussed. Bridget likes the idea of creating humane spaces, so that we don't forget the humanity of people doing this work.

    Complexity, Diversity, and the Code of Conduct

    John's other two themes are complexity, with Cynefin, cybernetics, OODA loops and Jeff Sussna's book Designing Delivery all tying feedback loops to complexity, and diversity. John tells Bridget that the post written after Bridget's first DevOpsDays Silicon Valley changed how John saw things. After a great event, somebody said the ops guys should go to dinner, and Bridget wrote about how bad that felt, and John realized how bad it would be to have been the one who did it. John says the community is doing better than most, "but we still suck." Bridget notes that a devopsdays.org event needs a code of conduct: "we won't merge your PR without a code of conduct."

    John relays a conversation with a woman in tech who told John everyone talks about getting more women into STEM but nobody talks about keeping them, and John says a Docker core maintainer was hit with harassment from trolls this year. Matty recalls the Minneapolis open space intro, where John, in a single expletive-laden sentence, told whoever was harassing someone in the community to knock it off, and Jon Cowie's talk the next day ended in a 10-minute rant on why.

    John's code of conduct story is from the Ghent reunion in 2014. Someone made a bad remark during an Ignite, several people went to Patrick, and the speaker then asked for three minutes on stage to apologize and did. John says the guy wasn't evil, just not being empathetic, and it self-corrected. Bridget calls that blamelessness in action, and says it is the spirit of DevOpsDays.

    Come Anyway

    Bridget's closing point is that "there isn't going to be a done because this is a journey," and that the community is at least looking at itself. John says Jeff Sussna's line "DevOps is empathy" is one John wishes to have come up with, and that it means being bold enough to say in a room full of more experienced people that you don't think Docker works that way, without hearing shut up, you have one year of experience. John tells enterprise people drowning in buzzwords to come to a DevOpsDays and hear practitioners tell real stories about what works and what doesn't.

    Matty points to Cora Hays-Magan, whose first DevOpsDays in Chicago was the first day of Cora's dev boot camp and who wrote about it. Bridget's last word is that you don't have to be John Willis or Bridget Kromhout or Matt Stratton, or even Trevor, to run a DevOpsDays, and if you want to run one in your town, the core team can help.

    • Hipster DevOps Happens To The Best Of Us
    • DevOpsDays Organizing Guide
    • DevOps Cafe Episode with Jeffrey Snover
    • The First Rule Of DevOps Club (Bridget's blog post referenced by John)
    • Jon Cowie's rant at DevOpsDays Minneapolis 2015
    • DevOpsDays As A Newbie by Cora Hays-Magan

    Switching Teams: From Linux to Windows and Windows to Linux Nov 30, 2015
    Show notes

    Trevor hosts a one-on-one interview for the first time, admits to being a little nervous, and talks with Matthew Walter about what it's like to switch operating systems. Matthew is a Linux sysadmin at North American Power, a deregulated energy marketer in Connecticut, and has spent the last six months or so moving, partly, toward Windows. Trevor is going the other direction, with more and more Linux clients showing up in Trevor's Windows world. The show opens with Trevor asking whether learning is fun and exciting, and Matthew answering that a struggle would fit too.

    How a Linux Admin Ends Up on Windows

    Matthew was told in February that the company was moving a new line of business app, which runs most of its backend, from a Linux LAMP stack with PHP to .NET. Matthew is the only ops person there, and was leery. After looking into it, Matthew found a lot that was interesting and a lot of existing knowledge that could still be used, and already ran Ansible for configuration management on the Linux side. Matthew decided to stay, though it was still scary: "I'm a Linux admin and I'm gonna try and learn Windows. It's not something I ever thought I would do."

    Trevor has been working with Matthew for a couple of weeks and says Matthew can testify to how much Trevor has struggled with if statements in Bash. Matthew's summary of the learning is that "it's drinking from the fire hose most days."

    Installing Software

    Trevor's background is Windows and .NET, where installing something means downloading an .exe or .msi and clicking through a wizard. Matthew explains the Linux alternative: if you know the package name, you install it through your package manager, from a reasonably secure source. Packages are signed, come with install scripts, and carry metadata about when they were updated. For anything not in the main repositories there are other people's repositories, like EPEL on RHEL, which someone maintains "through the fantastic goodness of their hearts."

    Trevor says Windows is getting package managers too, with Chocolatey and, since Windows 10, OneGet. Matthew has seen Chocolatey and liked it, since it felt like a Linux package manager and "everything just kind of worked," but had heard the packages aren't signed, so wouldn't run it in production. Trevor thinks the repository is curated but the packages probably aren't signed, and tells a story about installing Notepad++ with Chocolatey. The day Notepad++ changed its package directory structure, Trevor's cookbooks stopped converging because the download no longer existed. Trevor's verdict is that it is in its infancy. Matthew adds that with Linux package managers you can mirror the whole repository, which for Ubuntu 12.04 was something like 80 gigs, to control which updates reach your servers.

    Operating System Philosophies

    Trevor brings up the idea, which came up in an earlier episode with Jessica DeVita and Jeffrey Snover, that in Linux everything is a file while in Windows everything is an API or a registry key, which makes infrastructure as code harder on Windows. Matthew says on Linux it is also that everything has one job, small atomic tools chained together, and that "there's nothing that's hidden away." Trevor says every Windows machine needs its Explorer settings changed so it stops hiding files and extensions, and that on Linux you can change almost anything live, while on Windows you nearly always have to reboot, although that is changing. Trevor has been told Nano still needs the occasional reboot but far fewer than earlier Windows Servers.

    Matthew asks whether Windows has a driving philosophy. Trevor's answer is that it leans toward one heavyweight tool that does everything, where Linux prefers the smallest possible tool for a job. Matthew says the old stereotype of the Windows admin as unskilled because all they did was click buttons is changing with PowerShell, DSC and Nano, toward tools that assume you know what you're doing. Trevor's counterexample is SQL Server, whose big multi-step installer makes it "like pulling teeth" to automate compared with adding flags to a Linux package install.

    Bash, PowerShell, and Python

    Trevor's struggle with Bash was an if statement, and the fact that spaces mean something drives Trevor crazy. Matthew found PowerShell well documented and consistent, and picked it up quickly once learning the Get-Command cmdlet. Trevor puts the difference this way: "I can express my intent in PowerShell, whereas in Bash, I need to know my intent," which leaves Trevor asking what to Google, and Matthew agrees that it's "half Google-fu."

    They both wish the old command line would go away. Matthew says it is there for Microsoft's backward compatibility. Matthew's moment of delight in PowerShell came while standing up a VM in Azure: Matthew piped a Get-AzureVM cmdlet, which returns an object of the VM's attributes, into the next command, and it blew Matthew's mind. Trevor warns that some libraries from big companies send back formatted tables instead of objects, which people can read and computers can't use, and Matthew guesses "It's probably a Linux admin doing that." On the Linux side, getting a nice table out of Bash means long chains of pipes with sed and awk, and Matthew says you're often better off going to Python, which is on nearly every Linux box, or Ruby, or Go. Trevor says that after getting used to PowerShell, moving to Bash feels like losing something.

    Line Endings, Encodings, and File Permissions

    Neither is confident about line endings. Matthew knows the symptom, a file opened on the other OS looks like one line or has an invisible line ending, and is trying to let Git handle all of it: "it's one of those things that will blow up in your face if you don't think about it correctly." Encodings such as UTF-8 are a different can of worms.

    On permissions, Trevor says 777 looked like leet speak the first time Trevor saw someone type it. Matthew finds the Linux model simple and elegant, with user, group and everyone else, each able to read, write or execute, and file ACLs for when you need more. Windows gives you full role-based access control from the outset. Trevor realizes that outside a GUI, Windows file permissions are something Trevor has never managed, and Matthew says that is something they will have to check out.

    Monitoring, Support, and Directories

    Windows has Event Viewer, and Linux has log files that are appended to line by line, which is easy to ship on to Logstash or Splunk. Matthew's impression of Windows monitoring was that everything is a product you pay for, with support from a closed source company that isn't there for you all the time. Trevor finds both models frustrating, since with open source you may be better off fixing it yourself. Matthew says when the transition started, people kept asking whether they had a support contract for the open source tools, and the answer was "we don't have a support contract with anyone." Their new Windows sysadmin asked "do we have a Microsoft Service Agreement?" and Matthew didn't know.

    On LDAP and Active Directory, Matthew says that in a Linux versus Windows contest, "Active Directory wins hands down": the open source LDAP options mostly bolt on features to emulate it, and Matthew got one working, but it was not a fun experience. Trevor has only set up AD in Trevor's own Azure subscription and jokes about seeing the forest for the trees. Matthew's Linux nodes don't use LDAP at all. Ansible connects with a key and no users log in, which Trevor calls hands-off.

    Using the Other OS From Yours

    Trevor notes that Boot Camp is not always the easiest way to run Windows on a Mac. Matthew says "without VirtualBox and Test Kitchen, life would be much, much worse." Matthew uses a Windows VM to get a PowerShell terminal without spinning up another box, for querying the domain or listing services. Trevor does the reverse, using VirtualBox with Test Kitchen and SSH for Linux, or an Ubuntu desktop when a GUI is needed, and ends up back in Bash anyway.

    Matthew ends on the tools: the fact that Chef, Test Kitchen and similar tools now have much better Windows support was the only reason Matthew thought this move was possible. Matthew is learning concepts that apply to both, configuration management, continuous integration and infrastructure as code, which lets Matthew start from what something should look like and work out how to get there, instead of having no idea where things are headed in a whole different paradigm.

    Checkouts

    Trevor

    • Blue Yeti Microphone
    • The Machine

    Matthew

    • Heated Blankets
    • Mystborn Series

    What Is New At Puppet? with Eric Sorenson Nov 25, 2015
    Show notes

    Matty catches up with Eric Sorenson, technical product manager for Puppet and the Puppet platform, about Puppet 4, the application orchestration announced at PuppetConf, and, once the two of them agree to put on their pundit hats, Red Hat's acquisition of Ansible. Matty admits up front to not having used Puppet in about three years, so a fair amount of this is a Chef person asking a Puppet person how things work now.

    Eric's Background and What Puppet Is

    Eric's first CFEngine deployment was in 1998. Before joining Puppet in 2012, Eric built out a Puppet infrastructure at Apple for MobileMe and the iCloud services, and moved to Portland partly for the cycling. Puppet itself is about 10 years old: Eric went back for a PuppetConf talk to the earliest commit in the Git repository, which turned out to be an import from Subversion, dated 2005.

    For listeners who only know it as the thing that configures servers, the pitch is that you describe the desired state of your system in a domain-specific language and Puppet enforces that state on the nodes it runs on, in master-agent mode or standalone. Matty says the point is caring about what you want rather than how the sausage gets made. Eric agrees: "I want to have a delicious bratwurst at the end of it."

    Puppet 4 and the New Parser

    Puppet 4 is the first major version since Matty last used it. The headline change is a completely rewritten parser for the Puppet language, which had been available for about a year behind a feature flag. Eric got in the habit of calling it the future parser, and now, as Matty puts it, it's the present parser: "Now it's the present parser and the previous parser is gone." The old one came out of what Luke wrote in a series of hotel rooms in 2006 and 2007, and Eric says it had a lot of emergent behavior, some of which people came to rely on and some of which was just odd.

    The new one brings features people had asked about for a long time, like loops and iteration and a type system, where a module can declare what it expects passed in, such as a Boolean, one of three strings or a number. Most of it is opt-in, and Eric says Puppet 3 code is pretty much compatible. Puppet 4 syntax starts out looking like a Nagios configuration file, and you can add conditionals and loops as you need them.

    On adoption, Eric points to EvenUp, a customer that went all in on the type system with Justin Lambert of the community driving it, and got a big gain in reliability and cleared out a lot of technical debt in their modules. About 17,000 Puppet 4 installations have checked in, though Eric has no numbers on how many use the new syntax. Puppet Forge's quality score, 1 through 5, includes a check that an uploaded module is compatible with the Puppet 4 parser.

    The Agent, the Compiler, and the Server

    The other big change is the agent package. Following Chef's Omnibus lead, Puppet now ships an all-in-one package with a Ruby interpreter, Facter and OpenSSL, unified between open source and Puppet Enterprise, so Eric calls it "the one package to rule them all." Eric says that gives a consistent experience on older platforms like RHEL 4 and, in the commercial version, Solaris and AIX. Eric was surprised how much AIX is out there, and Puppet goes back to AIX 5.1.

    Facter, roughly Puppet's equivalent of Ohai, was rewritten in C++ using Boost, and it is fast and still extensible in Ruby or with structured YAML or JSON. That laid the foundation for a demo on the PuppetConf main stage of a prototype of the Puppet compiler in C++, which Eric says is something like 50 times faster than the Ruby one. Matty points out that catalog compilation is the step that runs on the master, and Eric agrees that in agent-master mode "the bottleneck in Puppet is definitely the catalog compilation." On the server side, Puppet has been moving off Apache and Passenger, which could fall apart at large scale with erratic response times, to a stack written in Clojure running on the JVM through Jetty, with the Puppet masters inside JRuby.

    How Often Should the Agent Run

    Eric wonders what it would look like if Puppet ran fast and cheap enough to be running all the time, converging across the infrastructure almost as soon as you push a change. Matty says some of the organizations Matty works with would be terrified by that, and want it running once a month, which is "scary as hell."

    Eric understands where they're coming from. The CFEngine model was to run continuously and revert manual edits immediately, which we now call configuration drift. Eric thinks the shift has been toward understanding drift rather than auto-reverting it in a bastard-operator-from-hell way, with no-op or why-run modes that show what drifted without fixing it until someone acts. Matty adds the argument for frequency: the longer the interval between runs, the bigger the change when the agent finally makes it, and "more frequent, smaller changes really are safer." How often the agent runs should be a conscious business decision and not a limit of the technology.

    Application Orchestration

    The product is called Application Orchestration, though Matty prefers choreography, in the Swan Lake sense, and Eric is a Balanchine fan. Eric's counter to the container hype is "even if you have containers, you still need orchestration." Eric hedges on calling it a game changer, since it may be one of the words that causes cringing, but says it might be true here. It started as a prototype Luke wrote years ago, and this year the team productized it.

    The idea is to apply the model-based approach Puppet uses for a single node's resources across the application. You describe the components, such as the database server and the app server, how they communicate, and what data one produces for another to consume, like a database connect string that you don't want hardcoded into the app server's configuration. A second part binds those component roles to nodes, which can be machines, VMs or containers. That binding feeds a version of the compiler that builds an environment graph, and a new deployer service walks it, contacts the machines in order, and if an earlier one fails, reports it and aborts the job. Normally you'd run the deployer from CI or the command line after a new commit is promoted, and the nodes talk back over a WebSocket each of them opens to a central service.

    Matty is wary of people who think they have an orchestration problem that is really an architecture problem, and of people who want to use it as a script recorder for the manual runbook, with a sysadmin copying binaries and a DBA running SQL. If Puppet or Chef has told a node to install a package, you don't write a check that it got installed, and orchestration should be the same convergent idea with a bigger graph. Eric says there is a mind shift to go through, just as you wouldn't transcribe a bootstrap script line for line into your config management tool. Eric adds that the orchestrator ties together modules you already have or that are on the Forge.

    Eric also tells the story of the keynote demo, done live by a teammate named Ryan. A chunk of the configuration was still commented out from an earlier trial run, so in front of 1,500 people Ryan had to open vi and uncomment it. Eric says Ryan went into full Bill O'Reilly mode, with the profane live-demo catchphrase to match.

    Red Hat Buys Ansible

    They announce they are moving to the pundit part of the show, and Matty promises to cut it if it goes badly. Eric's favorite reaction was that Red Hat probably could have gotten Robyn Bergeron back for less than $150 million, and Matty agrees that is the real reason. On the substance, Eric says the business logic makes sense because there was so much Red Hat DNA in Ansible already, and it fits the Red Hat ecosystem of Python tools. Eric also sees the appeal in the low-friction model: you need Python on the box, SSH as transport and a root key, and you can run a sequence of commands across the fleet, which is like capturing an administrator's SSH steps in a repeatable way.

    Matty says the ramp-up on Ansible is faster than Puppet or Chef, though Matty figures that runway might run out quickly, and wonders what happens to Windows support, since Red Hat has never had to do cross-platform work. Eric adds that Red Hat has a vested interest in people not running Windows, because they pay Microsoft for a license instead of buying a RHEL license. Eric says the Puppet integration with Red Hat Satellite 6 isn't changing, and that the Ansible piece is a separate layer of command and control, which Eric thinks was the point of the acquisition.

    Matty recalls a note from Luke's keynote that fewer than 15% of enterprises use these tools, which is great for people in the space and also a little terrifying. Eric passes along a description from Eric's old boss, Scott Johnston, now at Docker, of the other 85% as whitespace, and says this is why Eric promotes #HugOps: a small number of tool partisans want a deathmatch, and it isn't like that. Matty adds that when a customer isn't ready, Matty would rather say so than sell them the wrong thing. If they buy it, hate it and implement it badly, they won't buy again next year, so it is bad business, and readiness is harder than the technology.

    What Else Is Happening in the Puppet Ecosystem

    Working a demo booth at PuppetConf let Eric see things a regular job wouldn't show. One was Gareth Rushgrove's work on a Puppet module for managing Amazon resources. The puppet resource subcommand can print Puppet code describing users or files on a system, and with the module it can do the same for AWS. You can build a VPC and instances in the web console, run puppet resource against the API, and get Puppet code you can check into Git.

    The other was a talk by Dan Bode on using Consul from HashiCorp to build health checks into resources. Consul publishes a service to its registry only once the check passes, and takes it out when it starts failing, which gives a reactive picture of what is running on the network within 5 or 10 seconds. Eric ties it back to Matty's earlier point about verification being part of the resource.

    Matty closes with two stories about HugOps from DevOpsDays Minneapolis. In one, Eric tweeted that when a bystander asked whether Puppet and Chef were going to fight, Eric and Sascha Bates said no, they were going to hug. In the other, Sascha said "friends are more important than where you work." Eric's own metaphor is that "it's all of us together in this tiny little boat trying to get across a giant sea of stupidity."

    Various links referenced in the episode!

    • PuppetConf 2015 Videos
    • Why Red Hat Acquired Ansible
    • DevOps Weekly
    • puppetlabs-aws

    Matt and Eric are pretty sure the only reason that Red Hat acquired Ansible was to get Robyn Bergeron back.


    Test Driven Infrastructure with Arthur Maltson and Michael Goetz Nov 19, 2015
    Show notes

    Matty sits down without a co-host to talk test-driven infrastructure with Arthur Maltson, a software developer who moved into DevOps full time, and Michael Goetz, who manages the Solutions Engineering Group at Chef and identifies as an old-school release engineer with "a lot of personal angst" about unvalidated changes reaching production. Matty warns that the conversation leans Chef-specific because that's what they all know best, but the ideas apply to whatever configuration management tool you use.

    Why Test, and What to Test

    Arthur's answer to why bother is confidence: that when you make a change it will work the way you expect. Michael adds that you need to be clear about what you are testing. In Michael's framing there is the signal in (what you told the thing to do), the signal processing (your configuration management tool) and the signal out (what came out the end). You shouldn't test the tool, since it presumably has its own test suite. You should test the things that you and your coworkers are changing on a system. Matty adds predictability: knowing what a configuration change will do in production, instead of doing exploratory testing there.

    Test-Driven Without the Dogma

    Matty describes red-green-refactor and says it has been hard to write all the tests first for infrastructure code because of dependencies between pieces. Arthur gently corrects the definition: you don't write all the tests first, you write one or two and then the implementation. For infrastructure that might mean writing a test that a user and group exist, watching it fail, and writing the code to make it pass. "I'm not very religious," Arthur says. "As long as the tests come shortly after or shortly before the implementation code, then you're golden."

    Michael splits it into two cases. For greenfield work, Arthur's approach is right, because "you can't test what you don't know." For existing infrastructure that isn't automated yet, some teams write tests against production, using a working system as the blueprint while they develop the automation, which Michael says has been successful for organizations with legacy systems to migrate.

    Using Audit Mode Against Production

    Matty digs into that second case using Chef's audit mode. Audit controls are checks that say if this is true, the system is compliant, and the Chef client can run with audit disabled (the default), audit enabled alongside convergence, or audit only. Running audit-only across a production fleet tells you which machines aren't compliant and what the impact of fixing them would be. In Matty's hypothetical, rolling out convergence code to 10,000 nodes could break 9,000 of them because of snowflakes nobody knew about. It sounds silly, Matty says, but "you're treating your production as your test environment," except that you aren't testing the change there. The results are driving your code change.

    Michael says the same pattern works with ServerSpec and other open source tools, as long as you have a known good system to validate against. Arthur ties it to refactoring: "Touching a legacy system that has no test is terrifying," so you write outside-in integration tests first, and in a sense audit mode is essentially rewriting a manual system as configuration management, which Arthur calls a powerful tool.

    A Cookbook Workflow

    Arthur walks through the team's setup. A custom chef generate template gives every new cookbook test stubs and Test Kitchen configuration from the start. They use Test Kitchen with ServerSpec and expect to move to audit mode eventually. Speed matters to Arthur as a developer, with feedback in under a minute or two, and the default Vagrant approach was too slow at destroying and recreating machines, so "Kitchen Docker has saved our bacon a bunch." After that comes branch-based development, code review, automated builds, and usually automatic deploy to production once merged.

    Michael says the workflow is close to that, with one provocative habit: Test Kitchen instances aren't destroyed until a clean run feels necessary, which will annoy TDI purists. Michael rebuilds from scratch at judgment points to make sure a rebuild works and that a second run changes nothing. The order is a test, then the code, then the next test. Kitchen also gets used with Docker, EC2, DigitalOcean and other drivers. Michael's advice on CI is that people find it scarier than it is: "If you can do it locally, you automate it with robots and your CI pipeline," and you shouldn't add anything in the pipeline that you didn't do locally.

    Matty prefers to call it individual development instead of local development, since the workflow could run on shared VM workstations or a cloud driver rather than a laptop. Matty brings up a ChefConf talk by Sascha Bates, whose approach is to run against the existing machine, run it again, and run it again before destroying the VM, because you want to test idempotency against a machine that already has configuration on it. The pipeline should also repeat individual tests, Matty argues, for two reasons: trust but verify, and because your code may by then be merged with someone else's.

    Performance and Fast Feedback

    Michael says your test environment should look as much like production as you can afford, so 15 production systems means a 15-system test cluster, though Michael lives "in the land of reality" and tells people to validate small chunks so the local footprint stays manageable. Arthur separates fast unit tests from slower integration and end-to-end tests, and says that in infrastructure you have little to play with beyond a beefier machine or test environment. The team's ELK cookbook is tested locally across multiple Docker containers and takes 20 to 30 minutes to get feedback.

    Michael's answer to slow runs is that you don't have to build from scratch every time: bake an image that has the earlier steps done and run the cookbooks against that. Arthur gives an example. Arthur's team is rolling out Sensu, and developers built a Docker image with Sensu already in it, so someone writing checks can spin it up and get on with it.

    Isn't This Slower?

    Matty says testing feels like it slows you down, but in practice you move faster because you're not rolling out a cookbook, breaking something, and scrambling to write remediation. "Making things safer overall makes it faster." Matty adds that writing tests forces you to work out the logic, and brings up README-driven development. With customers on a proof of concept, the routine is to have them write down the desired state first, which is effectively the README, then work out the resources, and the tests come out of that. Matty admits to never having written outlines for papers as a student, but says you can't just fire up default.rb and start hacking on infra code.

    Michael says complaints about how long tests take grate on Michael: "how much time do you spend on an incident bridge when the thing is broken?" It's almost certainly longer than writing a proper test would have taken. Arthur asks how much time people spend SSHing into systems after a converge to check it worked, and then doing it for the other 100 systems. "You're paying it forward ahead of time by writing those tests."

    Where the Gaps Are

    Michael sees a people gap and a technology gap. The people gap is being too purist and applying decades of software TDD experience, which Michael notes is itself debated, to people new to testing infrastructure, when they'd be better off learning the lessons themselves. The technology gap is fleet-wide validation: there are tools to validate one system, or the output of a web page, but nothing that lets you spin up an app, a web tier and a database and validate all three at once.

    Arthur's biggest gap is multi-node cookbook testing. Arthur's team runs the components talking to each other on localhost inside one Docker container, which doesn't represent the real system, and Arthur hasn't seen much written about spinning up a cluster of machines, testing it thoroughly, and tearing it down. Performance and feedback speed come second.

    Added After the Interview: Chef Compliance and InSpec

    Matty explains that the interview was recorded about 12 hours before Chef Software released a batch of new products, so Matty and Michael added a segment afterward. It is a product overview from two people who work at Chef, and it is not a neutral survey.

    Michael says people usually come to compliance because an audit hurt them, and that compliance work means taking a document and translating it into something like "root user must not be 0" and a check to validate it. Matty describes compliance, security and ops teams each working in their own tools, with the compliance folks' "stack is PDF and Excel." Matty's pitch for Chef Compliance is a common language and continuous audit, and it doesn't require the Chef client to be running on the nodes being tested.

    The open source pieces are InSpec, a testing framework influenced by ServerSpec, Kitchen-InSpec, which runs InSpec tests in Test Kitchen and doesn't depend on Busser, and Train, an abstraction for talking to local or remote instances over SSH, WinRM, Docker or Mock. Both like that InSpec tests carry metadata such as severity that you can define yourself, and that you can write custom resources so a compliance officer can say what an SSH config should contain without writing a regular expression. Michael has already translated a CIS benchmark for Red Hat, and says a compliance check is really just a test. Matty walks through how it fits together: scan for compliance, remediate with ChefDK, verify with Kitchen-InSpec, run it through Chef Delivery, deploy with Chef Server, and watch with Chef Analytics. "It's not about the tool, it's about how you're doing work," Matty says.

    Matty closes by saying InSpec and Kitchen are not Chef-only and work independently of Chef, and that all of it enhances rather than replaces what they discussed earlier. Michael asks listeners to keep an open mind about what they're testing, when, and why.

    • Arthur's DevOpsDays Toronto talk on TDI
    • Chef Compliance
    • InSpec
    • kitchen-inspec
    • train
    • The Road to InSpec
    • How to F-ck Up Your Configuration Management Adoption... - Sascha Bates

    Check Outs

    Arthur

    • tmux-Productive Mouse Free Development
    • Private Supermarket
    • Headspace Meditation App
    • Paulaner Munich Wheat beer

    Matt

    • Teamocil
    • Game of Thrones - A Telltale Games Series game for iPad

    Previous 1 14 15 16 17 18 21 Next

    Related Podcasts

    Know How… (Video)

    1

    Know How… (Video) Education
    JavaScript Jabber

    2

    JavaScript Jabber Education
    Programming Throwdown

    3

    Programming Throwdown Software How-To
    Software Engineering Radio – the podcast for professional software developers

    4

    Software Engineering Radio – the podcast for professional software developers Software How-To
    The Changelog: Software Development, Open Source

    5

    The Changelog: Software Development, Open Source How To
    Coding Blocks

    6

    Coding Blocks Software How-To
    footer-logo

    Contact Us

    Toll Free: 844-670-7747

    Links

    • Home
    • Top Charts
    • Networks
    • Apps
    • Independents Podcasts
    • Podcast Advertising
    • Podcast News
    • Contact Us
    • About Us
    • Analytics & Insights

    Stay Connected

      Privacy, Terms of Use & Our Code of Ethics Protecting Content Creators Copyrights