일상 & 단상

Jupyter Notebook을 좋아하지 않는 이유

Folivora 2024. 3. 24. 23:57

 

파이썬을 활용하여 데이터를 다뤄보려는 사람들 중에서 주피터 노트북을 써보지 않은 사람은 없을 것이다. 나 역시도 처음 주피터 노트북을 접했을 때 Interactive한 작성 과정이 신선하고 편하게 느껴졌다. 파이썬에서 어떤 데이터를 코드를 통해서 처리하게 되었을 때 어떤 형태로 변환되는지를 눈으로 바로 확인할 수 있기 때문이다.

 

여기서 문제가 생긴다면 쉽게 고칠 수 있을까?

 

하지만 이러한 주피터 노트북의 코딩 방식(?)에 익숙해진 분들과 협업을 하게 되었을 때, 다음과 같은 문제점을 관찰하게 되었다. 사실 주피터 노트북 자체가 나쁜게 아니라, 이게 워낙 편하다보니 나쁜 개발 습관을 장려하는 느낌이다.

  • 사용이 되지 않는 변수 등을 제거하지 않아서 혼란을 준다. 
  • 실행 순서가 순방향이 아닌 경우도 있고, 중간에 스킵해야 하는 경우도 있다. 잘 동작하지 않는 셀을 건너뛰는 것은 작성자는 알겠지만, 다른 사람은 알 길이 없다.
  • 모듈화에 대한 개념이 사라지고, 복붙 코드들이 늘어나는 경향이 있다.
  • 전역 변수 사용이 빈번해진다.
  • 버전 관리가 잘 되기 어렵다. JSON 뭉치이기 때문이다.

함수로 중복 코드를 제거하고 공통 패턴을 뽑아내는 연습들을 많이 강조하긴 하지만, 습관의 문제라 쉽게 고쳐지는 것을 기대하기는 어려운 것 같다.