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 Builds Products
Search
Brent Beer
October 01, 2013
Technology
2
170
How GitHub Builds Products
Given at GoToAarhus 2013.
Brent Beer
October 01, 2013
Tweet
Share
More Decks by Brent Beer
See All by Brent Beer
How GitHub Does Devops
brntbeer
0
150
Tips and Tricks: Gotta Git Them All
brntbeer
3
450
Pull Request, code review and the GitHub Flow
brntbeer
0
240
Everything I wish I knew when I started using GitHub
brntbeer
1
7.2k
Fast Deployment and Monitoring For HelsinkiJS
brntbeer
1
260
Fast Deployment and Monitoring
brntbeer
1
110
Collaboration Behind your Firewall
brntbeer
0
56
Collaborative Teaching for More Effective Learning
brntbeer
1
160
Other Decks in Technology
See All in Technology
ルーターでプレゼンする
puhitaku
1
3.4k
生成AIの変革の時代に、直近1年で直面した課題とその解決策
ktc_wada
1
800
.NET Profiler in 2024.
kkamegawa
2
2.7k
自己改善からチームを動かす! 「セルフエンジニアリングマネージャー」のすゝめ
shoota
6
1.1k
AWS アーキテクチャ作図入門/aws-architecture-diagram-101
ma2shita
16
6.6k
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
7
1.4k
AWSやJAWS-UGとの出会いを振り返る
yoyoyopg
1
190
今日からできる!簡単 .NET 高速化 Tips -2024 edition-
xin9le
7
4.9k
【基本】データベース設計
oracle4engineer
PRO
2
290
【SORACOM UG 東海】あらゆるモノがつながる社会へ、IoT と SORACOM
soracom
PRO
1
430
LayerXにおけるLLMプロダクト開発の今までとこれから
layerx
PRO
4
1.5k
M5と自作基板をくっつけてみた〜M5 Japan Tour 2024 Spring 福冈 (Fukuoka|福岡)〜
keropiyo
1
250
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Building a Scalable Design System with Sketch
lauravandoore
457
32k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
245
20k
[RailsConf 2023] Rails as a piece of cake
palkan
28
4k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
117
18k
Typedesign – Prime Four
hannesfritz
36
2.1k
Art, The Web, and Tiny UX
lynnandtonic
290
19k
Optimizing for Happiness
mojombo
370
69k
Git: the NoSQL Database
bkeepers
PRO
423
63k
It's Worth the Effort
3n
180
27k
GraphQLの誤解/rethinking-graphql
sonatard
56
9.3k
Visualization
eitanlees
137
14k
Transcript
How GitHub Builds Products
What is GitHub?
Best place to design, build, and ship software
We started out just hacking on problems that we had
with developing software
We've kept that mentality; you should be able to work
on cool things that interest you
This is how we hire
This is how we move between roles
This is how we build products and software
Use the community for what they're good at Lesson 1:
"Simple: at GitHub we hire 'The Girl or Guy Who
Wrote X,' where X is an awesome project we all use or admire. What's your X?" - Chris Wanstrath
We built a lot of GitHub on existing open source
Or we open sourced almost everything we built in the
process
Grit
Grit Ernie
Grit Ernie Resque
Grit Ernie Resque Hubot
Grit Ernie Resque Hubot Boxen
Grit Ernie Resque Hubot Boxen Albino
Grit Ernie Resque Hubot Boxen Albino Akavanche
Grit Ernie Resque Hubot Boxen Albino Linguist Akavanche
Grit Ernie Resque Hubot Boxen Albino Linguist Shimmer Akavanche
Grit Ernie Resque Hubot Boxen Albino Linguist Shimmer Akavanche ETC
We need these projects to run our company, why not
share them!
Now we can see who would work on them with
us
We not only open source things, but use others' open
source as well
Rails' success comes from the community, how much people loved
it, and how much they want to use it
People within the community either worked on Rails itself, or
gems that became essential for many projects
They sound like people we can get along with!
It's also super easy to evaluate their code and what
working with them would be like by seeing their commits on existing projects
Rick "Risk Danger" Olson TECHNOWEENIE
None
attachment_fu
attachment_fu acts_as_authenticated
attachment_fu acts_as_authenticated restful-authentication
attachment_fu acts_as_authenticated restful-authentication Beast and Mophisto
attachment_fu acts_as_authenticated restful-authentication Beast and Mephisto Rails
Early work within the rails community made him stand out.
His code interested us and we used some of it too!
Josh Peek Josh
rack
rack rack-mount
rack rack-mount rack-ssl
rack rack-mount rack-ssl tilt
rack rack-mount rack-ssl tilt Rails
Not only were they working on the tools that drove
our company, they contributed to employees' open source projects as well
If you're going to hire people to work on your
products, it helps if they're already working on open source parts of that product
Let your employees find things they love working on, and
see them grow into roles they love Lesson 2:
3D printed objects
None
None
None
"But we don't have a 3D printer. So we should
get one. That's everything." -Mike Skalnik
2 weeks later a printer showed up
"This is great! I can print real things!"
None
None
None
Things slow down when you have over 180 employees trying
to print something
Mike Skalnik (@skalnik) proposes coming into the office on a
Saturday to work on Hubot integration
Slava Shirokov (@sshirokov) also came into the office to help
Hubot integration done, camera set up to view it, amazing
What if we could collaborate on these models before we
finalize them?
What platform would be good to collaborate on?
Render
None
A few people had an interest in 3d models; it
turned into rendering on GitHub for everyone
Sean Bryant (@sbryant) has been helping a lot lately too.
None
Add Ben Balter (@benbalter). "Let's work with MapBox to show
map data on github.com"
Showing maps in repositories
None
None
None
Points of interest in a city
Points of interest in a city Good wifi locations
Points of interest in a city Good wifi locations Political
districts
Points of interest in a city Good wifi locations Political
districts Fire hydrants
Small hack projects can turn into amazing new features
Let your employees work on things that interest them. They'll
pour so much passion into it.
See a problem within an app you use, start to
fix it slowly. Then iterate often and turn it into a full product Lesson 3:
None
We love building things ourselves
You don't always have the luxury of time to do
this
You don't always have the luxury of time to do
this
It may end up cheaper to use an existing product
As you grow, this may start to not be true
You'll notice pain in using it. And you'll deal with
it
But then you can't deal with it
We started making really small changes. Just to increase some
efficiency.
Efficiency went up for a while, then our user base
grew faster and we had more issues
Well, they have an API. Why don't we use that?
Still using them as a database and application server
Still have some problems
Maybe we could ask the company for more help
Eventually we would want customization Maybe we could ask the
company for more help
We realized we should just hire more people for this
None
Support
Developers
It may take a few iterations, but you can have
your cake and eat it too
Build for need as it arrises instead of just putting
all your eggs in one basket from the start
How does GitHub Build Products?
Find people who share your interest or are already helping
you
Allow people to explore new horizons and find new interest.
It'll pay off for you in the end one way or another
Start small, iterate fast, and keep doing the smallest thing
possible to ship something that works
Thank you
[email protected]
@brntbeer Start Building Brent Beer
References Who we hire - http://ozmm.org/posts/who_we_hire.html Open Source Almost Everything
-http://tom.preston-werner.com/2011/11/22/open- source-everything.html How to Open Source a Project - https://gist.github.com/atmos/6631554 Slides - http://bit.ly/GH-products-aar13