실용주의 프로그래머 ( Days 1 )

6711 단어 book노개북book

🔖 오늘 읽은 범위 : 서문 ~ 1.실용주의 철학

❗ 소감 3줄 요약

- 책임지기
- 깨진창문, 망가뜨리지 말라
- 지식 포트폴리오, 커뮤니케이션

😃 책에서 기억하고 싶은 내용을 써보세요.

[ 당신의 인생이다 ]

당신에게는 스스로의 행동을 직접 결정할 수 있는 힘이 있다. 
업무환경이 엉망인가? 하는일이 지루한가? 문제를 고치기위해 노력하라. 
하지만 오랫동안 노력하지는 말라. 당신은 당신의 조직을 바꾸거나, 당신의 조직을 바꿀 수 있다.

기술에 뒤쳐지는 기분이 든다면 여가시간을 쪼개서 재미있어 보이는것을 공부하라.


[ 고양이가 내 소스 코드를 삼켰어요 ]

팀 내 신뢰, 책임지기

자신의 능력에 자부심을 가질 수 있지만, 실수나 무지 같은 단점에도 인정해야만 한다.

결과에 대한 책임을 지기지기로 했다면 나중에 그 결과를 감당해야 할 것이다. 실수를 저지르거나 (누구나 실수를 한다) 잘못된 판단을 내렸다면, 정직하게 인정하고 다른 방안을 제안하도록 노력하라.

변명 말고 대안을 제시하라. 안된다고 하지 말고 상황을 개선하기 위해 무엇을 할 수 있는지할 수 있는지 설명하라.

부탁을 어려워하지 말고 도움이 필요하다는 사실을 인정하라.

잘 모르겠어요.라고 말했다면, 꼭 바로 이어서 하지만 알아볼게요.라고 말하라. 모른다는 것은 인정하더라도 전문가답게 책임을 지는 좋은 방법이다.


[ 소프트웨어 엔트로피 ]

엔트로피는 시스템 내의 무질서한 정도를 가리키는 물리학 용어다.
소프트웨어의 무질서도가 증가할 때 우리는 이를 소프트웨어의 부패라고 일컫는다.

깨진 창문, 우선, 망가트리지 말라

명백히 망가진 상황을 무시하는 것은 아무것도 고쳐지지 않을 것 같다는 생각, 아무도 신경 쓰지 않는다는 생각, 망조가 들었다는 생각을 더 굳어지게 만든다.

깨진 창문을 고치지 않은 채로 내버려 두지 말라. 나쁜 설계, 잘못된 결정, 혹은 형편없는 코드 등이 모두 깨진 창문이다. 발견하자마자 바로 고쳐라. 적절히 고칠 시간이 없다면 일단 판자로 덮는 것판자로 덮는 것만이라도 하라.

더 이상의 손상을 예방하기 위해 어어떤 조치든떤 조치든 취하고 여러분이 상황을 잘 관리하고 있음을 보여 줘라.

방치는 다른 어떤 요인보다도 부패를 더 가속가속시킨다.

엔트로피가 우리를 지배하도록 내버려 두지 말라.

어떤 위기가 찾아왔다고 해서 부가적인 피해를 일으키지 말라. 깨진 창문은 하나로 충분하다.

깨진 창문 이론이 나온 최초의 실험에서는 버려진 자동차 한 대가 일주일 동안 방치되었어도 아무도 손대지 않았다. 하지만 창문 딱 하나가 깨지자 몇 시간몇 시간 만에 자동차 내부는 도난을 당했고 차체는 엉망이 되었다.

비록 불길이 일어날지라도(데드라인, 출시 날짜, 시사회 데모 등) 코드를 엉망진창으로 만들고 필요 이상의 손상을 가하는 첫 번째 사람이 자신자신이 되는 것만은 피하려 할 것이다.명심하라. 깨진 창문은 없어야 한다.

프로젝트를 함께 하는 동료의 생각을 조사하여 팀을 더 튼튼하게 만들라. 깨진 창문을 두세 개 고른 다음, 여러분의 동료들과 함께 무엇이 문제고 그걸 고치기 위해 무엇을 할 수 있는지 토론하라.


[ 적당히 괜찬은 소프트웨어 ]

타협 과정에 사용자를 참여시켜라

그저 프로그램에 새 기능을 추가하거나 코드를 한 번 더 다듬기 위해서 이런 사용자의 요구 사항을 무시하는 것은 전문가답지 못하다.

불가능한 시간 약속을 하거나 데드라인에 맞추기 위해 기본적인 걸 빼 버리거나 하는 것 역시 똑같이 전문가답지 못하다.

사용자에게 뭔가 직접 만져볼 수 있는 것을 일찍 준다면, 피드백을 통해 종국에는 더 나은 해결책에 도달할 수 있을 것이다.


멈춰야 할 때를 알라

완벽하게 훌륭한 프로그램을 과도하게 장식하거나 지나칠 정도로 다듬느라 망치지 말라.


[ 지식 포트폴리오 ]

새로운 기술, 언어, 환경이 개발됨에 따라 지식은 옛것이 된다.
여러분의 지식 가치가 점점 떨어짐에 따라 회사나 클라이언트가 보는 여러분의 가치 역시 떨어진다. 
우리는 이런 일이 일어나지 않도록 예방하고 싶다.

지식 포트폴리오

- 진지한 투자자는 주기적으로 투자하는 습관이 있다.

- 장기적인 성공의 열쇠는 다각화다.

- 똑똑한 투자자는 보수적인 투자와 위험이 크지만 보상이 높은 투자 사이에서
포트폴리오 균형을 잘 맞춘다.

- 투자자는 최대 수익을 위해 싸게 사서 비싸게 팔려고 한다.

- 포트폴리오는 주기적으로 재검토하고 재조정해야 한다.

비결은 일단 스스로 한 번 해본 다음, 습관을 들이는 것이다. 따라 할 절차를 만든 다음 여러분의 뇌에 각인될 때까지 반복하라. 그러고 나면 새로운 지식을 무의식적으로 빨아들이는 자신을 발견할 수 있을 것이다.


포트폴리오 만들기

- 주기적인 투자

- 다각화
더 여러 가지여러 가지를 알수록 자신의 가치는 더욱 높아진다.
오늘 인기 있는 기술이 내일이면 거의 쓸모없어지거나 그 정도는 아니어도 수요가 없어지기도 한다.
기술 외의 분야도 포함하여 여러분에게 필요한 다른다른 역량도 잊지 말라.

- 리스크 관리
여러분의 기술 달걀을 모두 한 바구니에 담지 말라.

- 싸게 사서 비싸게 팔기
자바가 막 나와서 유명하지 않았을 때 자바를 학습하는 게 당시엔 리스크가 있었을 것이다.
자바가 산업의 중심을 차지하면서 얼리 어답터들은 큰 이득을 얻었다.

- 검토 및 재조정


목표

- 매년 새로운 언어를 하나는 배워라
- 기술 서적을 한 달에 한 권씩 읽어라
현재 프로젝트와 관련 있는 흥미로운 주제의 기술 서적을 서점에서 찾아보라.
현재 사용하는 기술을 일단 완전히 익혔다면, 가지를 쳐서 지금 하는 프로젝트와
관련 없는없는 분야까지 공부 범위를 넓혀라.

- 기술 서적이 아닌 책도 읽어라
컴퓨터도 사람사람이 사용한다는 걸, 그리고 우리는 바로 이 사람들을 만족시키려고 노력하고 있다는 걸 꼭 기억해야 한다.

- 수업을 들어라

- 지역 사용자 단체나 모임에 참여하라.
고립은 경력에 치명적일 수 있다.
가만히 듣고만 오지 말고 적극적으로 참여하라.

- 다른 환경에서 실험해 보라

- 요즘 흐름을 놓치지 말라
현재 프로젝트에서 사용 중인 것과는 다른 기술을 다루는 뉴스와 온라인 게시물을 읽어라
한 기술의 새로운 용어나 기능에 익숙해지면 다음으로 나아가라. 또 다른 것을 배워라.


학습의 기회

거기서 멈추지 말라. 답을 찾기 위한 개인적인 도전으로 생각하라. 주위에 물어보라. 웹을 검색해 보라. 사용자용 문서뿐 아니라 학술 자료도 찾아보아야 한다.

스스로 답을 찾지 못하겠거든 답을 찾아줄 수 있는찾아줄 수 있는 사람을 찾아라. 중단하지 말라.


비판적 사고

읽거나 듣는 것에 대해 비판적으로비판적으로 생각하는 것이다.

상업주의의 힘을 절대 과소평가하지 말라. 웹 검색 엔진의 첫머리에 나온 결과라고 해서 그것이 최선이라는 의미는 아니다.


[ 소통하라! ]

최고의 아이디어, 최상의 코드 혹은 아주 실용적인 발상이 있다고 해도 다른 사람들과 소통할 수 없다면 궁극적으로 아무 효용이 없다.
코드를 작성하는 것은 우리의 의도를 기계에게 전달하는 것이기도 하지만, 생각을 기록하여 다음 세대의 개발자들에게 전달하는 것이기도 하다.
여러분이 의사소통에 사용하는 언어(그게 한국어든 영어든)도 또 다른 프로그래밍 언어일 뿐이라 여겨라.

청중을 알라

그저 말하는 것만으로는 부족하다. 전달하려는 내용을 제대로 전달하고 있는 경우에만 소통하고 있다고 할 수 있다.

그저 질문을 기다리지 말고 먼저 물어보라. 손짓, 몸짓과 표정을 관찰하라.

소통하면서 청중에 대한 지식을 쌓아 나가라.


말하고 싶은 게 무언지 알라

무엇을 말할지 미리 계획하라. 개요를 작성하라. 그리고 자문하라.
이렇게 하면 내가 표현하고 싶은 것을 듣는 사람에게 통하는 방법으로 잘 전달할 수 있나? 그렇게 될 때까지 다듬어라.

의사소통하고 싶은 아이디어들을 적은 다음 제대로 전달하는 데 필요한 전략을 몇 개 세워라.


때를 골라라

청중이 무엇을 듣기 원하는지 이해하려면 그들의 우선순위를 알아야 한다.


스타일을 골라라

이 분야에서 상대의 기술 수준이나 경험이 어떤가? 전문가인가, 아니면 신참인가? 손을 잡고 이끌어 줘야 할까, 아니면 짧게 세 줄 요약만 해주면 될까? 뭐가 좋을지 모르겠거든 물어보라.


멋져 보이게 하라

여러분의 아이디어는 중요하다. 그러니 마땅히 청중에게 멋지게 전달하기 위한 수단을 준비해야 한다.
모양새에 신경 쓰지 않으면 부엌에서 수 시간 뼈 빠지게 일한 노력이 헛수고가 될 수 있다는 것을 말이다.

맞춤법을 확인하라. 우선은 자동으로, 그다음엔 직접 눈으로 검사하라. 검사기가 잡아내지 못하는 맞춤법 실수도 있다.


청중을 참여시켜라

독자가 문서 초안에 참여하도록 하라. 피드백을 받고 그들의 머릿속을 도용하라.


경청하라

질문을 해서 사람들이 이야기를 하도록 북돋우거나, 토론의 내용을 그들 자신의 표현으로 다시 말해 달라고 요청하라.


응답하라

언제나 이메일과 음성 메시지에 답을 하라. 심지어 응답이 단순히 다음에 답해 드리겠습니다.이더라도.


문서화

모듈과 외부로 노출하는 함수에는 주석을 다는 것을 추천한다.

코드에 주석을 쓸 때는 왜왜 이렇게 되어 있는지, 즉 코드의 용도와 목적을 논해야 한다.


좋은 웹페이지 즐겨찾기