실용주의 프로그래머 Day8

HYl·2022년 4월 3일
0

DAY 8

오늘 읽은 범위 : 8장 프로젝트 전에


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

요구 사항의 구렁텅이

  • 자신이 뭘 원하는지 정확히 아는 사람은 아무도 없다.
  • 프로그래머는 사람들이 자신이 원하는 바를 깨닫도록 돕는다.
  • 요구 사항은 피드백을 반복하며 알게 된다.
  • 사용자처럼 생각하기 위해 사용자와 함께 일하라.
  • 의미론적 불변식을 요구 사항으로 잘 갈무리하고, 구체적인 작업 방식이나 현재의 작업 방식은 정책으로 문서화해야 한다.
    • 요구 사항은 아키텍처가 아니다. 요구 사항은 설계가 아니며 사용자 인터페이스도 아니다. 요구 사항은 필요를 표현하는 것이다.

불가능한 퍼즐 풀기

  • 생각의 틀을 벗어나지 말고, 틀을 찾아라.
  • 자신만의 방법에서 빠져나오라
  • 행운은 준비된 사람에게 찾아온다
    • “유레카!”`의 순간을 경험하려면 여러분 뇌의 무의식 영역에 원료를 많이 주입하는 방법
    • 일상적인 작업을 할 때 무엇은 잘되고 무엇은 안되는지 피드백을 주는 것.
    • “겁먹지 마시오 Don’t Panic.”

함께 일하기

  • 그저 질문하고, 토론하고 메모를 하는 것이 아니라, 실제로 코딩을 하는 와중에 질문을 하고 토론을 하는 것이다.
  • 짝 프로그래밍
    • 개발자 한 명은 키보드를 조작하지만 다른 한 명은 하지 않는다.
    • 사람의 존재로 인해 생기는 사회적인 압력은 나쁜 습관이나 약점으로부터 우리를 지켜준다. (꼼수를 덜 쓰게 되고, 소프트웨어 품질이 더 좋아진다.
  • 몹 프로그래밍
    • 셋 이상의 사람이 참여하는 짝 프로그래밍의 확장판.실시간 코딩을 곁들인 밀접한 협업
    • 키보드로 입력하는 사람을 5~10분마다 바꿔 주어야 한다.
  • 코드만 비판하고 사람을 비판하지 말라. “넌 틀렸어.”보다는 “이 부분을 한 번 볼까요?”가 훨씬 듣기 좋다.
  • 다른 사람의 관점을 듣고 이해하려고 노력하라. 다른 것은 틀린 것이 아니다.
  • 자주 회고를 하라. 그래서 다음번에 시도하거나 개선할 점을 찾아라.

애자일의 핵심

  • 애자일은 명사가 아니다. 애자일은 무언가를 하는 방식이다.
  • 애자일하게 일하는 방법
    1. 여러분이 어디에 있는지 알아내라.
    2. 도달하고 싶은 곳을 향하여 의미 있는 발걸음을 가능한 한 작게 옮겨라.
    3. 어디에 도착했는지 평가하고, 망가트린 것이 있으면 고쳐라.

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요.

개발자는 저마다 다른 성향의 스타일을 가지고있다. 또한 장점과 단점이 다르기 때문에 내가 어떠한 부분이 뛰어나가고 해서 내가 더 나은 개발자라고 말을 할 수 없다.

코드를 지적할 때도 "넌 틀렸어" 가 아닌, "이렇게 하는 방식은 어떨까요?" 라는 말을 사용하는 것이 좋다. 내가 이렇게 생각한다고 해서 정답이 아닐 수 있기 때문이다. 다른 사람의 관점을 듣고 이해하려고 노력해야 한다.

profile
꾸준히 새로운 것을 알아가는 것을 좋아합니다.

0개의 댓글