오늘 또 느낀 것들...

최근에 했던 것

오늘은 그동안 내가 작업했던 일을 갈무리 짓는 날이었다.

솔직히 얘기하자면 하는 일이 그렇게 엄청 대단한 것은 아니고, React Native의 Component 들을 Atomic Design에 맞게 리팩토링 하는 일을 했다.

애초에 나 자신이 작성한 코드가 아니었기때문에 코드를 분석하는 것 부터가 일이었으며, 분석한 뒤에도 모르는 것 투성이었다.

그래도 일단은 Atomic Design에 관한 글과, 사부의 설명을 들으면서 하나하나 정리해 나가기 시작했다.

그랬더니 처음에는 엄청나게 막연하게 ‘너무 힘들 것 같다’라고 생각되었던 일들이 생각보다 ‘할만 하구나’라는 생각이 들었다.

내가 했던 일을 잠깐 설명해보자면 AddNewLecture이라는 하나의 Screen을 Organisms, Molecules, Atoms까지 분해하여서 Module화 시키는 것이었다. 그리고 이렇게 모듈화를 시키므로써, 어플리케이션의 구조를 중복을 제거함과 동시에 재활용가능하게 하는 것이었다. 또한, Proptypes를 이용하여 보다 엄밀하게 기능을 제어할 수 있도록 했다.

그리고 그 과정은

  1. Screen을 복사

  2. 분해

  3. 합성

이렇게 처리하였다.

또 다시 높은 산

이렇게 전부 코드를 처리하고 난 다음 나의 기분은 정말 뿌듯했다.

‘이제는 나도 일인분은 할 수 있겠구나’라고 생각했다.

그러나 처리한 일을 기존의 일과 병합하는 과정에서 큰 난관에 봉착했다.

원래 내가 작업하고있던 파일들은 local환경에서 새로운 branch를 만들어서 작업중이었다.

  1. 나는 그것을 한차례 수정이된 remote환경의 master의 내용을 내 local환경의 master branch에 적용한 뒤

  2. 다시 그 내용을 local의 새 브랜치에 merge하고

  3. 그 내용을 다시 remote에 push해서

  4. pull request에 관한 내용을 작성

해야만했는데, 2에서 merge하는 과정에 내가 무엇인가를 잘못헀는지 엄청나게 많은 오류가 뜨면서 많은 파일들이 수정되어버렸다.

아차차 싶어서 사부에게 결과를 말한 뒤, 사부의 제안에 따라서 SourceTree라는 프로그램을 다운로드 받아서 다시 commit직후의 상태로 되돌릴 수 있었다.

그러나

  • npm install이후 npm test에서 eslint에 관한 수많은 error들

  • pull request를 작성한 것들에 대한 사부의 신랄한 코멘트

  • “앞으로는 그냥 commandline git대신 SourceTree로 하세요.”

를 보면서 약간 자존심에 금이갔다.

그래도 난 나름대로 잘 했다고 생각했는데, 나의 욕심으로 정상만을 바라보다 그만 눈 앞의 돌에 고꾸라 넘어져버렸다.

그래도 그냥, 천천히, 올라야지

그래도 나는 산을 오르는것을 힘들어할 망정 포기하지는 않을 것이다.

내가 갖고 있는 나만의 장점 중 하나는, ‘위기를 기회로 바꾸는 마음가짐’에 있다고 생각한다.

내 앞에 크나큰 산들이 가로막고, 그 산들이 얼마나 더 많이 있는지 모르지만 나는 이 위기를 기회로 바꾸어서 내가 한결 나아갈 수 있도록 해야겠다.

이렇게 한 번 넘어졌을때야 말로 바로 내가 가장 나 다워질 수 있는 시기이자, 내게는 기회다.

그래 지금 산을 오르는 과정에서 한 번 넘어졌어도, 그래도 그냥, 천천히, 올라야지.

앞으로 해야 할 Task

  • ESlint Error처리 + github feedback => npm test => remote push => merge

  • Git / Github 이해될 때 까지 해보자. 한 번 누가 이기나 해보자.

  • SourceTree

  • npm test에 대하여

Share