꾸러미 홈페이지 작업이 막바지에 다다르고 있다.

유희 2 2019.09.27 2,478 일기

꾸러미 홈페이지 작업이 막바지에 다다르고 있다.

근 몇 달간 복잡할수록 간명해야 한다는 생각이 멈추지 않았다.

그중 가장 나를 괴롭게 한 게 크로스 브라우징과 리팩토링이었다. 잘 정돈된 것, 알아보기 쉬운 것을 죽어도 못하게 하는 게으름 때문인지도 모르겠다. 크로스 브라우징은 sass를 공부하며 다시 들어가볼 생각이다. 리팩토링은 여간 어려운 게 아니었다. 이전에 무슨 코드 썼는지 기억해야 하는데 금세 까먹는다. 주석 다는 습관 또한 들이려고 했는데... 글쎄. 반은 지켰고 반은 못 지켰다. 정규화된 체계에 익숙치 않은 탓도 있다. 만들고 싶은 걸 만들며 공부하는 게 훨씬 재밌는걸! 그럼에도 순서에 맞는 체계적인 공부가 필요하다고 느낀다. 기초가 부실하니 엉뚱한 곳에서 한계에 부딪힌다. 정말 처음부터 다시 해야겠구나ㅋㅋㅋ

UI와 UX의 차이점만큼은 확실히 익힌 것 같다. 직관적인 디자인을 공부해볼 생각이다. 앞으로 갈 길이 멀지만...


계획을 훨씬 철저하게 세울 수 있어야 하고. 더 폭넓고 다양한 관점을 고려해야 한다.

많은 경험을 했다. 그에 비례하는 반성도 있었다.

계획을 나이브하게 세워 변동이 잦았다. 어쨌든 내가 예상한대로의 결과이긴 하다.

그러나 철저한 준비 시간과 계획이 있었다면 더 짧은 작업 시간으로 더 깔끔한 모양새를 만들 수 있지 않았을까 하는 후회도 있다. 중간엔 당장 급한 불 끄기 위해 땜질만 해대는 거 아닌가 싶었다. '유희야 이거 다 나중에 어떻게 감당하려고...' 이 생각이 제일 컸다ㅋㅋㅋ


이상하게도, 그에 대한 대답은 최근에 읽은 진화론 책에서 찾았다.

리처드 도킨스의 <확장된 표현형> 3장에 보면 동물의 히스 로빈슨 형질에 대해 이야기한다. 도킨스는 되돌이후두신경, 망막, 넙치 등의 예를 든다. 그러니까, 뇌에서 후두로 가는 가장 효율적인 길은 되돌이후두신경이 지나가는 길이 아니라는 거다.

"훨씬 효율적인 방법이 있는데 자연선택은 왜 비교적 비효율적인 방식을 선택하게 되었나" 이게 그 문단의 큰 질문이었다.

답은 이것이다. "국지적 최적 상태를 선호하는 선택은 궁극적으로 전체적 최적 상태로의 진화를 방해한다." 풀어 말하면, "발생 과정을 대대적으로 바꾸는 비용이 너무 커서, (자연)선택은 그런 중간 단계보다 그럭저럭 땜질해 어쨌든 잘 작동하는 단계를 더 선호한다."


그 문단을 읽고 데미지를 덜 받을 수 있었다. 더 큰 그림을 그리려면 감수해야 하는 부분이 분명 있다. 그러나 나는 자연선택이 아니고, 대대적으로 갈아엎는 비용은 감당할 수 있어야 한다. 그게 내 목표다. 오히려 3장을 읽고 제대로 하고 싶었다. 나는 자연선택처럼 오만년 십만년의 시간동안 하는 게 아니니까 당장의 내일을 알진 못하더라도 예비할 수는 있다. 얼렁뚱땅 어쨌든 잘 굴러가네 같은 건 싫었다. ㅜㅜ 그러기 위해 나는 공부를 하는 거지.


그리고 또 하나.

작업하면서 겪은 고민이 연기에 대한 고민과 자연스레 이어진다는 거다.

전혀 상관 없는 분야에서의 고민이 연기, 연극과 연결되는 경험은 당연하면서도 신기하다.

나는 결국 '끌려가지 않는 삶'을 살아내는 힘을 기르고 있다고 생각했다.

그게 큰 원동력이었다.




리팩토링에 대한, 오픈튜토리얼스 창립하신 분이 쓴 글을 첨부한다.



오픈튜토리얼스 코드의 내부구조가 상당히 복잡해서 3년이 넘도록 내부의 구조를 정리해야겠다고 벼르고 있었다. (똑같이 동작하는데 코드를 효율적으로 바꾸는 활동을 프로그래밍에서는 리팩토링이라고 한다.) 3~6개월에 한번씩 리팩토링을 시도했다. 할 때마다 번번히 실패를 했다. 2~3주 열심히 코딩하다보면 강의가 땡겨서 강의에 매달리고 강의를 하다보면 리팩토링이 땡겨서 또 리팩토링에 매달리고를 반복했다.

생각해보면 코딩이건 강의건 뒤로갈수록 앞에서 한 작업들이 일종의 업보(karma)가 되어 복잡성이 기하급수적으로 늘어난다. 복잡성이 늘어나면 뇌에 몰리는 부하는 점점 커지고, 성취 대비 뇌의 피로도가 급격히 악화된다. 지친 뇌는 새롭게 시작할 일을 찾게 되는데 나에겐 강의와 코딩사이를 왔다 갔다하는 것이 패턴이 된 것 같다. 뇌를 이기는 의지는 없다.

결국 어떻게 뇌가 견딜 수 있는 강도로 복잡한 일을 처리할 것인가가 중요한 이슈가 되는데 (좀 성급한 판단일지 몰라도)이번 리팩토링이 성공한 듯 보이는 이유를 추정해보면 이렇다.

예를들어 코딩을 할 때 M과 V와 C라는 크게 세가지 종류의 일이 있다고 생각해보면, 지금까지는 의욕이 넘쳐서 M,V,C 모두를 완전히 새로운 코드로 개선하려고 했다. 처음엔 쉽게 되는 것 같지만, 각각의 요소들의 복잡성이 기하급수적으로 커지면서 급기야는 뇌가 감당할 수 있는 부하를 넘어서게 되고, 뇌는 복잡하지 않은 새로운 일로 여행을 떠날 준비를 시작한다.

이번 리팩토링은 M,V,C 중에서 M과 V는 진부하게 고정시키고 C 업무를 새롭게 하는데 집중을 했다. 그 결과 C는 완전히 새로워졌지만 MV는 철저하게 진부한 상태로 남아있다. 물론 MV는 C와 밀접하게 연관되어 있기 때문에 C를 변경하는데 여간 걸리적거리는 것이 아니다. C의 변경이 제한되더라도 작업의 초반에는 MV를 수정하지 않았고, C의 변경이 끝나감에 따라서 MV를 제한적으로 변경했다.

리팩토링이 성공한 적이 거의 없었기 때문에 이번 리팩토링도 실패하나보다 싶었는데 작업이 일정한 진척도에 도달한 순간 여러가지 후속작업들이 빠르게 되거나, 저절로 되어 있는 경우도 있었다. 리팩토링이 잘 되었다는 느낌은 처음 받아본 것 같다. 지금까지는 리팩토링을 할 바엔 새롭게 짜고 말았다. 무슨 일이든 한번의 경험이 제일 중요하다. 그 한번의 경험이 신념의 토양이 되니까.

무엇인가를 새롭게 하려면 새롭게 하려는 것을 제외한 모든 것을 철저히 진부하게 고정시키는 것이 필요한 것 같다. 모든 것을 새롭게 하려고 하면 아무것도 새롭게 할 수 없을지도 모른다.

https://opentutorials.org/course/1189/13813 

글쓰기 목록보기 좋아요 ( 0)

꼬메디아님의 댓글

꼬메디아 작성일

북마크해서 다시 봐야겠네^^~ 좋은글 감사!!

lhj님의 댓글

lhj 작성일

강유희 목록

번호 분류 제목 작성자 등록일 조회수
공지 공지

[공지] 강유희 姜有喜 0

유희 2019-07-19 0

유희 2019-07-19 943 HIT
13 일기

[일기] 꾸러미 홈페이지 작업이 막바지에 다다르고 있다. 2

유희 2019-09-27 2

유희 2019-09-27 2,479 HIT
12 자료실

[자료실] 라디오 버튼 uncheck javascript(+ jquery) 1

유희 2019-08-08 1

유희 2019-08-08 1,786 HIT
11 일기

[일기] #수레무대꿀팩릴레이 저도 해봤습니다 1

유희 2019-08-02 1

유희 2019-08-02 1,617 HIT
10 자료실

[자료실] SASS와 JS(Babel)로 이루어진 모바일 메가 메뉴 0

유희 2019-08-02 0

유희 2019-08-02 837 HIT
9 방명록

[방명록] 방명록? 1

지유지유 2019-07-21 1

지유지유 2019-07-21 1,651 HIT
8 자료실

[자료실] 귀여운 버튼 스타일들 0

유희 2019-07-21 0

유희 2019-07-21 748 HIT
7 자료실

[자료실] 웹 표준 최적화 기본 가이드 0

유희 2019-07-20 0

유희 2019-07-20 851 HIT
6 자료실

[자료실] 홈페이지 체크 리스트 0

유희 2019-07-19 0

유희 2019-07-19 837 HIT
5 자료실

[자료실] 메타 뷰포트 태그 관련 자료 0

유희 2019-07-17 0

유희 2019-07-17 784 HIT
4 자료실

[자료실] 대용량 업로드 테스트 글입니다 3

관리자 2019-07-16 3

관리자 2019-07-16 4,441 HIT
3 자료실

[자료실] 모바일 사파리에서 button, input 스타일 적용 안 될 때 0

유희 2019-07-14 0

유희 2019-07-14 760 HIT
2 자료실

[자료실] Sass 관련 자료 2

유희 2019-07-14 2

유희 2019-07-14 3,358 HIT
1 자료실

[자료실] 그누보드 비밀글 제목 변경($row로 출력했을 때 비밀글) 0

유희 2019-06-17 0

유희 2019-06-17 1,193 HIT

인천 광역시 강화군 선원면 시리미로207번길 8-11
23039
wagonstage92@naver.com
010 - 7635 - 4515