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.5k
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
420k
Writing a Java library with better experience
trustin
0
410
Armeria: A microservice framework well-suited everywhere
trustin
1
2.1k
Armeria: The Only Thrift, gRPC, REST Microservice Framework You'll Need
trustin
3
17k
Open Source Sprint: Planning to Execution
trustin
3
850
Central Dogma: LINE's Git-based highly-available service configuration repository
trustin
0
49k
Building Asynchronous Microservices with Armeria
trustin
4
32k
학생을 위한 직업 소개 - 프로그래머
trustin
4
3.9k
Buffer allocation and leak detection in Netty
trustin
6
2.4k
Other Decks in Technology
See All in Technology
DDD集約とサービスコンテキスト境界との関係性
pandayumi
3
290
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
270
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
120
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
730
Claude Code でアプリ開発をオートパイロットにするためのTips集 Zennの場合 / Claude Code Tips in Zenn
wadayusuke
0
110
自作JSエンジンに推しプロポーザルを実装したい!
sajikix
1
190
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.5k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.8k
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
5
1.6k
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
470
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
20
10k
まずはマネコンでちゃちゃっと作ってから、それをCDKにしてみよか。
yamada_r
2
120
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Being A Developer After 40
akosma
90
590k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
850
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Designing for Performance
lara
610
69k
Typedesign – Prime Four
hannesfritz
42
2.8k
A Modern Web Designer's Workflow
chriscoyier
696
190k
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)