Python, PyCon, and Dev. Sprint KOSSLab 2018.10.01 iam@younggun.kim 1
/ KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 2
- @scari_net Python Software Foundation Board Director / Grants WG / PSF Ambassador PyCon US/KR/APAC member Chairing / Organizing Committee / Program Committee ODK Media, Engineering VP KOSSLab (pandas) KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 3
Python Communities There are 1,863 Python User groups in 618 cities, 89 countries and 1,269,081 members. We reached Python users living in 150 different countries. KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 4
== [...] KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 5
https://www.jetbrains.com/research/python-developers-survey-2017/ KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 6
Python Developers Survey 2017 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 7
Python Developers Survey 2017 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 8
Python Developers Survey 2017 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 9
Stack Overflow Developer Survey 2018 https://insights.stackoverflow.com/survey/2018/ 10
Stack Overflow Developer Survey 2018 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 11
Python Developers Survey 2017 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 12
Stack Overflow Developer Survey 2018 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 13
KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 14
KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 15
KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 16
.! KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 17
Web BigData Game Biology Chemistry Government Education Mobile Scientific Weather Manufacturing GIS Music Film https://www.python.org/about/success/ KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 18
Data / Scientific NASA 9 9 https://losc.ligo.org/s/events/gw150914/gw150914_tutorial.html 19
Education BBC:microbit 10 10 https://www.microbit.co.uk/ 20
CG Maya, Blender Disney 11, ILM 11 github.com/wdas 21
Music Ableton Live KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 22
Diverse, Balanced... Why? KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 23
Code of Conduct We value the participation of each member of the Python community and want all attendees to have an enjoyable and fulfilling experience. Accordingly, all attendees are expected to show respect and courtesy to other attendees throughout the conference and at all conference events, whether officially sponsored by the Python Software Foundation or not. KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 24
... And for me, the conference lived up to this, with a very friendly feel, and a lot of diversity in its attendants. The friendly and informal atmosphere was impressive for such a large event. KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 25
Sprint!!!! KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 26
Sprint /.,.?.. KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 27
Development sprints are a key part of PyCon, and a chance for the contributors to open-source projects to get together face-to-face for up to four days of intensive learning, development and camaraderie. Newbies sit with gurus, go out for lunch and dinner together, and have a great time while advancing their project. KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 28
Welcome! 1st time contributors! KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 29
Worldwide pandas sprint 2018 2018 March 18 around 500 people in over 30 locations 246 PRs for one day KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 30
KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 31
...... (Contribution)......... ( ) KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 32
"I don't know about the rest of you. I came for the language, but I stayed for the community." Brett Cannon, Python Core Dev. KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 33
KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 34
Come to a PyCon, stay for the sprints! [^1] Why not join the sprints this year at PyCon? [^2] Why you should attend PyCon development sprint? [^3] Ready, Get set, Go! and... KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 35
Sprint is awesome! https://www.youtube.com/watch?v=hotkgfafcz0 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 36
KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 37
Git GitHub GitHub PR PR 4 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 38
KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 39
2002 - CPython / Zope 2003 - PyCon PyCon (2 Days) 2006-4 Days of sprint! (Only 3 Days of conference) 2008-20+ / 250 (PyCon US) 2016 - PyCon 2016 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 40
Spreading out PyData Sprint DjangoCon Sprint Mozilla Doc Sprint SW KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 41
2016: pandas, aiohttp KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 42
2017: pandas, pysony, django, aiodocker, django-summernote, Zeppelin, OpenStack i18n, nirm KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 43
2017.10 : pandas, aiodocker+aiotools, django-summernote KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 44
2018.03 Worldwide pandas documentation sprint - Seoul KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 45
2018: pandas, backend-ai, nirm, nekoyume, hearthstone++ KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 46
PyCon KR 2018 1 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 47
/. Linting(PEP8) PR PR!!!! KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 48
:! KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 49
Marc Garcia: In my sprints I usually say that the goals are (in order): 1. Have fun and make new friends 2. Learn 3. Send PRs I've seen several PRs from your sprint, but as far as you succeeded in 1 and 2 you can be happy. :) KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 50
Younggun: It is exactly same with my order :) But I have 0 ranked one, 0 - Don't get afraid to contribute to open source projects. Just come. We'll do the rest together. KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 51
Contributing to pandas KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 52
pandas? Flexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical functions, and much more https://github.com/pandas-dev/pandas KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 53
? " " KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 54
? Contributor KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 55
? 17 16,000 (2016.11 500 )...! KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 56
". 1., 2.. KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 57
! NUMFocus https://www.numfocus.org/open-source-projects/ https://www.flipcause.com/widget/give_now/ MzA3OA== KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 58
59
http://pandas.pydata.org/pandas-docs/stable/ -> DOC: PR prefix. : https://github.com/lyda/misspell-check KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 60
( ) KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 61
62
/ pd.show_versions() KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 63
64
ENH: BUG: DOC: TST: BLD: PERF: CLN: KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 65
Python, Cython, C git GitHub, Python! ->! -> KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 66
good first issue <- Difficulty Novice / Intermediate / Advanced Effort Low / Medium / High Performance More on https://github.com/pandas-dev/pandas/labels KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 67
! Fork 1. Star 2. Fork KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 68
Clone clone, upstream git clone git@github.com:your-user-name/pandas.git pandas-yourname cd pandas-yourname git remote add upstream git://github.com/pandas-dev/pandas.git KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 69
/w Anaconda pandas_dev, conda create -n pandas_dev python=3 --file ci/requirements_dev.txt : Anaconda3-5.0.0. 4.4.0 -c conda-forge. KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 70
$ source activate pandas_dev $ python setup.py build_ext --inplace pandas Python, import pandas as pd pd.show_versions() INSTALLED VERSIONS ------------------ commit: 6f03530c5a4e662eb65791730e8b7edd4ea16983 python: 3.6.2.final.0 python-bits: 64 OS: Darwin OS-release: 17.0.0 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 71
pdb.set_trace() pdb: https://docs.python.org/3/library/pdb.html Traceback breakpoint import pdb pdb.set_trace() R&D. Reset and Debug! KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 72
Test./pandas/tests/ GH1234 KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 73
Linting PEP8 CI git diff master -u -- '*.py' flake8 --diff KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 74
What's New doc/source/whatsnew/v0.xx.xx.txt KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 75
PR 1. commit squash 2. push 3. GitHub Pull Request 4. PR 5.! KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 76
https://opensource.guide/ https://naver.github.io/opensourceguide/book/index.html https://github.com/pandas-dev/pandas/blob/master/doc/ source/contributing.rst#working-with-the-code KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 77
(again)...... (Contribution)......... ( ) KOSSLab 2018.10.01 iam@younggun.kim / @scari_net 78