책정리/크리에이티브 프로그래머

크리에이티브 프로그래머 5장) 비판적 사고

뽀글보리 2024. 2. 9. 17:09
반응형

5장 비판적 사고

1. 창의적인 비판적 사고

창의적 사고비판적 사고는 모두 창의적 노동의 결실을 거두기 위한 필수 조건이다.

창의적 사고는 독창적인 아이디어를 창출하고, 비판적 사고는 아이디어를 검증하거나 피드백을 요청하고 올바르게 해석하며 많은 인지적 편견을 극복하게 해준다.

2. 창의적인 프로세스

창의적인 프로세스는 총 5단계로 설명 가능하다.

  • 참여: 창의적인 결과물을 위해 오랜 기간에 걸친 준비 작업
  • 배양: 참여하기를 잠시 멈춘 채 거리를 두고 프로세스를 중단하는 기간. 무의식적으로 통찰의 속도를 높인다.
  • 조명: 참여 중 번뜩이며 떠올리는 통찰력을 발견한 순간
  • 검증: 그만한 가치가 있는 지 확인하고 그렇지 않다면 다시 시작한다.
  • 발표/수용: 사회적으로 발표하고 수락되어야 진정으로 창의적이라고 할 수 있다.

이 프로세스는 순차적이지만 언제든지 1단계로 돌아가거나 할 수 있다.

1) 비판적 검증

검증이란 한 걸음 물러나 지금까지의 창작물을 비판적으로 살펴보는 행위로, 창의적인 프로세스 3단계에 해당한다.

시인이라면 시를 다시 읽어보고, 과학자라면 계산하거나 실험해 봐야한다. 통찰력이 떠오르더라도 이성의 냉철한 빛 아래에서는 단점이 드러날 수 있다.

2) 집중적 사고

성취해야 할 것과 해결책에 집중하여 분석적 문제 해결과 집중적 사고를 하는 단계로, 이 단계는 창의성에 필수적인 부분이다.

3) 확산적 사고

아이디어가 많이 떠오른다고 이런 것을 거부할 필요는 없다. 집중적 사고에서는 현재 당면한 문제를 세밀하게 들어보아 분석하지만, 확산적 사고에서는 문제 자체로부터 잠시 벗어나 문제의 다양한 측면을 더 높은 수준에서 접근한다.

물론 너무 자주 마음 방황을 하게 된다면 이것은 직무 불만족의 신호일지도 모른다.

 

4) 집중적 사고와 확선적 사고의 결합

좋은 아이디어를 생각해내는 방법 : 많은 아이디어를 떠올리고 그 중에서 나쁜 아이디어는 버린다.

⇒ 많은 아이디어를 떠올리는 확산적 사고와 나쁜 아이디어는 거르는 집중적/비판적 사고가 모두 필요하다.

 

상황에 따라 어느 정도의 확신적 사고와 집중적 사고가 요구된다. 확산적 사고를 너무 많이 하게 되면 이상한 아이디어를 많이 만들어 내기 십상이다. 지나치게 집중된 사고는 터널 비전과 추측성 일반화로 이어진다. 사고 모드를 자주 전환하는 것이 가장 바람직한 접근 방식이다.

3. 창의성은 목표가 아닌 수단

문제의 맥락과 제약을 고려하여 아이디어 창출과 비판적 사고 사이의 적절한 조합이 중요하다. 창의성을 위한 창의성은 피해야 한다.

나쁜 예시 : 팀 기반의 코드 스타일을 완전히 무시한 채 오로지 아름다움만을 위해 모든 코드 줄을 재작성하는 데에 열중하다.

4. 일반적인 비판적 사고 오류

비판적 사고는 결코 완벽하지 앟다. 사회적 환경의 영향을 받는 인지적 편견은 우리의 사고 패턴을 끊임없이 왜곡하기 때문이다.

 

1) 언어 간 충돌

자바를 사용하는 개발자는 자바스크립트의 프로토타입 상속과 비동기 함수형 프로그래밍을 이해하지 못해 자바스크립트 사용에 어려움을 겪는다. 숙련된 프로그래머라도 오래된 습관을 버리기 어렵기 때문에, 패러다임을 전환할 때 사고의 전환이 필요하다.

⇒ 언어 간 간섭을 극복하기 위해서 검증하고 또 검증하라

2) 급격히 떠올린 아이디어

갑작스럽게 떠오른 아이디어를 비판적으로 검증하는 것을 잊지 말아야 한다. 통찰력에는 편견이 따르기 마련이다.

 

3) 무지와 의도적 발견

우리는 이전에 가지고 있던 신념과 가치관을 기반으로 가정을 세워 프로그램을 개발한다. 이러한 확증 편향을 가지게 되면 자신의 주장을 뒷받침하기 위해 상황을 해석하곤 한다. 그러다가 예상치 못한 동작이 발생하면 그 때 우연한 발견으로 학습의 순간이 일어난다.

의도적인 학습의 순간으로 바꾸려면 어떻게 해야할까? 자신이 무엇을 모르는지 알고, 자신의 무지에 대해 주의를 기울인다.

 

4) 이기적 편향

내가 해냈다며 프로젝트의 성공을 자기 자신에게 돌리는 것, 실패로 끝나면 내 잘못이 아니라고 외치는 것

무의식적인 자기 보호 메커니즘을 피하라.

 

5) 최신 기술에 대한 열망

혁신적이 되르면 모든 것이 반짝이고 새로워야 한다는 편견을 버려라. 가장 최신 기술로 작업하고 싶다는 열망은 엄청난 ㅣ팩터링 시도와 기술 부채로 이어져 결국 최종 사용자에게는 별로 도움이 되지 않을 수 있다.

 

6) 구글 검색 코딩

때때로 잘못된 검색 결과를 참고하거나, 한 가지 정보에만 크게 의존하는 기준점 편향이 발생한다.

⇒ 여러 정보 소스를 사용하여 교차 확인하고 검증한다.

 

7) 초보자의 프로그래밍에 대한 많은 오해

5. 지나친 자기비판

너무 유치해, 너무 형편없어, 지속해서 건네는 부정적인 만들은 정신적으로 지치게 하고, 창의적인 에너지를 고갈시켜 그저 순응하고 작업을 포기하게 만든다.

 

예술가이자 교사인 줄리아 캐머런은 창의력 회복을 위한 가장 중요한 도구로 두 가지를 언급했다.

  1. 매일 아침 글쓰기
  2. 자신과의 예술적 데이트

이를 코딩 상상력을 자극하기 위해 깃헙 탐색, 게임 플레이, C++ 책 찢기를 해보는 것으로 치환해볼 수 있다.

 

어자피 못한다고 포기한 적이 있나요? 동료가 더 똑똑하다는 이유로 동료의 제안대로 구현한 적이 있나요?

자기 스스로에게 엄격하게 판단하는 사람은 창의적 독창성 수준이 낮다. 내면의 당신이 당신을 이기도록 내버려 두지 말아라.

6. 타인의 비판적 사고가 중요한 이유

창의성은 사회문화적 판단이기 때문에 누군가 당신의 작업을 창의적이라고 인정하지 않는다면 당신의 작업은 창의적이지 않은 것이다. 만약 당신이 작성한 코드를 아무도 이해하지 못한다면 코드를 단순화하려고 해보아라. 물론 다른 사람의 비판을 어디까지 허용할지는 당신의 결정에 달려있다.

반응형