반응형
반응형

[python] I'm Switching to Python and Actually Liking It  파이썬으로 전향중이고, 생각보다 꽤 마음에 들어요  

 

https://www.cesarsotovalero.net/blog/i-am-switching-to-python-and-actually-liking-it.html

 

I’m Switching to Python and Actually Liking It

I’ve started writing more Python code lately (because of… AI, you know). In this post, I share the tools, libraries, configs, and other integrations I use for building production-grade Python applications following a frontend-backend architecture.

www.cesarsotovalero.net

 

 

  • 최근 AI 개발의 트렌드로 인해 본격적으로 파이썬 학습 및 사용을 시작했고, 이제는 그 생태계에 큰 만족을 느끼고 있음
  • Python은 과거보다 훨씬 빠르고 현대적인 언어로 발전했고, Cython을 통한 성능 향상 등 급격한 발전을 체감함
  • uv, ruff, pytest, Pydantic 등 최신 개발 도구와 라이브러리를 본인의 워크플로우에 적극 도입하여 개발 생산성을 높이고 있음
  • 프로덕션 환경과 Jupyter 노트북/스크립트 기반 개발 간의 차이를 줄이기 위한 프로젝트 구조 및 자동화 방안도 적용
  • GitHub Actions, Docker 등을 활용해 CI/CD, 테스트, 인프라 관리를 효율적으로 구축함.

 

I’m Switching to Python and Actually Liking It 요약

왜 파이썬으로 전향했는가

  • AI 중심의 개발 환경에서는 Python이 사실상의 표준 언어로 자리잡고 있음
  • 과거에는 단순한 스크립트 작성에만 사용했지만, 최근에는 RAG, 에이전트, 생성형 AI 등의 “실전용 앱”을 만들기 위해 진지하게 사용하게 되었음
  • 그 과정에서 Python 생태계가 과거에 비해 매우 진화했다는 사실을 체감하게 되었음

Python의 강점 3가지

  1. 풍부한 라이브러리와 도구 생태계: 데이터 처리, 분석, 웹, AI에 특화
  2. Cython 등으로 인한 성능 개선: 컴파일 기반 최적화 가능
  3. 개선된 문법 가독성: __init__, __new__ 같은 레거시 문법은 감춰지고, 더 직관적인 문법 제공

주요 도구 및 설정

  • uv
    • Astral에서 제공하는 최신 파이썬 패키지 매니저 및 빌드 도구
    • 의존성 관리, 가상환경 생성, 프로젝트 초기화 등 대부분의 작업을 빠르게 처리함
    • pyproject.toml이 핵심 설정 파일로, 모든 메타데이터 및 의존성 정보가 통합됨
    • uv init, uv add, uv sync 명령어로 빠르게 프로젝트 환경 구성 가능
  • ruff
    • 초고속 파이썬 린터 및 코드 포매터
    • isort, flake8, autoflake 등을 통합한 도구
    • ruff check, ruff format 으로 린팅 및 자동 수정
    • PEP 8 코딩 스타일 가이드 기본 지원
  • ty
    • Astral이 만든 Python용 정적 타입 검사기
    • typing과 조합해 정적 분석, 초기 버그 방지에 효과적
    • 초기 개발 단계임에도 안정적으로 사용할 만한 수준임
  • pytest
    • 단위테스트 및 확장 가능한 테스트 환경을 제공하는 대표적인 파이썬 테스트 프레임워크
    • 간단한 파일 네이밍 규칙과 명령어 한 줄로 바로 통합 테스트 가능함
      • test_*.py로 테스트 구성 후 uv run pytest로 실행
    • 간결한 문법, 풍부한 플러그인 생태계
  • Pydantic
    • 데이터 검증 및 환경 설정 관리 라이브러리
    • .env 환경변수 기반 설정 로딩 및 타입 검증
    • BaseSettings 클래스를 통해 API 키나 DB URL 등을 안전하게 관리
  • MkDocs
    • 파이썬 프로젝트의 정적 웹사이트 및 문서 생성을 간편하게 지원
    • 오픈소스 프로젝트 스타일의 미려한 디자인 빠른 적용 가능
    • GitHub Pages 연동도 용이
  • FastAPI
    • 빠른 RESTful API 구축 프레임워크
    • 자동 검증 및 문서화, 빠른 성능, 쉬운 Pydantic 통합 장점
    • Starlette 및 Pydantic 기반으로 높은 타입 안정성과 성능 제공
  • Dataclasses
    • 파이썬 표준 기능으로 데이터 중심 클래스를 간편하게 정의할 수 있음
    • 특별 메소드 자동 생성으로 보일러플레이트 코드 대폭 감소

버전 관리 및 자동화

  • GitHub Actions
    • project-api와 project-ui 각각에 대해 별도 CI 파이프라인 구성
    • 다양한 OS에서 CI 파이프라인 구축에 최적화된 워크플로우 제공
    • 도커 기반 테스트 환경으로 프로덕션과 동일한 환경에서 테스트 시행 가능
  • Dependabot
    • 자동 의존성 최신화 및 보안 패치 관리를 자동화함
  • Gitleaks
    • 민감 정보(비밀번호, API 키 등) 유출 방지 도구로 git 커밋 전에 보안 검사를 수행함
  • Pre-commit Hooks
    • 커밋 전 자동 린팅, 포매팅, 보안 검사를 위한 도구임
    • ruff, gitleaks 등과 함께 사용해 코드 일관성과 품질 유지

인프라 자동화

  • Make
    • make test, make infrastructure-up 등의 명령어로 일관된 개발 워크플로우 지원
    • 프로젝트 루트와 project-api에 각각 Makefile 존재
  • Docker & Docker Compose
    • project-api, project-ui 각각을 컨테이너로 분리 실행
    • docker compose up --build -d 한 줄로 전체 앱 실행 가능
    • Dockerfile에는 uv 설치, FastAPI 앱 실행 명령어 포함

마무리

  • 위와 같이 최신 파이썬 개발 환경에서는 효율적이고 견고한 프로덕션 워크플로우를 구성할 수 있음
  • AI, 데이터, 웹 개발 등 다양한 영역에 걸쳐 파이썬 생태계의 성장과 도구 발전으로부터 많은 이점을 경험 가능
  • 모노레포 구조, 자동화 도구, 린터 및 타입 검사기, 즉각적인 테스트 환경, 문서화, 인프라 오케스트레이션까지 하나의 통합된 개발 문화를 구현할 수 있음

https://news.hada.io/topic?id=22028&utm_source=weekly&utm_medium=email&utm_campaign=202529

 

파이썬으로 전향중이고, 생각보다 꽤 마음에 들어요 | GeekNews

최근 AI 개발의 트렌드로 인해 본격적으로 파이썬 학습 및 사용을 시작했고, 이제는 그 생태계에 큰 만족을 느끼고 있음Python은 과거보다 훨씬 빠르고 현대적인 언어로 발전했고, Cython을 통한 성

news.hada.io

 

반응형
반응형

인간의 모습에는
대략 네 가지 면이 있었다.
그 가운데 두 가지가 결점이고 나머지
두 가지가 장점이라면 괜찮은 인물이지만,
결점 셋에 장점 하나인 사람이 많다. 그렇다고
장점이 하나도 없는 인간은 없으며, 장점이 없어
보이는 것은 상대가 장점을 발견하려는 노력을
게을리하기 때문으로 믿고 있었다. 따라서
사람과 사람의 싸움은 그 결점의 충돌로
시작되고 사람의 화합은 장점이
만나는 곳에서 생겨난다.


- 야마오카 소하치의 《대망 4》중에서 -


* '결점과 결점이 만나면 싸움이,
장점과 장점이 만나면 화합이 된다.'
무릎을 치게 하는 명언이 아닐 수 없습니다.
문제는 '제 눈의 안경'이라는 점입니다. 같은 사안도
보는 눈에 따라 달리 보입니다. 때문에 사람의 장단점을
섣불리 판단하는 우를 범해서는 안됩니다. 서로의
장점과 장점이 만나 화합을 이루도록
최선을 다해 노력할 뿐입니다.

반응형

'아침편지' 카테고리의 다른 글

한국 요리, 세계 요리  (0) 2025.04.02
모든 생명은 소중하고 아름답다  (0) 2025.04.01
양심과 공정이 이끄는 세상  (0) 2025.03.28
혼자 떠드는 이야기  (0) 2025.03.27
역사를 지닌 동물  (0) 2025.03.27
반응형

성숙해지려면
세 가지 용기가 필요해요.
거절당할 용기.
상처를 받아들일 용기.
남의 장점을 볼 용기.


- 쉬하오이의《애쓰지 않으려고 애쓰고 있어요》중에서 -


* 용기.
세 가지도 필요 없습니다.
어느 한 가지만 단단히 가져도 됩니다.
그다음 다른 용기는 저절로 뒤따라옵니다.
용기가 용기를 낳습니다.

반응형

'아침편지' 카테고리의 다른 글

오래 볼수록 더 반짝이는 별  (0) 2023.08.17
시간이라는 약  (0) 2023.08.16
이야기가 곁길로 샐 때  (0) 2023.08.16
명상  (0) 2023.08.16
살아 있는 글쓰기  (0) 2023.08.11
반응형

덕은 겸손이 아니고는 이루지 못한다.
자신을 볼 때는 단점을 살피고, 남을 볼 때는 장점을 살핀다.
미처 이루지 못한 작은 선을 가지고 남의 큰 선에 견준다.
이 때문에 자신의 태만함을 자책하고 그 덕을 스스로 힘써,
자기가 남만 못하다고 말하니, 성현은 이것으로 겸손을 길렀다.
- 판토하, ‘칠극’에서


이어지는 내용입니다.
“덕을 닦는 사람은 남이 알아주는 것을 경계할 뿐 아니라,
스스로 알아주는 것을 더 더욱 경계한다.
감추는 것을 귀하게 여길 뿐 아니라, 아주 잊어버리는 것을 더 귀하게 친다.
나의 덕을 남의 눈에 보이지 않게 하였더라도 다시금
자신의 눈에서도 숨겨야 한다.”

반응형
반응형

위대한 그룹을 만들기 위해
리더가 할 수 있는 최선의 일은
각각의 구성원들이 스스로의 위대함에
눈뜨게 하는 것이다.
- 워렌 베니스, 리더십 대가


스스로 위대하다고 느끼는 사람은
그렇지 않은 사람에 비해 월등한 성과를 만들어냅니다.
진정한 관심과 존중, 강점에 대한 적극적 칭찬, 완전한 정보 공개,
권한위양을 넘은 책임감과 오너의식 부여, 높은 기대 표출과 같은 노력들이
오래 쌓이게 되면 사람들은 자신의 위대함을 깨닫게 됩니다.
리더는 구성원의 장점을 찾아내고 이를 알리는데 귀신같은 사람이 되어야 합니다.

반응형
반응형


성숙해지려면
세 가지 용기가 필요해요.
거절 당할 용기.
상처를 받아들일 용기.
남의 장점을 볼 용기.


- 쉬하오이의《애쓰지 않으려고 애쓰고 있어요》중에서 -


* 용기.
세 가지도 필요없습니다.
어느 한 가지만 단단히 가져도 됩니다.
그 다음 다른 용기는 저절로 뒤따라옵니다.
용기가 용기를 낳습니다.

 

반응형

'아침편지' 카테고리의 다른 글

오래 볼수록 더 반짝이는 별  (0) 2020.08.31
지금 이 순간을 미워하면서도  (0) 2020.08.30
역량껏, 충분히, 열심히 살아도...  (0) 2020.08.28
삶을 신성하게 만드는 방법  (0) 2020.08.26
시간이라는 약  (0) 2020.08.25

+ Recent posts