내 생각에 사람들이 지향하는 TDD라는 것은 근본적으로 in -> out 방식의 단위 테스트 기반의 개발 방식을 말하는 것이라 생각된다. 내가 테스트 주도 개발이라는 책을 읽은 적은 없지만, (당분간은 읽을 생각도 없겠지만) out -> in 방식은 시나리오 위주의 개발이기 때문에 ATDD에 더 가깝지 않을까 싶다
in -> out 방식의 TDD를 연습해 보면서 느낀건, 해당 도메인에 대해 잘 알지 못하면 TDD를 시도조차 하기 어렵다는 점이다. 내 생각에 TDD를 하기 위해선 테스트를 쉽게 만드는 것이 첫번째 조건이다. 그런데 테스트를 쉽게 만드려면 객체를 최대한 작게 쪼개야 간단한 테스트들을 작성할 수 있게 된다.
그런데 문제는 이 객체를 작게 쪼개는 과정이다. 이게 가능하려면 도메인에 빠삭해서 어떤 정책들을 어떻게 묶고, 행위를 어떻게 묶을지를 알 수 있어야 한다.
또다시 도메인이다. 기술적인 건 기본적으로 갖추어야 할 소양이고, 도메인 전문가가 되는 것이 아키텍처 설계나 애플리케이션 동작에만 영향을 주는 것이 아니라 구현 자체에도 좋은 영향을 주는 것 같다.
조급해하지 않기, 강아지한테 잘해주기
오늘 강아지 눈곱이 많이 끼기도 하고 많이 충혈되어 있어서 동물 병원에 다녀왔다. 그런데 생각보다 상태가 많이 심각했다. 방치했으면 녹내장까지 번질 수도 있었다고 한다.
처음 동물 병원에 가야한다는 이야기를 들었을 때 나는 무슨 생각이 들었을까? 물론 봄이를 위해서라면 갈 수는 있겠지만 동시에 귀찮다 / 아 이러면 오늘 쓸 수 있는 시간이 또 주는구나 하는 생각도 한 편으론 들었다.
병원에서는 노견이기 때문에 어쩔 수 없이 면역이 약해지고 있다고 한다. 그 말을 들으니 갑자기 머리가 핑 돌아 어지러웠다. 봄이는 내가 귀찮다고 생각한 것도 모르고 수의사 선생님 손에서 벗어나 내 품에 들어오려고 했다. 아파서 그런가 낑낑 거리지도 못했다.
현재 상황이 좋지 않고 주위 친구들은 모두 잘나가니 조급해지는 것 같다. 그것에 눈이 멀어 진짜 소중한 것을 놓치면 무슨 상관인가...
뭔가 한 편으로는 조금 마음을 놓게 된 계기가 되었다.
성격으로 기질 누르기
최근 심리 상담에서 기질 및 성격 검사라는 것을 수행했다.
기질이라는 것은 유전이기 때문에 처음부터 정해지는 것이고, 성격은 7~8세 사이에 형성된다고 한다. 나 같은 경우엔 자율성 + 연대감 점수가 낮기 때문에 성격적인 요소대로 사는 것이 아니라, 기질대로 살아가는 편이라고 한다.
자극추구가 높은 사람들은 지루함을 잘 견디지 못한다고 한다. 따라서 다른 사람들이 말하고 있을 때 다른 생각이 들면, 그걸 생각하느라 대화의 결이 달라져 핀트를 못잡는 경우가 종종 있다고 한다.
따라서 이를 해결하기 위해서는 계속해서 '지금 저 사람이 말하고 있잖아. 들어야지. 저 사람은 저 말을 왜 하는 걸까?'하며 self-talk을 해야 한다고 한다. 이는 결국 왜 들어야 하는 지에 대한 의미 부여하는 과정이라고 볼 수 있다. 내 생각엔 들었던 생각을 종이에 적어놓고 바로 사고를 전환해도 좋을 것 같다.
위 자료를 보면 책임감이 꽤 낮게 나온 데에 비해 유능감이 낮지는 않은 편으로 나온다. 이건 꽤 의외인 포인트였다. 나는 책임감이라는 걸 굉장히 중요하게 여기는데 책임감이 낮다니? 선생님께서 말씀하시길, 이 두 요소들의 불일치는 다른 사람들이 나를 평가 절하할까 무서워 내 스스로 나를 평가 절하 하는 것이라 한다.
이러한 것들을 고치기 위해 self-talk을 자주 해서 현재 상황에 대해서 인지하고 객관화 하는 습관을 가져야 하며, 최소 6개월 간은 훈련해야 한다고 한다. 그래야 기질을 의식적으로 조절할 수 있다고 한다. 그렇게 됐을 때, 내가 못하는 부분도 있다는 것을 인정하게 되고, 다른 사람들에 대해 열린 마음으로 다가갈 수 있게 될 것이라고 한다.
처음에는 나의 Soft Skill을 기르기 위해 시작한 심리 상담이지만, Soft Skill 외에도 내가 살아감에 있어 많은 도움을 얻을 수 있지 않을까? 하는 기대를 품고 있다.