brunch

You can make anything
by writing

C.S.Lewis

by 마크 Aug 28. 2021

파이썬의 지상 최대 단점

코딩을 통해 내가 하고 싶었던 것들

밤마다 파이썬으로 코드를 짜고 공부하던 때 몇 가지 간단한 프로그램을 만들었다. 너무 간단한 웹크롤링 기술이었지만 나처럼 이 프로그램이 꼭 필요한 사람이 있을 거라 생각했다.


내가 만든 프로그램을 공유하고 싶었다

그중 하나가 '티스토리 낙장 찾기 프로그램'이었다. 같이 블로그를 하는 사람들과 같이 쓰고 싶었다. 하지만, 이 프로그램은 내 개인용 컴퓨터에만 존재한다.


상대방에게 내가 쓴 프로그램을 쓰게 하려면 그 사람 컴퓨터에 파이썬을 설치하고 내 코드를 받아 실행해야 했다. 답답했다.


나의 스승 중 하나인 구글에 폭풍 검색을 해 본 결과, 내가 만든 프로그램을 웹에 띄우려면 프로그램 코드를 웹서버(Web server)에 올려야 했다. 도메인을 공유하여 프로그램 실행이 서버에서 돌아가게 해줘야 한다는 것을 알게 되었다.


서버는 24시간 쉬지 않고 돌아가는 컴퓨터이다. 보통 IDC(Internet Data Center)에 서버들이 있다. 이 중 일부를 임대해서 쓸 수 있는데 이를 '호스팅(Hosting)'이라 한다. 호스팅을 하려면 비용이 들어간다. 닷홈(dothome.co.kr), 가비아(gabia.com), 카페24(cafe24.com), 블루호스트(bluehost.com), AWS(aws.amazon.com/ko/) 등이 대표적인 호스팅 서비스를 제공하는 곳이다.


장고(Django)도 배워야 한다고요?

하지만, 호스팅을 해야 하는 것과 더불어 서버 환경에서 파이썬 프로그램이 설치되어 있어야 했다. 일단 그런 호스팅 서비스를 찾기가 힘들었다. 파이썬을 구동할 수 있는 웹호스팅이 있다고 해도 파이썬으로 웹사이트를 만들려면 장고(Django)라는 프레임워크를 사용해야 한다는 것을 알게 되었다.


파이썬을 배우는 것도 쉬운 일은 아니었는데 장고라는 것까지 배워야 파이썬을 이용한 웹페이지를 만들 수 있다는 것을 깨닫고 적잖이 당황했다.


바로 장고와 관련된 책을 사서 봤지만 내가 이해할 수 있는 내용이 아니었다. 책을 다 보지도 않고 덮었다. 며칠 상념에 빠졌다. 내가 하고 싶은 게 뭔지 다시 생각하게 되었다.


내가 진짜 하고 싶었던 것

며칠을 생각한 끝에 나는 웹서비스를 만들고 싶었다는 결론을 얻었다. 나는 프로그래머가 되기보다 블로거이길 원했다. 자동 포스팅을 만들고 싶어서 코딩을 시작했지만 그 이상의 것도 하고 싶었다. 블로그를 하는 사람들이 블로그를 할 때 도움이 되는 것들을 만들어서 공유하고 싶었다.


나는 글 쓰는 것 이외의 불편한 것들을 쉽고 빠르게 할 수 있는 서비스를 만들고 싶었고 이를 사람들과 공유하고 싶어 한다는 것을 알게 되었다. 이걸 할 수 있는 가장 빠른 길은 php를 배우는 것이라 생각했다.


나에게 php를 가르쳐 준 단톡방의 '드용'님은 웹으로 뭔가 해보고 싶다면 HTML, CSS, JAVASCRIPT, PHP를 배우라고 권유해 주었다. 파이썬도 좋은 프로그램이지만 웹서비스에 있어서는 php가 가장 좋다고 했다.


대부분의 웹호스팅은 php를 지원하고 있었고 워드프레스(wordpress)도 php 기반이었다. 블로그를 하는데 도움이 되고 내가 할 수 있는 수준의 간단한 웹프로그램을 만들기 위해 배워야 할 언어 중 php가 가장 적당할 것이라 생각했다.


그렇게 나는 파이썬에서 php로 개발언어를 바꾸었다.


이에 대해 반론을 가진 수많은 사람들도 있겠지만 나는 개발자가 아니다. 내가 원하는 것을 쉽고 빠르게 할 수 있는 방법을 위해 php를 택했고 아직까지 php를 배운 것에 대해 단 한 번도 후회를 해본 적은 없다. 현재까지도 나의 모든 웹서비스들은 php 기반이다.


파이썬도 큰 장점을 가진 언어이다. 지금도 잘 쓰고 있다. 특히, 웹 크롤링과 관련해서는 php보다 훨씬 편리하고 강력하다. 다량의 데이터를 처리하는 능력도 뛰어나다. 수많은 라이브러리들이 개발이 되어 있어서 간단한 코드만으로도 강력한 기능을 구현할 수 있다.


내 배움이 부족하여 파이썬으로 웹프로그램을 만들지 못하는 것뿐임을 강조하여 말하고 싶다. 나의 경험이 어떤 언어를 배우는 것이 좋을지 고민하는 분들에게 작은 도움이 되길 희망한다. 가장 중요한 것은 코딩을 통해 '내가 무엇을 하고 싶은지'를 아는 것이다.

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari