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
370k
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
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
170
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
SSMRunbook作成の勘所_20241120
koichiotomo
1
110
オープンソースAIとは何か? --「オープンソースAIの定義 v1.0」詳細解説
shujisado
3
490
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
210
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
Application Development WG Intro at AppDeveloperCon
salaboy
0
180
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
460
Evangelismo técnico: ¿qué, cómo y por qué?
trishagee
0
350
Terraform Stacks入門 #HashiTalks
msato
0
350
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
1
220
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Being A Developer After 40
akosma
86
590k
RailsConf 2023
tenderlove
29
900
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
Building an army of robots
kneath
302
43k
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
GitHub's CSS Performance
jonrohan
1030
460k
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)