SlideShare une entreprise Scribd logo
1  sur  46
Télécharger pour lire hors ligne
How people build software
!
"
How GitHub Builds Software
Mike McQuaid
How people build software!
Mike McQuaid
Senior Engineer at GitHub
mike@mikemcquaid.com
https://github.com/MikeMcQuaid
https://twitter.com/MikeMcQuaid
2
!
How people build software!
!
How GitHub Builds Software
3
•macOS bootstrap
•GitHub clone
•GitHub bootstrap
•Writing GitHub code
•Committing GitHub code
•Creating a GitHub pull request
•Deploying a GitHub pull request
•Verifying a GitHub deployment
•Merging a GitHub pull request
How people build software!
!
macOS bootstrap
4
How people build software!
!
5
macOS bootstrap
How people build software!
!
macOS bootstrap
6
How people build software!
!
macOS bootstrap
7
How people build software!
!
macOS bootstrap
8
How people build software!
!
macOS bootstrap
9
How people build software!
!
macOS bootstrap
10
How people build software!
!
GitHub clone
11
How people build software!
!
GitHub clone
12
How people build software!
!
GitHub bootstrap
13
How people build software!
!
GitHub bootstrap
14
How people build software!
!
GitHub bootstrap
15
How people build software!
!
GitHub bootstrap
16
How people build software!
!
GitHub bootstrap
17
How people build software!
!
Writing GitHub code
18
How people build software!
!
Writing GitHub code
19
How people build software!
!
Writing GitHub code
20
How people build software!
!
Committing GitHub code
21
How people build software!
!
Committing GitHub code
22
How people build software!
!
Committing GitHub code
23
How people build software!
!
Committing GitHub code
24
How people build software!
!
Committing GitHub code
25
How people build software!
!
Creating a GitHub pull request
26
How people build software!
!
Creating a GitHub pull request
27
How people build software!
!
Creating a GitHub pull request
28
How people build software!
!
Deploying a GitHub pull request
29
How people build software!
!
Deploying a GitHub pull request
30
How people build software!
!
Deploying a GitHub pull request
31
How people build software!
!
Deploying a GitHub pull request
32
How people build software!
!
Deploying a GitHub pull request
33
How people build software!
!
Deploying a GitHub pull request
34
How people build software!
!
Verifying a GitHub deployment
35
How people build software!
!
Verifying a GitHub deployment
36
How people build software!
!
Verifying a GitHub deployment
37
How people build software!
!
Verifying a GitHub deployment
38
How people build software!
!
Merging a GitHub pull request
39
How people build software!
!
Merging a GitHub pull request
40
How people build software!
!
Merging a GitHub pull request
41
How people build software!
!
How GitHub Builds Software
42
•macOS bootstrap
•GitHub clone
•GitHub bootstrap
•Writing GitHub code
•Committing GitHub code
•Creating a GitHub pull request
•Deploying a GitHub pull request
•Verifying a GitHub deployment
•Merging a GitHub pull request
How people build software!
!
How You Should Build Software
43
•OS/hardware bootstrap
•Project(s) clone
•Project(s) bootstrap
•Writing project code
•Committing project code locally
•Creating a project pull request
•Deploying to production without needing human intervention
•Verifying a deployment without clicking around
•Merging a pull request and moving on
How people build software!
!
How To Build Software Better
44
•Automation over manual commands
•Scripting over copy-pasting from documentation
•ChatOps over SSH and manually running commands
•Automated testing over manual testing
•Monitoring over clicking around
How people build software!
!
Mentioned Open Source Projects
45
•macOS bootstrap
•https://github.com/MikeMcQuaid/strap
•https://github.com/Homebrew/brew
•https://github.com/Homebrew/homebrew-bundle
•GitHub bootstrap
•https://github.com/github/scripts-to-rule-them-all
How people build software
!
"
Questions?

Contenu connexe

Tendances

Tendances (20)

Introduction to Git and GitHub Part 1
Introduction to Git and GitHub Part 1Introduction to Git and GitHub Part 1
Introduction to Git and GitHub Part 1
 
Git and Github workshop
Git and Github workshopGit and Github workshop
Git and Github workshop
 
Remote and Open: How GitLab functions (presentation at Landing.careers)
Remote and Open: How GitLab functions (presentation at Landing.careers)Remote and Open: How GitLab functions (presentation at Landing.careers)
Remote and Open: How GitLab functions (presentation at Landing.careers)
 
Introduction to Git and GitHub Part 2
Introduction to Git and GitHub Part 2Introduction to Git and GitHub Part 2
Introduction to Git and GitHub Part 2
 
Git and GitHub | Concept about Git and GitHub Process | Git Process overview
Git and GitHub | Concept about Git and GitHub Process | Git Process overviewGit and GitHub | Concept about Git and GitHub Process | Git Process overview
Git and GitHub | Concept about Git and GitHub Process | Git Process overview
 
Github Case Study By Amil Ali
Github Case Study By Amil AliGithub Case Study By Amil Ali
Github Case Study By Amil Ali
 
Introduction to GitHub (workshop)
Introduction to GitHub (workshop)Introduction to GitHub (workshop)
Introduction to GitHub (workshop)
 
Hacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginnersHacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginners
 
Github basics
Github basicsGithub basics
Github basics
 
Github
GithubGithub
Github
 
Github
GithubGithub
Github
 
Getting started with GitHub
Getting started with GitHubGetting started with GitHub
Getting started with GitHub
 
Getting Started with GitHub
Getting Started with GitHubGetting Started with GitHub
Getting Started with GitHub
 
Contributing to Open Source #Hacktoberfest
Contributing to Open Source #HacktoberfestContributing to Open Source #Hacktoberfest
Contributing to Open Source #Hacktoberfest
 
GitLab 8.6 - Release Webcast
GitLab 8.6 - Release Webcast GitLab 8.6 - Release Webcast
GitLab 8.6 - Release Webcast
 
GitHub Basics - Derek Bable
GitHub Basics - Derek BableGitHub Basics - Derek Bable
GitHub Basics - Derek Bable
 
Intro to Git and GitHub
Intro to Git and GitHubIntro to Git and GitHub
Intro to Git and GitHub
 
Hacktoberfest slides
Hacktoberfest slidesHacktoberfest slides
Hacktoberfest slides
 
Inside GitHub
Inside GitHubInside GitHub
Inside GitHub
 
GitLab 8.5 Highlights and Step-by-step tutorial
GitLab 8.5 Highlights and Step-by-step tutorialGitLab 8.5 Highlights and Step-by-step tutorial
GitLab 8.5 Highlights and Step-by-step tutorial
 

En vedette

O'Leary - Using GitHub for Enterprise and Open Source Documentation
O'Leary - Using GitHub for Enterprise and Open Source DocumentationO'Leary - Using GitHub for Enterprise and Open Source Documentation
O'Leary - Using GitHub for Enterprise and Open Source Documentation
LavaCon
 

En vedette (9)

Using Git and GitHub Effectively at Emerge Interactive
Using Git and GitHub Effectively at Emerge InteractiveUsing Git and GitHub Effectively at Emerge Interactive
Using Git and GitHub Effectively at Emerge Interactive
 
Know the Science behind WorkFlows using Git & GitHhub
Know the Science behind WorkFlows using Git & GitHhubKnow the Science behind WorkFlows using Git & GitHhub
Know the Science behind WorkFlows using Git & GitHhub
 
MySQL Replication Evolution -- Confoo Montreal 2017
MySQL Replication Evolution -- Confoo Montreal 2017MySQL Replication Evolution -- Confoo Montreal 2017
MySQL Replication Evolution -- Confoo Montreal 2017
 
Finding Similar Projects in GitHub using Word2Vec and WMD
Finding Similar Projects in GitHub using Word2Vec and WMDFinding Similar Projects in GitHub using Word2Vec and WMD
Finding Similar Projects in GitHub using Word2Vec and WMD
 
Introduction to github using Egit
Introduction to github using EgitIntroduction to github using Egit
Introduction to github using Egit
 
MySQL 101 PHPTek 2017
MySQL 101 PHPTek 2017MySQL 101 PHPTek 2017
MySQL 101 PHPTek 2017
 
Become a Successful Web Developer in Web development Field in 2017
Become a Successful Web Developer in Web development Field in 2017Become a Successful Web Developer in Web development Field in 2017
Become a Successful Web Developer in Web development Field in 2017
 
O'Leary - Using GitHub for Enterprise and Open Source Documentation
O'Leary - Using GitHub for Enterprise and Open Source DocumentationO'Leary - Using GitHub for Enterprise and Open Source Documentation
O'Leary - Using GitHub for Enterprise and Open Source Documentation
 
Advanced MySQL Query Optimizations
Advanced MySQL Query OptimizationsAdvanced MySQL Query Optimizations
Advanced MySQL Query Optimizations
 

Similaire à How GitHub Builds Software at Ruby Conference Kenya 2017 by Mike McQuaid

Untangling fall2017 week2_try2
Untangling fall2017 week2_try2Untangling fall2017 week2_try2
Untangling fall2017 week2_try2
Derek Jacoby
 
How Github uses Github to develop and deploy GitHub
How Github uses Github to develop and deploy GitHubHow Github uses Github to develop and deploy GitHub
How Github uses Github to develop and deploy GitHub
Johannes Nicolai
 

Similaire à How GitHub Builds Software at Ruby Conference Kenya 2017 by Mike McQuaid (20)

Building New on Top of Old: The Argument for Simplicity
Building New on Top of Old: The Argument for SimplicityBuilding New on Top of Old: The Argument for Simplicity
Building New on Top of Old: The Argument for Simplicity
 
Untangling fall2017 week2
Untangling fall2017 week2Untangling fall2017 week2
Untangling fall2017 week2
 
Untangling fall2017 week2_try2
Untangling fall2017 week2_try2Untangling fall2017 week2_try2
Untangling fall2017 week2_try2
 
orlando-codecamp-meet-copilot-24-Feb-2024_pub.pptx
orlando-codecamp-meet-copilot-24-Feb-2024_pub.pptxorlando-codecamp-meet-copilot-24-Feb-2024_pub.pptx
orlando-codecamp-meet-copilot-24-Feb-2024_pub.pptx
 
GitHub Enterprise and Automation with Codedeploy - AWS Summit SG 2017
GitHub Enterprise and Automation with Codedeploy - AWS Summit SG 2017GitHub Enterprise and Automation with Codedeploy - AWS Summit SG 2017
GitHub Enterprise and Automation with Codedeploy - AWS Summit SG 2017
 
Vagrant, Chef and TYPO3 - A Love Affair
Vagrant, Chef and TYPO3 - A Love AffairVagrant, Chef and TYPO3 - A Love Affair
Vagrant, Chef and TYPO3 - A Love Affair
 
Smile Gupta - Hacktoberfest Celebration 2020
Smile Gupta - Hacktoberfest Celebration 2020Smile Gupta - Hacktoberfest Celebration 2020
Smile Gupta - Hacktoberfest Celebration 2020
 
Instant app Intro
Instant app IntroInstant app Intro
Instant app Intro
 
How Github uses Github to develop and deploy GitHub
How Github uses Github to develop and deploy GitHubHow Github uses Github to develop and deploy GitHub
How Github uses Github to develop and deploy GitHub
 
Hello, Git!
Hello, Git!Hello, Git!
Hello, Git!
 
GitHub Actions Security
GitHub Actions SecurityGitHub Actions Security
GitHub Actions Security
 
Git and Github
Git and GithubGit and Github
Git and Github
 
Hacking on WildFly 9
Hacking on WildFly 9Hacking on WildFly 9
Hacking on WildFly 9
 
[KubeCon NA 2018] Effective Kubernetes Develop: Turbocharge Your Dev Loop - P...
[KubeCon NA 2018] Effective Kubernetes Develop: Turbocharge Your Dev Loop - P...[KubeCon NA 2018] Effective Kubernetes Develop: Turbocharge Your Dev Loop - P...
[KubeCon NA 2018] Effective Kubernetes Develop: Turbocharge Your Dev Loop - P...
 
Intro to Git, GitHub, and Devpost
Intro to Git, GitHub, and DevpostIntro to Git, GitHub, and Devpost
Intro to Git, GitHub, and Devpost
 
The Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHubThe Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHub
 
Drools and jBPM 6 Overview
Drools and jBPM 6 OverviewDrools and jBPM 6 Overview
Drools and jBPM 6 Overview
 
DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...
DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...
DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...
 
Using Git to Organize Your Project
Using Git to Organize Your ProjectUsing Git to Organize Your Project
Using Git to Organize Your Project
 
5/ GitHub Inner Source @ OPEN'16
5/ GitHub Inner Source @ OPEN'165/ GitHub Inner Source @ OPEN'16
5/ GitHub Inner Source @ OPEN'16
 

Plus de Michael Kimathi

Opal,The Journey from Javascript to Ruby at Ruby Conf Kenya 2017 by Bozhidar ...
Opal,The Journey from Javascript to Ruby at Ruby Conf Kenya 2017 by Bozhidar ...Opal,The Journey from Javascript to Ruby at Ruby Conf Kenya 2017 by Bozhidar ...
Opal,The Journey from Javascript to Ruby at Ruby Conf Kenya 2017 by Bozhidar ...
Michael Kimathi
 

Plus de Michael Kimathi (14)

Soni pi at rubycongkenya2017 by rishi jain
Soni pi at rubycongkenya2017 by rishi jainSoni pi at rubycongkenya2017 by rishi jain
Soni pi at rubycongkenya2017 by rishi jain
 
Coopetition slides at ruby conference kenya 2017 by james corey
Coopetition slides at ruby conference kenya 2017 by james coreyCoopetition slides at ruby conference kenya 2017 by james corey
Coopetition slides at ruby conference kenya 2017 by james corey
 
Gis and Ruby 101 at Ruby Conf Kenya 2017 by Kamal Ogudah
Gis and Ruby 101 at Ruby Conf Kenya 2017 by Kamal OgudahGis and Ruby 101 at Ruby Conf Kenya 2017 by Kamal Ogudah
Gis and Ruby 101 at Ruby Conf Kenya 2017 by Kamal Ogudah
 
Ruby 4.0 To Infinity and Beyond at Ruby Conference Kenya 2017 by Bozhidar Batsov
Ruby 4.0 To Infinity and Beyond at Ruby Conference Kenya 2017 by Bozhidar BatsovRuby 4.0 To Infinity and Beyond at Ruby Conference Kenya 2017 by Bozhidar Batsov
Ruby 4.0 To Infinity and Beyond at Ruby Conference Kenya 2017 by Bozhidar Batsov
 
Opal,The Journey from Javascript to Ruby at Ruby Conf Kenya 2017 by Bozhidar ...
Opal,The Journey from Javascript to Ruby at Ruby Conf Kenya 2017 by Bozhidar ...Opal,The Journey from Javascript to Ruby at Ruby Conf Kenya 2017 by Bozhidar ...
Opal,The Journey from Javascript to Ruby at Ruby Conf Kenya 2017 by Bozhidar ...
 
Helping Yourself With_Open_Source_Software at Ruby Conference Kenya 2017 by M...
Helping Yourself With_Open_Source_Software at Ruby Conference Kenya 2017 by M...Helping Yourself With_Open_Source_Software at Ruby Conference Kenya 2017 by M...
Helping Yourself With_Open_Source_Software at Ruby Conference Kenya 2017 by M...
 
Metaprogamming the Ruby Way by Joannah Nanjekye at Ruby ConfKE2017
Metaprogamming the Ruby Way by Joannah Nanjekye at  Ruby ConfKE2017Metaprogamming the Ruby Way by Joannah Nanjekye at  Ruby ConfKE2017
Metaprogamming the Ruby Way by Joannah Nanjekye at Ruby ConfKE2017
 
Scaling Rails with Ruby-prof -- Ruby Conf Kenya 2017 by Ben Hughes
Scaling Rails with Ruby-prof -- Ruby Conf Kenya 2017 by Ben Hughes Scaling Rails with Ruby-prof -- Ruby Conf Kenya 2017 by Ben Hughes
Scaling Rails with Ruby-prof -- Ruby Conf Kenya 2017 by Ben Hughes
 
Techpreneurship Triathon at Ruby Conference Kenya 2017 by Bernard Banta
Techpreneurship Triathon at Ruby Conference Kenya 2017 by Bernard BantaTechpreneurship Triathon at Ruby Conference Kenya 2017 by Bernard Banta
Techpreneurship Triathon at Ruby Conference Kenya 2017 by Bernard Banta
 
The Curious Case of Wikipedia Parsing at Ruby Conference Kenya 2017 by victor...
The Curious Case of Wikipedia Parsing at Ruby Conference Kenya 2017 by victor...The Curious Case of Wikipedia Parsing at Ruby Conference Kenya 2017 by victor...
The Curious Case of Wikipedia Parsing at Ruby Conference Kenya 2017 by victor...
 
When The Whole World is Your Database at Ruby Conference Kenya by Victor Shep...
When The Whole World is Your Database at Ruby Conference Kenya by Victor Shep...When The Whole World is Your Database at Ruby Conference Kenya by Victor Shep...
When The Whole World is Your Database at Ruby Conference Kenya by Victor Shep...
 
Building Communities by Michael Kimathi Ruby Conference Kenya 2017
Building Communities by Michael Kimathi Ruby Conference Kenya 2017Building Communities by Michael Kimathi Ruby Conference Kenya 2017
Building Communities by Michael Kimathi Ruby Conference Kenya 2017
 
Leveling Up Through OSS by William Wanyama Ruby ConfKKE 2017
Leveling Up Through OSS by William Wanyama Ruby ConfKKE 2017Leveling Up Through OSS by William Wanyama Ruby ConfKKE 2017
Leveling Up Through OSS by William Wanyama Ruby ConfKKE 2017
 
Education shaping innovation ecosystem by prof. felix musau
Education shaping innovation ecosystem by prof. felix musauEducation shaping innovation ecosystem by prof. felix musau
Education shaping innovation ecosystem by prof. felix musau
 

Dernier

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 

Dernier (20)

Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 

How GitHub Builds Software at Ruby Conference Kenya 2017 by Mike McQuaid

  • 1. How people build software ! " How GitHub Builds Software Mike McQuaid
  • 2. How people build software! Mike McQuaid Senior Engineer at GitHub mike@mikemcquaid.com https://github.com/MikeMcQuaid https://twitter.com/MikeMcQuaid 2 !
  • 3. How people build software! ! How GitHub Builds Software 3 •macOS bootstrap •GitHub clone •GitHub bootstrap •Writing GitHub code •Committing GitHub code •Creating a GitHub pull request •Deploying a GitHub pull request •Verifying a GitHub deployment •Merging a GitHub pull request
  • 4. How people build software! ! macOS bootstrap 4
  • 5. How people build software! ! 5 macOS bootstrap
  • 6. How people build software! ! macOS bootstrap 6
  • 7. How people build software! ! macOS bootstrap 7
  • 8. How people build software! ! macOS bootstrap 8
  • 9. How people build software! ! macOS bootstrap 9
  • 10. How people build software! ! macOS bootstrap 10
  • 11. How people build software! ! GitHub clone 11
  • 12. How people build software! ! GitHub clone 12
  • 13. How people build software! ! GitHub bootstrap 13
  • 14. How people build software! ! GitHub bootstrap 14
  • 15. How people build software! ! GitHub bootstrap 15
  • 16. How people build software! ! GitHub bootstrap 16
  • 17. How people build software! ! GitHub bootstrap 17
  • 18. How people build software! ! Writing GitHub code 18
  • 19. How people build software! ! Writing GitHub code 19
  • 20. How people build software! ! Writing GitHub code 20
  • 21. How people build software! ! Committing GitHub code 21
  • 22. How people build software! ! Committing GitHub code 22
  • 23. How people build software! ! Committing GitHub code 23
  • 24. How people build software! ! Committing GitHub code 24
  • 25. How people build software! ! Committing GitHub code 25
  • 26. How people build software! ! Creating a GitHub pull request 26
  • 27. How people build software! ! Creating a GitHub pull request 27
  • 28. How people build software! ! Creating a GitHub pull request 28
  • 29. How people build software! ! Deploying a GitHub pull request 29
  • 30. How people build software! ! Deploying a GitHub pull request 30
  • 31. How people build software! ! Deploying a GitHub pull request 31
  • 32. How people build software! ! Deploying a GitHub pull request 32
  • 33. How people build software! ! Deploying a GitHub pull request 33
  • 34. How people build software! ! Deploying a GitHub pull request 34
  • 35. How people build software! ! Verifying a GitHub deployment 35
  • 36. How people build software! ! Verifying a GitHub deployment 36
  • 37. How people build software! ! Verifying a GitHub deployment 37
  • 38. How people build software! ! Verifying a GitHub deployment 38
  • 39. How people build software! ! Merging a GitHub pull request 39
  • 40. How people build software! ! Merging a GitHub pull request 40
  • 41. How people build software! ! Merging a GitHub pull request 41
  • 42. How people build software! ! How GitHub Builds Software 42 •macOS bootstrap •GitHub clone •GitHub bootstrap •Writing GitHub code •Committing GitHub code •Creating a GitHub pull request •Deploying a GitHub pull request •Verifying a GitHub deployment •Merging a GitHub pull request
  • 43. How people build software! ! How You Should Build Software 43 •OS/hardware bootstrap •Project(s) clone •Project(s) bootstrap •Writing project code •Committing project code locally •Creating a project pull request •Deploying to production without needing human intervention •Verifying a deployment without clicking around •Merging a pull request and moving on
  • 44. How people build software! ! How To Build Software Better 44 •Automation over manual commands •Scripting over copy-pasting from documentation •ChatOps over SSH and manually running commands •Automated testing over manual testing •Monitoring over clicking around
  • 45. How people build software! ! Mentioned Open Source Projects 45 •macOS bootstrap •https://github.com/MikeMcQuaid/strap •https://github.com/Homebrew/brew •https://github.com/Homebrew/homebrew-bundle •GitHub bootstrap •https://github.com/github/scripts-to-rule-them-all
  • 46. How people build software ! " Questions?