손으로 코드를 작성할 때 더 행복하다

6 hours ago 3

  • LLM 기반 코드 생성 도구를 반복적으로 사용한 후, 직접 코드를 작성할 때 느끼는 몰입감과 즐거움을 다시 발견함
  • 코드 작성은 단순한 생산 행위가 아니라 문제 공간을 이해하고 사고를 정제하는 과정으로, 자동 생성은 이를 방해함
  • 자신이 작성하지 않은 코드의 정확성 검증이 어렵고, 직접 작성할 때만 맥락을 내면화할 수 있음
  • LLM을 제한적으로 활용해 맥락을 수동으로 제공하고 코드 일부만 수정·테스트 생성에 사용함으로써 사고의 주도권을 유지함
  • 생산성보다 사고의 깊이와 행복감을 우선시하며, 도구가 사고를 방해한다면 경계해야 함을 강조함

LLM 코드 생성 사용 경험과 회의감

  • 여러 차례 claude-code를 사용했지만, 매번 우울감과 무기력감을 느끼고 결국 삭제함
    • 자동 생성된 코드가 “그럴듯해 보이지만” 자신이 할 일의 의미를 잃게 만든다고 서술
    • 도구 사용을 중단할 때마다 다시 코딩의 즐거움을 되찾았다고 언급
  • 코딩은 단순한 구현이 아니라 문제 공간을 탐색하고 실패를 통해 배우는 과정
    • API를 진정으로 이해하려면 직접 사용해봐야 하며, 문서만 읽어서는 부족하다고 설명
    • 코드 작성 행위 자체가 사고를 구체화하는 수단으로 작용함

사고와 정확성의 관계

  • Leslie Lamport의 인용문을 통해 “쓰지 않고 생각하는 것은 진짜 생각이 아니다”라는 관점을 제시
  • 자신이 작성하지 않은 코드의 정확성 검증이 훨씬 어렵다고 지적
    • 직접 작성 과정에서 문제 맥락을 내면화하게 되며, 이는 코드 품질 이해에 필수적임
    • LLM에 의존하면 이 과정을 건너뛰게 되어 문제 도메인 이해가 약화

‘Vibe coding’의 중독성과 부작용

  • LLM 코드 생성은 즉각적인 도파민 보상을 주는 중독적 특성을 가짐
    • “조금만 더 프롬프트를 수정하면 맞을 것”이라는 착각을 유발함
  • 이러한 방식은 사고의 관성을 키워 두뇌를 수동적으로 만들고, 단순 작업조차 LLM에 의존하게 함
    • 예로, 단순한 find-and-replace 작업조차 LLM에 맡겨 시간이 더 걸렸다고 서술
  • 생성된 코드가 많더라도 결국 검토와 이해의 책임은 인간에게 있음, 이는 오히려 병목을 초래함

도구가 사고를 형성하는 방식

  • “도구는 중립적이지 않다”는 관점에서, 사고를 방해하는 도구는 나쁜 도구라고 단언
    • 지식 노동자의 핵심 역량은 깊이 생각하는 능력이며, 이를 방해하는 기술은 경계해야 함
  • LLM을 완전히 배제하지 않고, 의도적이고 제한된 방식으로 활용
    • 필요한 파일만 복사해 맥락을 제공하고, 코드 일부 수정이나 테스트 작성에만 사용
    • 이렇게 하면 생성된 변경 범위가 작고, 코드베이스 전체 구조를 스스로 파악할 수 있음
    • 수동적 생성이 아닌 ‘사려 깊은 생성’ 으로 전환되어 두뇌의 활동성과 flow 상태 유지 가능

행복과 생산성의 균형

  • 인생은 짧으며, 행복을 우선시해야 한다는 결론 제시
    • 전체 기능을 자동 생성하면 생산성이 높아질 수는 있지만, 존재적 불안과 우울감을 초래한다면 장기적으로 비생산적임
  • 독자에게 자신의 감정에 공감할 수도, 그렇지 않을 수도 있음을 인정하면서도,
    “다르게 선택하는 것을 두려워하지 말라” 는 메시지로 글을 마무리함

Read Entire Article