현실 세계의 흔한 주도 개발
• Test Driven Development
• Domain Driven Development
• Behavior Driven Development
• Model Driven Development
• Data Driven Development
Slide 3
Slide 3 text
아는 사람만 아는 주도 개발
• Resume Driven Development
• Alcohol Driven Development
• Coffee Driven Development
• Ju Dung A
-
Li Driven Development
• Hype Driven Development
Slide 4
Slide 4 text
👋 Hype Driven Development
Slide 5
Slide 5 text
Hype Driven Development
• 설레발 주도 개발
• 2016년 11월 23일에 등장한 개발 방법론
Slide 6
Slide 6 text
소프트웨어 구조 설계 과정
1. SNS 혹은 주변 개발자들 사이에서 핫한 기술 스택을 조사한다.
Slide 7
Slide 7 text
소프트웨어 구조 설계 과정
1. SNS 혹은 주변 개발자들 사이에서 핫한 기술 스택을 조사한다.
2. 내가 사용해 보고 싶은 스택을 선정한다.
Slide 8
Slide 8 text
소프트웨어 구조 설계 과정
1. SNS 혹은 주변 개발자들 사이에서 핫한 기술 스택을 조사한다.
2. 내가 사용해 보고 싶은 스택을 선정한다.
3. 선정된 스택을 바로 도입한다.
Slide 9
Slide 9 text
소프트웨어 구조 설계 과정
1. SNS 혹은 주변 개발자들 사이에서 핫한 기술 스택을 조사한다.
2. 내가 사용해 보고 싶은 스택을 선정한다.
3. 선정된 스택을 바로 도입한다.
4. 단, 제대로 된 연구나 프로젝트에 미치게 될 영향의 진지한 고려 없이. Only 재미.
Slide 10
Slide 10 text
No content
Slide 11
Slide 11 text
HDD의 다양한 방법
• 트위터 주도 개발
Slide 12
Slide 12 text
HDD의 다양한 방법
• 트위터 주도 개발
• 컨퍼런스 주도 개발
Slide 13
Slide 13 text
HDD의 다양한 방법
• 트위터 주도 개발
• 컨퍼런스 주도 개발
• 목소리 큰 사람 주도 개발
Slide 14
Slide 14 text
HDD의 다양한 방법
• 트위터 주도 개발
• 컨퍼런스 주도 개발
• 목소리 큰 사람 주도 개발
• 라이브러리 주도 개발
Slide 15
Slide 15 text
HDD의 다양한 방법
• 트위터 주도 개발
• 컨퍼런스 주도 개발
• 목소리 큰 사람 주도 개발
• 라이브러리 주도 개발
• 지식인 주도 개발
Slide 16
Slide 16 text
라는 생각이 들었다면 정상입니다. 이 발표는 HDD를 하면 안 되는 이유를 소개합니다.
이건 하면 안 되겠는데..?
Slide 17
Slide 17 text
HDD가 그렇게 나빠?
• 설레발의 출처는 대부분 SNS이다.
SNS는 새로운 아이디어의 테스트가 끝나기도 전에 잽싸게 전파되는 성질이 있다.
새로운 아이디어의 장단점이 모두 파악되기 훨씬 전부터…
Slide 18
Slide 18 text
HDD가 그렇게 나빠?
• 설레발의 출처는 대부분 SNS이다.
SNS는 새로운 아이디어의 테스트가 끝나기도 전에 잽싸게 전파되는 성질이 있다.
새로운 아이디어의 장단점이 모두 파악되기 훨씬 전부터…
• 👉 나쁜 결정을 쉽게 내리도록 유도한다.
기술 스택 선정을 한번 잘못하면 팀 전체를 평생 괴롭힐 수 있다.
Slide 19
Slide 19 text
1단계: 진짜 문제와 해결책
1. 큰 문제가 있던 회사가 있다.
2. 해당 문제의 해결책은 현재의 기술 스택이나 구조를 넘어서는 일이라 판단했다.
3. 새로운 프레임워크나 라이브러리, 혹은 패러다임을 만들어서 문제를 해결했다.
Slide 20
Slide 20 text
2단계: 발표, 자랑, 설레발 키워드
1. 문제를 해결한 팀은 신나서 결과물을 세상에 보여주고 팀만의 해결책을 자랑한다.
2. 사람들은 결과물을 보고 흥분하고, 사용해 보고 싶은 욕구가 생긴다.
3. 하지만 이 결과물이 무엇을 해결하고자 탄생했는지는 이해하지 못했다.
Slide 21
Slide 21 text
3단계: 빠돌이 탄생
1. 새로운 기술이 대단하고 흥미롭다는 생각이 계속된다.
2. 이 신기술이 우리 팀에도 도움 될 거란 설레발을 갖고 도입을 결정한다.
Slide 22
Slide 22 text
4단계: 실망
1. 작업이 계속되면서 앞서 도입한 신기술이 크게 도움이 되지 않고 있다는 걸 느낀다.
2. 오히려 더 많은 학습이 필요해지고 재작성되는 코드만 점점 늘어나고 있었다.
Slide 23
Slide 23 text
5단계: 현실 인식
1. 팀은 뒤를 돌아보고 성급한 신기술 도입의 대가가 무엇이었는지 생각해 본다.
2. 이게 무엇을 위한 기술이었는지를 깨닫는다.
Slide 24
Slide 24 text
React로 알아보는 현실 세계의 설레발
1. 페이스북이 문제에 직면합니다.
복잡한 상태 관리 이벤트로 정신이 사납고 전체적인 상태가 어떻게 되어가고 있는지 추적하기
어렵습니다.
Slide 25
Slide 25 text
React로 알아보는 현실 세계의 설레발
1. …
2. 페이스북이 함수형, 가상 DOM, 컴포넌트 같은 키워드로 새로운 패러다임을 홍보하기 시작합니다.
Slide 26
Slide 26 text
React로 알아보는 현실 세계의 설레발
1. …
2. …
3. 빠돌이: 페이스북이 새 시대의 프론트엔드 프레임워크를 만들었다! 이제 모든 것들을 리액트로
다시 만들자!
Slide 27
Slide 27 text
React로 알아보는 현실 세계의 설레발
1. …
2. …
3. …
4. 아주 많은 일들이 진행되지만 별다른 성과는 나오지 않습니다.
Slide 28
Slide 28 text
React로 알아보는 현실 세계의 설레발
1. …
2. …
3. …
4. …
5. 리액트는 실시간 알림이 아주 많은 단일 페이지 웹 앱을 만드는데에 아주 훌륭하지만,
그보다 간단한 경우에는 딱히 필요 없는 기술이었습니다.
Slide 29
Slide 29 text
HDD 예방법
결정하기 전에 연구하고 테스트하기
• 레퍼런스가 아니라 경험으로 기술을 배우자.
• 결정을 내리기 전에 새로운 기술을 이용한 프로토타입을 빠르게 만들어봐도 좋다.
• 새로운 기술로 해커톤을 진행해 보자.
• 팀원들의 경험에 기반한 현명한 결정을 내릴 수 있다.
Slide 30
Slide 30 text
HDD는 아예 무쓸모일까?
모든 기술은 특정한 문제를 해결하기 위해 만들어진다.
그 특정한 문제를 가지고 있나요?
Slide 31
Slide 31 text
지성빈
감사합니다.
이 발표는 Marek Kirejczyk의 Hype Driven Development 를 기반으로 합니다.
이 슬라이드에는 토스팀에서 제공한 토스페이스가 적용되어 있습니다.