레고 성을 만든다고 상상해 보자. 그런데 성을 쌓기 전에 블록을 분류하는 상자를 찾고, 설명서를 정리하고, 필요한 도구를 각각 다른 방에서 가져와야 한다면 어떨까. 정작 성을 만드는 시간보다 준비하는 시간이 더 길어질 것이다. 컴퓨터 프로그래밍 언어인 파이썬으로 무언가를 만들 때도 지금까지는 이런 번거로운 준비 과정이 필요했다. 왜 우리는 코드를 쓰기도 전에 이렇게 많은 준비를 해야 했을까.
uv와 Ruff가 바꾸는 파이썬 준비 과정
최근 개발자들 사이에서는 준비 과정을 획기적으로 줄인 새로운 도구 모음이 주목받고 있다. 핵심은 uv(파이썬 설치와 관리를 한 번에 해주는 도구), Ruff(코드의 오타나 잘못된 부분을 찾아 고쳐주는 도구), Ty(코드에 적힌 데이터 종류가 맞는지 확인하는 도구), 그리고 Polars(많은 양의 데이터를 아주 빠르게 처리하는 도구)라는 4가지 도구다. 이 도구들은 예전에 10개가 넘게 필요했던 복잡한 과정들을 단 몇 가지 단계로 줄여준다.
과거에는 파이썬을 설치하고, 가상 공간을 만들고, 필요한 라이브러리를 가져오는 일을 각각 다른 도구로 처리해야 했다. 하지만 이제는 uv 하나만 설치하면 파이썬 설치부터 환경 설정까지 모두 끝난다. 여기에 Ruff와 Ty가 코드의 품질을 관리하고 Polars가 데이터를 빠르게 처리하며 하나의 팀처럼 움직인다. 이제는 도구를 고르는 고민 대신 무엇을 만들지 고민하는 시간이 늘어났다.
10개의 리모컨을 하나로 합친 효율성
이 변화가 왜 중요한지 이해하려면 예전 방식을 떠올려봐야 한다. 예전에는 코드의 줄을 맞추는 도구, 잘못된 문법을 찾는 도구, 데이터 종류를 확인하는 도구가 모두 따로 있었다. 비유하자면 TV 하나를 켜는데 리모컨 10개를 각각 따로 사용해야 하는 상황과 비슷했다. 리모컨이 많을수록 관리하기 힘들고, 어떤 리모컨을 써야 할지 헷갈리기 마련이다.
새로운 방식은 이 10개의 리모컨을 하나의 만능 리모컨으로 합친 것과 같다. 특히 uv, Ruff, Ty는 같은 회사에서 만들었기 때문에 서로 아주 잘 맞는다. 도구들이 서로를 잘 알기 때문에 충돌이 적고 설정하는 방법도 거의 비슷하다. 여러 도구를 따로 공부할 필요 없이 하나만 익히면 나머지도 쉽게 쓸 수 있게 되었다. 결국 복잡한 도구들의 조합이 단순한 하나의 세트로 변한 것이다.
메모장 하나로 끝내는 팀 프로젝트 설정
실제로 이 도구들을 사용하면 프로젝트의 모든 설정이 pyproject.toml(프로젝트의 모든 설정 내용을 적어두는 메모장 같은 파일)이라는 파일 하나에 담긴다. 예전에는 설정 파일이 여기저기 흩어져 있어서 새로운 팀원이 합류하면 환경을 맞추는 데만 하루 꼬박 걸리기도 했다. 하지만 이제는 이 메모장 파일 하나만 공유하면 모든 팀원이 똑같은 환경을 즉시 갖출 수 있다.
여기에 Hatchling(작성한 코드를 다른 사람이 쓸 수 있게 묶어주는 도구) 같은 시스템을 더하면 내가 만든 프로그램을 다른 사람에게 전달하는 과정도 매우 쉬워진다. 특히 데이터를 다룰 때 Polars를 사용하면 기존보다 훨씬 빠른 속도로 결과를 확인할 수 있어 작업 흐름이 끊기지 않는다. 복잡한 설치 과정이 사라지니 개발자는 오직 코드의 논리에만 집중할 수 있는 환경이 만들어졌다. 이제는 설정의 늪에서 벗어나 실제 결과물을 만드는 속도가 빨라졌다.
프로그래밍의 시작 단계가 단순해지면서 누구나 더 쉽게 아이디어를 구현할 수 있는 환경이 되고 있다.




