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
Netty 13년
Search
Trustin Lee
August 30, 2015
Technology
20
4.3k
Netty 13년
Keynote at PyCon KR 2015 on 30-Aug-2015
Trustin Lee
August 30, 2015
Tweet
Share
More Decks by Trustin Lee
See All by Trustin Lee
Introducing Armeria (or Three Principles of a Good Framework)
trustin
2
360k
Writing a Java library with better experience
trustin
0
340
Armeria: A microservice framework well-suited everywhere
trustin
1
2k
Armeria: The Only Thrift, gRPC, REST Microservice Framework You'll Need
trustin
3
17k
Open Source Sprint: Planning to Execution
trustin
3
750
Central Dogma: LINE's Git-based highly-available service configuration repository
trustin
0
44k
Building Asynchronous Microservices with Armeria
trustin
4
32k
학생을 위한 직업 소개 - 프로그래머
trustin
4
3.8k
Buffer allocation and leak detection in Netty
trustin
6
2.2k
Other Decks in Technology
See All in Technology
新卒1年目が向き合う生成AI事業の開発を加速させる技術選定 / ai-web-launcher
cyberagentdevelopers
PRO
7
1.5k
LeSSに潜む「隠れWF病」とその処方箋
lycorptech_jp
PRO
2
120
生成AIの強みと弱みを理解して、生成AIがもたらすパワーをプロダクトの価値へ繋げるために実践したこと / advance-ai-generating
cyberagentdevelopers
PRO
1
180
Forget efficiency – Become more productive without the stress
ufried
0
150
Fargateを使った研修の話
takesection
0
120
ABEMA のコンテンツ制作を最適化!生成 AI x クラウド映像編集システム / abema-ai-editor
cyberagentdevelopers
PRO
1
180
ユーザーの購買行動モデリングとその分析 / dsc-purchase-analysis
cyberagentdevelopers
PRO
2
100
Amazon FSx for NetApp ONTAPを利用するにあたっての要件整理と設計のポイント
non97
1
160
Amazon_CloudWatch_ログ異常検出_導入ガイド
tsujiba
4
1.6k
小規模に始めるデータメッシュとデータガバナンスの実践
kimujun
3
590
GitHub Universe: Evaluating RAG apps in GitHub Actions
pamelafox
0
180
新R25、乃木坂46 Mobileなどのファンビジネスを支えるマルチテナンシーなプラットフォームの全体像 / cam-multi-cloud
cyberagentdevelopers
PRO
1
130
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
136
6.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
404
65k
Optimizing for Happiness
mojombo
376
69k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
328
21k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Designing Experiences People Love
moore
138
23k
KATA
mclloyd
29
13k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
Ruby is Unlike a Banana
tanoku
96
11k
Thoughts on Productivity
jonyablonski
67
4.3k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
107
49k
The Cult of Friendly URLs
andyhume
78
6k
Transcript
Netty 13년 이희승 (@trustin) Aug 30, 2015
Netty 는 … ▸자바 프레임워크 ▸클라이언트 · 서버 소켓 개발을
쉽고 빠르게 ▸빠르지만 유지보수 가능하게 ▸비동기 ▸이벤트 기반
Many organic. Very forks. Wow! ▸2014 vs. 2015 ▸160+ people
in repo history ▸22nd most starred Java/Android project ▸17th most forked Java/Android project
사용 분야 ▸웹 서비스 ▸인스턴트 메시징 ▸멀티플레이어 게임 ▸스토리지 ·
데이터베이스 ▸고빈도 거래 (HFT) ▸미디어 스트리밍
왜 만들기 시작했나? ▸이통 5사 연동 SMS 게이트웨어 개발을 하다
보니… ▸전문 형식은 다른데 전문 흐름은 공통 ▸전문 해석과 비즈니스 로직을 분리하고 싶다. ▸받은 전문에 반응하는 것이 대부분 ▸GUI 개발하듯 이벤트 기반으로 개발하고 싶다.
(사실) 라이브러리 개발이 좋아서… “짜라는 A 는 안 짜고 libA
를 먼저 만든다!”
왜 공개했는가? ▸오픈 소스에 대한 관심 ▸소통에의 욕구 ▸세계가 쓰는
소프트웨어를 만들고 싶다? ▸… 그냥 재미로? ▸… 관심받고 싶다? ▸여러분, 저도 13년전의 제 마음은 정확히 모릅니다;
그래도 지난 13년간 느낀 점이 있을텐데?
재미있다 ▸내 프로젝트에 '사용자'가 생겼다! ▸내 곁에 필요성을 이해하는 사람들이!
▸나는 여기선 ▸Chief Technology Officer ▸Chief Customer Officer ▸The God of the Project! ▸누구도 나의 속도를 막지 못해! ▸“버그가 있다구요? 오늘 고쳐서 릴리즈해드리죠!”
재미없다 ▸충분히 운이 좋아서 프로젝트가 성장한다면 … ▸재미없는 일이 생기기
시작합니다. ▸아니 발표자 양반, 이게 무슨 소리요? ▸numReportedIssues >>>>>>> numPullRequests ▸일을 많이 하면 일이 더 생기는 매직 ▸내가 싼 똥에 내가 자빠진다 ▸또라이 질량 보존의 법칙
그것은 위기이자 기회 ▸어떻게 갈등을 해결할 것인가 ▸기술적 · 인적
▸한 발짝 물러서서 문제를 보자 (이쯤되면 거의 인생수업…)
내가 다 해결할 필요는 없다 ▸위임할 수 있는 일도 혼자서
짊어지고 있는 것은 아닌지? ▸“We ♥ pull requests!” ▸“Are you interested in joining the team?” ▸기계에게 위임할 수 있는 일도 많다.
어떤 문제는 시간이 필요하다 ▸“이 기능이 우리 <초 유명 회사>
에서 꼭 필요한데...” ▸서둘러 내놓은 기능은 종종 똥입니다. ▸오픈 소스의 강점인 'doing things right'을 명심! ▸아이디어의 숙성 ▸충분한 사용자 피드백 수렴 ▸다양한 선택지의 검토 ▸잊고 지내면 문제가 다르게 보이기도?
키보드 워리어가 되기 전에 ▸모든 것이 부정적으로 보일 때 ▸과잉반응하는
것은 아닐까? ▸내가 문제인가, 프로젝트가 문제인가 ▸청취의 기술 · 비폭력대화 ▸“Hey, could you help me understand your problem?” ▸Do not feed the troll!
그런데 어째서 이 모든 문제가 내게 …
당신이 그 프로젝트를 (잘) 했기 때문이에요!
영원히 겪을 문제들 ▸numIssues >>>>>> teamVelocity * lifeExpectancy ▸Work-Life-“OSS” balance
· symbiosis ▸Competitors and Disruptors ▸분산된 멤버와의 커뮤니케이션 ▸하위 호환 · 마이그레이션 ▸생각지 않았던 용법 ▸문서화 ▸…
“내가 혹시 '프로젝트의 노예 13년'을 찍고 있나?”
그럼 그걸 왜 하고 있죠? ▸(힘들 때) ▸“사실 저도 잘
… 관성;?” ▸(좋을 때) ▸더 높은 목표를 향한 전진 ▸생면부지의 동료와 함께하는 기술적 · 인간적 성장 ▸(끝내줄 때) ▸세상을 더 나은 곳으로 만들어가는 과정 그 자체
여러분도 한 번? ▸시작도 전에 걱정은 금물! ▸과정 >>>>>> 결과
▸Doing things right ▸Promoting your work ▸Working altogether alone ▸Embracing new ideas and challenges
감사합니다 이희승 (@trustin)