개발자가 IDE를 반드시 사용해야하는 이유
장인은 도구를 탓하지 않는다 라는 말이 있습니다. 장인이 물론 좋지 않은 도구로도 일 할 수 있을 겁니다. 그런데 장인이 생산성을 높이는 멋진 도구를 두고 굳이 낡은 도구로 일할까요? 이번에는 IDE에 대해 얘기해보고자 합니다.
저는 atom, vscode를 거쳐서 지금은 jetbrains 계열의 여러 ide(pycharm, datagrip, goland, intelliJ…) 를 상황에 맞게 사용하고 있는데요, 가끔은 vscode도 쓰고 있습니다.
나는 vim 하나만 있어도 되는데? 아니 신입들이 에디터로만 일하면 OO할 때나 XX 할때는 vim 할 줄 몰라서 어떻게 해?’
오, vim 좀 치시는군요. 멋집니다. 물론 제한된 상황에서 서버에 접속해서 명령어를 써야한다거나, 무슨 버전인지도 모르는 고대의 vim으로 스크립트 파일을 수정하고 실행해야할 수도 있죠. 그런데 혹시 멋짐을 위해 생산성을 희생하고 계신건 아닌가요? Vim을 엄~청 잘쓴다고 해도 ide 편리성이 만만치 않습니다.
좋은 엔지니어는(혹은 개발자, 프로그래머 등 코드를 생산하는 사람) 상황에 맞게 적절한 도구를 선택해서 사용할 줄 아는 사람입니다. 적절한 도구란 위에서 말한 IDE 뿐만 아니라 그외의 커스텀 도구, perl, sed, 정규표현식, 간단한 셸 스크립트 등이 있습니다. 조금 더 범위를 넓게 보면 스프레드시트, 구글 독스, 노션, 슬랙도 있겠네요. (더 크게 보면 테스팅 도구, 배포 도구, … ) 그러니 닭 잡는 칼로는 닭을, 소 잡는 칼로는 소를 잡읍시다.
개발하다보면 엑셀(스프레드시트)을 경시-혹은 그냥 존재 자체를 잊거나-하게 되는 경향이 있는데, 데이터 정리할 때는 엑셀만 한게 없죠..
(김대리… 엑셀 팡숀 함부로 쓰지마세요..)
저도 vim 좋아합니다. vim 잃지 못하시는 분들을 위해, 여러분이 사용할 대부분의 ide에는 공식/비공식 vim extension 이 제공되고 있습니다. ide + vim 이라면 생산성^생산성이 될 겁니다. 그리고 혹시 vim의 악명 때문에 안써보신 분들은 꼭 한번 츄라이 해보세요. 난이도가 높긴 하지만 이게 또 명령어 하나하나 알아가는 재미가 있습니다. ‘아냐 emacs가 짱이야’ 하시는 분은 아… 제가 이걸 잘 몰라서.. 패스하겠습니다.
난 이미 IDE를 쓰고 있어, 하시는 분들도 도구를 잘 쓰고 있는지 종종 돌아보시면 좋습니다. 제가 vscode에서 jetbrain으로 넘어가기 전에는 조금 더 편리하고 이쁜 텍스트 편집기 정도로만 쓰고 있었거든요. 기능 뭐 그거 써도 좋아봐야 얼마나 좋겠어.. 라는 생각도 있었고요. (정말 진짜 너무 좋았습니다.) 물론 jetbrains 같은 경우는 제대로 쓰려면 비용이 들기는 합니다. 다만, 저도 지금은 회사에서 제공해줘서 쓰고 있긴 한데, 앞으로 업으로 개발을 할 때는 (그리고 대체품을 찾기 전에는) 계속 이용할 것 같습니다.
그러니 IDE, 전신슈트처럼 금지 당한 장비도 아닌데, 편하게 쓰라고 만들어둔 도구, 잘 다뤄서 잘 씁시다.
도구에 투자하는 비용은 지금 당장에도, 또 앞으로도 결실을 맺어 되돌아옵니다. 수정해야하는 코드가 500곳이 넘어가면 사람이 일일이 수정하기보다는 변경 생성 도구를 익혀 이용하는게 효율이 좋았습니다. 숙련된 코드 관리자라면 훨씬 적은 수정도 도구를 이용하는 편이 낫습니다.- 구글 엔지니어는 이렇게 일한다 — 22.4.2 대규모 변경 - 대규모 변경 인프라 - 코드베이스 인사이트
Leave a comment