brunch

You can make anything
by writing

C.S.Lewis

by Vintage appMaker Sep 11. 2024

컴퓨팅 사고의 시대

생존형 개발자의 생각 #110


1. 컴퓨팅 사고


컴퓨팅 사고방식은 수학적 사고방식과 결이 다르다. 사고의 방식을 함수로 구현하는 것은 유사하지만 수학의 불변(imutable)적 함수처리가 아니라 가변(mutable)적인 함수처리를 한다. 즉, 논리적 사고를 하되 “다양한 열린결과”를 수용하는 방식이다. 수학에서는 답을 찾지만 소프트웨어 공학에서는 답이 아닌 “방법”을 찾는 이유가 바로 컴퓨팅 사고가 base이기 때문이다.


아래 표는 ChatGPT 3.5에서 “컴퓨팅 사고방식을 표로 정리”로 했을 경우, 생성된 결과물이다. 구차한 설명보다 깔끔한 도표로 제공되는 설명은 "사고의 구조"를 한 번에 정리시켜줄 수 있다는 장점이 있다.

도표에 의한 One Page 정리를 선호하다보니 생성AI가 만들어주는 Note에 대만족을 할 때가 많다.


2. 컴퓨팅 사고와 프롬프트 


생성 AI 창궐이후, 전세계의 지식노동자들에게 프롬프트는 일상이 되어버렸다. 그런 관점에서 강조하지만 프롬프트 사용법과 컴퓨팅 사고는 업무처리와 기획(물론 데이터 기반의 사고방식을 무시하는 기획자는 동의 못할 것이다)에도 도움이 된다.  특히 생성 AI가 생활화된 2024년 현재에는 컴퓨팅 사고방식은 “프롬프트”의 활용측면에서 매우 유용한 결과를 도출해낼 수 있다. 


다음은 일반사용자 입장에서 "개발자 수준의 액셀활용"의 필요성이 있을 때,  "생성AI를 컴퓨팅 사고 기반의 프롬프트"로 활용하는 예제이다. 


액셀을 사용하다보면 사용자(주로 임원 및 결정권자)가 배경색을 칠한 셸만 합을 구하고자 할 때가 종종 생긴다. 선택의 기준이 사람이다보니 마땅한 수학함수가 존재하지 않는다. 이를 해결하고자 생성 AI를 컴퓨팅 사고로 활용했다.


컴퓨팅 사고방식의 단계로                    

1.문제정의: “액셀에서 사용자가 선택한 셸의 합을 구한다”

2.분해: [Sheet1이라는 Sheet를 선택], [ A1:C10까지의 셸범위], [셸의 배경색이 노란색인 것만 선택], [선택된 항목의 합구함]  

3.패턴인식:   
  How-To에 대한 내용
  1. 범위내 배경색이 노란것들을 선택 및 리스트(배열)               
  2. 배열의 모든 항목의 값 더하기  

4. 추상화: 실질적인 프롬프트 작성영역                            
기능:
    ▢ 액셀에서 선택한 셸의 합을 구한다.
구현:                                    
    ▢ Sheet1 이동                   
    ▢ A1:C1 범위내 노란색 배경 리스트로 작성
    ▢ 리스트 item의 총합을 계산                   
    ▢ 값을 반환(리턴)    

위의 과정을 통해 4와 같은 프롬프트를 작성한다. 그리고 그 프롬프트를 활용하여 생성된 결과를 다음과 같이 진행한다. 

  5. 알고리즘 설계:                            
  ⇒ 사실상 생성 AI가 만들어준 결과물               
  ⇒ 맥락의 완성도와 디테일에 따라 결과물이 달라짐  

  6. 판별:                            
  ⇒ 원하는 결과가 바로 나올 경우는 없다               
  ⇒ 문제가 생기면 추상화 부분을 반복한다.  

  7. 반복:                            
  원하는 결과가 나올 때까지 계속한다.  


생성AI 활용이나 프로그래밍이나 컴퓨팅 사고 입장에서는 별반 다른점이 없다. 그러다보니 확률적으로 양질의 결과물을 얻고자 한다면 컴퓨팅 사고에 입각한 의사코드(pseudo code) 형식을 활용하는 것이 유리하다. 

 

프롬프트 공유

Excel에서 결과화면
ChatGPT for Markdown으로 Export하고 Obsidian으로 정리했다.



3. 인문학적 개발자? No 컴퓨팅 사고를 가진 기획자!

한동안 "인문학적 개발자" 같은 마케팅 용어가 유행했던 시기가 있었다. 단호하게 말할 수 있지만 인문학이 필요한 것은 개발자가 아니라  "인간의 기본역량"때문이다. 인문학과 개발자 스킬과는 아무상관이 없다. 주위에 개발자들에게 "인문학적 사고"로 얼마나 빠르고 효율적인 코드를 만들었는지 증명하라고 한다면 아무도 답할 사람은 없다. 인문학적 개발자는 마케팅용어이고 실제로 기업의 생산성을 향상시킨 지표따윈 가지고 있지 않다. 


반면에!!
기획자는 이야기가 다르다.


한 때(10년전) 개발자와 과학자의 영역으로 불려지며 핫템으로 등극했던 "데이터 사이언티스트" 직군을 보면 알 수 있다. 당시 그 직군은 개발자와 학자의 영역으로 여겨지며 수많은 노동인력을 배출했지만 시장에서 반응은 냉담했다. 그들의 말하는 통계와 시계열이 회사에 어떤 도움이 되는 지 "담당자조차" 확신할 수 없었기 떄문이다. 이유는 단순하다. 

데이터를 판별하는 사람은 "기획자"
 


의 업무였기 때문이었다. 회사의 가치는 기획자가 볼 수 있고 결과적으로 데이터의 가치는 기획자가 결정해야 한다. 그러다보니 최근 5년간의 업무역량교육은 국가차원에서도 "데이터 문해력을 가진 기획자", "디지털 역량을 가진 기획자"로 커리큘럼이 변경되었다. 실제 시장에서도 데이터를 읽을 줄 아는 기획자들의 활약이 두드러지고 있다. 


결국 대부분의 기획자 양성과정에서는 다음과 같은 교육내용이 포함되어 있다. 

 

디지털 전환(업무자동화, 심지어 파이썬)

데이터 문해력(SQL 활용 및 데이터 구조에 대한 이해)


이런 상황으로 보면 결국 "개발자의 업무"가 일반직군의 업무영역으로 넘어가고 있음을 알게된다. 

결국 운전면허 라이센스와 동일한 결과가 발생하고 있는 것이다. 이렇다보니 간단한 데이터 추출 및 분석은 모두가 가지는 기본 역량이 되어버렸다. 결과적으로 떠벌리기 좋아하는 사람들이 말하는 "개발자가 사라진다"가 아니라 "너님이 개발자가 되어야 하는 세상"이 온 것이다. 


이런 시점에서 적어도 Excel 정도는 숙지하고 있어야 하지 않을까(적어도 기획자라면)?                     


 VBA 코딩할 떄 들여쓰기도 하지 않아 눈을 찡그렸지만 그래도 Excel 유저의 입장으로 보면 오빠두 채널만큼 도움되는 곳이 흔치않다.


4. 컴퓨팅 사고로 세상 보기


기술이 발전하며 사람들의 만족도가 높아질 때, 무비판 맹신을 하게 된다. 그 때 "기술에 숨은 의도와 감성"으로 알 수 없는 존재에게 조종당할 확률은 높아지게 된다. 


데이터를 지배하는 사람일 수록 감성을 지배할 수 있다. 
⇾ 이를 증명하는 것이 Fake AI, 뉴스로 SNS 혐오를 통한
⇾ 이익실현을 하는 세력들이 많아진다는 것이다. 

데이터로 무장하고 감성에 방어력을 가진다면 이용당하지 않는다.
⇾ 주식, 부동산도 비슷하다.
⇾  인류의 역사가 어그로였다.
⇾  어그로에 방어력이 있을 수록 휘말리지 않는다.


가치있는 데이터를 판별하는 능력이 삶의 승패를 좌우한다.


알 수없는 누군가에게 지배당하지 않는 해법은 “컴퓨팅 사고”도 포함된다. 
이유는 “내가 믿고있는 진실이 불변하다고 믿지 않고 계속 수정 보안하는 것”이 핵심이기 때문이다. 




브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari