Here are the slides for a talk I gave in Osaka, Japan, in 2014, about how design happens at GitHub.
! cobyism — Osaka, 2014HOWDESIGNHAPPENSAT GITHUB
View Slide
@cobyism
ࢲGitHubͷσβΠφʔͱ։ൃऀͰ͢
GitHubɺαϯϑϥϯγείʹڌΛஔ͕͘ɺࢲΞΠϧϥϯυʹॅΜͰ͍·͢
ࢲɺϦϞʔτͰಇ͘ଟ͘ͷࣾһͷதͷҰਓͰ͢
60ˋ͕ϦϞʔτͰ͢ɻ
DESIGNHow it works at GitHubํ๏ઃܭGitHubͷ࣌ʹى͜Γ·͢
σβΠϯɺίʔυͰൃੜͨ͠
σβΠϯɺϓϧཁٻͰൃੜ
Pull Requests helpsettle arguments.ϓϧཁٻɺҾΛղܾ͢Δखॿ͚
Pull Requestskeep you groundedin reality.ϓϧཁٻɺ͋ͳ͕ͨݱ࣮ʹযΛ͓ͯͯ͘
Design happensin ...σβΠϯɺϒϥβͰى͜Δ
Design hereis real.ϒϥβʔͰߦ͏σβΠϯݱ࣮ɻ
Design it once,not twiceઃܭҰɺೋͰͳ͍
Design here isalways current.ϒϥβͰߦ͏ઃܭৗʹ࠷৽Ͱ͋Δɻ
Just commit.ίϛοτɺ͓ΑͼͦΕ͕͘ͳΔ
big pictureFocus onthe first࠷ॳશମ૾͔Βݟ·͠ΐ͏
Design happenswith prototyping.σβΠϯϓϩτλΠϓΛ͍ͬͺ͍࡞Δ͜ͱʹΑͬͯߦΘΕΔ
[ REDACTED ]ൿີ!
Design happenswith lorem ipsum dolor sit amet.ϓϨʔεϗϧμςΩετ?
Design happenswith real data.σβΠϯʹຊͷσʔλ͕ඞཁ
Design happenshidden behindfeature flags.σβΠϯػೳϑϥάͰӅͯ͠ຊ൪ڥͰςετ͞Ε͍ͯΔɻ
def new_feature_enabled?…end
def new_feature_enabled?preview_features?end
def new_feature_enabled?preview_features? &&team_access?(:some_team)end
def new_feature_enabled?trueend
Beware of feature flags.ػೳϑϥάΛ͏ͱԿΛӅ͍ͯͯ͠Կ͕ग़ՙ͞Ε͍ͯΔ͔͕Θ͔Βͳ͘͜ͱ͋Δɻ
Dogfooding ispowerful, but ithas it’s limits.ࣗͰࣗͷϓϩμΫτΛςετ͢Δͷڧྗ͚ͩͲɺݶք͋Δ
Design happenswith feedback.ϑΟʔυόοΫ͕͋ͬͯͦ͜σβΠϯى͜Δ
Design happenswith quantitativefeedback.σβΠϯɺఆྔతͳϑΟʔυόοΫͰൃੜ
Design happenswith qualitativefeedback.σβΠϯɺఆੑతͳϑΟʔυόοΫͰൃੜ
Design iseveryone’sresponsibility.σβΠϯΈΜͳͷɻ
Design oftenbegins withoutany designer input.σβΠϯ݁ߏසൟʹσβΠφʔ͕ؔΘΒͳͯ࢝͘·Δɻ
Beware of designby committee.ҕһձʹΑΔσβΠϯ͚͞·͠ΐ͏ʂ
Beware of drive-by comments.௨ߦਓ͔Βͷίϝϯτʹҙ͍ͯͩ͘͠͞
Design should bean open process.σβΠϯɺಁ໌ͳϓϩηεͰ͋Δ͖
Open designis the future.ಁ໌σβΠϯະདྷ͕͋Δ
Open designis really hard.ಁ໌ੑͷ͋ΔσβΠϯ࣮ݱ͢Δͷຊʹ͍͠
Open designrequires making atparadigm shift.ಁ໌ͳσβΠϯɺύϥμΠϜγϑτ͕ඞཁͰ͢
Open designmeans showingwork early.ಁ໌ੑͷ͋ΔσβΠϯʹૣ͍ஈ֊ʹσβΠϯΛݟͤΔඞཁ͕͋Γ·͢ɻ
Open designmeans acceptingimperfection.ಁ໌ੑͷ͋ΔσβΠϯʹᘳͰͳ͍͜ͱΛड͚ೖΕΔඞཁ͕͋Δɻ
Open design helpsbuild empathy.ಁ໌ੑͷ͋ΔσβΠϯʹڞײ͋͑͠ΔؔΛߏங͢Δඞཁ͕͋Δ
Open designmeans articulatingdesign decisions.σβΠϯʹࢸΔҙࢥܾఆΛ໌֬ʹදݱͰ͖Δඞཁ͕͋Δɻ
Open designmeans sacrificingyour pride.ಁ໌ੑͷ͋ΔσβΠϯʹࣗͷϓϥΠυΛࣺͯΔඞཁ͕͋Δɻ
Open design meanstrusting people.ಁ໌ੑͷ͋ΔσβΠϯʹνʔϜϝʔτΛ৴པ͢Δඞཁ͕͋Δɻ
Open design meansbeing respectful.ಁ໌ੑͷ͋ΔσβΠϯʹϑΟʔυόοΫΛݴ͏࣌ʹ૬खΛଚॏ͢Δඞཁ͕͋Δɻ
Open design takesconstant work.ಁ໌ੑͷ͋ΔσβΠϯʹৗʹྗͯ͠վળ͢Δඞཁ͕͋Δɻ
Thank you![email protected]@cobyismͲ͏͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ