본문 바로가기


변계사 Sam 일상/꾸준하게

꾸준히 실천하는 독서 Day 64. KISS - Keep It Short and Simple(ft. 새벽 기상 & 새벽 산책)

반응형

우에다 이사오, <프로그래밍의 정석> 중에서 

새벽 산책을 하며 12주 플랜의 셋째 주를 돌아봤다. 이번 주 목표 중 하나는 '냐옹아 멍멍해봐'의 문법 파트에 올렸던 기존의 블로그를 수정하고, 전체적인 로드맵을 작성해서 올리는 것이었다.

 

지난 주말, 그동안 올린 블로그를 다시 읽어보니 설명하고자 하는 내용을 제대로 전달한것 같지 않았다. 그래서 고민을 했다. 핵심을 좀 더 쉽게, 단순하게 설명할 순 없을까? 단순한 지식의 나열이 아닌 이야기가 있는 스토리로 전달할 수는 없을까? IT 문외한도 핵심을 이해할 수 있게, 설명을 듣고 싶어 하지 않았던 사람조차도 설명을 듣고 이해할 수 있게 써보자는 마음으로 처음 블로그를 작성할 때보다 더 많은 시간을 들여서 고민하고 수정을 거듭했다. 하지만 생각만큼 만족할 만한 결과물이 나오지 않았다. 많은 내용을 길게 쓰는 것보다 핵심만 간결하게 단순하게 쓴다는 것이 훨씬 어려운 일이라는 것을 새삼 깨달았다.

 

설명의 대상은 설명을 듣지 않으려는 사람이다. 

나카무라 케이 <한마디로 정리해야 하는 순간은 반드시 온다> 중에서

 

고민을 너무 많이 하다보니 생각이 복잡해졌다. 이런저런 시도를 하면서 복잡함에 복잡함을 더하고 길을 잃어버렸다. 산책하면서 깨달았다. 이번 주 나의 삶의 원칙 중 하나인 '단순하게'를 놓쳤구나. 좀 더 단순하게 고치려고 시작했던 일이 오히려 복잡한 일이 돼버렸다. '단순하게'를 나침반 삼에 다시 생각하자. 불필요한 것을 제거하는 것부터 시작하자. 이거 저거 한꺼번에 다하려 하지 말고 한번에 하나씩만 집중하자. 

 

 

KISS - 간결하고 단순하게 하라

그리고 산책 후 집에 돌아와서 읽은 「프로그래밍의 정석」이라는 책을 통해 단순성이라는 것에 대해 다시 한 번 생각해보게 되었다. 코드를 작성할 때의 최우선의 가치를 단순성과 간결성에 두라는 저자의 메시지는 글을 쓸 때 단순성과 간결성을 최우선의 가치로 두자는 다짐으로 이어졌다. 

 

KISS 
Keep It Short and Simple.

코드를 작성할 때는 최우선 가치를 단순성과 간결성에 둔다.


코드는 아무 생각 없이 수정하다 보면 저절로 무질서해지고 복잡해진다.

단순함을 프로그래밍의 나침반으로 삼자. 코드에서 불필요한 것과 넘치는 것을 가능한 한 제거해야 한다. 그렇게 하려면 프로그래밍 중에도 코드가 동작할 수 있는 가장 간단한 방법은 무엇인지 항상 질문을 던져야 한다.

어떤 기술을 막 배우고 나서, 그 기술을 사용하고 싶다는 이유로 불필요하게 기발한 코드를 작성할 때가 있다. 그러나 코드는 두뇌의 명석함을 뽐내기 위한 것이 아니라 사용자에게 가치를 제공하기 위한 것이다. 뽐내려 해서는 안 된다. 
그렇게 코드를 작성하는 방식이 정말로 필요한지를 항상 곱씹어 보고, 코드가 계속 단순하게 유지될 수 있는 방향으로 '우직'하게 나가야 한다. 

장래에 필요해질지 모르니, 그렇다면 지금 작성하는 것이 최선이라고 생각하면서 코드를 넘치게 작성할 때가 있다. 그러나 지금 필요하지 않다면 지금 작성할 것이 아니다. 대부분 그렇게 작성한 코드는 필요해지지 않는다. 필요해졌을 때 필요한 만큼만 코드를 작성하도록 해서 단순함을 유지하자. 

멋대로 요구사항을 판단해서 불필요한 코드를 추가할 때가 있다. 필요한지 아닌지, 올바른지 아닌지를 사용자에게 판단해 달라고 요청하기보다 코드를 작성해 버리는 쪽이 쉽다고 생각하기 때문이다. 그러나 요구사항을 결정하는 쪽은 사용자다. 프로그래머가 요구사항을 결정해서는 안 된다.

우에다 이사오, <프로그래밍의 정석> 중에서 

프로그래밍의 정석을 읽고 코딩을 글쓰기로 변환해서 정리해 봤다.

 

새롭게 배운 지식을 전달하고 싶다는 이유로 기발한 내용을 덧붙이지 말자. 나의 지식을 뽐내기 위한 것이 아니라, IT지식이 필요한 사람들에게 쉽게 전달하는 게 중요하다. 

전체적인 맥락에서 필요한 내용인지, 지금 쓰고 있는 주제에 포함시켜야 할 내용인지 다시 한번 생각하자.

이 내용도 필요하고 저 내용도 필요할 거야라고 무책임하게 다 쓰지 말자. 정말 필요한 내용이지, 글을 읽는 사람 입장에서 생각해보자. 


새벽4시 30분 기상 & 새벽 산책 Day 64

book.naver.com/bookdb/book_detail.nhn?bid=12692342

 

프로그래밍의 정석

『프로그래밍의 정석』에서 설명하는 프로그래밍의 정석에 관한 주요 정보의 출처와 관련 서적을 모두 읽으면 실력 향상에 많은 도움이 되겠지만, 초보자가 읽기 시작하면 몇 년이 걸릴 것입니

book.naver.com

 

반응형