221113 왜 그런지 원인을 모르겠어요..

샨티(shanti)·2022년 11월 13일
0

하루를 마무리 하기 전, 오늘 있었던 일들을 잔잔히 되짚어봅니다.
성공과 실패의 모든 요소에서 '배울 점'을 찾아내어 기록하고,
더 성장하는 내일의 나를 위해 'action plan'을 세웁니다.

간밤에 내린 비 때문에 한-껏 추워진 날씨.
성수 코딩도장 주변이 괜시리 스산해진 느낌이었다 ㅎㅎ 사람도 없고...
그래도 나름 분위기 있네~ 하며 자리에 앉아 어제 임시로 커밋해놓은 작업을 이어서 시작하려 하는데.
맥을 여니 뭔 에러가 발생했다며 자기 혼자 리부팅이 되어있었고 에러 로그(?)같은 걸 만들어놓았더라.
황당했지만 그래도 어제 자리를 이동하기 전에 커밋해놓은 것이 다시금 떠올라 가슴을 쓸어내렸다.

예전에 한 번 스터디카페에서 작업하던 것을 커밋하지 않고 별 생각없이 stash 한 뒤에 집으로 들고왔는데 맥을 열어보니 고스란-히 다 날아가서...ㅋㅋ 그 이후로는 이동할 일이 있으면 무조건 커밋을 해 놓는 습관이 생겼다. 역시 최악의 경험을 통해 배우는 것인가...

어쨌든 커밋해놓았으니 문제 없지!! 하는 마음으로 서버를 돌리고 크롬을 켰는데...
뭔가 굉-장히 이상하고 쎄한 기분이 들었다.
갑자기 되던 기능이 돌아가지 않기 시작한 것이다.
심지어 브라우저에 뜨는 에러메시지와 코드를 읽어보니 도대체 언제 리팩터링 했는지 기억도 나지 않을 만큼 며칠 전에 작성해놨던 코드가 뜨는 것이다.

이게 뭐..지?

분명 눈 앞에 있는 vscode는 멀쩡한 코드인데, 브라우저가 내뱉는 에러메시지는 과거의 것인 상황.
어떻게 이런 일이 있을 수 있나.

여러가지 테스트를 해 보기 위해, 만들어놓은 컴포넌트에 임의의 버튼을 하나 더 추가하고 저장을 한 뒤에 다시 빌드를 하고 실행해보았는데 수정한 코드가 화면에 전혀 반영이 되지 않았다.

아니.. 내가 리팩터링 하다가 다른 컴포넌트를 넣어두고 다른 파일을 수정하고 있는건가?
순식간에 수십개가 되어있는 파일을 하나 하나 뒤져가면서 찾아보았지만 다행스럽게도(?) 그런 실수는 하지 않은 상태. 그렇다면 대체 왜, 며칠 전. 언제 작성했는지 기억도 나지 않는 코드를 대체 어디서 가져오는 것이며 왜 지금 작성하고 있는 코드를 내비두고 저걸 빌드하고 있는거지..?

소스트리를 가지고 포인터도 이동해보고 서버도 껐다 켜고. 정말 수십번을 반복했는데도 해결되지 않았다.
크롬 개발자도구를 켜서 source 폴더에 들어가보았는데 더 희한한 광경이 눈앞에 펼쳐졌다.
에러를 내뱉는 코드가 포함된 파일은 예전 상태로, 그리고 그 이후로 추가된 파일은 그 파일대로 다 섞여서 생생하게 살아있는 상황.

당장 내일이 스프린트인데 갑자기 원인도 모를 상황이 눈앞에 펼쳐지니 진짜로 아찔한 기분이었다.
PR에 각 화면들을 캡쳐해서 머지를 시켜놓기는 했지만, 그게 무슨 소용이 있는가. 작동이 안되는 것을...

그렇게 근 1시간이 넘도록 도장에서 동료와 함께 원인 모를 상황과 씨름을 하며 맥도 여러번 껐다가 켜고 프로그램 리부트는 물론이거니와 서버도 수십번을 껐다가 켰는데. 정말 갑자기. 그냥 갑자기 멀쩡한 상태로 돌아오게 되었다.
git log에서도 보이던 이상한 메시지(skipping...)도 사라지고.

사실 원인 모를 에러가 갑자기 해결될 땐 기쁜 마음보다는 '원인'을 모르는 상태로 해결되었다는 일말의 불안감이 더 크다.
내가 통제하지 못하는 상황이 벌어졌는데 그게 원인을 모른채로 해결이 되어버린다?
그렇다면 다음번에 같은 상황을 마주했을 때에도 해결할 수 있는 능력을 갖추지 못한 채 그 상황을 감내해야 하는 것이다.

지난주 꽤 오랜시간 아샬님의 특강을 들으면서 '통제감'에 대해 새삼 다시 생각하게 되었다.
그리고 노아님의 피드백을 들으면서도 본인이 통제하지 않은 상황에서 '우연찮게 작동되는 것'에 대해 항상 경계해야 하는 점도 새삼 떠올렸다.

사실 지금 프로젝트에서 내가 통제하지 않았음에도 돌아가는 몇몇가지 포인트들이 있다. 정확히는 통제하지 않았다기 보다는 어쩌다 보니 돌아가는? 그런.. 애매한 상황.
왜 그런지에 대해 알지 못한 상태에서 원하는 대로 기능은 돌아가니 처음엔 '우와!!' 했는데. 시간이 지나면 지날수록 그게 아니라는 생각이 든다.
통제하지 못한 부분은 항상 마음 한켠에 부담으로 남아있고, 그게 언젠간 문제가 되지 않을까? 하는 약간의 불안감도 결국엔 떨쳐버릴 수 없기 때문이다.

그래서 오늘의 어줍잖은 해결도 그리 기쁘지만은 않다.
물론 지금까지 해결이 되지 않았다면 정-말 압도적(ㅋㅋ) 절망에 빠졌겠지만.

다음번엔 정말 이런일이 다시 일어나지 않았음 좋겠으나, 만약에 발생한다면 그 땐 꼭 원인을 좀 파악했으면 좋겠다... 후.

CSS를 먹이지 않아 영- 별로인 결과물.
이번주 스프린트 목표가 이 페이지까지 모두 구현하는 것이었는데 로그인 유저에 대한 해법이 잘 나오지 않아 우선 UI까지만 구현하고 리팩터링&테스트 수정을 하려 한다.
스프린트 회의를 준비하면서 이번 목표를 다 수행하지 못한 원인을 파악해야 하는데 쉽지 않다.
너무 무리한 목표를 잡은 것일까, 아니면 투입한 시간이 적은 것일까.
스프린트를 벌써 3회째 돌렸기 때문에 이제는 내 생산성과 수행 가능한 목표치가 평균적으로 산정되어야 한다.
오늘 남은 시간은 리팩터링에 좀 더 힘을 쏟고 내일 아침 일찍 도장에 와서 회의 자료 준비해야지..

갠적으론 평균 생산성이 조금 낮은 것 같아 약간 씁쓸하지만, 계속 공부하고 성장하는 마음으로 생산성을 높이는 방법을 강구해야지.
자꾸 만들어보고 실험해보고, 시행착오를 겪어가면서 공부하는 수밖엔 없다. 멈추지 말자!!!

profile
가벼운 사진, 그렇지 못한 글

0개의 댓글