IntelliJ로 유명한 젯브레인(JetBrains)에서

25년 8월에 발표한 "The State of Python 2025)라는 보고서(설문조사)를 살펴보면

상당히 다양한 버전의 Python이 사용되고 있다는 것을 알 수 있다.

 

 

많은 사용자(15%)가 3.13 버전 이상의 최신 Python 버전을 사용하고 있지만,
1년 이상 오래된 버전을 사용하고 있을 가능성이 훨씬 더 높다(83%).

그런데, 이렇게 오래된 버전의 Python을 사용해도 괜찮은걸까?

 

 

▶ Status of Python versions (2025.10.25 기준)

- 가끔 아직도 2.x 버전 Python을 사용하는 경우를 최근에도 보는데, 보안을 생각하면 정말 위험한 선택이다

- 문제는 이제는 3.9 버전 이하도 모두 보안 패치도 끝난 end-of-life 버전이라는 것이다.

 

 

 

▶ Supported versions (2025.10.25 기준)

- 현재 시작하는 프로젝트라면 최소한 3.10 버전 이상을 사용해야 하고

  가급적이면 3.12 버전 이상을 사용하는 것이 그나마 조금 안전한 선택이지 않을까 한다.

 

 

 

▶ Release Compatibility Matrix (w/ PyTorch)

- support 기간 뿐만 아니라 호환성도 고려하면서 버전을 선택해야 한다.

- 사용하고자 하는 PyTorch 버전에 따라서 호환되는 Python 버전이 따로 있다.

 

 

 

▶ Python Downloads

- Python 설치를 위한 다운로드 페이지를 보면 다양한 버전과 배포판을 볼 수 있다.

 

 

 

안정성 등을 고려해서 최신 버전을 기피하는 개발자가 많은데,

최근 버전의 Python을 선택하면 성능에서도 많은 장점이 있고 유용한 여러 feature들이 있으니 한 번 고려해보기 바란다.

 

 

[ 출처/참고 ]

- https://blog.jetbrains.com/pycharm/2025/08/the-state-of-python-2025/ 

- https://devguide.python.org/versions/

- https://github.com/pytorch/pytorch/blob/main/RELEASE.md#release-compatibility-matrix

- https://www.python.org/downloads/

반응형

파이썬을 사용하다 보면 종종 만나는 단어가 바로 "PEP"이다.

특히, 코딩 스타일 관련해서 매번 만나는 "PEP 8" 규칙.

 

과연, PEP가 뭐길래?

 

▶ PEP Created

- 1990년대 후반 CNRI에 있던 Barry Warsaw(배리 워쇼우)가 많은 제안들을 Guido가 살펴볼 수 있도록 프로세스 도입
- RFC(Request for Comments, 인터넷 기술 및 표준에 관한 문서) 프로세스를 참조하여 (제안 → 토론 → 결론) 체계 수립

 

다양하게 파생된 '-EP' 문서들

 

 

▶ PEP 0 - Index of Python Enhancement Proposals (PEPs)

- PEPs로 알려진 모든 PEP 목록을 살펴볼 수 있게 제공해준다.
- 다양한 기준으로 PEP 목록을 제공해준다.

 

 

 

 

▶ PEP 8 – Style Guide for Python Code

- 파이썬 답게 코드를 작성하기 (Pythonic Code)

- PEP 중에서 가장 유명하고, 필독해야 하는 문서

- 들여쓰기는 4개의 공백(space)을 사용해야 한다는 것과 같은 코드 스타일 가이드 이다.

 

 

 

▶ PEP 572 – Assignment Expressions

- Guido를 독재자에서 사임하게 만들었던 문제의 그 PEP

- 일명 바다코끼리 연산자(walrus operator) ":=" 도입
  . 할당 표현식(assignment expression)
  . Python 3.8에 포함

- Guido가 제안한 내용이고 도입을 하자는 입장이었고, 커뮤니티는 파이썬 답지 않고, 간결성을 해친다며 반대

- 결국은 승인되어 파이썬 3.8에 도입되었지만, Guido는 BDFL 모델을 내려놓게 되었고

  이후 "The Steering Council Model"을 통해 의사결정 하기로 함 (PEP 8016)

 

 

 

▶ PEP 20 – The Zen of Python

- 파이썬의 선 (파이썬이 추구하는 철학)

 

아름다운 것이 못생긴 것보다 좋습니다.
명시적인 것이 암시적인 것보다 좋습니다.
단순한 것이 복잡한 것보다 좋습니다.
복합적인 것이 복잡한 것보다 좋습니다.
납작한 것이 중첩된 것보다 좋습니다.
흩뿌려진 것이 모인 것보다 좋습니다.
가독성은 중요합니다.
특별한 상황이, 규칙을 깰 만큼 특별하단 얘기는 아닙니다.
실용성이 순수함을 이길 때까지는 말이죠.
에러는 조용히 넘어가서는 안됩니다.
명시적으로 조용히 만들지 않는 한.
모호한 상황이라면, 추측하려 하지 마세요.
문제를 풀 수 있는 (바람직하고 유일한) 분명한 방법이 있어야 합니다.
하지만 네덜란드 인이 아닌 이상 처음에는 분명하지 않을 수 있습니다.
지금 하는 게 하지 않는 것보단 좋습니다.
하지만 지금 당장 하는 것보다 안 하는 게 나을 때도 있습니다.
구현 방식이 설명하기 어렵다면, 그것은 좋지 않은 생각입니다.
구현 방식이 설명하기 쉽다면, 그것은 아마 좋은 생각일 겁니다.
Namespaces는 쩌는 생각입니다. 더욱 이런 것들을 해봅시다!

 

※ 중간에 네덜란드 사람이라고 지칭하는 이유는... 귀도가 네덜란드 사람이라서이다 ^^

 

 

 

[ 참조/참고 ]

- Python PEP, 태어나 세계로 퍼진 ‘○EP’ 이야기: https://news.hada.io/topic?id=21031 
- Paul Everitt, "Python 1994", PyBay2017: https://www.youtube.com/watch?v=7NrPCsH0mBU&t=1662s 
- PEPs & Co.: https://hugovk.dev/blog/2025/peps-and-co/ 

- PEP 0: https://peps.python.org/pep-0000/ 

- PEP 8: https://peps.python.org/pep-0008/ 

- PEP 572: https://peps.python.org/pep-0572/ 

- PEP 20: https://peps.python.org/pep-0020/ 

 

반응형

왠지 갑자기 파이썬을 다시 제대로 공부하고 싶다는 생각에

애초에 어떻게 태어났는지가 궁금해서 공부해보기로 마음 먹었다.

 

ABC

- 이름 자체가 뭔가 엄청나다 ^^

- 1970 ~ 1980년대에 배우기 쉽고, 사용하기 쉬운 언어를 만들기 위해 개발된 프로그래밍 언어 (BASIC 언어 대체로 고안)
- CWI(Centrum voor Wiskunde en Informatica, 네덜란드 국가 수학 및 컴퓨터 과학 연구소)의 프로젝트로 진행
- Leo Geurts(레오 회르츠), Lambert Meertens(람베르트 메르텐스) 및 Steven Pemberton(스티븐 펨버턴) 주도
- Guido van Rossum(귀도 반 로섬)이 1980년대초 구현자로써 참여함

 

생김새를 보면 정말 뭔가 상당히 친숙하다

 

 

 

▶ Python Created

- Guido van Rossum(귀도 반 로섬)은 1986년 CWI에서 Amoeba(아메바)라는 분산 운영체제 프로젝트로 부서 이동
- 1989년 예외 처리 및 확장에 강점을 갖는 ABC 언어와 비슷한 스크립팅 언어 개발 착수
- 1991년 2월, 유즈넷에 공개 (그 전에는 Amoeba 프로젝트에 적용하면서 계속 개발)

 

진짜 개발자가 명품을 만드는 것은, 보통 휴가 때 이루어지곤 한다 … (뭔가 현타가....)

 

 

 

▶ Guido Van Rossum

- 파이썬의 아버지이자 엄마, 시조새, 창조자, 신 !!!

- CWI, NIST, CNRI 같은 여러 연구 기관에서 근무
- 2000년 5월 기술 스타트업 BeOpen.com → 10월 파산
- 2000년 말 ~ 2003년 Zope Corporation 근무 (파이썬 기반 웹 어플 서버/커뮤니티)
- 2003년 ~ 2005년 Elemental Security (회사 맞춤형 프로그래밍 언어 개발)
- 2005년 ~ 2012년 Google (50% 파이썬 언어 개발, 사내 개발 도구 개발)
- 2013년 ~ 2019년 DropBox (클라우드 스토리지)
- 은퇴 선언 → 은퇴 번복
- 2020년 ~ Microsoft 개발 부서, 현재 명예 엔지니어 직책

 

2006년 OSCON

 

 

2024년 PyCon

 

 

▶ MISC

- Python 어원: Monty Python's Flying Circus(몬티 파이튼의 비행 서커스)
  . BBC에서 1969년~1974년 방영된 스케치 코미디 TV 쇼
  . Monty Python: 영국 코미디 그룹으로 TV쇼 및 영화, 극장 공연 등 다양한 활동
- 자비로운 종신독재자(BDFL, Benevolent Dictator for Life)
  . 커뮤니티 논쟁이 있을 때 최종 결론을 내려줄 수 있는 역할로 소수의 오픈소스 개발 리더에게 부여
  . 1995년 Python 창시자 Guido Van Rossum 호칭으로 처음 사용됨
  . 2018년 7월 12일 BDFL에서 사임한다고 Guido Van Rossum이 선언
   →  PEP(Python Enhancement Proposal) 572 개선 제안 논란 이슈로 사임

 

Monty Python

 

 

 

[ 참고/출처 ]

- ABC 공식홈페이지: https://homepages.cwi.nl/~steven/abc/ 

- Python Doc: https://docs.python.org/3/faq/general.html#why-was-python-created-in-the-first-place 

- Wikipedia: https://ko.wikipedia.org/wiki/귀도_반_로섬

- Monty Python: https://ko.wikipedia.org/wiki/몬티_파이튼

- BDFL, Benevolent Dictator for Life: https://ko.wikipedia.org/wiki/자비로운_종신독재자

- BDFL 사임: https://www.cio.com/article/3532595/파이썬-창시자가-말하는-사임-이유와-파이썬의-미래.html

- https://www.cinematerial.com/tv/monty-pythons-flying-circus-i63929/p/ani1bnus 

 

반응형

"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."

 

LLM을 현업에서 사용한다고 하면 다들 우려하면서 말하는 것이 바로 "hallucination(환각)" 현상이다.

 

실무에서는 예측 가능한 것이 중요하고, 정확한 것이 중요한데

LLM 특성상 확률로 결정되는 부분들이 있기에 예상을 벗어난 답변을 할 수도 있고

정확하지 않은 것을 사실인 것 처럼 말할 수도 있는 것이다.

 

LLM 자체가 확률을 기반으로 하기에 "hallucination(환각)"을 완전히 없앨 수는 없겠지만

어떻게 하면 줄일 수 있는지 그 방법을 배워야만 하는 것이다.

 

"프롬프트 엔지니어링"이라는 제목을 보고

처음에는 ChatGPT와 같은 웹 화면에서 프롬프팅을 하는 것을 예상했는데,

 

이 책은 표지에 hint가 있는 것처럼 LLM API를 사용하는 과정에서의

프롬프트 엔지니어링을 설명해주고 있다.

 

그리고 고맙게도 OpenAI API 뿐만 아니라 Gemini API까지 같이 언급해주고 있어서 실습을 할 때에 마음이 편했다.

 

사실 공부하면서 API 사용하는 것 정도는 커피값 정도 밖에 안되기에 객관적으로는 별 부담이 아닌데

희한하게 OpenAI API 사용하다보면 뭔가 엄청 부담스럽다(나만 그런가!? ^^).

 

소심한 나로써는 우리 구글님께서 제공해주는 Gemini API를 사용하는 것도 챙겨준 저자가 참 고맙다. 

 

책에서 추천하는 실습 환경은 "Colab + OpenAI API" 이기 때문에,

사전에 어느 정도 파이썬 프로그래밍에 대해서는 경험해본 사람을 추천한다.

 

처음에 좀 당황스러운 것은 구글 드라이브 주소를 하나씩 타이핑을 해야하는.... 그래서 나는 친절하게 링크를 !!!

- https://drive.google.com/drive/folders/12-NIX1ks8o5bMzCTGRrkE1GphwTq6K3A

 

GitHub 주소도 같이 링크를 남겨본다.

- https://github.com/KennethanCeyer/robust-prompting-notebooks

 

실제 노트북 코드를 보면 아래와 같다.

 

실제 돌려보면 아래와 같이 잘 나온다.

 

현업 업무에서 AI Agent 또는 챗봇 같은 것을 개발하다보면

주어진 상황이나 또는 RAG 데이터에 기반해서 정답을 찾아야 하는데

전혀 다른 소리를 하거나 아니면 일반적인 상황에 대한 답변을 하는 경우가 상당히 자주 발생을 한다.

 

이런 것을 컨트롤할 다양한 방법들을 시도해볼 수 있지만,

프롬프트 엔지니어링이 상당히 중요한 부분이면서 가장 강력한 솔루션이 될 수 있다.

 

그리고 그러한 프롬프트 엔지니어링을 배울 수 있는 좋은 책이 바로 여기 있다.

 

"할루시네이션을 줄여주는 프롬프트 엔지니어링"

 

반응형

"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."

 

 

AI 시대를 이어 또 하나의 세상을 바꿀 새로운 기술 아이템으로 가장 각광을 받고 있는 "양자 컴퓨터"

 

과학계에서도 정말 핫한 주제인 "양자 역학"에 기반한

IT 기술 트렌드이자 기술적으로도 투자 시장에서도 정말 핫한 "양자 컴퓨터" 이다 !!!

 

 

https://www.youtube.com/watch?v=u6sGn9GsAjQ

 

IT 기술 관련하여 깊이 있는 컨텐츠를 꾸준히 계속 올려주는 "티타임즈TV" 채널에서

많이 봤던 분이 출간한 책이라서 재미있었다.

 

사실 처음 책을 받고는 "아! 양자 역학에 대해서 공부를 해봐야겠구나"라는 생각이 먼저 들었다.

그런데, 목차를 보니...

 

 

제목에서 "양자 역학"을 찾아볼 수 없다.

서브 챕터로 "1.3 양자 역학의 기본 개념: 초미세 세계의 마법"로 있을 뿐이다.

 

 

그렇다.

이 책은 "양자 역학"에 대한 책이 아니라 "양자 컴퓨터"에 대한 책이다 !!!

 

 

정지훈 박사님의 이력을 보면 알 수 있지만, 투자자이시기도 하다.

유튜브 영상을 봐도 알겠지만, 투자자 입장에서 많은 것을 전달해 주신다.

그렇기에 책의 말미에도 8장에서 투자에 대해서 설명을 해주고 계신다 ^^

 

우리 모두 부자 되자!!!

 

 

양자 컴퓨터는 먼 미래가 아닌 현재에 있는 기술이다.

하지만 양자 역학 때문인지 모르겠으나 많은 사람들이 아직 상상의 기술로 여기는 경우가 많은 것 같다.

 

양자 컴퓨터는 단지 계산만 빠른 컴퓨터가 아니다.

양자 컴퓨터이다 보니 기존 컴퓨터 기술과 차이가 나는 부분들이 있으며

이에 대해서는 공부를 해야한다.

 

양자 컴퓨터를 공부하고 싶은 분들에게 추천하는 책이 바로 이 책이다!

오죽하면 책 제목에 "강의"라고 되어있겠는가!!!

반응형

"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."

 

 

최근 IT 분야에서 신입 채용 시장도 어렵고, 희망 퇴직이나 정리 해고 등의 이야기가 나오는 시기이다보니

"코드 너머, 회사보다 오래 남을 개발자"라는 책 제목은 아주 자극적이었다!

 

"코드 너머"라는 부분으로 인해서 처음에 드는 생각은 "어?! 코딩 말고 AI 역량을 말하는 것인가?"이었다.

 

 

어?! 그런데, 지은이들이 왠지 전부 낯익은 이름들이네?!

 

 

표지에 나온 4명 외에도 3명의 지은이가 더 포함되어 총 7명의 지은이들이 만든 책이라고 한다.

그리고, 내가 알고 있는대로 지은이들은 전부 데브렐(RedRel) 업무 관련자들이다.

 

데브렐(DevRel, DR, Developer Relations)이라는 직무는

개발자들을 위한 소통, 교류, 관계, 문화 등의 활동을 의미한다고 볼 수 있다.

 

PR(Public Rel, 일반인 대상), IR(Investor Rel, 투자자 대상), ER(Employee Rel, 임직원 대상) 등의

직무와 별도로 DR 직무를 별도로 두는 것은 개발자들의 중요도와 가치가 높아졌다는 반증이지 싶다.

 

 

여러 회사의 DR 직무와 관련된 7명이 모여서 만든 6월말에 출간한 따끈따끈한 책이다.

 

 

총 7장으로 구성된 책인데, 7명의 지은이가 각 챕터를 작성했기에 어느 정도 독립적이다.

그렇기에 다양한 독자층에 따라 나름의 추천 순서를 제시해줄 수 있다.

 

뭔가, 그래픽노블 책처럼 페이지를 이동하면서 읽는 것 같은 게임같은 느낌이... ?! ^^

 

 

책은 풀컬러는 아니고 2색인데, 특이하게도 검은색과 핑크로 구성되어 있다.

산뜻한 느낌은 있는데 노안이 와서인지 조명이 좋지 않을 때 핑크색 부분의 가독성이 조금 떨어졌다.

 

좀 찐한 핑크색이거나 차라리 진한 빨강이나 진한 주황 등이었으면 더 좋았을 것 같다는 개인적인 의견이다.

 

 

책 내용은 코더가 아닌 개발자로써 기술적인 역량 외에 갖춰야할

소프트 스킬이나 퍼스널 브랜딩에 대한 이야기를 해주고 있다.

 

특히, 중요한 것은 소프트 스킬이지 않나 싶다.

 

몸으로 부딪히며 익히는 것도 좋지만

책에서 알려주는 내용들에 대해서 머리로, 몸으로 익히게 된다면 정년 연장의 꿈을 꿀 수 있지 않을까?!

 

 

그냥 막 책을 읽는 것도 좋지만, 책에서 말하는대로 한 번 따라해보는 것도 좋지 않을까 싶다.

 

음... 이번 주 회의에서는 중간에 끼어들지 않고 "무조건 끝까지 듣기"를 꼭 실천해봐야겠다 !!!

반응형

으아... 정말 엄청난 반성만 하게되는 이번 혼공학습단 활동이다.

공부가 아닌 벼락 숙제만으로 점철된 혼공 스터디 !

 

다음 15기에 다시 도전해서 기회를 얻게 된다면,

벼락 숙제가 아닌 꼼꼼한 공부를 하는 착실한 학생이 되도록 해야겠다.

 

겉멋만 들어서 이미 공부했던 알고 있는 내용이라고 쓱~쓱~ 넘겨버렸던 딥러닝 개념들인데,

벼락 숙제하면서 코드를 살펴보면... 사실 혼자서 해보라고 하면 어떻게 해야할지 엄두도 나지 않는 내용들이었다.

 

다시 한 번 스터디할 때에는 PyTorch로 하나씩 직접 포팅해보면서

전부 내 것으로 만드는 과정을 가져보도록 해야겠다.

반응형

연휴만 만나면 정신을 못차리고 또 다시 지각 공부를 하게 되어버린 불량 학습자 !!!

 

▶ 기본 숙제 (필수)

CH04 (04-2) KerasNLP 또는 허깅페이스 BERT 모델로 영화 리뷰 감성 분석 후 결과 캡처하기

 

제공된 샘플 코드에서는 A100으로 학습했다고 하는데, T4로도 진행은 되었다.

다만, 엄청 오래걸렸을뿐...

 

label 값이랑 비교해보면 100% 정답을 맞췄다라는 것을 알 수 있다.

코멘트 내용도 참고해서 볼 수 있도록 추가해봤다.

 

"0" 값이 부정적인 평가이고, "1" 값이 긍정적인 평가이다.

반응형

+ Recent posts