Save this date!

January 18-19, 2018 will be the next DevOpsDays NYC!

Save this date!

Sadly there won't be a 2017 conference, but the 2018 conference is just around the corner.

  • Mark your calendar!
  • Submit talk proposals today!
  • Registration opening soon!

See you there!

Posted by Tom Limoncelli

(I've intentionally delayed posting this so that it wasn't clear which conference I'm talking about.)

So... I'm at a conference. I take a break from the talks to walk around the vendor show. While most of the booths are selling products I'm not interested in, I suddenly find myself in front of VENDOR-A (name changed to protect them). VENDOR-A makes a product that has both open source and commercial editions, a common business model. Since the company I work for is a happy user of their open source version, I decide to ask about the commercial version. Maybe there's some benefit to be had.

The salesperson turned red in the face and became very indignant.

What?

What did I do wrong?

I'm totally confused.

Not wanting to cause a scene, I politely ended the conversation and walked away. Jerk.

Well, maybe not "jerk". Maybe he just hadn't eaten lunch and was hangry, or maybe he was having a bad day. Or maybe his mom's name is "open source" and he thought I was insulting her. I have no idea.

I was trying to be as polite as possible. It was a "take my money!" situation and the salesperson blew it.

Anyway... I had plenty more to see in the vendor show so I kept walking.

So... then I saw VENDOR-B. VENDOR-B (again, not their actual name) is another vendor who's open source product we're very happy with. Let's try the same thing.

"Yes, yes, thank you. I'm a big fan of your product already. You don't need to convince me. However, we use the open source version now. What benefits would I gain from the commercial version?"

Again this salesperson also turned red in the face and got vitriolic. I, again, stand there totally confused.

So, again, I politely ended the conversation and walked away.

I assure you, reader, that I didn't phrase it as, "This is stupid. Why would I pay?" or anything close to that. Quite the opposite, actually.

The worst answer I was expecting was, "it is the same but you get world-class support". Why I may disagree with their self-appraisal of how good their support is, at least it would have been an answer. However, both companies exceeded expectations and took my question as an insult.

I don't think either of these salespeople understand what business they are in.

Let me explain to you the economic model of commercial and open source software.

With commercial software, you sell to someone that isn't using your product. You have to convince them that they have a need, what your product does, that your product fills their need, and that they should buy the product. That's the traditional selling model.

sales-process-commercial.png

Open source software is sold differently. The person already is using the product. They already know how awesome it is. They already know it fulfills their need. The salesperson merely has to convince them that there would be added benefits to paying for it.

sales-process-floss.png

Think about how radical this is! The customer is already happy and you, the salesperson, have the opportunity to make them even more happier. There's no need to grandstand (or lie) about what the product can and can't do, because the customer already uses it. This is a much more transparent and cooperative arrangement. It is better for the customer and you.

This also means that your ability to sell the product is as wide as the existing community. The bigger the community, the more selling opportunities. Having good community liaisons, advocates, etc. grows that base. Hosting a conference grows that base. These things aren't just good for your community, but they are good for your salespeople because they increase the pool of potential new paying customers.

A salesperson that meets someone who uses the free/community/open source edition should be super excited at the opportunity to speak with a committed user who can be turned into a paying customer.

The reaction I got from those salespeople says to me that they didn't understand this.

What business did they think they are in?

Posted by Tom Limoncelli in Rants

I'll be the speaker at the Monday, Oct 2, 2017 NYC DevOps meetup. I'll be presenting a talk about the DNSControl project, which permits "DNS as code" simplicity to your DNS operations.

For complete information visit the meetup.com page: https://www.meetup.com/nycdevops/events/243369226/

Posted by Tom Limoncelli in AppearancesArchive

We will have two meetings in October. The extra meeting will be on Mon, Oct 2 co-located with the VelocityNYC conference. You don't have to be registered for the conference to come to the meeting.

  • Topic: DNSControl: "DNS as Code" from StackOverflow.com
  • Speaker: Thomas A. Limoncelli, SRE Manager @ Stack Overflow
  • Date: Monday, October 2, 2017
  • Time: 6:30-9:30 PM (SPECIAL TIME AND LOCATION)
  • Location: Madison Suite, Hilton Midtown, 1335 6th Ave, New York, NY 10019
  • https://www.meetup.com/nycdevops/events/243369226/

VelocityNYC is in town this week. They've graciously provided space for us to host an additional meeting. Space is limited! RSVP soon! Full details and RSVP.

  • Topic: Storing Secrets in Cloud based Key Management Services
  • Speaker: Dan O'Boyle, Stack Overflow, Inc.
  • Date: Tuesday, October 17, 2017
  • Time: 6:30-9:30 PM
  • Location: Stack Overflow HQ, 110 William St, 28th floor, NY, NY
  • https://www.meetup.com/nycdevops/events/241803854/

The A/C is fixed! Don't miss this cool event! Full details and RSVP.

Posted by Tom Limoncelli in NYCDevOps Meetup

This month's NYCDevOps meetup speaker will be Seth Thomas talking about "Habitat in Production".

  • Date: Tuesday, September 19, 2017
  • Time: 6:30 PM
  • Location: Stack Overflow HQ, 110 William St, 28th floor, NY, NY

Space is limited! RSVP soon!

https://www.meetup.com/nycdevops/events/240064742/

Posted by Tom Limoncelli in NYCDevOps Meetup

Some recent PRs to the DNSControl Project casually mentioned that this was their first time writing Go code. That's amazing!

When was the last time you saw someone say, "here's a major contribution to your open source project... oh and I just learned this language." (and the PR was really darn good!) I think it is pretty rare and one of the special things about Go.

Part of Go's original vision was to make it easy for new people to join a project and make contributions. This was important internally at Google, since engineers hop projects frequently. This also benefits open source projects by making it easy to dive in and participate.

Here are the three PRs:

  • Add Digitalocean provider #171. DNSControl has a plug-in architecture to support new DNS Service Providers. This Go first-timer wrote an entire plugin to support Digital Ocean. "I haven't used Go before, but the diff looks sane so hopefully I managed to handle the dependencies correctly."
  • Implement SRV support for CloudFlare provider #174. Plug-ins can indicate whether or not they support new fangled DNS records like SRV. This PR extends the CloudFlare provider to add support for the CAA record. "This is my first time writing anything in Go".
  • CAA support #132. CAA is a new DNS record type. This PR changed DNSControl to support this new record, and implements it for a few of the providers (plug-ins). "I almost never wrote Go before (and this is my first Go PR)".

One of the joys maintaining an open source project is watching contributors build new skills. Github.com's PR system makes it a joy to give constructive criticism and help people iterate on the code until it meets our high standards. (ProTip: Criticize the code, not the person. i.e. write "this should" instead of "you should")

Go isn't 100 percent of why it is easy to contribute to DNSControl. We've made it easy to contribute other ways too:

  • Extensive unit tests and integration tests. Your first contribution can be scary. If your new provider passes all the integration tests, you can be confident that it is time to make the PR. This reduces fear of embarassment.
  • Detailed documentation on the most common and difficult tasks such as how to write a new provider and add a new DNS record type. People are encouraged to add new tests of their own (TDD-style). We also encourage people to update the "how to" docs as they use them, to make the process easier for the next person.
  • Extra-friendly code reviews. A special shout-out to Craig who is super friendly and helpful. He's happy to coach people whether they're learning DNSControl itself or Go.

If you would like to learn more about DNSControl, and why "DNS as Code" is a better way to maintain your DNS zones, then watch our video from Usenix SRECon or check out our Github page.

Thanks to our contributors, and to my employer StackOverflow.com, for supporting this project. And, of course, thanks to the Go community for making such an awesome language!

Posted by Tom Limoncelli in DNSControlGo

Networking geeks: Google made a big announcements about BBR this week. Here's a technical deep-dive: http://queue.acm.org/detail.cfm?id=3022184 (Hint: if you would read ACM Queue like I keep telling you to, you'd have known about this before all your friends.)

Someone on Facebook asked me for a "explain it like I'm 5 years old" explanation. Here's my reply:

Short version: Google changed the TCP implementation (their network stack) and now your youtube videos, Google websites, Google Cloud applications, etc. download a lot faster and smoother. Oh, and it doesn't get in the way of other websites that haven't made the switch. (Subtext: another feature of Google Cloud that doesn't exist at AWS or Azure. Nothing to turn on, no extra charge.)

ELI5 version: TCP tries to balance the need to be fast and fair. Fast... transmitting data quickly. Fair... don't hog the internet, share the pipe. Being fair is important. In fact, it is so important that most TCP implementations use a "back off" algorithm that results in you getting about 1/2 the bandwidth of the pipe... even if you are the only person on it. That's TCP's dirty little secret: it under-utilizes your network connection by as much as 50%.

Backoff schemes that use more than 1/2 the pipe tend to crowd out other people, thus are unfair. So, in summary, the current TCP implementations prioritize fairness over good utilization. We're wasting bandwidth.

Could we do better? Yes. There are better backoff algorithms but they are so much work that they are impractical. For years researchers have tried to make better schemes that are easy to compute. (As far back as the 1980s researchers built better and better simulations so they could experiment with different backoff schemes.)

Google is proposing a new backoff algorithm called BBR. It has reached the holy grail: It is more fair than existing schemes. If a network pipe only has one user, they basically use the whole thing. If many users are sharing a pipe, it shares it fairly. You get more download speed over the same network. Not only that, it doesn't require changes to the internet, just the sender.

And here's the real amazing part: it works if you implement BBR on both the client and the server, but it works pretty darn good if only change the sender's software (i.e. Google updated their web frontends and you don't have to upgrade your PC). Wait! Even more amazing is that it doesn't ruin the internet if some people use it and some people use the old methods.

They've been talking about it for nearly a year at conferences and stuff. Now they've implemented it at www.google.com, youtube.com, and so on. You get less "buffering.... buffering..." even on mobile connections. BBR is enabled "for free" for all Google Cloud users.

With that explanation, you can probably read the ACM article a bit easier. Here's the link again: http://queue.acm.org/detail.cfm?id=3022184

Disclaimer: I don't own stock in Google, Amazon or Microsoft. I don't work for any of them. I'm an ex-employee of Google. I use GCP, AWS and Azure about equally (nearly zero).

Posted by Tom Limoncelli in Google

My new column in ACM Queue is entitled, "Four Ways to Make CS and IT Curricula More Immersive". I rant and rail against the way that CS and IT is taught today and propose 4 ways CS educators can improve the situation.

The article is free to ACM members. Non-members can purchase an annual subscription for $19.99 or a single issue for $6.99 online or through the Apple or Google stores.

Posted by Tom Limoncelli in ACM Queue Column

This month's NYCDevOps meetup speaker will be Martín Beauchamp talking about "Clos Networks for Datacenters". You don't want to miss this!

  • Date: Tuesday, July 18, 2017
  • Time: 6:30 PM
  • Location: Stack Overflow HQ, 110 William St, 28th floor, NY, NY

Space is limited! RSVP soon!

https://www.meetup.com/nycdevops/events/240295361/

Posted by Tom Limoncelli

Companies don't make their "DevOps transformation" over night. Usually there is a small team that adopts devops practices and then, after proving their success, the practices spread throughout the company horizontally. However sometimes their success becomes an island. There is no momentum and the better practices fail to expand around the company.

Growing devops practices within a company is not easy. It is especially difficult when it does not have management support, or the advocate does not executive authority. Some techniques for building momentum work, others do not.

Earlier this year Josh Atwell, Carmen DeArdo, Jeff Gallimore, and myself sat down to write a list of techniques we've seen succeed. No theory. No hyperbole. No fluff. We wanted to write down what we've seen work so that other people can copy these simple but effective techniques. This is a book for people in the trenches, not executives.

We realized that the list didn't need to be long nor did it need to be exhaustive. There are 2-3 that are simple, powerful, and almost always work. This didn't need to be an encyclopedia!

The result of this list is a new 14-page free book from IT Revolution called Expanding Pockets of Greatness: Spreading DevOps Horizontally in Your Organization.

The book is now available online for free. It's only 14 pages (10 if you skip the cover and front-matter). We wrote it in a day. You can read it in an hour:

Get it! https://itrevolution.com/book/expanding-pockets-greatness



Title:

Expanding Pockets of Greatness: Spreading DevOps Horizontally in Your Organization

Description:

Here you are: There are a few pockets of DevOps in your organization, but you are a long way from achieving a total DevOps transformation.

How do you build momentum and go from a few islands of DevOps goodness to a tipping point where the entire organization embraces common DevOps methods?

This paper is about the techniques others have used to build momentum to spread DevOps horizontally across an organization. The techniques fall in four categories: sharing, communicating, standardizing, and empowering new leaders.

You're not alone. DevOps is out there in your organization. We want to help you find it and scale it.


Posted by Tom Limoncelli in DevOps

 
  • LISA17
  • Don't Miss Out - Register Today