Refactoring을 읽어 보면 bad smell in code라는 말이 나옵니다. 코드에서 나쁜 냄새가 느껴질 때가 refactoring을 해야 할 때라는 내용이죠.
예전에 했던 생각인데 bad smell을 꼭 코드에서만 맡을 수 있는 것은 아닌 것 같습니다. 제목에 쓴 것처럼 뭔가 심리적인 bad smell이 있을 것 같은데 제가 생각했던 한가지 bad smell in mind는 바로 이것입니다.
이 냄새를 맡게 되면 역시 refactoing을 시작해야 합니다. 보통은 주석을 통한 탈취 처리로 마무리되는 경우가 많지만 말이죠.
저는 예전보다는 이 냄새를 자주 맡을 수 없게 되었는데 이유를 생각해 보니 다음 중 하나일 것 같습니다.
제발 1번은 아니었으면 하는 것이 개인적인 바램. 물론 2번이었으면 하는데 이것도 썩 믿기질 않습니다. 결국 이유는 3번인 것 같습니다. 주변 사람들이 내가 코딩을 엉망으로 해놔도 엉망인지 알아보는 사람이 없다면 부끄럽지도 않겠죠.
실력있는 사람들 옆에 있으면 특별히 배우는 것 없어도 발전할 수 있는 이유중의 하나가 이런 것이 아닌가 합니다. 그들의 작업만큼 멋지지 않은 내 것을 보고 부끄러움을 느끼고 더 잘 하려고 노력하는 것만으로도 스스로 발전하는 것이죠.
처음 입사할 때는 대기업에 가면 훌륭한 개발자들이 많이 있겠지라는 생각을 했었습니다. 하지만 지금은 역시 대기업은 평균보다 약간 높은 수준의 인력을 관리하여 제품을 개발하는 곳이구나라는 생각을 합니다.
물론 대기업에서 배울 수 있는 많은 것들이 있습니다. 큰 프로젝트 경험, 비싼 툴들, 관리 능력, 회사 생활, 인간 관계등등. 이중에서 제일 만족하고 있는 부분은 역시 큰 프로젝트 경험입니다. 100 man-year보다 큰 프로젝트들을 작은 회사에서 해보긴 어려울테니까요.
하지만 이제는 큰 프로젝트 경험보단 멋진 개발자들과의 작업을 경험할 수 있었으면 좋겠습니다. :-|
예전에 했던 생각인데 bad smell을 꼭 코드에서만 맡을 수 있는 것은 아닌 것 같습니다. 제목에 쓴 것처럼 뭔가 심리적인 bad smell이 있을 것 같은데 제가 생각했던 한가지 bad smell in mind는 바로 이것입니다.
내 코드를 남들에게 보여주기 부끄럽다.
이 냄새를 맡게 되면 역시 refactoing을 시작해야 합니다. 보통은 주석을 통한 탈취 처리로 마무리되는 경우가 많지만 말이죠.
저는 예전보다는 이 냄새를 자주 맡을 수 없게 되었는데 이유를 생각해 보니 다음 중 하나일 것 같습니다.
- 나이가 한살 두살 많아지며 부끄러운 줄 모르게 되었다. 8-O
- 코드를 정말 잘 작성하게 되었다.
- 주변에 내 코드에서 냄새를 맡을 수 있는 사람이 없다.
제발 1번은 아니었으면 하는 것이 개인적인 바램. 물론 2번이었으면 하는데 이것도 썩 믿기질 않습니다. 결국 이유는 3번인 것 같습니다. 주변 사람들이 내가 코딩을 엉망으로 해놔도 엉망인지 알아보는 사람이 없다면 부끄럽지도 않겠죠.
실력있는 사람들 옆에 있으면 특별히 배우는 것 없어도 발전할 수 있는 이유중의 하나가 이런 것이 아닌가 합니다. 그들의 작업만큼 멋지지 않은 내 것을 보고 부끄러움을 느끼고 더 잘 하려고 노력하는 것만으로도 스스로 발전하는 것이죠.
처음 입사할 때는 대기업에 가면 훌륭한 개발자들이 많이 있겠지라는 생각을 했었습니다. 하지만 지금은 역시 대기업은 평균보다 약간 높은 수준의 인력을 관리하여 제품을 개발하는 곳이구나라는 생각을 합니다.
물론 대기업에서 배울 수 있는 많은 것들이 있습니다. 큰 프로젝트 경험, 비싼 툴들, 관리 능력, 회사 생활, 인간 관계등등. 이중에서 제일 만족하고 있는 부분은 역시 큰 프로젝트 경험입니다. 100 man-year보다 큰 프로젝트들을 작은 회사에서 해보긴 어려울테니까요.
하지만 이제는 큰 프로젝트 경험보단 멋진 개발자들과의 작업을 경험할 수 있었으면 좋겠습니다. :-|
bad smell in mind... 실력은 졸업이후로 점점 퇴화하는 것 같고... 감각은 더뎌지는것 같고.. 1번에 해당되는 것 같네요.. OTL
ReplyDeleteㅎㅎ.
ReplyDelete전에 뵈었을때도 그런비슷한 말씀을 하시더니...
전 개인적으로 제 코드를 남에게 보여주는걸 부끄럽거나 싫어하지 않으려고 "노력"합니다. (코드를 열심히 작성한다는 의미가 아니라... 마인드를 바꾸려고.. 노력하죠. ㅎㅎㅎ)
그리고 남의 코드를 가지고 뭐라고 하지 않으려고 노력하구요...
얻을것은 얻고 버릴것은 버리자... 라는 생각...
제코드를 보는 다른이들도 그렇게 생각했으면 하는 생각...
ㅎㅎㅎ
이렇게 되면.. .결국 전 1번이되는건가요.. 켁.. ^^
kebie: 설마요. :-)
ReplyDeletezoops: 남에게 보여주는게 부끄럽거나 싫어하지 않아도 될 만큼 코드가 좋아지신 것 아닐까요. :-)
만약 서로 관계가 괜찮다면 상대방 코드의 장/단점을 지적해 주는 것이 좋을 것 같습니다. 원래 코드리뷰의 목적중의 이런 식으로 서로의 실력을 키우는 것인데 누군가 그런 지적을 껄끄러워하기 시작하면 아무도 그 사람의 코드에 대해 말을 안하게 되더라고요. 특히나 누군가를 mentoring하고 있을 때는 확실히 해 주어야 할 것 같습니다.
(그리고 죄송한데 어디서 뵜었는지... 원래 기억력이 많이 안 좋습니다. :-| 좀 알려주세요. :cry: 혹시 예전 devpia 모임?)
켁... 네 맞습니다. 데브피아 모임...
ReplyDelete디자인&아키텍쳐 모임때 뵈었었져.... 기억력 좋으시네요.. ^^
에궁, 왕 죄송... (_ _)
ReplyDelete그 모임도 얼마나 오래 전인지 가물가물하네요. 전 한번밖에 못 갔던 것 같은데 자주 모였는지 모르겠네요. 암튼 re-반갑습니다. :-)