본문 바로가기
대외활동

PYCON 2023 후기 (2)

by aeyong-dev 2023. 8. 22.

장고와 FastAPI를 함께 사용하여 실무에서 사용하는 채팅 백엔드를 만들어보자

장고는 세션, fastAPI는 비동기 세션을 위해 사용한다.
장고는 REST 프레임워크, fastAPI는 웹 소켓을 사용했다.
테스트는 Pytest를 사용하였다. 
fastAPI에서 main.py와 test.py의 JSON 파일을 비교하는 식으로 테스트한다. 
fastAPI의 scale-up은 다중 컨테이너 환경에서 이루어질 수 있다. 
Redis가 필요하고 브로드캐스트에 사용된다.
장고는 사용하기 편하지만 에러를 고치기 어려워서 두 개의 프레임워크를 함께 사용했다.

테스트를 위해 Pytest를 사용했다고 하는데, 다른 세션에서도 Pytest를 많이 사용한 것으로 기억한다.

이 세션을 들으면서 nested(중첩된) 같은 모르는 단어가 있었다. 

end point:
통신 관련 수업을 들으면서, 통신망의 끝단을 end point라고 부른다 배웠다.
여기서도 마찬가지였다. API가 서버에 접근할 수 있도록 하는 url이 end point이다.

파이썬으로 전자음악 작곡하기

음악은 그래프로 나타낼 수 있고, 그래프는 곧 dot들을 의미한다. 
하나의 dot는 sample을 의미한다. 
샘플로 4분 가량의 음악을 표현하면 거의 32Mb인데, 이것이 WAV 파일이다.
mp3파일로 바꾸기 위해서는 가청주파수를 벗어나는 음을 제거하는 등의 작업을 거친다. 
그래서 WAV파일은 32Mb, mp3파일은 4Mb 정도의 크기를 가지게 된다.
numpy를 이용해 사인파를 그리고, 주파수를 조정한다. 
Pedal Board 라는 스포티파이에서 제공하는 라이브러리르 사용하여 특수효과를 넣어 음을 완성한다.

음악 또한 파동이고, 이것을 숫자로 표현하여 파이썬으로 활용한다는 접근이 참신하게 느껴졌다.

세상 모든 것들은 과학이고, 과학은 숫자로 표현할 수 있고, 파이썬으로 그 숫자를 표현한다면..

파이썬은 세상 모든 것을 가능하게 하는 것이 아닐까?

파이썬을 활용한 퀀트 트레이닝

인공지능을 활용하여 주식 거래를 하기 위해서는 데이터 수집, 시그널, 거래 최적화, 전략의 단계를 거쳐야만 한다.
데이터 수집만 해도 시장 데이터, 데이터 수집 등의 아주 복잡한 절차가 필요하다.
이는 기업에서 이루어지는 프로세스이며, 개인용 프로세스와는 다르다. 

인공지능으로 주식을 자동으로 매매하는 시스템에 대한 로망은 누구나 한번쯤 가져봤으리라 생각한다.

인공지능이 돈을 벌어주다니! 꿈만같은 이야기지만 이를 가능하게 하기 위해서는 상당히 많은 노력이 필요하다.

한때 이런 것을 꿈꾸었지만, 아무런 지식 없이(심지어 주식에 대한 지식도 없이) 만만하게 본 것에 대해 반성하게 되었다..

오픈소스와 함께 성장하기(feat. Django)

왜 오픈소스에 기여하는 것일까?
고퀄리티의 코드 리뷰를 받으며 성장할 수 있고, 다양한 기술 경험을 가질 수 있고, 오픈소스로 학습할 수도 있고, 사람들과 소통하면서 자연스럽게 영어 실력 또한 늘 수 있다. 
오픈소스에 기여하기 위해서는 본인이 자주 사용하거나 흥미있는 프레임워크를 선택해서, 프로젝트 전체가 아닌 컴포넌트 또는 패키지를 고른다.
깃허브 이슈 페이지를 참고하는 식으로 이슈를 찾아 코드를 읽는다. 
이 과정에서 GPT에게 '이 코드를 설명해줘' 하는 식으로 질문하여 도움을 받을 수도 있다. 

오픈소스에 기여하는 것은 해외 각지의 사람들과 소통하고 코드를 리뷰하면서 성장할 수 있는 아주 좋은 방법이라고 생각되었다. 

low level이라 할 지라도 사람들의 리뷰를 받으면서 성장할 수 있을 것이다. 

나중에 한번쯤 도전해볼만한 충분한 가치가 있다고 생각된다.

파이썬2 개발자의 파이썬3 개발 도전기

파이어베이스는 웹 서버를 사용할 수 있게 해주는 서버리스 프레임워크다.
파이썬 버전의 파이어베이스를 사용하기 시작했는데, 파이썬2와 파이썬3은 엄청난 차이가 있었다(@dataclass, 타입힌트 등).
fString이 생기며 변수 뿐 아니라 표현식까지 사용할 수 있었다.
타입 힌트가 추가되어 정적 언어의 장점이 파이썬에도 생겼다.
@dataclass 어노테이션은 함수가 없고 변수만 있는 클래스를 표현할 때 사용한다.
이전에는 쓰레드 풀을 생성하여 자원을 많이 사용해야 했지만, async, await이 추가되면서 오직 하나의 쓰레드로 여러 작업들을 비동기적으로 수행할 수 있었다.

키노트 세션(꼬꼬마 파이썬...)에서도 느꼈지만, 파이썬은 버전마다 정말 많은 차이가 있다.

사용자의 의견을 고려하여 반영하는 것이 참 다정하다고 느껴졌다.

그리고 문법에 대해서도 아직 많이 모른다는 것을 깨달았다.

내가 학교에서 배운 것은 단지 파이썬2 버전의 문법들이고, 파이썬3의 문법을 배운다면 더 많은 작업을 해낼 수 있을 것이다.

걱정돼요. 파이썬을 미워하는 학생과 학부모가 생겨나는 미래가

IT산업이 주목받으며 코딩 교육에 대한 열풍이 불고있다.
이에따라 정규 교과목에도 프로그래밍이 들어갔는데, 점수를 잘 받기 위해서 잘못된 교육이 될까 두렵다.
파이썬을 포함한 소프트웨어 교육과 시험이 강제되고 있다.
이를 위해서 활발한 지식공유가 필요하다.
또한 많은 사람들이 읽을 수 있도록 쉽게 글을 작성하고, 청중을 이해시켜야 한다.

'코딩 교육이 유행이구나' 하는 정도로만 알고 있었는데, 수능에도 코딩이 들어갈지 모른다는 말에(실제로 외국 어느 나라는 코딩이 필수 시험이라고 한다) 끔찍한 미래가 그려졌다.

마치 수학 선생님들이 이런 기분이었을까. 수학의 아름다움을 모르고 기계적으로 문제를 푸는 학생들을 보는..

코드의 아름다움을 모르고 기계적으로 코테를 푸는 학생들을 생각하니 참 안타까워졌다.

개발에 대해 교육쪽으로도 생각해볼 수 있는 좋은 세션이었다.

 


이후로 라이트닝 토크가 이어졌고, 폐회사 후 단체사진을 찍고 행사는 종료되었다.

'대외활동' 카테고리의 다른 글

2023 여름, 서울 일정을 소화하고  (0) 2023.08.24
멋쟁이 사자처럼 11기 중앙해커톤 후기  (0) 2023.08.24
Infcon 2023 후기  (0) 2023.08.24
PYCON 2023 후기 (완)  (0) 2023.08.22
PYCON 2023 후기 (1)  (0) 2023.08.22