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
PyCon Korea 2018 작은 오픈소스 3년 운영기
Search
Ayun Park
August 21, 2018
Programming
0
240
PyCon Korea 2018 작은 오픈소스 3년 운영기
Ayun Park
August 21, 2018
Tweet
Share
Other Decks in Programming
See All in Programming
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
ISUCON14公式反省会LT: 社内ISUCONの話
astj
PRO
0
130
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
350
Оптимизируем производительность блока Казначейство
lamodatech
0
980
ASP. NET CoreにおけるWebAPIの最新情報
tomokusaba
0
170
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
1
130
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
250
ErdMap: Thinking about a map for Rails applications
makicamel
1
840
2025.01.17_Sansan × DMM.swift
riofujimon
2
630
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
110
BEエンジニアがFEの業務をできるようになるまでにやったこと
yoshida_ryushin
0
250
社内フレームワークとその依存性解決 / in-house framework and its dependency management
vvakame
1
420
Featured
See All Featured
Making Projects Easy
brettharned
116
6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
Music & Morning Musume
bryan
46
6.3k
A better future with KSS
kneath
238
17k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.5k
Faster Mobile Websites
deanohume
305
30k
Become a Pro
speakerdeck
PRO
26
5.1k
Scaling GitHub
holman
459
140k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Transcript
작은 오픈소스 3년 운영기 박아윤
[email protected]
소개 현) 토큰넥스트, 대표 - 파이썬3 전) 넥슨 코리아, 데이터
엔지니어 - 파이썬3 레이니스트, 소프트웨어 엔지니어- 파이썬2 소프트웨어 마에스트로, 3기 연수생- 파이썬2 스포카, 프로그래머 - 파이썬2, 3 애드크레딧, 테크니컬 리더 - 파이썬 2, 3 해킹방어대회, 해커 - 파이썬2
메인테인 - bson / ★ 246개 <- 이걸 주로 이야기
합니다. - base65536 / ★ 51개 - initpy / ★ 45개 - hayeonsoo / ★ 33개 - pyprice / ★ 22개 - fclear / ★ 12개 전부 파이썬 프로젝트
None
None
None
None
None
Binary JSON
>>> bson.dumps({“Life”: “is to short”}) b'\x1b\x00\x00\x00\x02Life\x00\x0c\x00\x00\x00is to short\x00\x00'
Fast Additional data types ( UUID, MD5, Decimal, UTC datetime
… ) Ordered fields
아무개 패키지를 사용하다가 버그 발생
디버깅을 계속 해보니 BSON이라는 패키지에서 이상한 점 발견
정보를 얻고자 BSON의 Github에 접속했으나 메인테인이 안되고 있는 상황을 파악
None
“잘 쓰고 있어요! 그런데 메인테인이 안되고 있네요. 그래서 제가 BSD
라이센스로 포크했어요.”
왜 BSD 라이센스? 연속성과 더불어 가장 제약이 없기 때문에!
Martin Kou 님으로 부터 회신 도착 “안그래도 바빠서 못하고 있었어요.
대신 맡아준다면 저도 환영이에요.”
>>> bson.dumps({“Life”: “is too short”}) b'\x1b\x00\x00\x00\x02Life\x00\x0c\x00\x00\x00is too short\x00\x00' 크기 타입
키 벨류
>>> bson.dumps({“Life”: “is too short”}) encode_document({“Life”: “is too short”}) ->
IO 생성 encode_value(“Life”, “is too short”}) -> IO에 쓰기
>>> encode_document({“Life”: “is too short”}) >>> encode_value(“Life”, “is too short”)
String IO String IO{“Life”: “is too short”}
첫 커밋
setup.py README LICENSE Continuous Integration
Python3 호환성 작업 SIX (2 * 3) 리터럴 (b) BytesIO
(CStringIO)
첫 PR
>>> bson.dumps({“Life”: “is too short”}) b'\x1b\x00\x00\x00\x02Life\x00\x0c\x00\x00\x00is too short\x00\x00' 크기 타입
키 벨류
None
None
None
None
None
None
None
None
None
None
기능 작성 X PR도 대부분 버그 픽스
무엇을 어떻게 하지...
죽지 않는 프로젝트가 되게 하자! 이슈, PR은 계속 확인 머지하면
바로 릴리즈 위 2개만 열심히 해서 0.3.3에서 0.5.6까지 릴리즈
남은 2가지 과제 레거시 코드 (문제는 없으나 더 잘 작성하고
싶음) 이름 변경 (bson -> pybson, pymongo 충돌 문제)
그래서 우리는 오픈소스를 통해서 여러 다양한 개발자와 커뮤니케이션을 통해서 다양한
코드와 구현 방법을 배울 수 있습니다.
그래서 우리는 오픈소스를 위해서 깃허브나 깃랩, 비트버켓에 접속하여 관심있거나 쓰고있는
프로젝트에 기여를 해보는건 어떨까요?
@daleobrien, @hildjj, @eklitzke, @michael-cfchan, @jchia, @msabramo, @jpaalasm, @mnuhn, @andreas, @nadirhamid,
@stevei101, ???, @frewsxcv, @kived, @mmontagna, ???, @davidnoor, @Curzy, @buhman, @masipcat, @marfx000, @petri, @Bezbran, @mbjerkness, @xiaobin83, @kived, @awesomebytes, @borisrozumnuk, @ilius, @daviddavis and issue reporters Thank you very much
Q & A