준호씨의 블로그

파이콘2019 Day1 메모 본문

IT이야기

파이콘2019 Day1 메모

준호씨 2019. 8. 17. 23:36
반응형

작년에 이어 올해도 파이콘에 참여하고 있습니다. 컨퍼런스 참여 하고 나면 간단하게라도 기록을 남겨 두려고 생각만 하고 안쓰는 경우가 많아서 이번엔 빨리 대충 남겨 봅니다.

첫째날 오전 스케쥴

첫째날 오전 세션 https://www.pycon.kr/timetable/talks

오전은 키노트들로 구성 되어 있습니다. 다른 키노트들은 잘 모르겠고 반병현님의 키노트는 꼭 듣고 싶더군요. 브런치 글을 종종 보고 있는데 재미난 이야기들을 들을 수 있을거 같았습니다.

 

세바공 (세상을 바꾸는 공익) 반병현님의 키노트

모든 키노트들을 열심히 챙겨 듣진 못했지만 반병현님의 키노트는 꼭 듣고 싶어서 챙겨 들었습니다. 작년에 브런치에 올라온 글을 재미있게 읽었던 적이 있습니다.

https://brunch.co.kr/@needleworm/5

 

업무 자동화 스크립트 짜주다가  국정원에 적발당한 썰

코딩하는공익 (1) | * 국가정보원이 아니라 국가정보자원관리원에 적발당한 썰입니다. 필자는 노동청에서 근무 중인 공익이다. 공익근무요원에서 사회복무요원으로 명칭이 변경되었으나 아무도 이 용어는 사용하지 않는다. 필자도, 다른 동기들도, 공무원들도 모두 공익이라는 어감이 더 마음에 드는 것이다. 이러한 연유로 이 시리즈의 제목도 "코딩하는 사회복무요원" 이 아니라 "코딩하는 공

brunch.co.kr

브런치에 관련해서 여러 글들이 올라와 있으니 한번씩 읽어보길 추천드립니다.

https://brunch.co.kr/magazine/socialcoding

 

코딩하는 공익 매거진

#IT #공익 #AI

brunch.co.kr

그의 인기를 증명하듯 발표 마치고 사진을 같이 찍고 싶어 몰려든 사람들이 많았습니다. 

python2 유지보수 종료

다음 키노트때 들었던 내용인데 python2 의 유지보수는 올해로 마지막이라고 하더군요. 다음 사이트에서 남은 시간을 확인 해 볼 수 있습니다.

https://pythonclock.org

 

Python 2.7 Countdown

Python 2.7 will retire in 2020. Learn more and see the countdown here.

pythonclock.org

궁금해서 구글 트랜드를 확인 해 보았는데요. python3 의 트랜드는 꾸준히 높아져 가는 것에 비해 python2 는 거의 정체되어 있는 상태였습니다.

뱅크셀러드 게임

부스 앞에 뭔가 재미있는 게임을 하는 거 같아서 열심히 줄 서서 게임을 해 봤는데 결과는 완전 망했네요 ^^; 좀 피곤(핑계?) 하기도 했지만 게임 실력이 많이 떨어 졌는지 좀 어렵더군요.

뱀이 숫자를 내면 그 숫자보다 큰 숫자를 만들면 이기는 게임인데요. 입력할 수 있는 자릿수가 나오구요. 5자리 정도 나오는거 같았습니다.

1~9 까지 숫자키에서 선택 가능한 숫자와 연산자가 나오는데요. 예를 들어 1 (5), 2(1), 3(*), 4(7), 5(3)... 가 있고 5칸을 입력 할 수 있을 때 1,2,3,4,5 를 입력하면 51*73=3723 이 되는 식입니다.

우연인지 모르겠지만 뱀이 너무 큰 숫자들만 내서 큰 숫자 만들기가 어렵더라구요. 자꾸 4천 이상의 숫자를 내 보내던데, 5자리 입력해서 4천 넘기는게 잘 안되었어요 ㅠㅠ 생각해 보면 ** 두번 입력 할 수 있으면 제곱 연산해서 더 큰 수를 만들 수 있을거 같기도 한데 두번씩 사용할 수 있는지도 모르겠네요.

아무튼 몇번 연습해 보면 할만한거 같긴 한데 줄도 너무 길다 보니 재도전은 엄두가 안났습니다.

오늘 생각보다 다들 점수가 안나와서 그런지 내일은 난이도도 낮추고 사용성을 개선한다고 문자를 보냈네요. 내일 시간이 나면 재도전 해봐야 겠습니다.

Delivery Hero 코딩퀴즈

작년에 여기 부스에서 코딩퀴즈 열심히 풀어서 상품을 좀 받았었는데요. 올해에는 좀 다른 방식이긴 하지만 이번에도 코딩퀴즈가 있었습니다.

아래 깃헙 페이지에 가서 문제 풀어서 구글폼으로 제출하는 방식이었습니다.

https://github.com/choonghwi-lee/pycon

 

choonghwi-lee/pycon

Contribute to choonghwi-lee/pycon development by creating an account on GitHub.

github.com

3시 까지 제출인데 시간안에 제출을 못했습니다 ^^; 또 핑계이긴 하지만 뱅크셀러드에 줄을 너무 오래 섰더니 실제 풀 시간이 10분도 안남아서 ㅠㅠ 참가에 의의를 두고 뒤늦게 제출만 했습니다.

class Solution:
    def solve(self, meals):

        for key, value in meals.items():
            meals[key] = tuple(sorted(value))

        values = set(meals.values())

        temp = {}
        for n in values:
            temp[n] = [k for k in meals.keys() if meals[k] == n]

        return temp.values()

meals 에는 dictionary 형태로 사람이름과 주문한 음식 리스트가 들어 있는데요. 똑같이 주문한 사람끼리 그룹핑을 하는 문제였습니다.

저의 풀이 방식은 일단 음식 리스트를 정렬 시킵니다. == 연산자로 똑같은지 비교 하기 위해서였습니다. 왜인지는 잘 모르겠는데 아래쪽에서 == 으로 비교 할때 처음에는 리스트를 이용하려 했는데 안되어서 tuple 로 바꾸니 잘 되더라구요. 이유는 좀 따로 연구 해 봐야 겠습니다.

음식 tuple 을 기준으로 value 라는 set 을 만들었구요.

values 로 for loop 돌면서 같은 음식tuple 끼리 temp[음식tuple] 에 이름을 쌓습니다. 마지막으로 쌓인 이름들만 리스트로 리턴해 줍니다.

파이썬 3.7 어찌 그렇게 빨라졌나

https://www.pycon.kr/program/talk-detail?id=127

발표자료: https://speakerdeck.com/jungwinter/why-is-python-3-dot-7-fastest

 

CPython 3.7 릴리즈에서 많은 성능 최적화가 이루어졌다고 합니다. 꼭 3.7 에서만 최적화가 이루어진 건 아니지만 3.7 에서는 최적화(optimizations) 라는 항목이 따로 있을 정도로 최적화를 강조 했다고 하네요.

https://docs.python.org/3/whatsnew/3.7.html#optimizations

 

What’s New In Python 3.7 — Python 3.7.4 documentation

PEP 563: Postponed Evaluation of Annotations The advent of type hints in Python uncovered two glaring usability issues with the functionality of annotations added in PEP 3107 and refined further in PEP 526: annotations could only use names which were alrea

docs.python.org

요약해 보면

파이썬 시작 시간 최대 30% 감소
클래스 함수 호출 20% 빨라짐
15배 빨라진 asyncio
7배 빨라진 typing 모듈
sorted 40% 빨라짐
dict.copy 5.5배 빨라짐

빨라진 이유들은 여러가지가 있지만 C 코드로 바꿔서 빠르게 만들었는 내용들이 많았던거 같습니다.

성능개선외적인 이야기로, python 이슈 트래킹은 오래된 방식으로 bugs.python.org 에서 관리 하는 방식이 아직도 쓰이고 있다고 하네요.

bpo-xxxxx? 형식의 이슈들이 있고 patch 를 메일로 보내서 등록하고 있다고 합니다.

2017년 2월부터 CPython 개발은 hg에서 GitHub으로 이동했다고 하긴 하는데 모든 부분이 이관 되지는 않았다고 하네요. 어디든 레거시를 떨쳐 내기는 쉽지 않은거 같습니다. 아무튼 시간이 지나면 차차 GitHub 로 완전 넘어 갈거 같습니다. (혹시 그때즈음 되면 더 좋은 무언가가 나타날지도? ^^;)

여담으로 Dunning-Kruger Effect https://en.wikipedia.org/wiki/Dunning–Kruger_effect 에 대해서도 이야기 나왔는데 발표 할 때 잘 써먹어 볼 수 있을 거 같습니다.

여담. 점심은 햄버거

작년엔가 코엑스 데블스 도어 옆에 햄버거집(실험적인 브랜드?)이 있었는데 가깝고 맛도 괜찮아서 잘 이용했었는데요. 이번에 가보니 No Brand Burger 로 이름을 지은거 같고 9월말에 오픈한다고 합니다. 아무튼 이번 파이콘에는 이 집 햄버거는 못먹겠네요.

그래서 대신에 버거킹에 갔는데요. 참 인기가 좋더군요. 그래도 자리가 많이 있고 사람이 많은것에 비해 생각보다 빨리 버거가 나왔습니다.

더블불고기 세트 4900원 짜리 먹었습니다.

사진은 꽤 푸짐해 보였는데

실제로 받아 보니 패티가 얇아서 처음엔 한장 인줄 알고 점원에게 물어 보니 두장 맞다고 그러더라구요 ^^;

가격을 생각하면 맞는 사이즈인거 같지만 사진에 비해 좀 초라해 보여서 좀 실망했네요 ^^; 그래도 맛있고 감자랑 같이 먹으니 양은 충분 했습니다.

여담2. 기념품

집에 와서 기념품으로 받을 것들을 풀어 보았습니다. 작년엔 푸짐하게 받았었는데 올해는 좀 덜받은(?) 기분이 드네요.

프로그래머스에서 준 장패드는 잘 쓸거 같습니다.

하지만 여전히 난잡한 책상

정리하고 보니 세션 이야기는 별로 없네요.  내일 Day 2 편을 이어 가도록 하겠습니다.

반응형
Comments