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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Trustin Lee
August 30, 2015
Technology
20
4.6k
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
440k
Writing a Java library with better experience
trustin
0
440
Armeria: A microservice framework well-suited everywhere
trustin
1
2.2k
Armeria: The Only Thrift, gRPC, REST Microservice Framework You'll Need
trustin
3
17k
Open Source Sprint: Planning to Execution
trustin
3
900
Central Dogma: LINE's Git-based highly-available service configuration repository
trustin
0
51k
Building Asynchronous Microservices with Armeria
trustin
4
33k
학생을 위한 직업 소개 - 프로그래머
trustin
4
3.9k
Buffer allocation and leak detection in Netty
trustin
6
2.4k
Other Decks in Technology
See All in Technology
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.4k
22nd ACRi Webinar - NTT Kawahara-san's slide
nao_sumikawa
0
100
SRE Enabling戦記 - 急成長する組織にSREを浸透させる戦いの歴史
markie1009
0
170
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2.1k
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
1
170
Exadata Fleet Update
oracle4engineer
PRO
0
1.1k
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
150
Oracle AI Database移行・アップグレード勉強会 - RAT活用編
oracle4engineer
PRO
0
110
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
5.6k
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
160
私たち準委任PdEは2つのプロダクトに挑戦する ~ソフトウェア、開発支援という”二重”のプロダクトエンジニアリングの実践~ / 20260212 Naoki Takahashi
shift_evolve
PRO
2
210
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
190
Featured
See All Featured
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
110
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.6k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
120
The Curse of the Amulet
leimatthew05
1
8.7k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
340
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
77
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Code Reviewing Like a Champion
maltzj
527
40k
Technical Leadership for Architectural Decision Making
baasie
2
250
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
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)