brunch

You can make anything
by writing

- C.S.Lewis -

by 이남주 NJ Namju Lee Jan 19. 2021

읽으면서 입문하는, 모두의 디자인 코딩

읽으면서 입문하는, 모두의 컴퓨테이셔널 디자인 인덱스

NJ's Computational Design Series/ 남주의 컴퓨테이셔널 디자인 시리즈


1. 교양: 읽으면서 시작하는, 모든 디자이너를 위한 코딩 입문서

2. 초급: 읽으면서 입문하는, 모두의 디자인 코딩


3. 중급: 따라 하며 입문하는, 모두의 디자인 코딩

4. 고급: 데이터 & 디자인 컴퓨테이셔널 디자인




들어가면서


읽으면서 입문하는, 

모두의 디자인 코딩 시리즈 

BY

NJSTUDIO

NJSLAB

NJCHANNEL 



부제


1. 읽으면서 배우는, 모두의 컴퓨테이셔널 디자인 & 크리에이티브 코딩

2. 읽으면서 입문하는, 모두의 크리에이티브 디자인 코딩

3. 읽으면서 이해하는, 디자인 그리고 데이터


4. 디자이너도 이해할 수 있는 모두의 컴퓨테이셔널 디자인 & 크리에이티브 코딩

5. 디자인(제품, 시각, 영상, 건축, 도시, 환경) 그리고 컴퓨테이셔널 디자인 입문서

6. 디자이너면 반드시 알아야 하는 컴퓨테이셔널 디자인


7. 코딩 없이 이해하는 컴퓨테이셔널 디자인

8. 4차 산업혁명과 디자인 도구

9. 데이터 그리고 디자인



대상


1. 4차 산업혁명과 디자인 데이터 그리고 코딩에 대해서 궁금하신 분들

2. 코딩이 궁금한 디자이너

3. 디자인 방법론이 궁금한 개발자


4. 디자이너로서 컴퓨테이셔널 디자인의 개념을 이해하고 싶으신 분들

5. 컴퓨테이셔널 디자인이 무엇인지 궁금한 디자이너, 디자이너 지망생, 실무자, 교육자, 연구자

6. 크리에이티브 코딩, 실습 이전에 어떤 형식으로 공부를 해야 할지 모르는 분들


7. 컴퓨테이셔널 디자인을 적용하려는 실무자 혹은 도입하려는 회사 관계자들,

8. 이미 컴퓨테이셔널 디자이너로 활동하시지만, 좀 더 깊이 있는 공부 방향성을 잡고 싶으신 분들

9. 컴퓨테이셔널 디자인을 통해 디자인을 엔지니어링 하고 싶으신 분들



들어가면서


왜 디자이너가 코딩을 배워야 할까요?

인공지능, 머신러닝, 빅데이터, 클라우드, 에지 컴퓨팅, 사물인터넷, 초 연결, 5G, 자율주행, 병열 연산, 블록체인 등등, 다양한 4차 산업혁명 키워드가 있죠. 그리고 각계각층의 다양한 산업은 빠르게 변화하며 새로운 패러다임에 적극적으로 대응을 하고 있죠. 이러한 상황에, 디자이너는 어떤 준비와 변화가 요구될까요? 4차 산업의 쌀인 데이터를 활용하기 위해서 디자인을 위한 코딩을 배워야 합니다.


코딩 없이 쉽게 시작할 수 없을까요?

"코딩과, 따라 하기 없이, 읽으면서 이해하는 컴퓨테이셔널 디자인 입문"이라는, 다소 다른 형태로, 컴퓨테이셔널 디자인을 이야기해보려고 합니다. 일반적으로, 따라 하기, 튜토리얼이 주류를 이루고 있죠. 그도 그럴 것이, 실습을 해보고 그 과정에서 이해와 깨달음을 챙겨가져 가야 하는 것이 사실인데요. 장단점이 있죠. 하지만 이 책에서는 따라 하기 코딩 없이 읽으면서, 배우고 입문하는 것을 목적으로 하고 있어요. 이론과 개념을 먼저 이해하고, 종합적인 지도를 만들어 4차 산업혁명을 타고 넘어설 수 있도록, 디자이너를 돕고자 해요.


코딩, 전공이 아닌데도 알아야 할까요?

요즘, 많은 디자이너들, 혹은 회사 조직의 디렉터들이, 디자인과 코딩, 데이터와 인공지능, 컴퓨테이셔널 디자인 분야에 관심을 가지고 있습니다. 전문적인 깊은 이해까지는 아니더라도, 대화가 가능한 수준의 개념 이해와 컴퓨테이셔널 디자인의 가능성에 대해서 궁금해하시죠. 과거에 전통적인 디자인에서는, 프로그래밍 혹은 코딩을 컴퓨터공학의 분야로 생각했었죠. 하지만 가령, 과거에 수기로 기록을 하던 것들이, 도구의 발전으로, 한글, 워드, 혹은 엑셀을 사용하는 것처럼. 이제는 그 분야가 전공이 아니더라도, 반드시 알고 이해해야 하는 부분이 있는 것이죠.


보다 전문적으로 공부를 해보고 싶다면?

학생, 연구자, 실무자분들이 본격적으로 디자인을 위한 코딩 공부를 들어감에 앞서서, 스스로의 공부 지도를 만든다는 차원으로도 반드시 필요한 내용이라고 생각해요. 툴의 사용법을 먼저 익히는 것이 중요할 수 있어요. 하지만, 원리와 개념 그리고 그것들의 연결고리를 파악하여 전체적은 구조를 알고 들어갈 경우 굉장히 효과적인 학습을 가능하게 하죠. 국내외의 현장 강의, 연구, 실무를 통해서 느낀 피드백들을 정리하여, 이제 시작하시는 개개인 분들에게 적합한 시작점과 공부지도가 되기를 바랍니다.



안녕하세요:) 이남주입니다!

2008년 “건축 영상 프레젠테이션” 집필 후 13년 만에, 책을 통해서 다시 여러분들과 만나 뵙게 되어 참으로 감사하게 생각합니다. 2004년도 NJSTUDIO스타트업을 시작하면서, 디자인, 컴퓨테이션, 비주얼라이제이션 영역에서 17여 년 동안 그 산업의 변화와 함께 했고, 관련 지식과 경험을 선, 후배 동료들에게 나눌 수 있다는 것이 여간 기쁘고 감사한 일이 아닐 수 없습니다.


때대로, 아웃사이더로, 비주류로 여겨지던 저의 전공영역들이, 많은 학생과 실무자 교육자 분들 심지어는 고등학생까지, 과거 그 어느 때보다 많은 관심을 보이는 요즘이에요. 국내외 수업과, 개인 블로그와 유튜브 채널과 다음 브런치, 미디엄 등등의 다양한 채널을 통해서, 그 관심과 학습에 대한 열정을 느껴 오고 있어요. 그 변화를 체감하는 하루하루입니다. 격세지감을 느낍니다.


국제적으로도 다른 필드에 비해, 정보가 많지 않았던 만큼, 스스로 학습을 하고, 유학과 연구원 생활 그리고 실무를 통해, 호기심과 채우며, 물어물어 학습했던 기억이 있습니다. 특별히, 2018년 겨울부터 본격적으로 유튜브 NJ채널을 통해서, 우리말 자료가 많지 않던, 한국적 상황에 조금이나마 도움이 될 수 있음에 설레고 보람을 느꼈습니다.


학생과 연구자, 교육자, 실무자 분들이 다양한 피드백을 주시고 계십니다. 긍정적인 피드백, 날카로운 첨언과 진심 어린 조언으로, 작금의 변화된 미디어와 일상을 십분 활용하는 소통으로, 우리의 정보 공유 활동도 꾸준히 할 수 있지 않았나 생각합니다. 또 다른 아웃풋으로, 이렇게 한 권의 책이, 디자인과 컴퓨테이션을 궁금해하시고, 시작하시는 분들에게 드릴 수 있어 감사합니다.


아직까지 배우는 호기심 가득한 학생의 입장에서, 모르는 부분들이 많습니다. 저 또한, 저의 관심사에 연구목적에 맞춰 하루하루 시간에 쫓기고, 스스로의 한계로 부족한 부분이 있을 것입니다. 그러나 현재까지 소수로 취급받는 디자인 그리고 컴퓨테이션 영역의, 한 명의 동료로서, 특별히, 자료가 많지 않은 한국적인 상황에 조금이나마 학업과 산업에 도움이 되기를 바랍니다.



목차


입문하기


CHAPTER 1 - 재료 & 도구 & 디자인


도구(Tool) : 배경지식 / 이유


1 재료, 도구 그리고 디자인

    1.1 도구의 발달

    1.2 재료와 도구 그리고 디자인

    1.3 데이터 


2 도구: 컴퓨터 & 소프트웨어 

    2.1 속도 / Performance

    2.2 지식과 기술의 합, 소프트웨어

    2.3 실제 도구(Physical Tool)에서 가상 도구(Digital media)로

    2.4 현상에서 phenomenon 소프트웨어 그리고 시스템,

    2.5 애프리케이션(퍼스널라이제이션)

    2.6 소프트웨어에서 커스터마이제이션


! 지식의 빈익빈 부익부 



CHAPTER 2 디자이너에게 코딩이란


3 디자이너가 왜 코딩을 해야 할까요?

    3.1 창의성의 도구?

    3.2 자동화의 도구?

    3.3 최적화의 도구?

    3.4 데이터 때문에?

    3.5 디자인 방법론 때문에?


4. 디자이너가 코딩을 해야 하는 이유

    4.1 일 할 수 있는 일꾼을 만든다.

    4.2 균일할 품질 유지를 도와준다.

    4.3 실험적 작업

    4.4 문제로서의 디자인

    4.5 솔루션으로서의 디자인

    4.6 데이터로의 디자인

    4.7 다양한 커리어 패스를 만들 수 있다.

    4.8 진입 장벽을 높여준다

    4.9 경쟁력을 준다

    4.10 요약


! 미래를 예측할 때


CHAPTER 3 코딩 (Coding) & 디자인(Design)


4차 산업, 데이터, 그리고 디자인: 적용


5 코딩 그리고 프로그래밍

    5.1. 코딩Coding 

    5.2. 프로그래밍Programming


6 디자인(Design) & 컴퓨테이션(Computation)

   6.1 컴퓨테이션 Computation

   6.2 디자인 Design

   6.3 형태 Shape

   6.4 색 Color 


7. 디자이너를 위한 코딩

    7.1 크리에이티브 코딩 / Creative Coding

    7.2 파라메트릭 디자인    

    7.3. 알고리즈믹 디자인 & 제너레이티브 / Generative design

    7.4 에이전트 베이스

    7.5 시뮬레이션

    7.6 그 밖에...


! 컴퓨테이셔널 디자인의 인식과 오해



CHAPTER 4 디자인 코딩의 활용 범위


8 큰 스케일에서

    8.1 GIS 데이터

   8.2 환경

   8.3 도시 / 스마트시티

   8.4 건축


9 작은 스케일에서

    9.5 프로덕트

    9.6 인터액션

    9.7 디지털 패브리케이션 / 로봇틱스


10. 새로운 환경에서

   10.8 미디어

   10.9 인공지능

    10.10 VR AR

   10.11 메타버스


16. 컴퓨테이셔널 디자인 테크트리

    16.1. 컴퓨테이셔널 디자이너로 살아남기

    16.2. 디자인 엔지니어링

    16.3. 건축 도시 디자이너 / 테크트리 

    16.4. 제품 디자이너 / 테크트리 

    16.5. 시각디자이너 / 미디어 / 테크트리 

    16.6. 공통분모


! 컴퓨테이셔널 디자인의 미래



Chapter 5  디자인 & 컴퓨테이션:  컴퓨테이셔널 사고 /  Computational Thinking


11. 컴퓨테이셔널 사고 / Computational Thinking

    1.1. 암묵적 명시적 / 추상화

    1.2. 모듈의 재활용성 / 코딩

    1.3. 변수 / 파라미터

    1.4. 수체계

    1.5. 프로그래밍 패러디임


12. 컴퓨테이셔널 디자인 사고

   12.1. 어떤 알고리즘을 왜 설계해야 하는가?

   12.2. 전략

   12.3. 방법론/접근법

   12.7. 디자인 알고리즘

   12.9. 알고리즘 공부방법


! 디스크릿타이제이션 (discretization)


학습하기



Chapter 6 학습 방법: 코딩(Coding) & 프로그래밍 (Programming) 


13. 컴퓨테이셔널 디자인 어떻게 공부하면 좋을까?

    13.1. 공부 스텝

    13.2. 도구로서의 코딩 / 문법 익히기

    13.3. 프로그래밍 그리고 코딩

    13.4. 가장 엄밀한 언어 수학

    13.5. 수학의 추상화

     13.6. API

    13.7. 디자인 언어

    13.8. 3 스텝 더 들어가기


14. 디자이너에게 필요한 언어는?

    2.1 매이지 & 언 매니지드 언어

    2.2 메모리 관리

    2.3 파이썬 언어

    2.4 C# 언어

    2.5 Typescirpt(Javascript) 언어


! 라이노 파이썬 언어 공부 방법


15. 코딩, 무엇을 어떻게 공부할까?

    15.1. 변수와 메모리

    15.2. 자료구조

    15.3. 데이터의 수정

    15.4. 쉽게 이해하는 클래스

    15.5. 컴퓨터 그래픽

    15.6. 데이터 구조 그리고 알고리즘

    15.7. 버그와 디버깅


! 코딩 공부 어떻게 할까?

! 코딩 공부에 필요한 능력?


! 에러의 종류 3가지

! 고무 오리 디버깅



CHAPTER 7 학습 방향


18. 컴퓨테이셔널 디자인 테크트리

    18.1 컴퓨테이셔널 디자이너로 살아남기

    18.2 컴퓨테이셔널 디자인 엔지니어로 살아남기


! 펀더멘탈(fundamental)의 이해 / 변할 것과 변하지 않을 것


4 데이터

    4.1 데이터로의 인식

    4.2 데이터의 분류

    4.3 데이터로의 기록

    4.4 데이터에서의 통찰

    4.5 데이터의 도구 코딩 

    3.5. 데이터와 디자인




CHAPTER 8 학습 자료


19. 강의 자료

    19.1. 컴퓨테이셔널 디자인 수업 Computational Design & Creative Coding

    19.2 질의 응답 시리즈 QnA


20. 워크숍 참조 자료 Workshop Materials

    20.1 디자이너를 위한 파이썬 워크 숍  Python for Design Scripting

    20.2 디자이너를 위한 C# 디자인 스크립팅 C# for Design Scripting

    20.3 유니티를 디자인 스크립팅 & 시각화 Unity for Design Script & Viz

    20.4 웹 환경에서의 디자인 스크립팅 Design Scripting on Web 

    20.5 디자인 데이터 Design Data 250

    20.6 디자인을 위한 인공지능, 머신러닝, 데이터 프로세스 AI, ML, Data for Design

    20.7 컴퓨테이셔널 디자인 워크숍  Computational Design Workshop

    20.8 CAD 디자인 소프트웨어 구축 Stand-alone CAD Software development

    20.9 디자인시각화 & 소프트웨어 활용 Design Visualization & CAD Software


21 컴퓨테이셔널 디자인 프로젝트 예제

    21.1 디자인 & 컴퓨테이션 프로젝트 Design & Computational Project

    21.2 컴퓨테이셔널 디자인 사례 Computational Design Wroks, Work Snippet

    21.3 연구, 기고글 Research & Publication

    21.4 디자인 시각화 Design Visualization

    21.5 하버드, MIT 연구 작업 Research & Studies & Lab


22 토크 & 토크 인터뷰 Talk & Interview

    22.1 디자인 그리고 컴퓨테이션 Design and Computation

    22.2 빔 그리고 벨류엔지니어링 Bim & Value Engineering


23 참조 프로젝트 링크

    23.1 엔제이프로젝트 시리즈 



시간이 되는대로 글을 업데이트하도록 하겠습니다. 생각보다 시간이 많이 걸리네요. 양해 부탁드립니다.

많은 피드백 부탁드립니다!!

감사합니다.


Revision 5 / 2021/09

Revision 4 / 2021/08

Revision 3 / 2021/04

Revision 2 / 2021/01

Revision 1 / 2020/05



이남주 / NJ Namju Lee / nj.namju@gmail.com

MDes;Harvard, MArch;UCB, B.S;SNUST, Research Fellow; MIT

Architecture design, Computation, Visualization specialist


Director and founder of NJ Design Lab  / NJSLab NJSLabSandbox


Facebook / Instagram / Linkedin

NaverBlog  / DaumBrunch / Youtube(kr)


GitHub / CodePen Medium Youtube(eng) 

매거진 선택

키워드 선택 0 / 3 0

댓글여부

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

카카오계정으로 간편하게 가입하고
좋은 글과 작가를 만나보세요

카카오계정으로 시작하기
페이스북·트위터로 가입했다면