본문 바로가기

[2025-03-14] TIL을 1년 쓰고 느낀 점

codeConnection 2025. 3. 14.

TIL이란?

TIL이란 Today I Learned의 약자이다. 즉 오늘 내가 배운 것 기록해둔 자료를 의미한다.

작년 이맘때 쯤 서른이 넘은 나이에 부트캠프에 처음 들어가면서, 뭔가 새로운 길이 열릴 것 같다는 기대감에 부풀었고, 평소에도 이것저것 메모하고 학습하는 것을 좋아하는 성격이었기 때문에 부트캠프에서 처음으로 소개받은 TIL 작성에 대해서 들었을 때는 충격 그 자체였다.

나는 군 복무 시절부터 일기를 꾸준히 작성해왔지만 내 일기의 목적은 그 날의 생각정리, 훗날 다시 읽었을 때 내 생각의 변화를 알 수 있고 추억 속에서 휘발되기엔 아까운 나라는 사람의 인생을 기록하고 싶었기 때문이다.

내가 살면서 공부했던 게 이것 뿐이겠는가? 군대에 가면 총 쏘는 방법을 알아야 하고, 경계 근무 요령에 대해서도 배워야 하고, 회사에 가서는 복사기 사용법을 배워야 하고 정말 많은 것을 배워야했다. 단순히 학교와 학원에서 학습한 것뿐만 아니라 인생은 학습의 연속이다. 모르긴 몰라도 내가 배운 것을 책으로 써내려 간다고 하면 한 트럭으로도 모자라지 싶다.

그런데 이것은 나뿐만 아니라 그냥 모든 사람의 보편적인 모습인 것 같다. 이런 점에서 나는 TIL이라는 것에 충격을 받았다. 내 인생은 내가 기록하려고 했지만 내가 배운 것은 전부 여기저기 흩어져 있고, 휘발되어 버린 것들도 많기 때문이다. 지금까지 내가 배운 것을 정리하고 모아 둘 생각을 하지 못했기 때문에 부트캠프에서 TIL 작성을 강요 아닌 강요한 것과는 별개로 나 자체가 굉장한 호기심과 열정을 갖고 작성해왔다.

TIL을 작성하는 방법?

나뿐만 아니라 다른 수강생들도 TIL을 작성하는 방법에 대해서 부트캠프에 물었다. 처음 들어보는 생소한 개념이기 때문에 다들 '방법'을 궁금해 했던 것이다.

하지만 지금 와서 깨달은 점은 그 방법을 묻는 것 자체가 TIL의 진짜 목적, 학습의 본질을 흐리는 태도였다는 것을 깨달았다. 우리가 TIL을 작성하는 방법에 대해서 물었던 이유는 결국 남들에게 보여질 때 어떤 TIL이 좋은 점수를 받을 수 있는지, 그 목적 외에는 다른 목적이 없는 질문이었기 때문이다. 물론 그런 것까지 생각하고 질문한 것은 아니고 그냥 TIL을 쓰라니까 어떻게 쓰는 거냐고 단순하게 물은 것이긴 하다. 그 때는 말이다. 하지만 내 무의식 속에서는 이런 생각이 잠재되어 있었다는 것을 이제와서 깨달았다는 것이다.

TIL의 작성 방법은 그 이름에서 그냥 설명이 끝난다. 오늘 내가 배운 것. 이것 이상으로 무슨 설명이 필요한가? 그냥 내가 오늘 배운 것을 작성하면 되는 것이다. 물론 본인이 태어나서 글을 작성해본 적이 한 번도 없고 일기도 써본 적이 없어서 어느정도의 가이드라인이 필요하다면 그 방법론들은 무수히 많다. 예를들어 우리나라 책 중 본깨적과 같은 것들이 그 방법론 중 하나다. 본 것, 깨달은 것, 적용할 것을 나누어서 독서 메모를 하라는 내용이 그 핵심이다.

TIL을 작성하는 진짜 목적

부트캠프에서 TIL을 왜 작성하라고 처음부터 강조하고 시작했을까? 어떻게 작성하는 것이 좋은 지에 대해서 특강까지 편성하며 목소리를 높인 이유가 무엇일까?

지금부터는 부트캠프의 의견과는 상관없고, 내 개인적인 생각이지만 우리는 지금까지 살면서 내가 공부하고 학습하고 배우고 느낀 것들을 남들에게 그 흔적을 보여줄 만한 게 없고, 그렇게 살아오지도 않았기 때문일 것이다.

자기가 배운 것을 나름대로 잘 정리해왔던 사람들은 계속 그렇게 하면서 살면 된다. 블로그를 만들어 TIL을 작성할 필요가 없다. 그냥 하던 방식대로 계속 하면 된다. 그렇게 잘 살아왔던 사람들은 딱히 누군가에게 배운 적이 없더라도 자신의 사고를 확장하는 방법에 대해서 잘 알고 있다. 공부는 또 새로운 공부를 낳고, 그 공부가 또 새로운 공부를 낳는 경험을 그런 사람들은 일상적으로 하고 있었을 것이다.

부트캠프에서는 시간이 금이다. 개발 공부를 하기 전에는 부트캠프에서 6개월 하루 12시간 공부를 열심히 하고 학원의 커리큘럼을 잘 따라오면 취업이든 개인의 성장이든 원하는 목적을 달성할 수 있을 것이라는 호언장담에 속아 앞으로의 미래를 기대하며 힘들어도 정말 재미있게 공부했다.

그런데 내가 위에서 속았다라고 말한 이유는, 학원에서는 지식을 알려줄 순 있지만 개인의 학습 태도나 방법까지 바꿔주긴 힘들다라는 한계가 분명히 있기 때문이다. 이런 것은 학원이 아니라 스승을 만났어야 누군가에게 배울 수 있는 것이다. 생각해보자. 인프런이나 공식문서 같은 훌륭한 교재가 무료로 널려있고 심지어 다른 사람의 머리를 한 번 거쳐서 필터링 된 정보가 아닌 공식문서 만큼 더 양질의 학습자료가 있을까? 돈도 들지 않는데 우리는 왜 부트캠프를 선택했을까? 정말 여러가지 이유가 있겠지만, 가장 큰 이유는 취업 목적이 아닐까? 공식문서는 기술 습득에는 도움이 되지만 취업 시장에서 어떤 스택을 원하는지 등등... 사람을 통해서, 그것도 라이브를 통해서만 얻을 수 있는 인사이트들이 부트캠프에는 존재하기 때문이 아닐까 싶다.

부트캠프에서는 이러한 것은 전부 수강생들에게 아낌없이 나눠줄 수 있지만, 개인의 학습태도까지 바꿔주기에는 그 시간은 너무나도 짧다. 살펴본 것은 아니지만 부트캠프에서도 여러번 우려했고, 또 내 경험담이기 때문에 호언장담 할 수 있는 것은 내가 공부했던 부트캠프 우리 기수 100명이 넘는 수강생 중 부트캠프가 끝난지 6개월이 넘은 지금, 아직도 TIL을 성실하게 작성하는 사람은 10%도 안 될 거라 호언장담 한다.

말이 길어졌지만 이제 결론을 이야기 하자면 TIL을 진짜 작성하는 이유에 대해서 알아야 한다. 이 부분을 더 알고 싶으면 더 많이 검색해서 더 많은 정보를 얻길 바란다. TIL이라고 한정하여 검색하지 말고, 독서메모 방법에 대해서 알아보는 게 더 좋을 것이다. TIL은 결국 내가 오늘 배운 것을 정리해가면서 내가 뭘 새로 배웠고, 또 어떤 것에 대해 추가적으로 학습해야 할 지, 내가 뭘 모르고 있었는지 본인의 사고를 정리하는 시간이 필요하기 때문이다.

인간은 많은 정보가 갑자기 쏟아지면 생각이 정리되지 않는다. 에빙하우스의 망각 곡선(Ebbinghaus's Forgetting Curve) 이론도 있지 않은가? 그것을 공부를 마치는, 하루를 마치는 시점에 다시 한 번 붙잡아 두어 초기 망각을 감소시키려는 목적도 있지만 더 큰 목적은 방금 위에서 언급한 목적이 진짜 핵심이다.

TIL의 함정

장기 기억의 부재

TIL을 1년 간 작성했으면 지금까지 배운 것을 다 기억하진 못해도 어느정도 인덱스는 갖고 있어야 하는데 부끄러운 고백이지만 내가 뭘 배웠는 지도 다시 한 번 봐야 그 때서야 기억이 난다. 훑어 보기만 해도 기억이 나야 하는데, 그 당시에도 학습의 난이도가 있었던 것은 아무리 시간을 많이 써서 명쾌하게 정리한 TIL이라 하더라도 한참을 정독해야 다시 학습을 할 수 있다. 기억이 되살아나는 것이 아니라 분명 내가 작성한 TIL임에도 "이런 걸 내가 썼다고?"라며 어색한 TIL이 여러 개 발견된다.

오늘 내가 배운 것을 하루를 마무리 하며 TIL로 정리를 하면서 초기 망각으로 지식이 휘발되는 것을 막고, 그 이후에도 여러 번 일정 주기를 갖고 다시 읽어 보면서 장기 기억 상태로 저장하는 것이 망각 곡선의 핵심인데, 이 장기 기억 상태로 가질 못하고 초기 망각 상태만 겨우 막는 TIL이 된다는 것이 쫓기듯 TIL을 작성하는 사람들이 쉽게 빠지는 함정이다.

수단과 목적의 전도 현상

TIL의 작성의 목적을 취업에 큰 비중을 두고 작성을 시작하면 수단과 목적이 바뀌어 버리는 전도 현상이 발생한다. 부트캠프에서는 TIL을 취업을 위한 수단 중 하나라고 강조해왔다. 내가 지어낸 게 아니라 내가 2024년 부트캠프에서 6개월 간 공부하며 귀에 딱지가 앉도록 실제로 들은 말이다. 개발자 취업을 위한 여러가지 수단이 있고 그 중 하나가 TIL 작성이나 GitHub에 잔디를 심는 것 등이 있다라는 말을 정말 많이 들었다.

문제는 설명이 거기서 끝났다라는 점이다. 부트캠프가 했던 말 자체에는 전혀 문제가 없고 사실이지만 이 말을 들은 수강생들은 취업이라는 소기의 목적이 달성되거나, 취업을 포기하는 순간 TIL 작성을 중단하고 오늘 하루의 인생을 즐기는데 그 시간을 다시 재투자한다.

나는 학원의 이러한 설명이 잘못되었다고 지적하고 싶다. TIL은 취업을 위한 수단인 것은 분명 말 자체는 맞는 말이지만, 부트캠프가 가 주로 성인들을 위한 교육 플랫폼인 만큼 좀 더 높은 차원에서 철학적인 메시지를 전달해주는 것이 더 효과적이었지 않을까 생각한다. 사실 부트캠프의 입장도 이해가 된다. 이렇게 어렵게 접근하면 부트캠프 시작도 하기 전에 지레 겁먹고 도망갈 사람들이 분명히 많기 때문에 처음부터 너무 어렵게 접근하면 학원의 수입에 해가 되지 않겠는가?

부트캠프의 입장이 이해는 되지만 인재를 양성하는 최초의 시발점이 부트캠프라는 점에서, 부트캠프에서는 사회적인 책임감을 느끼고 좀 더 본질적인 교육을 해야 한다고 생각한다.

TIL은 취업을 위한 수단이 아니라, 목적 그 자체가 되어야 한다.

개발자 취업이든 회사에서의 성공이든 앞으로의 인생을 고민하고 자기계발을 하고자 하는 사람이 이 글을 읽고 있다면 이 글을 새기는 게 좋겠다.

특히 비전공자가 개발을 배우겠다고 성인이 된 후 뛰어든 경우에는 정말 짧은 기간 수많은 지식이 쏟아지면서 본인의 생각을 정리하지 못하는 경우가 거의 대부분의 수강생들이 호소하는 애로사항 중 하나다. 그런데 문제는 그 옛날의 우리 부모님 세대처럼, 책 한 권을 꼼꼼히 씹어 먹으며 공부하는 시절이 아니라, 소셜 미디어를 통해 빠르게 학습하고 인터넷 강의로 족집게 강의를 들어온 우리 세대는 이렇게 많은 지식이 쏟아지면 그것을 제대로 정리해내지 못하는 것을 떠나서 그 지식에 대한 본인의 생각 조차 정리하지 못한다는 것이 큰 문제다.

새로운 것을 학습하고 본인의 생각을 정리할 수 있다는 것은, 적어도 오늘 새로 배운 내용을 어느정도 이해하고 있어야 가능한 것이다. 이것을 지식의 편집가능성이라 부른다. 내가 이해하지 못한 것은 남들에게 설명할 수도 없고, 그 지식을 다시 편집해서 새로운 지식을 만들어내는 생산자의 관점으로 전환하는 것은 더더욱 불가능에 가깝다.

내가 지금까지 작성한 TIL을 읽어보니 그냥 내가 나중에 읽기 편하도록 정리해둔 정도에 불과했다. 그래서 내가 그 지식을 이해는 했는지, 그런 내용이 내가 쓴 글임에도 내 눈에도 보이질 않는다. 하물며 남들이 보기에는 어떻겠는가? 엉뚱한 소리나 안 써놨으면 다행이다. 어차피 공식문서에 다 있는 내용인데 굳이 내 블로그에 다시 정리해서 올릴 필요가 있을까? 공식문서는 이쁘지가 않아서 이쁘게 색깔도 넣고, 필요하다면 아이패드로 필기해서 올리는 것들이 그 자체만으로 그 시간을 쓸 이유가 있는 걸까? 그걸 보고 "정말 열심히 공부했네."라고 평가하는 회사가 있을까? 현명한 회사라면, "그래서 하고 싶은 말이 뭐야?"라는 질문을 먼저 할 것이다.

결론

TIL 작성은 내가 배운 것을 재편집하는 과정이다

TIL은 단순히 내가 오늘 배운 것을 그대로 받아 적는 받아쓰기 연습이 아니다. 공식문서에서 이미 다 소개하고 있는 내용을 그대로 필기한 것은 내 시간 낭비이자 범지구적인 트래픽 낭비다.

내가 글을 전문적으로 써온 사람이 아니고서야, 오히려 공식문서를 작성한 사람들은 본인들의 의도까지 공식문서에 담고 있기 때문에 공식문서가 보기 불편해서 내가 보기 편한대로 내 블로그에 다시 필기하고 나중에 빠르게 다시 인덱싱 하겠다는 생각이라면, 본인의 눈을 공식문서를 잘 보는데 맞추는 게 더 중요하다고 말하고 싶다. 공식문서를 봐야하는 순간은 매번 찾아온다.

가장 중요한 것은 어차피 안 볼 것 다 안다. 본인이 나태해서가 아니라 우리에게는 내가 작성한 글들을 다시 들여다 볼 시간이 없다.

단순한 필기를 하지 말고, 새로 배운 내용은 공식문서를 글에서 하이퍼링크나 캡처로 참조하고 본인이 그것을 학습하고 고민했던 흔적 위주로 적어라. 그리고 남들에게 설명할 수 있을 정도의 수준으로 새로운 지식을 만들어 내고 그것을 적어라.

인생 잘 사는 것 따위 중요하지 않고 취업만이 목적이라고 하더라도 마찬가지다. 그런 단순 필기 정도의 TIL을 보고 잘 썼다고 평가하는 회사는 얼마 못갈 게 뻔하다. 그런 회사를 가고 싶어 하는 사람은 아무도 없지 않겠는가?

처음 배울 때부터 핵심을 이해하고 제대로 배우자. 처음 배울 때 좋은 습관을 만들어 나가는 과정은 쉽지만, 잘못 만들어진 습관을 바꾸는 데는 뼈를 깎는 노력이 필요하다.

정리하고 꾸미는 것 자체가 목적이 되면 안 된다

'다꾸'라는 말을 들어본 적이 있는가? 다이어리 꾸미기라는 취미를 말한다. 하지만 대부분의 사람은 다이어리를 꾸미면서 자신의 생각을 정리하는 데 그 목적이 있다기 보다, 보기 좋게 잘 정리하고 예쁘게 꾸미는 것이 더 큰 목적인 경우가 많다. 원래 이 취미는 이런 것이라 잘못된 것도 아니다.

문제는 노트를 필기하고 정리하는데 있어서 깔끔하게 폴더 별로 잘 정리하고, 한 문서 내에서도 목차를 제대로 정리하고 폰트를 자유자재로 조절하며 잘 정리하는 것 자체가 목적이 되어버리는 순간이 누구에게나 오게 된다.

취업이라는 목적도 무시할 수 없다 보니 남들이 봤을 때를 생각해서, 또는 내가 나중에 보기 깔끔하게 잘 정리해야 한다는 강박이 내용을 더 충만하게 작성해야 한다는 욕구보다 더 커져서 목적이 전도되는 순간이 누구에게나 온다는 것이다.

내가 크게 실수했던 것 중 하나가 이것이다.

자바스크립트를 배운다고 자바스크립트의 자료형부터 정리해야 한다는 생각에 똑같은 글을 몇 번을 썼는지 모르겠다. 마치 책처럼 목차를 잘 정리해야 한다는 강박이 있었던 것이다. 그래야 내 생각이 구조화되는 줄 알았다. 하지만 내가 아는 부분은 굳이 정리할 필요가 없다. 그럴 시간에 좀 더 어려웠던 개념에 대해서 정리하는 게 필요하다. 뭐든지 다 적어두어야 직성이 풀리는 성격이라면 TIL 작성 전에 고민해봐야 한다. 깔끔하지 않더라도, 잘 정리되지 않았더라도 그 내용이 충실해야 한다. 일단 정리는 신경쓰지 말고 더 양질의 글을 작성한다는 생각으로 메모를 하고, 글의 순서를 바꿀 수 없는 블로그 같은 경우에는 한 챕터를 다 작성하고 나면 목차만 소개하는 포스트를 하나 다시 만들어서 그 때 정리해두면 된다. 모든 것을 다 정리해야 한다는 강박과 깔끔하게 정리해야 한다는 강박에서 벗어나자.

추가적으로 티스토리, 벨로그, 네이버 블로그 중에 뭘 써야 할 지 하루 이상 고민하지 말자. 어떤 플랫폼이 더 글을 작성하기 편한지, 어떤 플랫폼이 안 망하고 오래 갈 지 이런 거 고민하지 말자는 의미다. 일단 글을 써내려가는 것이 더 중요하고, 정리는 필요하면 그 때 가서 하면 된다는 것이다.

이미 성공한 사람들이 수없이 말한다. 책은 깨끗하게 보지 말라고. 책은 나중에 다시 볼 수 있으니 깨끗하게 보고 메모는 다른 곳에 해두는 것, 이런 것도 좋은 습관이긴 하지만 나중에 그 메모를 찾아보긴 하는가? 그게 되는 사람이었으면 이 글까지 찾아오지도 않았을 거라 생각한다.

TIL도 마찬가지다 TIL은 깨끗하게 작성하는 것이 아니다. 당연히 보기좋은 떡이 먹기도 좋겠지만, 주객전도가 되어서는 안 된다는 뜻이다. 대부분의 인간은 정리벽의 함정에 빠져 들어 주객이 바뀌는 것을 경험한다. 이미 사회적으로 성공했다고 알려진 일론 머스트크나 스타브잡스가 메모를 깔끔하게 잘 정리하라고 강조했다는 이야기를 들어본 적이 있는가? 그들은 그런 행동에 쓸 시간도 없을 것이다. 참고로 일론 머스크는 메모 그 자체보다는 원리를 파악하는 데 힘쓰라고 강조하기도 했다. 예를 들어 자바스크립트를 처음 배울 때 배우는 자료형을 학습한다고 가정하자. 그리고 이것으로 TIL을 작성한다고 했을 때, 자료형에는 넘버 타입, 스트링 타입, 불리언 타입 ... 이 있다. 이렇게 정리하는 건 단순한 지식 나열밖에 안 되고, 그냥 const A = 1, 3, 5 이런 식으로 배열을 나타내도 될 것 같은데 왜 굳이 [1, 3, 5] 이렇게 쓰고 객체는 또 왜 { key: value } 이렇게 쓰는 걸까? 이렇게 생각하는 것이 사고의 확장이다. 처음 배우는 단계에서는 단순 암기보다 시간이 더 걸릴 수 있지만, 지금은 가장 쉬운 자료형의 예시일 뿐이고 후에 스코프, 클로저, 프로토타입 체인 등... 더 복잡한 개념으로 갈수록 이렇게 원리를 파악하려는 사고의 확장은 절대로 잊지 않게 해주는 장기 기억의 초석을 다지게 해준다.

댓글