Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Keeping important code alive (SeattleJS, March ...
Search
Charlie Robbins
March 12, 2015
Technology
950
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Keeping important code alive (SeattleJS, March 2015)
An exercise in Open source, psychology, and software engineering
Charlie Robbins
March 12, 2015
More Decks by Charlie Robbins
See All by Charlie Robbins
Flexible Design Systems
indexzero
0
120
Exploring Leadership, Mangement, and Mentorship In Open Source
indexzero
0
6
Delivering Flexible Cross Platform Design Systems
indexzero
0
710
Scaling Webpack to Thousands of Concurrent Builds
indexzero
1
210
Everything You Wanted to Know About Logging
indexzero
1
210
Exploring Leadership, Mangement, and Mentorship in Open Source
indexzero
1
140
Serverless Front-End Deployments using npm
indexzero
2
240
Understanding the npm wire API
indexzero
0
380
Node.js @ GoDaddy in 2015
indexzero
1
130
Other Decks in Technology
See All in Technology
【Oracle AI SPOTLIGHT ウェビナー】事例から見る!なぜOCIが選ばれたのか ― AI時代のクラウド戦略を紐解く ―
oracle4engineer
PRO
1
140
[re:Invent2026事前勉強会(有志開催)]続きは、ラスベガスの廊下で / continue-in-the-vegas-hallway
sh_fk2
0
460
"AWSはちょっと苦手"でも大丈夫。AWS Blocks で手軽に作る Flutter のバックエンド #FlutterKaigi
tacck
PRO
0
120
AIに任せられるFlutterコードベースを作る 〜仕様をコードで表し、ハーネスで守る〜
myohei
1
590
Technical Project Manager の役割とやりがい、少しだけ AI
yoshiiryo1
0
510
kintoneで在庫管理システムを作るときの要件定義・設計ポイント
kai0707
0
190
デザインレビューは自動化できるのか?─ Flutter × Figma で UI 品質保証を考える
techiro
2
690
「作れる」と「リリースできる」の間にあったもの── PdMを外して見えた、PdMがやるべき仕事/Buildable ≠ Shippable: What Removing the PM Taught Me About the PM’s Job
yappli_developers
0
400
書き手が人でもAIでも正しくなる道、SREを埋め込んだDeveloper Platform / tech drivers day8
chmikata
4
870
re:Invent の去年のスケジュールを公開します!
miu_crescent
PRO
0
140
攻撃 3 時間 vs 復旧 10 時間。アクセスキー流出の非対称性を体感するために CTF を作った話
kazzpapa3
1
130
ひとりで始めた AI駆動開発、チームに広げて何が変わったのか
kenichiodo
1
200
Featured
See All Featured
Design in an AI World
tapps
1
380
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
How STYLIGHT went responsive
nonsquared
100
6.3k
Building Applications with DynamoDB
mza
96
7.3k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
560
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
500
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
How to make the Groovebox
asonas
2
2.5k
Test your architecture with Archunit
thirion
2
2.5k
Transcript
None
IMPORTANT CODE ALIVE Keeping
IMPORTANT CODE ALIVE Keeping An EXercise in Open source, psychology,
And software engineering
None
Now. LET ME TELL YOU A STORY...
A Long Time AGo In A GalaXy Far Far
Away...
A Long Time AGo In A GalaXy Far Far
Away...
A Long Time AGo In A GalaXy Far Far
Away... OPEN SOURCE It s a Story ’ Actually ABOUT
MID 2010 NODEJITSU STARTED In NODE.JS WAS LIKE AND BACK
THEN
None
THE WILD WEST
THE WILD WEST Or Maybe...
None
AN UNTOUCHED PARADISE?
AN UNTOUCHED PARADISE? Some might say...
None
THE MANCHURIAN CANDIDATE?
THE MANCHURIAN CANDIDATE? NO MATTER WHAT...
THE MODULES WE NEEDED Were like...
404 not found
404 not found SO, like many others
404 not found SO, like many others
WE WROTE THEM
404 not found SO, like many others
WE WROTE THEM OURselves
None
THE BEST FEELINGS Ever. For Serious. CERTAINLY ONE OF
None
WRITE NODE.jS MODULES WE WANT YOU TO
None
And WE DID!
And WE DID! LAST MONTH, Just my own npm
modules totaled over...
10,000,000+ downloads Source: npm-stats.com
IT WAS Truly Humbling 10,000,000+ downloads Source: npm-stats.com
IT WAS Truly Humbling 10,000,000+ downloads Source: npm-stats.com But IT
WAS ALSO...
None
ABSOLUTELY TERRIfying
None
BECAUSE BACK TO OUR STORY...
BECAUSE BACK TO OUR STORY... IT TURNS OUT
RUNNING A STARTUP
RUNNING A STARTUP Is A LOT OF WORK
None
REMEMBER THAT SUPER HAPPY FEELING?
None
FROM YOUR USERS TOTALLY SUCKS TAKING ABUSE “ ” It
turns out JUST
40#&'6$,*/(/*$&
40#&'6$,*/(/*$& Please: BE #$%@ing Nice
ASIDE
ASIDE USING TWITTER IS LIKE....
....EXCEPT 140 CHARACTERS IS EVEN WORSE. ASIDE
USING TWITTER IS LIKE....
None
CULTIVATE PERSONAL INTERACTION
CULTIVATE PERSONAL INTERACTION WHEN IN DOUBT, FOLLow-up Privately
CULTIVATE PERSONAL INTERACTION WHEN IN DOUBT, FOLLow-up Privately THINK OF
IT AS DISCRETION.
CULTIVATE PERSONAL INTERACTION WHEN IN DOUBT, FOLLow-up Privately THINK OF
IT AS DISCRETION. ... Or Having some Class.
None
ONCE AGAIN BACK TO OUR STORY...
ONCE AGAIN BACK TO OUR STORY... WITHOUT THE ADEQUATE
TIME TO MAINTAIN THE MODULES I WROTE...
None
2,000+ UNREAD GITHUB EMAILs
2,000+ UNREAD GITHUB EMAILs TONS OF NEGATIVITY
2,000+ UNREAD GITHUB EMAILs TONS OF NEGATIVITY IS
THIS PROJECT Abandoned?” “
YOUR MODULE'S BAD AND YOU SHOULD FEEL BAD
YOUR MODULE'S BAD AND YOU SHOULD FEEL BAD TRUST
ME ....
YOUR MODULE'S BAD AND YOU SHOULD FEEL BAD TRUST
ME .... .... i did.
None
AGAIN: BE #$%@ing Nice
None
FROM NEW YORK I AM
FROM NEW YORK I AM AND SO IS
None
None
WITH GREAT POWER COMES GREAT RESPONSIBILITY
None
OPEN SOURCE IT CAN BE DONE!
#PICARDTIPS
None
You Are Probably Thinking BUT HOW?
SCIENCE CAT SAYS
SCIENCE CAT SAYS “ ” GOOD QUESTION
None
WRITING CODE
WRITING CODE IS
WRITING CODE IS ABSOLUTELY NOT
WRITING CODE IS THE ANSWER ABSOLUTELY NOT
First:
First: WILLING TO HELP FIND ANYONE WHO IS WEEKLY MEETINGS
AND START
None
TRIAGE ALL THE THINGS!
ISSUES, FIRST. TRIAGE ALL THE THINGS!
ISSUES, FIRST. THEN PULL REQUESTS. TRIAGE ALL THE
THINGS!
None
HIGH LEVEL PROBLEMS FIND THE TRIAGE INTO BUCKETS AND
HIGH LEVEL PROBLEMS FIND THE TRIAGE INTO BUCKETS AND
NEXT-PATCH
HIGH LEVEL PROBLEMS FIND THE TRIAGE INTO BUCKETS AND
NEXT-MINOR NEXT-PATCH
HIGH LEVEL PROBLEMS FIND THE TRIAGE INTO BUCKETS AND
NEXT-MINOR NEXT-MAJOR NEXT-PATCH
None
THEN YOU CAN LAND YOUR PRS
THEN YOU CAN LAND YOUR PRS DO NOT REFACTOR
THE THINGS YOU HATE YET. For SeRIOUS.
None
BUT I HATE THE THINGS I HATE ABOUT my Code!
PATIENCE
LANDING OLD PRS IS HARD IT GETS EVEN HARDER AS
MORE OF THE CODE CHANGES
None
JUST ASK THEM TO RESUBMIT
THERE IS USUALLY ONLY ONE CHANCE PER PR. DEVELOPERS VERY
RARELY COMMIT
#&'6$,*/($0/4*45&/5
#&'6$,*/($0/4*45&/5 THIS PERSON DO NOT BE PLEASE
None
IT IS EASIER TO MERGE RATHER THAN REFACTOR THEN REFACTOR
THEN MERGE
None
ON SOFTWARE QUALITY
ON SOFTWARE QUALITY AND HUMILITY
None
DO NOT BE AFRAID
DO NOT BE AFRAID NOT EVERYONE PAINTS THE MONA
LISA. AND CERTAINLY NOT EVERY TIME.
None
This MODULE, BLACKSMITH
This MODULE, BLACKSMITH But MEANWHILE....
None
HERE COMES METALSMITH
nooo .... It's not true!
None
you're going to find THE TRUTHS WE CLING TO THAT
MANY OF OUR OWN POINT OF VIEW DEPEND GREATLY ON
%06#-&%08/ %&13&$"5& (*7&"8": 45*--0/(0*/( IT IS A PRACTICE.
%06#-&%08/ %&13&$"5& (*7&"8": 45*--0/(0*/( IT IS A PRACTICE.
SO DOUBLE DOWN,
%06#-&%08/ %&13&$"5& (*7&"8": 45*--0/(0*/( IT IS A PRACTICE.
SO DOUBLE DOWN, DEPRECATE,
%06#-&%08/ %&13&$"5& (*7&"8": 45*--0/(0*/( IT IS A PRACTICE.
SO DOUBLE DOWN, DEPRECATE, OR GIVE IT AWAY.
THANKS {github, twitter}.com/indexzero
[email protected]
THANKS {github, twitter}.com/indexzero
[email protected]
MAY THE SOURCE BE WITH YOU