본문 바로가기

일상

프로그래밍과 코딩

코딩(coding)은 뭐고, 프로그래밍(programming)은 또 뭘까?

지금까지 
대충 같은 뜻의 비슷한말로 생각하며 살아왔다.
그저 코딩은 프로그래밍을 조금 낮춰서 
편하게 부르는 것으로 생각해왔다.

둘의 사전적 의미를 살펴보자.

코딩(coding)
- (통계, 사회) 정보의 ‘부호화’
- (컴퓨터) 계산기의 동작 수순 명령을 쓰는 일

프로그래밍(programming)
- 컴퓨터 프로그램을 만드는 것
  (참고로 프로그램은 업무 수행및 전개를 위한 계획이라는 뜻을 갖고 있다.)
- (라디오, 텔레비전의)방송 프로 편성

컴퓨터 동작 수순을 작성하는거나, 컴퓨터 프로그램 만드는 거나 그게 그거 아닌가?
하는 생각이 든다.

하지만 요즘 파이썬을 공부한다고 해외 포럼들을 기웃거리며 느낀건
그쪽에서는 프로그래밍을 하는 프로그래머와 코딩을 하는 코더를 
엄격하게는 아니지만 나름 구분해서 사용하는것 같다는 것이다.
코더중에서도 또 단계를 나누어 구분하는 듯 했다.
그러니까
B급 코더는 세상에 공개된 코드는 무리없이 활용할 수 있는 사람
A급 코더는 거기에 더해 자신만의 코드를 만들어낼 수 있는 사람
등등으로 말이다.
그리고 
프로그래머는 뭐랄까...설계자나 디자이너 같은 느낌으로 쓰이는 듯했다.

예를 들어 
거대한 빌딩을 세운다고 해보자
건물을 설계, 디자인하는 건축가들이 있을테고,
현장에서 그 도면대로 건물을 짓는 실무 담당자들이 있을 거다.
그리고 그 실무 담당자들 중에는
정말 고액 연봉을 받는 수준높은 엔지니어부터
일용직 노동자까지 아마도 그 스펙트럼이 굉장히 다양할 것이다. 
여기서 건축가는 프로그래머, 실무 담당자들은 코더,
대충 이런 느낌이 아닌가 싶다.

다시 말해서
프로그래밍은 컴퓨터의 자료구조를 정확히 이해하고
수학적 알고리즘을 정립해서 실제 구동하는 코드를 작성하는 것까지로
(코드 작성 이라는)코딩을 포함하는 의미로 판단된다.

 

그래서 그런지
국내 번역된 컴퓨팅 서적들의 저자인
해외의 유명 프로그래머들을 보면
대학에서 수학을 전공하고 컴퓨터쪽으로 전향하거나
혹은 물리학을 먼저 배우고 컴퓨터에 발을 들이는 경우가 많은 등
대부분의 상위 프로그래머들은 기초과학 분야를 기본으로 전공하는듯 하다.
그리고 그들이 쓴 내용을 봐도
단순히 코드를 패턴화 시켜서 여러번 사용해 익숙하게 만드는 형식보다는
컴퓨터 구조와 프로그램의 흐름을 관련지어 코드를 설명한다.

가끔 도서관에서 파이썬 책을 뒤적거리다가
초등생 혹은 컴맹들을 상대로 한 코딩 책들을 발견하곤 하는데, 
코드를 블럭화 해놓고 어떻게 구성할 것인가를 묻는 거라든지
블럭을 어떻게 바꾸어 흐름을 만들 것인가를 묻는 내용을 보면서
새삼,
초딩 코딩교육이야말로 단순 코딩보다는 
오히려 프로그래밍의
논리적인 구조화 및 설계를 가르치는 것이 아닌가 하는 생각이 들었다.

'일상' 카테고리의 다른 글

멍때리기  (4) 2023.11.14
가을의 끝자락에서  (4) 2023.11.07
작은 책임감  (4) 2023.11.04
단상 1  (0) 2023.11.03
당신의 뇌 나이는?  (48) 2023.11.01