디자인 씽킹을 넘어 프로그래밍 씽킹으로 - 코드 한 줄 없이 배우는 코딩
고승원.윤상혁 지음 / 비제이퍼블릭 / 2021년 1월
평점 :
장바구니담기


개발자가 되려면 코딩부터 배우가 시작합니다. C++, JAVA, PYTHON, GO 등의 컴퓨터 프로그램을 통해 기초부터 차근차근 코딩문법을 익히는 것이 일반적인 방법이죠. 하지만 현업에 들어가게 되면 응용력이 없고 개발마인드가 없다면 간단한 허드렛일이나 하다가 나이가 들어 업계에서 방출되고 맙니다. 성장하지 못했다는거죠. <디자인 씽킹을 넘어 프로그래밍 씽킹으로>는 바로 프로그래머 즉 개발자가 가져야 할 '생각기술'을 다룹니다. 개발회사 CEO,기획자, 데이터분석가, 개발자,부모 조차도 이 프로그래밍 씽킹을 통해 보다 나은 성과를 낼수있다고 저자는 말합니다. 디자인씽킹을 기반으로 한 프로그래밍씽킹은 논리적 사고를 통해 사고를 확장하여 문제를 해결할수게 해주는 좋은 기술이라고 합니다. 앞으로는 세계는 모두가 개발자마인드로 살아야 하므로 프로그래밍씽킹은 필수라는 겁니다.

저자는 제주에 사시는 21년차 개발자 고승원 대표입니다. 스타트업 2곳을 운영하시는군요. (주)제로엠과 (주)리턴벨류입니다. 유튜브에 '개발자의 품격'이라는 명칭으로 100개이상의 동영상클립도 올려두셨습니다. 누구나 소프트웨어 기술을 배워서 세상에 선한 영향력을 펼칠수있도록 하시겠다는 마음이 멋지신분이네요. 공동저자 윤상혁박사는 연대에서 정보시스템으로 학위를 받으신분으로 스마트미디어렙 데이터 사이언티스트이고 테크팀 메니저십니다. 스마트미디어렙은 콘텐츠와 디지털광고를 결합시키는 업무를 합니다.

저자는 책의 서문부터 끝까지 코딩이라는 이야기를 합니다. 코딩은 컴퓨터플로그램언어를 이용해서 컴퓨터에서 사용할 프로그램을 짜는 것이라고 합니다. 이것을 저자가 좀더 전문적으로, 컴퓨터프로그램언어의 명령어를 이용하여 문제를 해결해나가는 과정이라고 정리합니다. 코딩이 우리에게 좀더 가까이 오는 실례로 작년마스크 대란때, 마스크가 있는 약국을 찾아주는 앱이 등장했었습니다. 앞으로 우리에게 생기는 문제들을 이런 방식으로 해결해가는 모습이 자주 나타나고 우리도 이 과정에 참여를 할 필요가 있다는 겁니다.

이것을 효율적으로 실현해주는 방법론이 '프로그래밍씽킹'입니다. 이 방법의 장점은 문제해결, 논리적 사고, 상상력과 창의력이 증진된다고 정리합니다.

디자인씽킹은 디자이너사고라고 하죠. 감성적인 부분을 건드립니다. 디자인씽킹(DT)은 공감이 매우 중요한 요소입니다. 이와 비교해서 프로그래밍씽킹(PT)은 논리적 사고에 가깝습니다. 우뇌가 아니라 좌뇌를 쓰는 사고법입니다. 두 사고법의 공통점은 창의적이고 분산적 사고과정을 거칩니다.

프로그래밍사고는 관찰단계, 탐험단계, 확장단계, 세분화단계, 발전단계로 되어있습니다. 관찰단계는 관찰대상을 입력과 출력으로 나눠서 구분합니다. 이 두부분의 사용자를 다각도로 살펴야 합니다. 탐험단계는 모든 가능한 경우의 수를 뽑는 단계입니다. 이 단계에서 사용자를 파악하고 대상을 분석, 모든 부분을 분산합니다. 관찰단계와 탐험단계는 빠르게 프로세스를 검토하는 단계입니다. 확장단계는 깊게 사고하고 구체화하는 단계입니다. 누락확인, 프로세스추가,단계파악을사이클로 돌려봅니다. 세분화단계는 입력과 출력을 단계로 분리한걸 다시 과정을 쪼개서 여러과정으로 분리합니다. 수렴단계라고 할수있습니다. 발전단계는 다시 단계를 확장해서 세분화를 합니다. 컴퓨터는 인공지능이 개발되어 있기는 하지만 모든 단계를 촘촘히 나눠서 인간의 사용성이 좋도록 구성해야 하고 코딩자체가 기계어이기에 컴퓨터가 알아들을수있게 세분화하여 단계별로 구성을 해야 작동이 됩니다.

컴퓨터프로그램언어는 문법이 존재합니다. 변수선언, 함수,조건문, 반복문,클래스 등을 코딩없이 글로만 설명해줍니다. 코딩책으로 이부분을 따라 쳐보는것과 다른 느낌이네요.

그리고 이 프로그래밍씽킹 5단계를 실제 직종을 대상으로 적용방법을 설명합니다. 데이터분석가는 관찰과 탐색단계에서 정의와 정보를 수집하고 확장단계과 세분화단계에서 한단계씩 쪼개는 작업을 해야 합니다 발전단계에서는 세분화된 정보를 기반으로 향후 계획을 고심하여 완성합니다. 부모관점에서 아이를 키울때도 프로그래밍씽킹을 응용할 수있는데, 관찰단계에서 보이는 사물을 곧이곧대로 받아들이지 말고 의심하면서 살피게하고, 탐험단계는 아이가 다양한 시각을 가지도록하고 확장단계과 세분화단계에서는 다른사람의 입장이 되어보게 하며 발전단계에서는 지금까지 하면서 나온 결과물을 검토하는 영역입니다.

21세기는 4차산업혁명 세상이고 인공지능, IOT, 자율주행, 3D프린팅, 각종 융합기술 등에는 소프트웨어기술이 필수로 사용되죠. 이제는 소프트웨어세상이 왔다고 해도 과언이 아닙니다. 더 크게 말하면 모든 비즈니스가 디지털트렌스포메이션화되고 있어서 소프트웨어기술자의 사고를 공유할 필요성이 바로 이 책을 탄생시켰습니다. 엑셀을 모르면 직장생활에 전망이 없듯이 코딩을 모르면 앞으로의 미래는 미래(?)가 없다고 주장하십니다. 물론 코딩기술이 더욱 발전을 하면 코딩한줄로 모르고 돌아가는 세상이될지도 모르겠습니다만 향후 50년은 코딩의 시대가 열렸다는 것에는 동의하고 이제 그 초입이라고 할수있습니다. 코딩기술을 잘하기위해 코딩을 위한 사고훈련이 필요하고 그것이 '프로그로밍씽킹'이 존재해야할 이유였습니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo