가볍다는 말에 속아 시작한 VSCode 정착기: 내 손에 맞을 때까지의 지독한 삽질 기록
가볍다는 말, 그거 다 거짓말 아닌가요?
처음 프로그래밍을 시작했을 때 주변에서 입을 모아 했던 소리가 있습니다. “에디터는 그냥 VSCode 써. 가볍고 강력해.” 그 말을 믿고 설치했던 게 벌써 몇 년 전인데, 솔직히 첫인상은 ‘이게 왜 강력해?’였습니다. 화면은 힁하니 아무것도 없고, 뭘 해야 할지도 모르겠더군요. Visual Studio(이하 VS)를 써봤던 저로서는 당혹스러움 그 자체였습니다. VS는 설치만 하면 알아서 다 해주는데, 이건 뭐 하나 하려고 해도 내가 직접 찾아보고 설정해야 하니까요.
처음에는 이게 ‘가벼움’의 미덕인 줄 알았습니다. 그런데 쓰다 보니 그게 아니더군요. 기능을 하나하나 추가할 때마다 프로그램이 점점 무거워지는 게 눈에 보였습니다. ‘가볍지만 강력하다’는 말은, 사실 ‘네가 고생해서 기능을 다 때려 박으면 강력해지지만, 그만큼 무거워질 거야’라는 뜻이었던 거죠. 처음에는 무작정 남들이 좋다는 확장 프로그램(Extension)을 수십 개씩 설치했습니다. 파이썬, 자바, C++, 테마, 아이콘… 결국 제 VSCode는 실행하는 데만 10초가 넘게 걸리는 괴물이 되어버렸습니다. 여기서 첫 번째 현타가 왔죠. “이럴 거면 그냥 무거운 IDE를 쓰는 게 낫지 않나?”
첫 번째 시행착오: ‘풀 옵션’의 늪에서 허우적대기
제가 처음 저지른 가장 큰 실수는 VSCode를 Visual Studio처럼 만들려고 했던 겁니다. 모든 언어의 자동 완성이 다 되어야 하고, 디버깅도 버튼 하나로 끝나야 하며, 프로젝트 관리도 완벽해야 한다는 강박이 있었죠. 그래서 마켓플레이스에서 인기 순위에 있는 것들은 일단 다 깔고 봤습니다. 결과는 처참했습니다. 확장 프로그램끼리 충돌이 나는지 자동 완성은 뚝뚝 끊겼고, 램 점유율은 치솟았습니다.
결국 한 번은 프로젝트 마감 직전에 에디터가 아예 뻗어버리는 경험을 했습니다. 코드를 치고 있는데 3초 뒤에 글자가 나타나더군요. 그때 깨달았습니다. “아, 이건 다 가지려고 하면 안 되는 도구구나.” 결국 모든 설정을 초기화하고 삭제했습니다. 그리고 제가 지금 당장 쓰고 있는 언어, 딱 하나에만 집중하기로 했습니다. 이 과정에서 느낀 건, VSCode는 ‘완성형’이 아니라 ‘조립형’이라는 사실입니다. 내가 지금 뭘 만들 건지에 따라 부품을 갈아 끼워야 하는데, 저는 모든 부품을 한꺼번에 다 끼우려고 했던 거죠. 이 단순한 진리를 깨닫는 데만 몇 달이 걸렸습니다.
VSCode vs Visual Studio: 뷔페와 DIY 주방의 차이
잠시 멈춰서 생각을 정리해봤습니다. 왜 굳이 이걸 써야 하나? VS는 정말 편합니다. C#이나 C++ 프로젝트를 할 때 그 압도적인 편리함은 무시할 수 없죠. 하지만 VS는 너무 ‘무겁습니다’. 프로젝트 하나 여는 데 한 세월이고, 저사양 노트북에서는 팬이 미친 듯이 돌아가죠. 반면 VSCode는 확실히 날렵합니다. 물론 기능을 덕지덕지 붙이기 전까지는요.
비교를 해보자면 VS는 모든 요리가 다 준비된 ‘호텔 뷔페’ 같습니다. 내가 뭘 먹고 싶어 할지 미리 알고 다 준비해놨죠. 대신 가격이 비싸고(리소스 소모) 몸이 무거워집니다. VSCode는 내가 직접 재료를 사다가 요리하는 ‘DIY 주방’ 같습니다. 칼도 내가 고르고, 냄비도 내가 사야 합니다. 처음에는 귀찮아 죽겠는데, 익숙해지면 내 손에 딱 맞는 도구들만 배치할 수 있다는 장점이 생깁니다. 웹 개발처럼 자바스크립트나 타입스크립트를 주로 쓴다면 VSCode는 천국입니다. Node.js 지원은 정말 눈물이 날 정도로 매끄럽거든요. 하지만 반대로 무거운 엔터프라이즈급 C# 프로젝트를 돌릴 때는 여전히 VS가 그립기도 합니다. 상황에 따라 뭐가 더 낫다고 단정 짓기는 정말 어렵더군요.
두 번째 시행착오: C++ 환경 설정하다가 멘탈 나간 날
가장 지독했던 경험은 C++ 환경을 맞출 때였습니다. VS에서는 그냥 ‘C++을 사용한 데스크톱 개발’ 체크 하나면 끝나는 일인데, VSCode에서는 launch.json, tasks.json, c_cpp_properties.json 이 삼형제를 직접 만져야 하더군요. 인터넷에 있는 가이드를 그대로 따라 했는데도 컴파일 에러가 아니라 ‘에디터 설정 에러’가 뜰 때의 그 막막함이란…
특히 윈도우 환경 변수 경로 문제로 반나절을 날렸을 때는 정말 때려치우고 싶었습니다. 분명히 g++ 경로를 설정했는데 VSCode는 못 찾는다고 아우성이었죠. 알고 보니 확장 프로그램 설정에서 경로를 한 번 더 지정해줘야 하거나, 터미널을 다시 시작해야 하는 사소한 절차들이 꼬였던 거였습니다. 기술적으로 막혔다기보다는, 이 도구의 작동 방식을 이해하지 못한 채 ‘왜 안 돼!’라고 소리만 지르고 있었던 거죠. 결국 저는 이 문제를 해결하지 못하고 일단 포기했습니다. 그러다 며칠 뒤에 우연히 본 블로그 글 하나로 해결했는데, 허무할 정도로 간단한 오타 문제였습니다. 이 과정에서 배운 건, VSCode는 나에게 ‘공부’를 강요한다는 점입니다. 에디터가 어떻게 작동하는지 모르면 한 발짝도 나갈 수 없게 만들더군요.
문제가 생기면 일단 멈추고 관찰하기
최근에는 Git 통합 기능 때문에 한참을 고생했습니다. 기본으로 제공되는 Git 기능이 조금 빈약하게 느껴져서 ‘GitLens’라는 유명한 확장 프로그램을 깔았는데, 이게 또 물건이면서 동시에 재앙이었습니다. 코드 한 줄 한 줄마다 누가 언제 수정했는지 보여주는 기능은 좋은데, 화면이 너무 지저분해지더군요. 코드를 보는 게 아니라 정보를 읽는 느낌이었습니다.
문제 상황: 화면이 정보 과잉으로 읽기 힘들어짐.
판단: 이 기능이 나에게 정말 필요한가? 아니면 그냥 있어 보여서 쓰는 건가?
선택: 모든 기능을 끄지 말고, 마우스를 올렸을 때만 정보를 보여주도록 설정을 변경하자.
실행: 설정 창(Ctrl+,)을 열어 gitlens를 검색하고 수십 개의 체크박스를 하나씩 읽어가며 조정함.
결과: 훨씬 쾌적해졌습니다. 이제 코드는 코드대로 보이고, 필요할 때만 히스토리를 확인하게 됐죠.
이런 식의 조정 과정이 끝도 없이 반복됩니다. 어떤 날은 폰트가 맘에 안 들어서 2시간 동안 폰트만 검색하고 있고, 어떤 날은 터미널 색깔이 구려서 테마를 바꾸느라 코딩은 뒷전이 됩니다. 이게 VSCode의 가장 큰 함정입니다. ‘생산성’을 높이려고 시작했는데, ‘도구 세팅’ 그 자체가 목적이 되어버리는 주객전도 현상 말이죠.
결국, 정답은 없다는 결론
그래서 지금은 만족하냐고요? 음, ‘그럭저럭’입니다. 여전히 가끔은 IntelliSense가 멍청하게 굴 때가 있고, 업데이트 한 번 잘못하면 설정이 꼬이기도 합니다. 하지만 이제는 당황하지 않습니다. 그냥 ‘아, 또 시작이네’ 하고 구글링을 하거나 설정을 뒤져보죠.
VSCode는 완벽한 도구가 아닙니다. 사용자를 배려하는 척하면서도 불친절하고, 가볍다고 유혹하면서도 욕심을 부리면 바로 무거워지는 까칠한 녀석이죠. 하지만 내 입맛에 맞게 하나씩 튜닝해가는 재미는 확실히 있습니다. 마치 오래된 중고차를 가져와서 엔진부터 시트까지 내 손으로 직접 바꾸는 기분입니다. 가끔 시동이 안 걸려 고생은 하겠지만, 일단 달리기 시작하면 그 어떤 차보다 내 몸에 딱 맞는 느낌이랄까요.
솔직히 지금도 누군가 저에게 “VSCode가 최고인가요?”라고 물으면 선뜻 대답하지 못하겠습니다. 어떤 상황에서는 여전히 VS가 압도적으로 편하고, 가벼운 메모는 메모장이 최고니까요. 결국 에디터라는 건 종교와 같아서, 내가 믿고 의지할 수 있는 설정을 얼마나 잘 구축하느냐의 싸움인 것 같습니다. 제 삽질은 아마 내일도, 모레도 계속될 것 같습니다. 새로운 확장 프로그램이 나오면 또 혹해서 깔아보고 후회하겠죠. 뭐, 그게 개발자의 일상 아니겠습니까?
