게임 개발, AI, 교육 — 현장에서 배운 것들을 기록합니다.
짐 콜린스(Jim Collins)의 『Good to Great』는 위대한 회사를 만드는 비결을 카리스마나 한 방의 아이디어보다, 레벨 5 리더십과 규율 있는 사람·생각·행동의 축으로 설명한다.
더 읽기 →
좋은 디자인과 더 나은 디자인의 차이는 화면이 예쁜가보다도, 사용자의 마찰을 어디까지 제거했는가에 더 가깝다. 버튼을 다듬는 수준과 흐름 전체를 다시 짜는 수준은 분명히 다르다.
더 읽기 →
불변 자료구조는 매번 전체를 복사하는 비효율적인 방식처럼 보이지만, 실제 구현은 구조적 공유와 영속 자료구조를 바탕으로 훨씬 더 실용적으로 동작한다.
더 읽기 →
함수형 프로그래밍에서 재귀는 루프의 대체재라기보다 상태 변화를 인자로 드러내는 방식에 가깝다. 특히 꼬리 재귀와 누산기 패턴을 이해하면 이 차이가 분명해진다.
더 읽기 →
함수형 프로그래밍은 게임 코드를 전부 다시 쓰라는 명령이 아니다. 불변 데이터와 순수 함수의 관점을 이용해 규칙 계산, 상태 전이, 서버 메시지 처리처럼 변화를 분리해야 하는 영역을 더 다루기 쉽게 만든다.
더 읽기 →
앤디 그로브의 『Only the Paranoid Survive』는 전략 전환의 핵심을 거창한 혁신 선언보다 '새 CEO라면 무엇을 먼저 버릴까'라는 냉정한 질문에서 찾는다.
더 읽기 →
잘 설계된 소프트웨어는 지금 동작하는 것만으로는 충분하지 않다. 요구사항 충족, 정보 은닉, 가독성, 변경 용이성, 과잉 설계 회피라는 다섯 기준으로 다시 정리한다.
더 읽기 →
처음 설계를 시작할 때는 클래스 수를 늘리는 것보다, 무엇이 책임이고 무엇이 자주 바뀌는지 먼저 묻는 편이 훨씬 안전하다. 입문자가 바로 적용할 수 있는 5가지 질문으로 정리한다.
더 읽기 →
소프트웨어 개발은 분석-설계-구현-테스트가 한 번 직선으로 끝나는 공정이 아니다. 작은 단위를 반복하며 스코프를 줄이고 피드백을 되감는 순환 구조로 보는 편이 실제에 가깝다.
더 읽기 →
소프트웨어 설계 입문에서 중요한 것은 다이어그램 도구를 많이 아는 것이 아니라, 시스템의 경계와 책임을 설명하는 습관을 익히는 것이다. UML과 C4 모델은 그 다음에 붙이는 도구에 가깝다.
더 읽기 →