there was a really good 2011 post on slide deck design by this guy that used to work at github
Zach Holman
2011-10-24
<div><div>
 
 <p>So I gave this talk called <a href="https://zachholman.com/talk/how-github-uses-github-to-build-github">How GitHub Uses GitHub to Build GitHub</a>.
Someone submitted my slides to Hacker News, where it stayed at #1 for most of
the day.</p>
<p>This was pretty strange to me at first.</p>
<p>My slides are not designed for people who didn’t see the talk in person.
They’re designed to support my words, not some online audience. What’s more,
many commented that they found the <em>design of the slides</em> to be noteworthy.
I’m expressly <em>not</em> a designer.</p>
<p>Working on your slide design pays off for the audience in front of you and for
the audience online reading your slides later. I learned a lot designing this
talk, and I think it can be helpful for you, too.</p>
<h2>Colors</h2>
<p></p>
<p>Color is the very first thing people will notice. It should also be the very
first thing you think about.</p>
<p>Head to a color site like <a href="http://www.colourlovers.com/">Colour Lovers</a> and find a palette you like.
Pick colors with a lot of contrast- it gives you a lot of flexibility with
text, backgrounds, and objects. In my GitHub talk, I have around four colors I
use frequently, and 8-10 total (lighter green to augment a darker green,
lighter blue for my dark blue, and so on).</p>
<h2>Size</h2>
<p></p>
<p>Make your text huge. And then get rid of half of the words and make it huger.
Almost all of the presentations I’ve ever seen at every conference screws this
up.</p>
<p>Most of my text in my entire deck is at least 90pt. Usually I like to sit
around 150pt, with spikes up to 300pt or more. You cannot get large enough.</p>
<p>For the curious, I use <a href="http://www.yanone.de/typedesign/kaffeesatz">Yanone Kaffeesatz</a> as the typeface for both my
slide deck and the headings on my blog.</p>
<p>One of my favorite tweets from my New Orleans talk said “Great slide design- I
was way in the back and could read every single word!” Forget the people in
front of you: <strong>design for people three rooms away from you</strong>.</p>
<h2>Words as Shapes</h2>
<p></p>
<p>I took one design class in college. One of the most fascinating assignments
they gave us was a study of shape: you get one letter, in one typeface… do
something with it. The idea was that the severe limitation forced you to be
creative with duplication, rotation, scale, alignment, and whitespace. It
opened my mind to a lot of possibilities I hadn’t thought before. <strong>Letters
themselves can be part of the design</strong>.</p>
<p>Slides give you the same opportunity. The easiest way to make your slides
visually interesting is to play around with the physical <em>shape</em> of the letters
that constitute the word. Line things up. Don’t line things up. Shift things
around. Worry about pixels. Almost every single slide in my talk is a different
font size, since I want things to work off of previous words, lines, and so on.
Text sizes of 94.5 points are not uncommon in my deck. They create a much more
interesting visual than throwing a random bullet point on-screen.</p>
<h2>Repetition</h2>
<p></p>
<p>Humans love repetition. It’s one of the tricks used in lots of disciplines. The
best jazz soloists are capable of starting a melody, repeating it, and then
playing with it after the audience has identified with the repetition. The best
storytellers will repeat the same line throughout a story to build a sense of
familiarity, of excitement. Slides are no different.</p>
<p>Steve Jobs did this often. Before moving onto the next product announcement,
he’d spend thirty seconds and go over the same information he just presented.
It’s a very simple way of keeping things memorable for your audience. I make
this explicit by giving recap sections big green stamps in the upper corner
saying “RECAP”. I also giving the start of each section of my talk bright
orange backgrounds with colorful, bold text. Simple reiteration is important.</p>
<p>Simple reiteration is important.</p>
<h2>Worry about it</h2>
<p>A good set of slides won’t magically make your talk great. But a great talk is
really hurt by terrible slides. Spend some time thinking about your slides. Put
yourself in your audience’s shoes: is this readable? Is this interesting?
Should I pay attention, or should I get my laptop out and hack until lunch?</p>
<p>I’m certainly not a designer, but it’s really remarkable how little design you
need to put yourself far ahead of most talks. Huge text. Consistent colors.
Less words. Worry about those, and it will already put you far ahead of the
pack.</p>
 </div>||||I|||| Zach Holman!
 * About
 * Writing
 * Investing
 * Speaking

Slide Design for Developers

 October 24, 2011 holman

 So I gave this talk called How GitHub Uses GitHub to Build GitHub. Someone submitted my slides to Hacker News, where it stayed at #1 for most of the day.

 This was pretty strange to me at first.

 My slides are not designed for people who didn’t see the talk in person. They’re designed to support my words, not some online audience. What’s more, many commented that they found the design of the slides to be noteworthy. I’m expressly not a designer.

 Working on your slide design pays off for the audience in front of you and for the audience online reading your slides later. I learned a lot designing this talk, and I think it can be helpful for you, too.

 Colors

 Color is the very first thing people will notice. It should also be the very first thing you think about.

 Head to a color site like Colour Lovers and find a palette you like. Pick colors with a lot of contrast- it gives you a lot of flexibility with text, backgrounds, and objects. In my GitHub talk, I have around four colors I use frequently, and 8-10 total (lighter green to augment a darker green, lighter blue for my dark blue, and so on).

 Size

 Make your text huge. And then get rid of half of the words and make it huger. Almost all of the presentations I’ve ever seen at every conference screws this up.

 Most of my text in my entire deck is at least 90pt. Usually I like to sit around 150pt, with spikes up to 300pt or more. You cannot get large enough.

 For the curious, I use Yanone Kaffeesatz as the typeface for both my slide deck and the headings on my blog.

 One of my favorite tweets from my New Orleans talk said “Great slide design- I was way in the back and could read every single word!” Forget the people in front of you: design for people three rooms away from you.

 Words as Shapes

 I took one design class in college. One of the most fascinating assignments they gave us was a study of shape: you get one letter, in one typeface… do something with it. The idea was that the severe limitation forced you to be creative with duplication, rotation, scale, alignment, and whitespace. It opened my mind to a lot of possibilities I hadn’t thought before. Letters themselves can be part of the design.

 Slides give you the same opportunity. The easiest way to make your slides visually interesting is to play around with the physical shape of the letters that constitute the word. Line things up. Don’t line things up. Shift things around. Worry about pixels. Almost every single slide in my talk is a different font size, since I want things to work off of previous words, lines, and so on. Text sizes of 94.5 points are not uncommon in my deck. They create a much more interesting visual than throwing a random bullet point on-screen.

 Repetition

 Humans love repetition. It’s one of the tricks used in lots of disciplines. The best jazz soloists are capable of starting a melody, repeating it, and then playing with it after the audience has identified with the repetition. The best storytellers will repeat the same line throughout a story to build a sense of familiarity, of excitement. Slides are no different.

 Steve Jobs did this often. Before moving onto the next product announcement, he’d spend thirty seconds and go over the same information he just presented. It’s a very simple way of keeping things memorable for your audience. I make this explicit by giving recap sections big green stamps in the upper corner saying “RECAP”. I also giving the start of each section of my talk bright orange backgrounds with colorful, bold text. Simple reiteration is important.

 Simple reiteration is important.

 Worry about it

 A good set of slides won’t magically make your talk great. But a great talk is really hurt by terrible slides. Spend some time thinking about your slides. Put yourself in your audience’s shoes: is this readable? Is this interesting? Should I pay attention, or should I get my laptop out and hack until lunch?

 I’m certainly not a designer, but it’s really remarkable how little design you need to put yourself far ahead of most talks. Huge text. Consistent colors. Less words. Worry about those, and it will already put you far ahead of the pack.

 Zach Holman
 You'll want to follow me on Twitter.
 You can also find me on GitHub and on AngelList.
Slide Design for Developers
https://zachholman.com/posts/slide-design-for-developers/
Luigi Montanez
2011-06-07T00:00:00Z
<div><div>

      

      <article>
        

        
        
        

        <p>For software developers, the era of using desktop presentation software like Powerpoint and Keynote will soon be over. Slide decks can now be created using modern HTML5 technologies. Web-based slides make a lot of sense, especially for those comfortable writing code. They’re just web sites, so no special software is needed to view them. They’re built with code: HTML, CSS, and JS. Web-based slide decks can be programmed and interactive. And recently, tools have emerged to help developers build them.</p>

<h3>Desktop-Style Web Apps</h3>

<p>Using the Web to put together a slide deck is not a new idea. Back in 2007, Google integrated a presentations app into their larger Google Docs suite of tools. Much like the rest of Google Docs, the presentation app was largely inspired by productivity software offered by Microsoft, but this tool lived on the Web. Unsurprisingly, Microsoft soon followed with a Web version of Powerpoint in their Office Live suite.</p>

<p>In 2008, the Web framework <a href="http://cappuccino.org/">Cappuccino</a> was born, and with it came <a href="http://280slides.com/">280 Slides</a>, built by former Apple engineers. Cappuccino, and the language it’s built on, <a href="http://cappuccino.org/learn/tutorials/objective-j-tutorial.php">Objective-J</a>, are a complete abstraction on top of the modern Web stack. Try out 280 Slides – it’s impressive technology.</p>

<p>By early 2009, Web-based slide decks meant relying full-featured in-browser apps that attempted to replicate what was found in desktop clients. A paradigm shift had not yet occurred.</p>

<h3>Slidedown and ShowOff</h3>

<p>In the spring of 2009, Pat Nakajima released <a href="https://github.com/nakajima/slidedown">Slidedown</a>, a novel approach to making a slide deck for the Web. The toolchain introduced was familiar for web developers: Create content using Markdown and code. Use the command line to generate the slideshow as a single HTML file. Post it on a web server. Slidedown relies heavily on jQuery for slide transitions and animation.</p>

<p>GitHub’s <a href="https://github.com/schacon">Scott Chacon</a> made a splash in early 2010 with <a href="https://github.com/schacon/showoff">ShowOff</a>. With a workflow similar to Slidedown, ShowOff generates a presentation as a self-contained Sinatra app. In the era of <a href="http://heroku.com">Heroku</a>, hosting the Sinatra app is trivial. Today, <a href="http://nosql-railswaycon-2011.heroku.com/">many</a> <a href="http://knowsql.heroku.com/">presentations</a> at Ruby conferences use ShowOff.</p>

<h3>Embracing HTML5 and CSS3</h3>

<p>Starting in 2010, HTML5 and CSS3 were clearly becoming the Next Big Thing on the Web. Google’s Chrome team launched <a href="http://www.html5rocks.com/">HTML5 Rocks</a>*, an all-encompassing resource for HTML5 technologies. One of the most eye-catching parts of the site is a <a href="http://slides.html5rocks.com/">fully HTML5 slide deck</a> about (what else?) HTML5. Breaking from the reliance on JavaScript in Slidedown and ShowOff, Google opted to use CSS3 to accomplish effects that were once cumbersome to implement in the browser. Maximizing the potential of modern browsers, this was clearly the way forward.</p>

<p>In May 2010, Adam Zaptletal released <a href="https://github.com/adamzap/landslide">Landslide</a>, an HTML5 slide deck generator that borrowed heavily from Google’s original HTML5 Rocks presentation. I used it earlier this year for a <a href="http://luigimontanez.com/html5">presentation to journalists on HTML5</a>.</p>

<p>But Google wasn’t done. Last month at their annual developer conference, Google I/O, all <a href="http://io-2011-html5-games-hr.appspot.com/">presentations</a> <a href="http://io2011-zerotohero.appspot.com/">by</a> <a href="http://io-2011-html5-games-hr.appspot.com/">the</a> Chrome team used an I/O-themed HTML5 slide deck. While not yet formally announced, Google has actually released the slide template as an open source project, called <a href="http://code.google.com/p/html5slides/">htm5slides</a> on Google Code. Googlers Eric Bidelman and Arne Roomann-Kurrik went a step further for their <a href="http://www.htmlfivewow.com/">HTML5 Wow</a> presentation, and released that code as its own <a href="http://code.google.com/p/html5wow/">open source project</a>. HTML5 Wow features bleeding-edge stuff, like WebGL and the File API.</p>

<p>Mozilla has been getting in on the fun as well. Technical Evangelist Paul Rouget recently released <a href="http://paulrouget.com/dzslides/">DZSlides</a>, with the accompanying slide show <a href="http://paulrouget.com/e/html5inthewild/">HTML5 in the Wild</a>. DZSlides enforces almost no theming, and importantly, includes support for embedding slide decks. Presenters know that the ability to embed their slide deck through <a href="http://slideshare.net">Slideshare</a> is a major reason to stick with traditional formats like .ppt, .keynote, or .pdf. DZSlides is a pure HTML5 solution that replaces Slideshare’s Flash embed. It should be noted that as of this writing, DZSlides doesn’t render correctly in the latest Webkit-based browsers. The latest Firefox and Aurora builds do support the correct behavior.</p>

<p>Today, solid options exist for creating slide decks in HTML5. With the current tools, using code to craft a presentation is easy, and frankly, more fun than using Powerpoint or Keynote. And there are no barriers to entry for inventing a custom solution.</p>

<p><em>* I wrote an article about <a href="http://www.html5rocks.com/tutorials/casestudies/sunlight_streamcongress.html">WebSockets and EventSource</a> published on HTML5 Rocks.</em></p>


        
        
        <a href="http://disqus.com">blog comments powered by </a>
        
        

      </article>

      


    </div></div>||||I||||    Luigi Montanez

    I'm a software engineer living in Atlanta, Georgia.

    Subscribe to my feed.
    Send me an email.
    Follow me on Twitter.

    Feed | Email | Twitter

    Built with HTML5 and CSS3.
    Powered by Jekyll.

    Copyright © 2013. Licensed under Creative Commons.

    Web-Based Slide Decks Done Right

    2011-06-07

    For software developers, the era of using desktop presentation software like Powerpoint and Keynote will soon be over. Slide decks can now be created using modern HTML5 technologies. Web-based slides make a lot of sense, especially for those comfortable writing code. They’re just web sites, so no special software is needed to view them. They’re built with code: HTML, CSS, and JS. Web-based slide decks can be programmed and interactive. And recently, tools have emerged to help developers build them.

    Desktop-Style Web Apps

    Using the Web to put together a slide deck is not a new idea. Back in 2007, Google integrated a presentations app into their larger Google Docs suite of tools. Much like the rest of Google Docs, the presentation app was largely inspired by productivity software offered by Microsoft, but this tool lived on the Web. Unsurprisingly, Microsoft soon followed with a Web version of Powerpoint in their Office Live suite.

    In 2008, the Web framework Cappuccino was born, and with it came 280 Slides, built by former Apple engineers. Cappuccino, and the language it’s built on, Objective-J, are a complete abstraction on top of the modern Web stack. Try out 280 Slides – it’s impressive technology.

    By early 2009, Web-based slide decks meant relying full-featured in-browser apps that attempted to replicate what was found in desktop clients. A paradigm shift had not yet occurred.

    Slidedown and ShowOff

    In the spring of 2009, Pat Nakajima released Slidedown, a novel approach to making a slide deck for the Web. The toolchain introduced was familiar for web developers: Create content using Markdown and code. Use the command line to generate the slideshow as a single HTML file. Post it on a web server. Slidedown relies heavily on jQuery for slide transitions and animation.

    GitHub’s Scott Chacon made a splash in early 2010 with ShowOff. With a workflow similar to Slidedown, ShowOff generates a presentation as a self-contained Sinatra app. In the era of Heroku, hosting the Sinatra app is trivial. Today, many presentations at Ruby conferences use ShowOff.

    Embracing HTML5 and CSS3

    Starting in 2010, HTML5 and CSS3 were clearly becoming the Next Big Thing on the Web. Google’s Chrome team launched HTML5 Rocks*, an all-encompassing resource for HTML5 technologies. One of the most eye-catching parts of the site is a fully HTML5 slide deck about (what else?) HTML5. Breaking from the reliance on JavaScript in Slidedown and ShowOff, Google opted to use CSS3 to accomplish effects that were once cumbersome to implement in the browser. Maximizing the potential of modern browsers, this was clearly the way forward.

    In May 2010, Adam Zaptletal released Landslide, an HTML5 slide deck generator that borrowed heavily from Google’s original HTML5 Rocks presentation. I used it earlier this year for a presentation to journalists on HTML5.

    But Google wasn’t done. Last month at their annual developer conference, Google I/O, all presentations by the Chrome team used an I/O-themed HTML5 slide deck. While not yet formally announced, Google has actually released the slide template as an open source project, called htm5slides on Google Code. Googlers Eric Bidelman and Arne Roomann-Kurrik went a step further for their HTML5 Wow presentation, and released that code as its own open source project. HTML5 Wow features bleeding-edge stuff, like WebGL and the File API.

    Mozilla has been getting in on the fun as well. Technical Evangelist Paul Rouget recently released DZSlides, with the accompanying slide show HTML5 in the Wild. DZSlides enforces almost no theming, and importantly, includes support for embedding slide decks. Presenters know that the ability to embed their slide deck through Slideshare is a major reason to stick with traditional formats like .ppt, .keynote, or .pdf. DZSlides is a pure HTML5 solution that replaces Slideshare’s Flash embed. It should be noted that as of this writing, DZSlides doesn’t render correctly in the latest Webkit-based browsers. The latest Firefox and Aurora builds do support the correct behavior.

    Today, solid options exist for creating slide decks in HTML5. With the current tools, using code to craft a presentation is easy, and frankly, more fun than using Powerpoint or Keynote. And there are no barriers to entry for inventing a custom solution.

    * I wrote an article about WebSockets and EventSource published on HTML5 Rocks.

    View the discussion thread.blog comments powered by Disqus
Web-Based Slide Decks Done Right
http://luigimontanez.com/2011/web-based-slide-decks-done-right/
None
2011-10-13T00:00:00Z
<div><div>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_0.jpg">ROBOTS, BEER &amp; MASLOW handy tools for optimizing your team</a>
              </h3><p>
              ☙ ☙
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_1.jpg">who the hell is this guy? i swear i’ll go</a>
              </h3><p>
              super fast...
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_2.jpg">scott chacon</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_3.jpg">github SOCIAL CODING CIO</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_4.jpg">@chacon</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_5.jpg">github : ﬁrst class october 2008</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_6.jpg">45 souls</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_7.jpg">“ “ Running a team of developers and designers isn’t</a>
              </h3><p>
              easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_8.jpg">“ “ Running a team of developers and designers isn’t</a>
              </h3><p>
              easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_9.jpg">apps</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_10.jpg">apps a case study</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_11.jpg">github the magical tale of how we use what to</a>
              </h3><p>
              make yay!
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_12.jpg">campﬁre asynchronous chat</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_13.jpg">campﬁre campﬁrenow.com</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_14.jpg">propaneapp.com campﬁre</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_15.jpg">git.io/propane-hack campﬁre caveatPatchor.js</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_16.jpg">campﬁre git.io/propane-hack</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_17.jpg">campﬁre git.io/propane-hack</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_18.jpg">campﬁre avatars git.io/propane-hack</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_19.jpg">campﬁre highlighting git.io/propane-hack</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_20.jpg">campﬁre:hubot the friendly neighborhood campﬁre robot</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_21.jpg">campﬁre:hubot the friendly neighborhood campﬁre robot</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_22.jpg">deploy github tell us what is not deployed run tests</a>
              </h3><p>
              play music in the oﬃce report who is in the oﬃce dynamically build usage graphs send and receive text messages mustachify all posted images track who swears the most each day rank by twitter followers campﬁre:hubot the friendly neighborhood campﬁre robot
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_23.jpg">campﬁre:hubot the friendly neighborhood campﬁre robot</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_24.jpg">campﬁre:hubot the friendly neighborhood campﬁre robot</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_25.jpg">campﬁre:hubot the friendly neighborhood campﬁre robot</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_26.jpg">campﬁre:hubot the friendly neighborhood campﬁre robot project status</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_27.jpg">campﬁre:hubot the friendly neighborhood campﬁre robot mustaching images</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_28.jpg">campﬁre:hubot the friendly neighborhood campﬁre robot hubot beer me</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_29.jpg">jenkins ci automated builds</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_30.jpg">jenkins jenkins-ci.org</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_31.jpg">jenkins</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_32.jpg">jenkins</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_33.jpg">github social coding</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_34.jpg">workﬂow</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_35.jpg">zomg we can do any and every possible workflow with</a>
              </h3><p>
              git!
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_36.jpg">nvie.com/posts/a-successful-git-branching-model</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_37.jpg">simplify</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_38.jpg">master feature-branch pull request</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_39.jpg">master is deployable create topic branches from master open a</a>
              </h3><p>
              pull request merge it into master deploy it
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_40.jpg">master is deployable create topic branches from master open a</a>
              </h3><p>
              pull request merge it into master deploy it
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_41.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_42.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_43.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_44.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_45.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_46.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_47.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_48.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_49.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_50.jpg">None</a>
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_51.jpg">oauth &amp; apis making hacking fast and easy</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_52.jpg">simplify</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_53.jpg">github as identity</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_54.jpg">github as oauth2 provider</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_55.jpg">github as oauth2 provider github.com/schacon/ghapp.sinatra.min</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_56.jpg">github +</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_57.jpg">github : apps</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_58.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_59.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_60.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_61.jpg">None</a>
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_62.jpg">github : apps and about 20 more</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_63.jpg">github : apps and about 20 more because it takes</a>
              </h3><p>
              about 5 minutes to start one
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_64.jpg">github the magical tale of how we use what to</a>
              </h3><p>
              make yay! so that’s
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_65.jpg">campfire jenkins github heroku</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_66.jpg">cool story bro...</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_67.jpg">“ “ Running a team of developers and designers isn’t</a>
              </h3><p>
              easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_68.jpg">principles</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_69.jpg">why are you here?</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_70.jpg">innovation speed agility creativity collaboration communication</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_71.jpg">“ “ Running a team of developers and designers isn’t</a>
              </h3><p>
              easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_72.jpg">Running a team of developers and designers isn’t easy. Learn</a>
              </h3><p>
              how to use several key apps and principles to make your team operate like a well-oiled, happy machine. “ “
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_73.jpg">innovation speed agility creativity collaboration communication</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_74.jpg">cultivate a creative environment</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_75.jpg">8-5, M-F work day cubicles hierarchy interruptions compartmentalization 10 days</a>
              </h3><p>
              vacation
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_76.jpg">high school, not college?</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_77.jpg">github yet another magical tale of once more, with feelings...</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_78.jpg">no office hours no meetings no vacations no assignments no</a>
              </h3><p>
              bosses
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_79.jpg">MVP</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_80.jpg">M V P inimum iable roduct</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_81.jpg">M V P inimum iable rocess</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_82.jpg">what do we have?</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_83.jpg">great pay great health care free gym membership whatever hardware</a>
              </h3><p>
              you want kindle + amazon money iphone + plan
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_84.jpg">unlimited conferences</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_85.jpg">drinkups</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_86.jpg">drinkups Argentina Australia Belgium Brazil Canada Chile China Colombia Czech</a>
              </h3><p>
              Republic Denmark England Finland France Germany Greece Ireland Israel Italy Japan New Zealand Norway Poland Russia Scotland Spain Sweden Switzerland Taiwan Uruguay
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_87.jpg">None</a>
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_88.jpg">classes (spanish, arduino)</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_89.jpg">free beer</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_90.jpg">executive lounge</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_91.jpg">“ “ Running a team of developers and designers isn’t</a>
              </h3><p>
              easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_92.jpg">principles apps</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_93.jpg">principles apps</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_94.jpg">principles apps</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_95.jpg">principles apps culture</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_96.jpg">hey hippie, don’t your employees just sit around smoking pot</a>
              </h3><p>
              and giggling all day, then?
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_97.jpg">last year 400 pull requests (~1 per day) last month</a>
              </h3><p>
              80 pull requests (~3 per day)
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_98.jpg">deploys per month</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_99.jpg">1740 total deploys 9 deploys per work day</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_100.jpg">3h / 6500h</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_101.jpg">user growth</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_102.jpg">we’re getting stuﬀ done</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_103.jpg">the success of our apps is due to our culture</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_104.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_105.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_106.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_107.jpg">None</a>
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_108.jpg">the success of our apps is due to our culture</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_109.jpg">cool anecdote bro...</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_110.jpg">precedent</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_111.jpg">University of Manchester Andre Geim and Konstantin Novoselov</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_112.jpg">University of Manchester Andre Geim and Konstantin Novoselov 10%</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_113.jpg">University of Manchester Andre Geim and Konstantin Novoselov 10%</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_114.jpg">University of Manchester Andre Geim and Konstantin Novoselov 10%</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_115.jpg">University of Manchester Andre Geim and Konstantin Novoselov 10%</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_116.jpg">University of Manchester Andre Geim and Konstantin Novoselov 10%</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_117.jpg">twitter week</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_118.jpg">atlassian 20%</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_119.jpg">google 20%</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_120.jpg">github 100%</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_121.jpg">None</a>
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_122.jpg">intrinsic / extrinsic motivation</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_123.jpg">autonomy mastery purpose</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_124.jpg">Theory X Theory Y</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_125.jpg">are trustworthy? seek responsibility and accountability? seek meaning in their</a>
              </h3><p>
              work? naturally want to learn? don’t resist change but they resist being changed? prefer work to being idle? Do you believe that developers:
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_126.jpg">are trustworthy? seek responsibility and accountability? seek meaning in their</a>
              </h3><p>
              work? naturally want to learn? don’t resist change but they resist being changed? prefer work to being idle? Do you believe that developers:
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_127.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_128.jpg">None</a>
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_129.jpg">autonomy mastery purpose</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_130.jpg">autonomy mastery purpose</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_131.jpg">autonomy team culture pay well</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_132.jpg">autonomy mastery purpose</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_133.jpg">“ “ Running a team of developers and designers isn’t</a>
              </h3><p>
              easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_134.jpg">“ “ Running a team of developers and designers isn’t</a>
              </h3><p>
              easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine. cultivate a culture enable kick ass, self-fulfilled to of creative, productive awesomeness ^ ^
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_135.jpg">future of web apps</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_136.jpg">future of web apps development</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_137.jpg">innovation speed agility creativity collaboration communication</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_138.jpg">work something you have to do</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_139.jpg">work the tool that helps you achieve your full potential</a>
              </h3><p>
              something you have to do
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_140.jpg">no office hours no meetings no vacations no assignments no</a>
              </h3><p>
              bosses
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_141.jpg">?</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_142.jpg">thanks</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e97091674dea20054000f5b/slide_143.jpg">scott chacon @chacon</a>
              </h3>
              
          <p></p>

        </li>
    </div></div>||||I||||  Upgrade to Pro — share decks privately, control downloads, hide ads and more …
      Speaker Deck
        * Features
        * Speaker Deck
            PRO
        * Sign in
        * Sign up for free
        * 
        * Search
        * Search
        * 

          Robots, Beer and Maslow

            Search
              Scott Chacon
                PRO
                October 13, 2011
                Business
                    157
                  8.1k

    Robots, Beer and Maslow

      Running a team of developers and designers the GitHub way

            Scott Chacon

              PRO

              October 13, 2011
          Tweet Share

          More Decks by Scott Chacon

          See All by Scott Chacon
              So You Think You Know Git - Part 2
                schacon
                  PRO
                0
                3.5k
              So You Think You Know Git?
                schacon
                  PRO
                6
                10k
              Ask Your Code
                schacon
                  PRO
                0
                180
              From GitHub to Chatterbug
                schacon
                  PRO
                0
                10
              Hub Talk
                schacon
                  PRO
                0
                10
              An American Coder in Paris
                schacon
                  PRO
                4
                420
              The Future of Open Source
                schacon
                  PRO
                0
                490
              The Revolution will be Forked
                schacon
                  PRO
                10
                920
              The Open Source Business
                schacon
                  PRO
                14
                1k

          Other Decks in Business

          See All in Business
              株式会社MYPLATE
                myplate
                1
                170
              Alteryx Designer Cloud Hands-on Session at Classmethod DevelopersIO 2024
                ykanemoto
                0
                240
              ties｜クラウド顧客・案件管理システム - サービスのご紹介
                so_kotani
                2
                270
              CompanyDeck_v5.0.pdf
                xid
                2
                15k
              Must ➡ Can ➡ Will で考えるキャリア
                tumada
                  PRO
                22
                3.1k
              （5枚）レポートラインを正しく設計して強いチームを作る方法
                nyattx
                  PRO
                2
                130
              Think and Dialogue 採用資料
                thinkanddialogue
                0
                140
              kintone cafe Tokyo Vol.17 ハンズオン資料
                kentaro1sh11
                0
                150
              （3枚）営業のためのマーケティングマネジメントの全体像（コスト検証）
                nyattx
                  PRO
                2
                1.4k
              akippa株式会社 - 会社紹介資料
                akippa
                3
                51k
              Well Body株式会社 会社紹介資料
                suguru148297
                0
                220
              fluct 採用資料 / fluct-Recruitment-Handbook
                cartaholdings
                2
                630

          Featured

          See All Featured
              How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
                tammyeverts
                42
                1.9k
              Agile that works and the tools we love
                rasmusluckow
                327
                20k
              個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
                panda_program
                87
                15k
              Learning to Love Humans: Emotional Interface Design
                aarron
                270
                39k
              JavaScript: Past, Present, and Future - NDC Porto 2020
                reverentgeek
                44
                4.8k
              Reflections from 52 weeks, 52 projects
                jeffersonlam
                346
                20k
              Teambox: Starting and Learning
                jrom
                131
                8.6k
              Principles of Awesome APIs and How to Build Them.
                keavy
                124
                16k
              The Language of Interfaces
                destraynor
                151
                23k
              Into the Great Unknown - MozCon
                thekraken
                28
                1.3k
              Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
                stephaniewalter
                277
                13k
              Why You Should Never Use an ORM
                jnunemaker
                  PRO
                52
                8.9k

    Transcript

       1. ROBOTS, BEER & MASLOW handy tools for optimizing your team

          ☙ ☙

       2. who the hell is this guy? i swear i’ll go

          super fast...

       3. scott chacon

       4. github SOCIAL CODING CIO

       5. @chacon

       6. github : ﬁrst class october 2008

       7. 45 souls

       8. “ “ Running a team of developers and designers isn’t

          easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.

       9. “ “ Running a team of developers and designers isn’t

          easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.

      10. apps

      11. apps a case study

      12. github the magical tale of how we use what to

          make yay!

      13. campﬁre asynchronous chat

      14. campﬁre campﬁrenow.com

      15. propaneapp.com campﬁre

      16. git.io/propane-hack campﬁre caveatPatchor.js

      17. campﬁre git.io/propane-hack

      18. campﬁre git.io/propane-hack

      19. campﬁre avatars git.io/propane-hack

      20. campﬁre highlighting git.io/propane-hack

      21. campﬁre:hubot the friendly neighborhood campﬁre robot

      22. campﬁre:hubot the friendly neighborhood campﬁre robot

      23. deploy github tell us what is not deployed run tests

          play music in the oﬃce report who is in the oﬃce dynamically build usage graphs send and receive text messages mustachify all posted images track who swears the most each day rank by twitter followers campﬁre:hubot the friendly neighborhood campﬁre robot

      24. campﬁre:hubot the friendly neighborhood campﬁre robot

      25. campﬁre:hubot the friendly neighborhood campﬁre robot

      26. campﬁre:hubot the friendly neighborhood campﬁre robot

      27. campﬁre:hubot the friendly neighborhood campﬁre robot project status

      28. campﬁre:hubot the friendly neighborhood campﬁre robot mustaching images

      29. campﬁre:hubot the friendly neighborhood campﬁre robot hubot beer me

      30. jenkins ci automated builds

      31. jenkins jenkins-ci.org

      32. jenkins

      33. jenkins

      34. github social coding

      35. workﬂow

      36. zomg we can do any and every possible workflow with

          git!

      37. nvie.com/posts/a-successful-git-branching-model

      38. simplify

      39. master feature-branch pull request

      40. master is deployable create topic branches from master open a

          pull request merge it into master deploy it

      41. master is deployable create topic branches from master open a

          pull request merge it into master deploy it
      42. None
      43. None
      44. None
      45. None
      46. None
      47. None
      48. None
      49. None
      50. None
      51. None

      52. oauth & apis making hacking fast and easy

      53. simplify

      54. github as identity

      55. github as oauth2 provider

      56. github as oauth2 provider github.com/schacon/ghapp.sinatra.min

      57. github +

      58. github : apps

      59. None
      60. None
      61. None
      62. None

      63. github : apps and about 20 more

      64. github : apps and about 20 more because it takes

          about 5 minutes to start one

      65. github the magical tale of how we use what to

          make yay! so that’s

      66. campfire jenkins github heroku

      67. cool story bro...

      68. “ “ Running a team of developers and designers isn’t

          easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.

      69. principles

      70. why are you here?

      71. innovation speed agility creativity collaboration communication

      72. “ “ Running a team of developers and designers isn’t

          easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.

      73. Running a team of developers and designers isn’t easy. Learn

          how to use several key apps and principles to make your team operate like a well-oiled, happy machine. “ “

      74. innovation speed agility creativity collaboration communication

      75. cultivate a creative environment

      76. 8-5, M-F work day cubicles hierarchy interruptions compartmentalization 10 days

          vacation

      77. high school, not college?

      78. github yet another magical tale of once more, with feelings...

      79. no office hours no meetings no vacations no assignments no

          bosses

      80. MVP

      81. M V P inimum iable roduct

      82. M V P inimum iable rocess

      83. what do we have?

      84. great pay great health care free gym membership whatever hardware

          you want kindle + amazon money iphone + plan

      85. unlimited conferences

      86. drinkups

      87. drinkups Argentina Australia Belgium Brazil Canada Chile China Colombia Czech

          Republic Denmark England Finland France Germany Greece Ireland Israel Italy Japan New Zealand Norway Poland Russia Scotland Spain Sweden Switzerland Taiwan Uruguay
      88. None

      89. classes (spanish, arduino)

      90. free beer

      91. executive lounge

      92. “ “ Running a team of developers and designers isn’t

          easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.

      93. principles apps

      94. principles apps

      95. principles apps

      96. principles apps culture

      97. hey hippie, don’t your employees just sit around smoking pot

          and giggling all day, then?

      98. last year 400 pull requests (~1 per day) last month

          80 pull requests (~3 per day)

      99. deploys per month

     100. 1740 total deploys 9 deploys per work day

     101. 3h / 6500h

     102. user growth

     103. we’re getting stuﬀ done

     104. the success of our apps is due to our culture

     105. None
     106. None
     107. None
     108. None

     109. the success of our apps is due to our culture

     110. cool anecdote bro...

     111. precedent

     112. University of Manchester Andre Geim and Konstantin Novoselov

     113. University of Manchester Andre Geim and Konstantin Novoselov 10%

     114. University of Manchester Andre Geim and Konstantin Novoselov 10%

     115. University of Manchester Andre Geim and Konstantin Novoselov 10%

     116. University of Manchester Andre Geim and Konstantin Novoselov 10%

     117. University of Manchester Andre Geim and Konstantin Novoselov 10%

     118. twitter week

     119. atlassian 20%

     120. google 20%

     121. github 100%

     122. None

     123. intrinsic / extrinsic motivation

     124. autonomy mastery purpose

     125. Theory X Theory Y

     126. are trustworthy? seek responsibility and accountability? seek meaning in their

          work? naturally want to learn? don’t resist change but they resist being changed? prefer work to being idle? Do you believe that developers:

     127. are trustworthy? seek responsibility and accountability? seek meaning in their

          work? naturally want to learn? don’t resist change but they resist being changed? prefer work to being idle? Do you believe that developers:
     128. None
     129. None

     130. autonomy mastery purpose

     131. autonomy mastery purpose

     132. autonomy team culture pay well

     133. autonomy mastery purpose

     134. “ “ Running a team of developers and designers isn’t

          easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine.

     135. “ “ Running a team of developers and designers isn’t

          easy. Learn how to use several key apps and principles to make your team operate like a well-oiled, happy machine. cultivate a culture enable kick ass, self-fulfilled to of creative, productive awesomeness ^ ^

     136. future of web apps

     137. future of web apps development

     138. innovation speed agility creativity collaboration communication

     139. work something you have to do

     140. work the tool that helps you achieve your full potential

          something you have to do

     141. no office hours no meetings no vacations no assignments no

          bosses

     142. ?

     143. thanks

     144. scott chacon @chacon

      SpeakerDeck

      Top Categories

        * Programming
        * Technology
        * Storyboards
        * Featured decks
        * Featured speakers

      Use Cases

        * Storyboard Artists
        * Educators

      Resources

        * Help Center
        * Blog
        * Compare Speaker Deck
        * Advertising

      Features

        * Private URLs
        * Password Protection
        * Custom URLS
        * Scheduled publishing
        * Remove Branding
        * Restrict embedding
        * Notes

      Copyright © 2024 Speaker Deck, LLC.

      All slide content and descriptions are owned by their creators.

        * About
        * Terms
        * Privacy
        * DMCA
        * Accessibility Statement
Robots, Beer and Maslow
https://speakerdeck.com/schacon/robots-beer-and-maslow
None
2011-09-21T00:00:00Z
<div><div>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_0.jpg">github how uses to build zach holman</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_1.jpg">github how uses to build x</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_2.jpg">github how uses to build github github</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_3.jpg">how uses to build github</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_4.jpg">how uses to build github</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_5.jpg">how uses to build github your company your product</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_6.jpg">@holman</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_7.jpg">None</a>
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_8.jpg">we work asynchronously</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_9.jpg">WORKING ASYNCHRONOUSLY: YOU CAN DO SHIT WITHOUT NEEDING TO PULL</a>
              </h3><p>
              ME OUT OF THE ZONE™. NO MEETINGS • NO DEADLINES • NO MANAGERS
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_10.jpg">CHATROOMS NO PRESENCE NEEDED LOG ALL THE THINGS EVERYONE ON</a>
              </h3><p>
              THE SAME PAGE TIME FLEXIBILITY WORK WHEN YOU WANT TO WORK
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_11.jpg">HOW GITHUB WORKS zachholman.com/posts/how-github-works</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_12.jpg">PULL REQUESTS + BRANCHING ISSUES OAUTH AS IDENTITY HOOKS &amp;</a>
              </h3><p>
              HUBOT SECRETS OKAY LET’S TALK ABOUT
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_13.jpg">+ pull requests branching</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_14.jpg">Y’all got some weird branches.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_15.jpg">master deploy-62 deploy-63 deploy-63b deploy- ?</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_16.jpg">REPOSITORY TRUSTED DEVELOPERS FORK FORK FORK SHITTY DEVELOPERS ʘ‿ʘ ಠ_ಠ</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_17.jpg">Keep your branches simple.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_18.jpg">How GitHub does branching:</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_19.jpg">MASTER BRANCH</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_20.jpg">Everyone can push, everyone can deploy.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_21.jpg">Frees up your time from micromanaging someone else’s code.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_22.jpg">Master is always deployable.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_23.jpg">Master is always deployable. We deploy 10-40 times a day.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_24.jpg">If you’re nervous, deploy to staging. Or deploy a branch.</a>
              </h3><p>
              Or deploy to a subset of our production boxes. TWITTER-DRIVEN DEVELOPMENT CHECK TWITTER, SEE IF YOU BONED A DEPLOY
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_25.jpg">Keep your branches simple.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_26.jpg">What about code quality? ಠ_ಠ</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_27.jpg">REQUESTS PULL OOH! FUTURISTIC!</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_28.jpg">Pull Requests are our code review.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_29.jpg">DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS</a>
              </h3><p>
              DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS WHATPULL REQUESTS? ARE
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_30.jpg">A PULL REQUEST IS A DISCUSSION CODE DISCUSSION FEATURE DISCUSSION</a>
              </h3><p>
              STRATEGY DISCUSSION
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_31.jpg">CODE DISCUSSION FEATURE DISCUSSION STRATEGY DISCUSSION</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_32.jpg">REFERENCE ISSUES REVIEW CODE DIFFS WRITE CODE COMMENTS CODE DISCUSSION</a>
              </h3><p>
              FEATURE DISCUSSION STRATEGY DISCUSSION
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_33.jpg">REFERENCE ISSUES REVIEW CODE DIFFS WRITE CODE COMMENTS CODE DISCUSSION</a>
              </h3><p>
              FEATURE DISCUSSION STRATEGY DISCUSSION ALL ON A BRANCH
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_34.jpg">None</a>
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_35.jpg">TITLE OF THE PULL REQUEST DESCRIPTION COMMIT COMMIT COMMIT COMMIT</a>
              </h3><p>
              COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_36.jpg">talk about changes show all commits show specific code changes</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_37.jpg">MASTER BRANCH</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_38.jpg">MASTER BRANCH PULL REQUEST</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_39.jpg">BIG SECRET #1 PULL REQUESTS: YOU DON’T NEED TO FORK</a>
              </h3><p>
              ANYTHING.
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_40.jpg">WHY PULL REQUESTS ARE RAD: REASONS 4</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_41.jpg">WHY PULL REQUESTS ARE RAD: ASYNCHRONOUS No meetings.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_42.jpg">WHY PULL REQUESTS ARE RAD: NOTIFICATIONS Email is your interface.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_43.jpg">WHY PULL REQUESTS ARE RAD: ACCESSIBLE Designers can evolve mockups</a>
              </h3><p>
              and entire workflows. Non-technical staff can add their two cents.
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_44.jpg">WHY PULL REQUESTS ARE RAD: HISTORICAL Pull Requests can be</a>
              </h3><p>
              experiments. Try something out, throw it away, retain a history.
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_45.jpg">GitHub’s Pull Requests</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_46.jpg">Realtime™ status.github.com real-time polling git (ssh): true git (http): true</a>
              </h3><p>
              git (git://): true downloads: true pages: true svn: true SUDDENLY, a design
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_47.jpg">Realtime™ status.github.com real-time polling POST SCREENSHOTS MIX YOUR DESIGNERS +</a>
              </h3><p>
              DEVELOPERS (AND .GIFs!)
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_48.jpg">CodeMirror syntax highlighting as you type</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_49.jpg">CodeMirror syntax highlighting as you type PULL REQUESTS ARE CHEAP</a>
              </h3><p>
              AS HELL DON’T BE AFRAID TO TOSS IT ALL AWAY
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_50.jpg">Don’t be afraid to try to (gently) break GitHub. 8</a>
              </h3><p>
              months, couple hundred commits, dozens of mockups {
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_51.jpg">Pull Requests are about getting shit done without wasting a</a>
              </h3><p>
              lot of time.
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_52.jpg">Can your workflow be improved? Do you really need all</a>
              </h3><p>
              that process?
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_53.jpg">USE PULL REQUESTS MORE SPEND LESS TIME AVOIDING SHIPPING PULL</a>
              </h3><p>
              REQUEST RECAP
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_54.jpg">issues we have</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_55.jpg">priorities estimates rich media things deadlines redundant wat more priorities</a>
              </h3><p>
              just trolling us now where am i anyway
          </p></div>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_56.jpg">None</a>
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_57.jpg">Can you survive on tools? SIMPLER</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_58.jpg">Can you work faster on tools? SIMPLER</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_59.jpg">Can you work better on tools? SIMPLER</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_60.jpg">Merlin Mann @hotdogsladies on email priorities :</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_61.jpg">A priority is observed, not manufactured or assigned. Otherwise, it's</a>
              </h3><p>
              necessarily not a priority. “
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_62.jpg">Making something a BIG RED TOP TOP BIG HIGHEST #1</a>
              </h3><p>
              PRIORITY changes nothing but text styling. If it were really important, it'd already be done. Period. “
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_63.jpg">PRIORITIES DEADLINES ASSIGNEES ESTIMATES</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_64.jpg">Resist adding meta-work. It gets in the way of doing</a>
              </h3><p>
              real work. (The real work will get done anyway.)
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_65.jpg">3We use Issues for three things.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_66.jpg">shit, something is broken</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_67.jpg">hey, this could be cool</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_68.jpg">todo lists</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_69.jpg">Do you need more than that? Think about it. Most</a>
              </h3><p>
              of the time, you don’t.
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_70.jpg">MEANS MORE TIME BUILDING YOUR PRODUCT ISSUES RECAP SIMPLE TOOLS</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_71.jpg">oauthas identity</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_72.jpg">RUBY IS SO FAST FUCK I LOVE IT SO MUCH</a>
              </h3><p>
              —
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_73.jpg">~/Development/SECRETARYOFLABOR self-referential symlink `what` single LABOR.RB web app was super</a>
              </h3><p>
              hammered when I wrote this ~/Development/unmarked_van an app that stalks people’s locations ~/Development/trace real-time stats graphing
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_74.jpg">continuous integration internal app distribution collectd graphs internal talk videos</a>
              </h3><p>
              30 INTERNAL APPS arbitrary data store internal twitter ios licensing + provisioning haystack exceptions
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_75.jpg">Outsiders are not welcome.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_76.jpg">GitHub as Authentication TEAMS, ORGANIZATIONS, AND USERS</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_77.jpg">GitHub as Authentication USE OAUTH TO AUTHENTICATE USERS</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <p><a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_78.jpg">None</a>
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_79.jpg">github.com/atmos/sinatra_auth_github github_organization_access?('github') # =&gt; true</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_80.jpg">GitHub as Authentication SECURITY • CONSISTENCY • COOLICTY</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_81.jpg">DON’T REINVENT THE WHEEL YOUR AUTHENTICATION CAN BE FREE OAUTH</a>
              </h3><p>
              RECAP
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_82.jpg">hooks &amp;hubot</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_83.jpg">HUBOT OUR FRIENDLY CAMPFIRE BOT</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_84.jpg">OVER 300 COMMANDS, LIKE... • deploy every GitHub app •</a>
              </h3><p>
              run branch-level tests • play music in the office • tell us who is in the office • dynamically build usage graphs • send and receive text messages • mustache every image posted in chat • track who swears each day • rank by twitter followers • ...and way, way more
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_85.jpg">github.com/github/hubot Hubot is not open source. LOL JK</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_86.jpg">bots — github: know your branch status hubot what hasn’t</a>
              </h3><p>
              been deployed? Zach Hubot Zach: Here's what hasn't been deployed on master yet: https://github.com/github/github/compare/{sha}...master
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_87.jpg">bots — github: know your branch status hubot what hasn’t</a>
              </h3><p>
              been deployed on issues2? Zach Hubot Zach: Here's what hasn't been deployed on issues2 yet: https://github.com/github/github/compare/{sha}...issues2
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_88.jpg">bots — github: know your branch status hubot what hasn’t</a>
              </h3><p>
              been deployed on issues2? Zach Hubot Zach: Here's what hasn't been deployed on issues2 yet: https://github.com/github/github/compare/{sha}...issues2
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_89.jpg">bots — github: know your branch status hubot what hasn’t</a>
              </h3><p>
              been deployed on issues2? Zach Hubot Zach: Here's what hasn't been deployed on issues2 yet: https://github.com/github/github/compare/{sha}...issues2
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_90.jpg">https://github.com/site/sha bots — github: know your branch status #=&gt; 2c8c2e9932d0caceecd3ed8ee2adcda0ece3e564</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_91.jpg">bots — github: using the API hubot what are the</a>
              </h3><p>
              pulls on holman/boom? Zach Hubot HTTParty should only be a soft dependency (master...jimmycuadra:soft-dependency) by jimmycuadra https://github.com/holman/boom/pull/46 boom roulette (master...culvr:master) by culvr https://github.com/holman/boom/pull/43
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_92.jpg">bots — github: using the API hubot how many issues</a>
              </h3><p>
              did we close today for github/github? Zach Hubot 13 issues closed on github/github in the past 24 hours.
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_93.jpg">bots — github What does your company do over and</a>
              </h3><p>
              over again? Can you automate that?
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_94.jpg">HUBOT RECAP HUBOT KNOWS WHERE YOU LIVE DO NOT TRUST</a>
              </h3><p>
              HIM
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_95.jpg">secrets everyone has</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_96.jpg">WE TUCK STUFF AWAY SOMETIMES. OOPS.</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_97.jpg">EMOJI :heart: WORDS ARE FOR ACADEMICS, BRO :+1: :shipit: http://git.io/dmWZWg</a>
              </h3><p>
              ...and so much more:
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_98.jpg">SHORTCUTS QUIT MAKING ME DO THINGS ALL SLOW-LIKE w t</a>
              </h3><p>
              ?
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_99.jpg">IMAGES EVERYTHING IS BETTER WITH PIXELS ![title](url)</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_100.jpg">DIFF+PATCH GOD I HATE PIXELS JUST GIVE ME TEXT .diff</a>
              </h3><p>
              + .patch after most URLs
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_101.jpg">require 'redcarpet' markdown = Redcarpet.new("Hello World!") puts markdown.to_html FENCED CODE</a>
              </h3><p>
              IT’S LIKE CODE BUT WITH MORE FENCES
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_102.jpg">```ruby require 'redcarpet' markdown = Redcarpet.new("Hello World!") puts markdown.to_html ```</a>
              </h3><p>
              FENCED CODE IT’S LIKE CODE BUT WITH MORE FENCES
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_103.jpg">FENCED CODE IT’S LIKE CODE BUT WITH MORE FENCES require</a>
              </h3><p>
              'redcarpet' markdown = Redcarpet.new("Hello World!") puts markdown.to_html
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_104.jpg">MENTIONS GET SOMEONE ELSE TO DO YOUR WORK @username pull</a>
              </h3><p>
              requests issues commits
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_105.jpg">WHITESPACE IT SUCKS add ?w=1 to URLs</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_106.jpg">REPO REFERENCES AROUND THE REPO, AROUND THE REPO, AROUND user/repo#issue</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_107.jpg">GIT.IO OFFICIAL LAUNCH ANNOUNCEMENT https://github.com/holman/really- fucking-long-url-wtf-is-u-doing git.io/url</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_108.jpg">GIT.IO OFFICIAL LAUNCH ANNOUNCEMENT http://git.io/nxVVig curl -i http://git.io -F 'url=#{url}'</a>
              </h3><p>
              #{code}
          </p></div>

        </li>
        <li>
          <div>
              <h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_109.jpg">TOOLS + PROCESS = PRODUCT SIMPLE BETTER AWESOME THE BIG</a>
              </h3><p>
              RECAP
          </p></div>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_110.jpg">thanks!</a>
              </h3>
              
          <p></p>

        </li>
        <li>
          <p>
              </p><h3>
                <a href="https://files.speakerdeck.com/presentations/4e79b461c9bdcb003f00331d/slide_111.jpg">zach holman zachholman.com/talks @holman twitter+github:</a>
              </h3>
              
          <p></p>

        </li>
    </div></div>||||I||||  Upgrade to Pro — share decks privately, control downloads, hide ads and more …
      Speaker Deck
        * Features
        * Speaker Deck
            PRO
        * Sign in
        * Sign up for free
        * 
        * Search
        * Search
        * 

          How GitHub Uses GitHub to Build GitHub

            Search
              Zach Holman
                September 21, 2011
                Programming
                    471
                  290k

    How GitHub Uses GitHub to Build GitHub

      Build features fast. Ship them. That's what we try to do at GitHub. Our process is the anti-process: what's the minimum overhead we can put up with to keep our code quality high, all while building features *as quickly as possible*? It's not just features, either: faster development means happier developers.

            Zach Holman

              September 21, 2011
          Tweet Share

          More Decks by Zach Holman

          See All by Zach Holman
              Firing People
                holman
                40
                6.3k
              Even More Emoji Abuse 🚧🚨
                holman
                17
                10k
              Move Fast and Break Nothing
                holman
                68
                180k
              The Talk on Talks
                holman
                66
                32k
              How GitHub (no longer) Works
                holman
                306
                140k
              More Git and GitHub Secrets
                holman
                183
                110k
              Keeping People
                holman
                64
                62k
              If Only I Knew This Shit in College
                holman
                98
                99k
              GitHub: Behind the Feature
                holman
                41
                15k

          Other Decks in Programming

          See All in Programming
              Kubernetesでやる省エネスケジューリング / Kubernetes Meetup Tokyo #66
                ebiiim
                0
                400
              今こそ始める Shared Element Transition
                oidy
                1
                180
              Gemini in Android Studio I/O extended 2024
                veronikapj
                0
                210
              Flutter gRPC - 박제창 @I/O Extended 2024 인천/송도
                itsmedreamwalker
                0
                130
              AppleVisionProCICD
                graffity
                0
                120
              スタートアップの急成長に寄り添うOn-Call体制構築とその変遷
                horimislime
                3
                1.1k
              Kaggleの歩き方-関西Kaggler会に参加してみて-
                wakamatsu_takumu
                2
                270
              AWS Summit Japan 2024, AWS Game Day 振り返り - NIFTY Tech Talk #20
                niftycorp
                  PRO
                2
                180
              タクシーアプリ『GO』でのApple Pay導入
                mot_techtalk
                0
                140
              240802 INFCON
                hajoeun
                1
                170
              「引き算」で高めるアジリティ / Enhancing Agility through Subtraction
                jaguar_imo
                3
                130
              将来の機能拡張を見据えたMetricKitの実装
                mot_techtalk
                0
                110

          Featured

          See All Featured
              Learning to Love Humans: Emotional Interface Design
                aarron
                270
                39k
              RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
                eileencodes
                131
                32k
              How to Think Like a Performance Engineer
                csswizardry
                14
                780
              Java REST API Framework Comparison - PWX 2021
                mraible
                  PRO
                26
                7.2k
              Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
                mongodb
                37
                9.1k
              Optimising Largest Contentful Paint
                csswizardry
                27
                2.7k
              Happy Clients
                brianwarren
                94
                6.6k
              The World Runs on Bad Software
                bkeepers
                  PRO
                63
                11k
              How STYLIGHT went responsive
                nonsquared
                93
                5k
              Designing for humans not robots
                tammielis
                247
                25k
              "I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
                danielanewman
                224
                22k
              Designing with Data
                zakiwarfel
                97
                5k

    Transcript

       1. github how uses to build zach holman

       2. github how uses to build x

       3. github how uses to build github github

       4. how uses to build github

       5. how uses to build github

       6. how uses to build github your company your product

       7. @holman

       8. None

       9. we work asynchronously

      10. WORKING ASYNCHRONOUSLY: YOU CAN DO SHIT WITHOUT NEEDING TO PULL

          ME OUT OF THE ZONE™. NO MEETINGS • NO DEADLINES • NO MANAGERS

      11. CHATROOMS NO PRESENCE NEEDED LOG ALL THE THINGS EVERYONE ON

          THE SAME PAGE TIME FLEXIBILITY WORK WHEN YOU WANT TO WORK

      12. HOW GITHUB WORKS zachholman.com/posts/how-github-works

      13. PULL REQUESTS + BRANCHING ISSUES OAUTH AS IDENTITY HOOKS &

          HUBOT SECRETS OKAY LET’S TALK ABOUT

      14. + pull requests branching

      15. Y’all got some weird branches.

      16. master deploy-62 deploy-63 deploy-63b deploy- ?

      17. REPOSITORY TRUSTED DEVELOPERS FORK FORK FORK SHITTY DEVELOPERS ʘ‿ʘ ಠ_ಠ

      18. Keep your branches simple.

      19. How GitHub does branching:

      20. MASTER BRANCH

      21. Everyone can push, everyone can deploy.

      22. Frees up your time from micromanaging someone else’s code.

      23. Master is always deployable.

      24. Master is always deployable. We deploy 10-40 times a day.

      25. If you’re nervous, deploy to staging. Or deploy a branch.

          Or deploy to a subset of our production boxes. TWITTER-DRIVEN DEVELOPMENT CHECK TWITTER, SEE IF YOU BONED A DEPLOY

      26. Keep your branches simple.

      27. What about code quality? ಠ_ಠ

      28. REQUESTS PULL OOH! FUTURISTIC!

      29. Pull Requests are our code review.

      30. DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS

          DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS DISCUSSIONS DISCUSSIONS DISCUSSIONS DISCUS WHATPULL REQUESTS? ARE

      31. A PULL REQUEST IS A DISCUSSION CODE DISCUSSION FEATURE DISCUSSION

          STRATEGY DISCUSSION

      32. CODE DISCUSSION FEATURE DISCUSSION STRATEGY DISCUSSION

      33. REFERENCE ISSUES REVIEW CODE DIFFS WRITE CODE COMMENTS CODE DISCUSSION

          FEATURE DISCUSSION STRATEGY DISCUSSION

      34. REFERENCE ISSUES REVIEW CODE DIFFS WRITE CODE COMMENTS CODE DISCUSSION

          FEATURE DISCUSSION STRATEGY DISCUSSION ALL ON A BRANCH
      35. None

      36. TITLE OF THE PULL REQUEST DESCRIPTION COMMIT COMMIT COMMIT COMMIT

          COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS DISCUSS COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT COMMIT

      37. talk about changes show all commits show specific code changes

      38. MASTER BRANCH

      39. MASTER BRANCH PULL REQUEST

      40. BIG SECRET #1 PULL REQUESTS: YOU DON’T NEED TO FORK

          ANYTHING.

      41. WHY PULL REQUESTS ARE RAD: REASONS 4

      42. WHY PULL REQUESTS ARE RAD: ASYNCHRONOUS No meetings.

      43. WHY PULL REQUESTS ARE RAD: NOTIFICATIONS Email is your interface.

      44. WHY PULL REQUESTS ARE RAD: ACCESSIBLE Designers can evolve mockups

          and entire workflows. Non-technical staff can add their two cents.

      45. WHY PULL REQUESTS ARE RAD: HISTORICAL Pull Requests can be

          experiments. Try something out, throw it away, retain a history.

      46. GitHub’s Pull Requests

      47. Realtime™ status.github.com real-time polling git (ssh): true git (http): true

          git (git://): true downloads: true pages: true svn: true SUDDENLY, a design

      48. Realtime™ status.github.com real-time polling POST SCREENSHOTS MIX YOUR DESIGNERS +

          DEVELOPERS (AND .GIFs!)

      49. CodeMirror syntax highlighting as you type

      50. CodeMirror syntax highlighting as you type PULL REQUESTS ARE CHEAP

          AS HELL DON’T BE AFRAID TO TOSS IT ALL AWAY

      51. Don’t be afraid to try to (gently) break GitHub. 8

          months, couple hundred commits, dozens of mockups {

      52. Pull Requests are about getting shit done without wasting a

          lot of time.

      53. Can your workflow be improved? Do you really need all

          that process?

      54. USE PULL REQUESTS MORE SPEND LESS TIME AVOIDING SHIPPING PULL

          REQUEST RECAP

      55. issues we have

      56. priorities estimates rich media things deadlines redundant wat more priorities

          just trolling us now where am i anyway
      57. None

      58. Can you survive on tools? SIMPLER

      59. Can you work faster on tools? SIMPLER

      60. Can you work better on tools? SIMPLER

      61. Merlin Mann @hotdogsladies on email priorities :

      62. A priority is observed, not manufactured or assigned. Otherwise, it's

          necessarily not a priority. “

      63. Making something a BIG RED TOP TOP BIG HIGHEST #1

          PRIORITY changes nothing but text styling. If it were really important, it'd already be done. Period. “

      64. PRIORITIES DEADLINES ASSIGNEES ESTIMATES

      65. Resist adding meta-work. It gets in the way of doing

          real work. (The real work will get done anyway.)

      66. 3We use Issues for three things.

      67. shit, something is broken

      68. hey, this could be cool

      69. todo lists

      70. Do you need more than that? Think about it. Most

          of the time, you don’t.

      71. MEANS MORE TIME BUILDING YOUR PRODUCT ISSUES RECAP SIMPLE TOOLS

      72. oauthas identity

      73. RUBY IS SO FAST FUCK I LOVE IT SO MUCH

          —

      74. ~/Development/SECRETARYOFLABOR self-referential symlink `what` single LABOR.RB web app was super

          hammered when I wrote this ~/Development/unmarked_van an app that stalks people’s locations ~/Development/trace real-time stats graphing

      75. continuous integration internal app distribution collectd graphs internal talk videos

          30 INTERNAL APPS arbitrary data store internal twitter ios licensing + provisioning haystack exceptions

      76. Outsiders are not welcome.

      77. GitHub as Authentication TEAMS, ORGANIZATIONS, AND USERS

      78. GitHub as Authentication USE OAUTH TO AUTHENTICATE USERS

      79. None

      80. github.com/atmos/sinatra_auth_github github_organization_access?('github') # => true

      81. GitHub as Authentication SECURITY • CONSISTENCY • COOLICTY

      82. DON’T REINVENT THE WHEEL YOUR AUTHENTICATION CAN BE FREE OAUTH

          RECAP

      83. hooks &hubot

      84. HUBOT OUR FRIENDLY CAMPFIRE BOT

      85. OVER 300 COMMANDS, LIKE... • deploy every GitHub app •

          run branch-level tests • play music in the office • tell us who is in the office • dynamically build usage graphs • send and receive text messages • mustache every image posted in chat • track who swears each day • rank by twitter followers • ...and way, way more

      86. github.com/github/hubot Hubot is not open source. LOL JK

      87. bots — github: know your branch status hubot what hasn’t

          been deployed? Zach Hubot Zach: Here's what hasn't been deployed on master yet: https://github.com/github/github/compare/{sha}...master

      88. bots — github: know your branch status hubot what hasn’t

          been deployed on issues2? Zach Hubot Zach: Here's what hasn't been deployed on issues2 yet: https://github.com/github/github/compare/{sha}...issues2

      89. bots — github: know your branch status hubot what hasn’t

          been deployed on issues2? Zach Hubot Zach: Here's what hasn't been deployed on issues2 yet: https://github.com/github/github/compare/{sha}...issues2

      90. bots — github: know your branch status hubot what hasn’t

          been deployed on issues2? Zach Hubot Zach: Here's what hasn't been deployed on issues2 yet: https://github.com/github/github/compare/{sha}...issues2

      91. https://github.com/site/sha bots — github: know your branch status #=> 2c8c2e9932d0caceecd3ed8ee2adcda0ece3e564

      92. bots — github: using the API hubot what are the

          pulls on holman/boom? Zach Hubot HTTParty should only be a soft dependency (master...jimmycuadra:soft-dependency) by jimmycuadra https://github.com/holman/boom/pull/46 boom roulette (master...culvr:master) by culvr https://github.com/holman/boom/pull/43

      93. bots — github: using the API hubot how many issues

          did we close today for github/github? Zach Hubot 13 issues closed on github/github in the past 24 hours.

      94. bots — github What does your company do over and

          over again? Can you automate that?

      95. HUBOT RECAP HUBOT KNOWS WHERE YOU LIVE DO NOT TRUST

          HIM

      96. secrets everyone has

      97. WE TUCK STUFF AWAY SOMETIMES. OOPS.

      98. EMOJI :heart: WORDS ARE FOR ACADEMICS, BRO :+1: :shipit: http://git.io/dmWZWg

          ...and so much more:

      99. SHORTCUTS QUIT MAKING ME DO THINGS ALL SLOW-LIKE w t

          ?

     100. IMAGES EVERYTHING IS BETTER WITH PIXELS ![title](url)

     101. DIFF+PATCH GOD I HATE PIXELS JUST GIVE ME TEXT .diff

          + .patch after most URLs

     102. require 'redcarpet' markdown = Redcarpet.new("Hello World!") puts markdown.to_html FENCED CODE

          IT’S LIKE CODE BUT WITH MORE FENCES

     103. ```ruby require 'redcarpet' markdown = Redcarpet.new("Hello World!") puts markdown.to_html ```

          FENCED CODE IT’S LIKE CODE BUT WITH MORE FENCES

     104. FENCED CODE IT’S LIKE CODE BUT WITH MORE FENCES require

          'redcarpet' markdown = Redcarpet.new("Hello World!") puts markdown.to_html

     105. MENTIONS GET SOMEONE ELSE TO DO YOUR WORK @username pull

          requests issues commits

     106. WHITESPACE IT SUCKS add ?w=1 to URLs

     107. REPO REFERENCES AROUND THE REPO, AROUND THE REPO, AROUND user/repo#issue

     108. GIT.IO OFFICIAL LAUNCH ANNOUNCEMENT https://github.com/holman/really- fucking-long-url-wtf-is-u-doing git.io/url

     109. GIT.IO OFFICIAL LAUNCH ANNOUNCEMENT http://git.io/nxVVig curl -i http://git.io -F 'url=#{url}'

          #{code}

     110. TOOLS + PROCESS = PRODUCT SIMPLE BETTER AWESOME THE BIG

          RECAP

     111. thanks!

     112. zach holman zachholman.com/talks @holman twitter+github:

      SpeakerDeck

      Top Categories

        * Programming
        * Technology
        * Storyboards
        * Featured decks
        * Featured speakers

      Use Cases

        * Storyboard Artists
        * Educators

      Resources

        * Help Center
        * Blog
        * Compare Speaker Deck
        * Advertising

      Features

        * Private URLs
        * Password Protection
        * Custom URLS
        * Scheduled publishing
        * Remove Branding
        * Restrict embedding
        * Notes

      Copyright © 2024 Speaker Deck, LLC.

      All slide content and descriptions are owned by their creators.

        * About
        * Terms
        * Privacy
        * DMCA
        * Accessibility Statement
How GitHub Uses GitHub to Build GitHub
https://speakerdeck.com/holman/how-github-uses-github-to-build-github