시간은 정말 빨리 간다. 스무살이 엊그제였던 것 같은데 이제 스물 셋이라니😢 누가 장난 치는 것 같다. 시간이 이렇게 빨리 간다니. 작년엔 블로그를 안하다보니 2020년 회고는 안썼다. 아쉬운대로 2021년 회고와 내년은 어떻게 보낼지 좀 고민해보자.
아, 그리고 놀라운 사실이 있다. 내년이 끝나도 나는 여전히 군인이다. 빨리 전역하고 싶다. 시간 가는 건 싫은데 하고 싶은 건 또 많아서 전역이랑 졸업은 빨리 하고 싶은게 사람 마음이 참 그렇다.
42 서울
42 서울에 관해 간단한 회고를 적어보자면, 나는 42 서울에서 맨땅에 헤딩하는 법을 배웠다. 42에서는 나를 알려줄 사람, 책도 없고 오로지 동료와 프로젝트만 주어진다. 내가 하려는 프로젝트에 대해 아무 단서가 없는 상황에서 옆 사람과 토론하면서 문제 해결을 연습할 수 있었다. 레퍼런스나 표준 문서를 읽는 습관도 이때 생겼다. 그리고 커뮤니티가 커서 다양한 사람을 만날 수 있는 게 좋았다.
다만 나는 취업에 급한 사람들이 42 서울에 오는 것에 대해서는 조금 아쉬웠다. 42에서는 취업에 당장 필요한 기술을 배우지는 않을 뿐더러 여유가 없으면 그 과정을 즐기기가 힘든 것 같다. 하지만 개발을 공부하려는 사람이 시행착오를 겪기에는 좋은 환경이다. 아무튼간에 나는 올해 초에 군대를 앞두고 42 공통 과정을 마무리 하느라 몇달동안 쉴새없이 프로젝트 회의하고 코드 짜는 걸 반복하면서 프로젝트 진행하고... 그렇게 보내다가 결국 군대에 왔다.
군대
실은 작년까지만 해도 군대에 올 생각이 없었다. 원래는 대학원 가서 전문연구요원을 할 생각이었는데 여차저차해서 올해 초에 군대를 오게 됐다. 지금 생각해보면 군대에 오길 잘 했다고 생각한다. 내가 나중에 석사를 할 생각이 없어진다면 전문연이 오히려 미래의 내 선택의 폭을 좁힐 수도 있고, 군대에 오지 않았다면 좀 더 여유를 갖고 공부하거나 고민할 시간이 없었을 것 같다. 물론 군대에서는 내가 이해할 수 없는 일들도 많고 이상적인 환경은 아니지만 말이다. (웃음) 그래도 좋은 부대로 와서 열정적인 사람들과 일을 하게 된 점과 개인 정비 시간이 보장되는 점이 좋다.
생각해보니 군대 오기 전에는 '군대 갔다오면 배웠던 게 리셋된다'는 말을 많이 들었는데 실제로 와보니 일과 후에는 시간이 꽤 있어서 오히려 공부할 시간이 늘어났다. 그리고 '군대 오면 별의별 사람이 다 있다'고 했는데 신기하게 다들 학벌이 좋다. 물론 미친놈은 어딜 가나 있다.
블로그
블로그도 원래 쓸 생각이 없었다. 혼자 책 보면서 커널을 공부하고 있었는데 42 서울 이호준 멘토님께서 남들 앞에서 설명을 해야 진짜 자기 것이 된다고 하셔서 하나씩 쓰다보니까 습관이 돼버렸다. 그래도 블로그에 글로 정리하려면 내가 공부한 것들을 논리적인 흐름에 맞춰서 작성을 해야하는데 그러다보면 지식이 더 잘 체화된다.
블로그 자체가 나를 홍보하는 효과도 있다. 이건 블로그를 시작할 땐 진짜 생각지도 못했는데, 블로그를 하면서 같은 분야를 공부하는 사람들을 많이 접하고 소통할 수 있는 기회가 생겨서 너무 기쁘다. 블로그에 있어서 한 가지 아쉬운 점이 있다면 블로그가 일종의 토론의 장소가 되었으면 했는데 그런 부분이 좀 부족해서 아쉽다. 누군가 내가 쓴 글이 틀린 부분을 얘기해주거나 궁금한 내용을 서로 이야기할 수 있었으면 좋겠다.
오픈소스 & 리눅스
올해 내가 가장 열심히 했던건 오픈소스에 참여하는 일이었다. 아직은 trivial한 패치를 작성하고 다른 사람의 패치를 리뷰 & 테스트하는 수준이지만 오픈소스에 참여하면서 개발을 시작한 이후로 내가 가장 빠르게 성장할 수 있었다. 지금까지는 무언가를 공부할 때 책을 읽고 연습문제를 푸는 것 말고는 딱히 할 수 있는게 없었는데 오픈소스 커뮤니티에서는 토론을 하면서 피드백도 빠르게 받을 수 있고, 또 현실의 요구사항이나 이슈들을 접할 수 있으니까 동기부여하기가 좋다. 그리고 오픈소스 커뮤니티에선 뛰어난 사람들이 많아서 배울게 많다.
2021년에 배운 것들
많이 읽고, 말하고, 생각하기
누구든지 사람은 자기가 아는 범위만을 보고 생각하기 마련이다. 하지만 처음 어떤 분야를 공부할 때는 시야가 좁을 수밖에 없다. 특히 나처럼 학생이라면 더욱 그렇다. 시야를 넓히려면 책, 논문, 컨퍼런스 동영상, 다른 사람의 블로그, 메일링 리스트 등등 다양한 자료를 읽고 질문을 던지는 게 가장 빠른 방법인 것 같다. 그래서 나는 이제 새로운 것을 많이 읽으려고 노력한다. 주로 누군가의 발표 동영상이나 흥미로운 논문을 읽는다. 아니면 메일링 리스트에서 흥미로운 주제를 찾고 관련된 내용을 공부한다.
코드만이 꼭 기여는 아니다
처음엔 무조건 많은 코드를 작성하는 게 좋은 것이라고 생각했다. 물론 코드를 짜는 건 좋은 일이다. 하지만 그것 말고도 커뮤니티와 함께할 방법은 많다. 다른 사람의 패치를 보고 질문하는 것도, 누군가의 이슈에 대해 토론하는 것도, 패치를 테스트하고 리뷰하는 것도 모두 기여에 포함된다. 그리고 처음에는 코드를 짜기가 쉽지 않다. 처음인 만큼 이해도가 원래 하던 사람보다 훨씬 떨어지기 때문이다. 처음엔 코드도 좋지만 커뮤니티에 익숙해지는 것도 중요하지 싶다.
너무 조급하지 않기
나는 오픈소스를 처음 시작할 때 내가 어떤 대단한 일을 해야한다고 생각했다. 적어도 의미 있는 일을 했으면 했다. 하지만 이런 생각에 비해 내가 아는 것, 내가 하는 일들은 너무 보잘 것 없게만 느껴졌다. 하지만 처음 입문하는 사람이 대단하고 의미있는 일을 하는 건 불가능하다. 마음을 놓고 천천히 작은 것부터 시작해야 한다. 나는 현타가 와서 한동안 책만 읽다가 다시 메일을 조금씩 읽으니까 마음을 내려놓게 됐다. 무언가 대단한 일을 해야겠다는 생각이 아니라 호기심이 닿는 것부터 하나씩 공부하다보니 오히려 여유를 갖게되는 것 같다.
틀리는 것을 두려워하지 않기
위에서 말한 조급함을 갖고 있다보니 내가 자주 틀린다는 걸 받아들이기가 힘들었다. 아니 사실 나는 거의 매번 틀린다. 내 시야가 좁아서 틀리던, 코드를 잘못 읽어서 틀리던, 주제가 익숙하지 않아서 틀리던, 잘못된 코드를 짜던 말이다. 그리고 앞으로도 나는 많이 틀릴 것이다. 익숙하지 않다보니 틀릴 수 밖에 없다. 너무 많이 틀리다보니까 이제는 틀리는 걸 무서워하지 않기로 했다. 그래도 내가 틀렸다는걸 모르는 것보단 아는 게 좋지 않겠나. 대신 같은 걸 두 번 틀리지만 않으면 된다. 틀린다는 사실보다 그걸 어떻게 대처하느냐가 중요한 것 같다.
2022년에는...
매 해가 그렇지만 2022년에는 더 전문성을 쌓고 싶다. 아, 그리고 사람도 다양하게 만나고 싶다. 나 자신 화이팅!
Slab / Virtual Memory
2022년에는 지금처럼 slab 할당자쪽 코드 분석과 패치 리뷰를 계속하고, Virtual Memory로 분야를 조금씩 넓혀볼 생각이다. 아직 아는 게 많이 없으니 차근차근 공부해야지. 그리고 뭘 공부하든 메일링 리스트는 정말 꾸준히 봐야한다고 느낀다. 내년에는 끊기지 않고 꾸준히 리스트를 보는게 목표다.
성능 분석 / 벤치마킹
성능에 영향을 주는 코드를 작성할 때가 있는데, 명확한 지표가 있어야 내 코드를 다른 사람들에게 설득할 수가 있다. 그러려면 내 컴퓨터에서 어떤 일이 일어나는지, 코드가 성능에 얼마나 영향을 주는지를 알아야 한다. 그런 성능을 분석하는 도구들이 필요하고 그게 요즘 블로그에 글로 정리하는 perf, BPF다.
perf와 BPF는 조금씩 배우고 있는데 정작 분석할 워크로드가 부족해서 아쉽다. 다양한 워크로드를 접하고 분석해보고 싶지만 군인이라 그건 힘들 것 같고, 아쉬운대로 다양한 벤치마크 도구라도 돌리면서 분석해봐야겠다.
컴퓨터 구조
어플리케이션이든 운영체제든 성능을 이야기할 때는 컴퓨터 구조를 빼놓을 수가 없다. 하드웨어의 특성을 이해하고 코드를 작성하는 것과 그렇지 않을 때 차이가 너무 많이 나기 때문이다. 컴퓨터와 주변 장치의 하드웨어적 특성을 알아야 효율적인 코드를 짤 수 있다. 그리고 그런걸 떠나서 컴구는 컴퓨터 안에서 이런 일이 일어나고 있었다는 걸 배우는게 재미있다. 2022년에는 지금 보고 있는 책들을 마무리 하고 ... 읽은 다음엔 뭘 해야할지 모르겠지만 일단 다 읽고 나서 생각해보자.
'일상 & 생각' 카테고리의 다른 글
2023년 회고 (2) | 2023.12.31 |
---|---|
2022년 회고 (2) | 2023.01.01 |
성장하고 싶다. (4) | 2021.10.28 |
공군 전자계산 훈련소 + 특기학교 후기 (20) | 2021.08.16 |
입대 전 생각 정리 (7) | 2021.05.26 |
댓글