프로그래밍의 진화와
바이브코딩
기계어에서 자연어까지 — 80년의 프로그래밍 역사를 한 눈에 살펴봅시다
두 거인의 시대를 관통하는 메시지
1995년 Steve Jobs와 2024년 Jensen Huang — 30년의 시차를 두고 프로그래밍의 의미를 재정의합니다
Steve Jobs
Apple 공동 창업자 · 1995
“Everybody in this country should learn how to program a computer, because it teaches you how to think.”
이 나라의 모든 사람이 컴퓨터 프로그래밍을 배워야 합니다. 프로그래밍은 생각하는 법을 가르쳐주기 때문입니다.
배경
1995년, PBS 다큐멘터리 'Triumph of the Nerds' 인터뷰에서. 당시 Apple에서 쫓겨난 후 NeXT를 운영하던 시기. 프로그래밍을 '리버럴 아트(교양)'로 보았고, 법대에 가는 것처럼 사고방식 자체를 바꿔준다고 말했다.
Steve Jobs: The Lost Interview (1995) — Robert Cringley와의 인터뷰
30년의 변화, 하나의 결론
1995 — Steve Jobs
“코딩을 배워라”
프로그래밍은 모든 사람이 배워야 할 사고력 훈련이다. 컴퓨터 과학은 교양(liberal art)이다.
2024 — 그 사이 30년
프로그래밍의 추상화 수준이
계속 높아져왔다
2024 — Jensen Huang
“코딩을 배울 필요 없다”
AI가 코딩을 대신하므로 도메인 전문성이 더 중요하다. 프로그래밍 언어는 이제 인간의 언어다.
두 메시지의 교집합: 바이브코딩
Jobs가 말한 “사고력”과 Huang이 말한 “도메인 전문성”은 서로 다른 시대의 관점이지만, 하나의 공통점을 시사합니다.
Jobs의 시대
프로그래밍을 배워야 문제를 구조화하고 해결할 수 있었다
Huang의 시대 (지금)
도메인 지식을 가진 사람이 AI에게 자연어로 지시하면 된다
기계공학도 여러분은 이미 “도메인 전문성”을 갖추고 있습니다.
바이브코딩은 그 전문성을 소프트웨어로 바꾸는 도구입니다.
테크 리더들이 말하는 AI 시대
바이브코딩의 탄생
Andrej Karpathy · 2025년 2월 6일 · X (Twitter)
“There's a new kind of coding I call 'vibe coding', where you fully give in to the vibes, embrace exponentials, and forget that the code even exists. It's possible because the LLMs (e.g. Cursor Composer w Sonnet) are getting too good. Also I just talk to Composer with SuperWhisper so I barely even touch the keyboard. I ask for the dumbest things like 'decrease the padding on the sidebar by half' because I'm too lazy to find it. I 'Accept All' always, I don't read the diffs anymore. When I get error messages I just copy paste them in with no comment, usually that fixes it. The code grows beyond my usual comprehension, I'd have to really read through it for a while. Sometimes the LLMs can't fix a bug so I just work around it or ask for random changes until it goes away. It's not too bad for throwaway weekend projects, but still quite amusing.”
코드를 직접 읽지도, 수정하지도 않는다. 에러가 나면 복사해서 붙여넣기만 한다. 코드가 이해 범위를 넘어서지만, 그래도 작동한다. 아직 주말 프로젝트 수준이지만, 꽤 재미있다.
이 트윗 하나가 4백만 뷰를 기록하며 '바이브코딩'이라는 용어를 탄생시켰다.
“Probably in 2025, we're going to have an AI that can effectively be a sort of mid-level engineer that you have at your company that can write code.”
2025년이면 회사의 중급 엔지니어 수준으로 코드를 작성하는 AI가 등장할 것이다.
Joe Rogan Podcast, 2025년 1월
“More than 25% of all new code at Google is now generated by AI.”
구글의 신규 코드 중 25% 이상이 이미 AI가 작성하고 있다.
2024 Q3 Earnings Call
“It's like some powerful alien tool has been thrown into the world without an instruction manual. This magnitude 9 career earthquake has already shaken the entire industry.”
설명서 없이 강력한 외계 도구가 세상에 던져진 것과 같다. 규모 9의 커리어 지진이 이미 산업 전체를 흔들고 있다.
Karpathy가 여러 인터뷰에서 언급한 내용을 종합
“AI won't replace humans, but humans with AI will replace humans without AI.”
AI가 인간을 대체하는 것이 아니라, AI를 사용하는 인간이 AI를 사용하지 않는 인간을 대체할 것이다.
다양한 인터뷰에서 반복 (정확한 출처 미확인, 유사한 발언이 여러 인터뷰에서 반복됨)
이러한 변화를 이해하고 활용하는 것이 이 강의의 목표입니다.
기계공학 도메인 지식 + AI 활용 능력의 결합을 탐구합니다.
프로그래밍의 진화
기계어에서 자연어까지 — 80년간 프로그래밍은 끊임없이 인간에게 가까워져 왔습니다.
각 코드 위에 마우스를 올리면 한 줄씩 설명을 볼 수 있습니다.
기계어 & 어셈블리
컴퓨터에게 0과 1로 직접 명령. 펀치카드에 구멍을 뚫어 프로그램을 입력하던 시대.
MOV AX, 5MOV BX, 3ADD AX, BXINT 21h
ENIAC — 최초의 범용 전자 컴퓨터 (1945). 방 하나를 가득 채운 30톤짜리 기계.
U.S. Army Photo, Public Domain
Fortran 탄생
IBM이 개발한 최초의 고급 프로그래밍 언어. 'Formula Translation'의 약자로, 수학 공식을 직접 코드로 옮길 수 있게 됨.
PROGRAM HEAT REAL :: H, A, DT, Q H = 100.0 A = 0.5 DT = 50.0 Q = H * A * DT PRINT *, "Q =", QEND PROGRAM HEAT
IBM 704 — Fortran이 처음 실행된 메인프레임 (1957). NASA에서도 사용.
NASA, Public Domain
C 언어
Dennis Ritchie가 Bell Labs에서 개발. 하드웨어에 가까우면서도 생산성이 높아 운영체제(UNIX)와 임베디드 시스템의 표준이 됨.
#include <stdio.h>int main() { double h = 100.0; double A = 0.5; double dT = 50.0; double q = h * A * dT; printf("q = %.2f W\n", q); return 0;}
PDP-11 — C 언어와 UNIX가 탄생한 미니컴퓨터 (1970s, Bell Labs)
Wikimedia Commons, CC BY-SA 3.0
MATLAB
Cleve Moler가 학생들이 LINPACK을 쉽게 쓰도록 개발. 행렬 연산과 시각화가 내장된 공학 계산 환경의 혁명.
% 뉴턴의 냉각 법칙 계산h = 100; A = 0.5; dT = 50;q = h * A * dT;h_range = 10:10:1000;q_values = h_range * A * dT;plot(h_range, q_values, 'r-', 'LineWidth', 2)xlabel('h (W/m²·K)')ylabel('q (W)')title('열유속 vs 열전달 계수')grid on
IBM PC 5150 (1981) — MATLAB이 처음 보급된 개인용 컴퓨터 시대의 시작
Wikimedia Commons, CC BY-SA 3.0
Python
Guido van Rossum이 개발. '읽기 쉬운 코드'를 철학으로, 과학 계산부터 웹 개발까지 범용으로 확산.
import numpy as npimport matplotlib.pyplot as plth, A, dT = 100, 0.5, 50q = h * A * dTprint(f'q = {q:.1f} W')h_range = np.arange(10, 1001, 10)plt.plot(h_range, h_range * A * dT)plt.xlabel('h (W/m²·K)')plt.show()
SGI Indy (1993) — Python이 성장한 90년대 워크스테이션. 과학 계산의 핵심 장비.
Wikimedia Commons, CC BY-SA 3.0
GitHub Copilot
AI가 코드를 제안하기 시작. 개발자가 의도를 주석으로 쓰면 AI가 코드를 자동 완성. 인간-AI 협업 코딩의 시작.
// 열전달 계수에 따른 열유속을 계산하는 함수function calcHeatFlux(h, A, dT) { return h * A * dT;}// h 범위에 대한 q 값을 차트로 시각화const data = hRange.map(h => ({ h, q: calcHeatFlux(h, 0.5, 50)}));
MacBook Pro — AI 코딩 도구가 실행되는 현대의 개발 환경
Wikimedia Commons, CC BY-SA 4.0
바이브코딩
코드를 전혀 모르더라도 자연어로 AI와 대화하며 프로그램을 만든다. 누구나 개발자가 되는 시대.
나: 열전달 계산기를 만들어줘. h, A, ΔT를 입력하면 q를 계산하고 차트로 보여줘.AI: 네, 만들겠습니다. → 파일 생성, 코드 작성, 실행 → 브라우저에서 확인 가능!핵심 흐름
프로그래밍은 항상 더 인간에게 가까운 방향으로 진화해왔습니다.
바이브코딩은 그 흐름의 자연스러운 다음 단계입니다.
다만 추상화 수준이 높아질수록 세밀한 제어, 디버깅, 보안 측면에서 새로운 과제가 생깁니다.
바이브코딩이란?
코드를 직접 작성하지 않고, 자연어로 AI에게 의도를 전달하여 프로그램을 만드는 새로운 프로그래밍 패러다임입니다.
“There’s a new kind of coding I call vibe coding, where you fully give in to the vibes, embrace exponentials, and forget that the code even exists.”
프로그래밍의 진화
어셈블리어
기계에 가까운 언어
1950s
C / Fortran
공학 계산의 표준
1970s
Python / MATLAB
고수준 스크립트 언어
1990s
AI 코딩 어시스턴트
Copilot, ChatGPT 등장
2020s
바이브코딩
자연어로 프로그램 생성
2025~
기존 코딩 vs 바이브코딩
기존 코딩
- 문법(syntax)을 암기해야 함
- 에러 메시지를 직접 해석
- 라이브러리 문서를 읽고 학습
- 디버깅에 많은 시간 소요
바이브코딩
- 자연어로 원하는 기능을 설명
- AI가 코드를 생성하고 설명
- 대화로 수정·개선 요청
- 결과 확인에 집중
※ 바이브코딩으로 생성된 코드도 검증, 테스트, 반복 수정이 필요합니다. 위 비교는 초기 프로토타이핑 단계 기준입니다.
기계공학도에게 바이브코딩이
왜 가장 강력한가?
프로그래밍을 누구나 할 수 있게 된 세상에서,
변화의 주역은 역학에 대한 깊은 이해를 가진 사람이
프로그래밍을 도구로 사용하는 경우다.
코드를 잘 짜는 사람이 아니라, 문제를 정확히 아는 사람이 이긴다.
과거: 프로그래밍이 병목
좋은 아이디어가 있어도 코딩 능력이 없으면 실현 불가. 개발자에게 의뢰하면 소통 비용 + 도메인 오해 발생.
- ✗열역학 시뮬레이션 → 6개월 외주 개발
- ✗실험 데이터 분석 → Excel 한계에 갇힘
- ✗논문 결과 시각화 → MATLAB 라이선스 의존
지금: 도메인 지식이 핵심 경쟁력
프로그래밍 장벽이 사라지면, 문제를 정확히 정의할 수 있는 사람이 가장 강력한 개발자가 된다.
- ✓열역학 시뮬레이션 → 대화로 직접 구현
- ✓실험 데이터 분석 → 맞춤형 웹 대시보드 제작
- ✓논문 결과 시각화 → 인터랙티브 웹앱 배포
도메인 전문가의 4가지 결정적 우위
프로그래머가 아닌 기계공학도만이 가진 강점
정확한 문제 정의
프로그래머는 '열전달'이 뭔지 모르지만, 여러분은 q = hAΔT를 안다. AI에게 정확한 요구사항을 전달할 수 있는 건 도메인 전문가뿐이다.
"대류 열전달 계수를 Nusselt 상관식으로 계산해줘" — 이 한 문장이 코딩 능력보다 강력하다.
결과 검증 능력
AI가 코드를 만들어도 결과가 맞는지 판단할 수 있는 건 역학을 아는 사람뿐이다. Reynolds 수가 음수로 나오면 뭔가 잘못된 걸 즉시 알 수 있다.
비전공자: "코드가 돌아가니까 맞겠지" vs 기계공학도: "Nu가 100 이상? 상관식 범위를 벗어났네"
현실 문제 해결
세상의 진짜 문제는 코드가 아니라 물리에 있다. 배관 설계, 열교환기 최적화, 구조 해석 — 이 문제를 이해하는 사람이 도구를 만들면 가장 효과적이다.
공장 냉각 시스템 최적화 → 역학 지식 + AI 코딩 = 직접 시뮬레이션 도구 제작
연구 속도 향상
프로토타이핑 및 반복 실험을 단축하여 연구 속도를 향상시킬 수 있다. 개발자를 기다리거나 도구의 한계에 갇히지 않는다.
실험 데이터 100개 → AI에게 분석 스크립트 요청 → 짧은 시간 안에 인터랙티브 논문 Figure 완성
실제 기계공학 문제에 적용하면?
같은 문제를 기존 방식 vs 바이브코딩으로 비교
MATLAB 코드 수백 줄 작성, 디버깅에 일주일
“"Darcy-Weisbach 방정식으로 배관 압력 강하 계산기 만들어줘. 관 직경, 길이, 유속을 입력하면 되게."”
FEA 소프트웨어 라이선스 구매, 별도 학습 필요
“"외팔보에 집중 하중이 걸릴 때 처짐과 응력을 그래프로 보여주는 웹 도구를 만들어줘."”
수식 정리 → 엑셀 반복 계산 → 수동 그래프 작성
“"핀 효율을 길이, 두께, 열전도율에 따라 계산하고 3D 서피스 플롯으로 보여줘."”
기계공학도가 만들 수 있는 것들
바이브코딩으로 직접 제작 가능한 도구들
공학 계산 자동화
열전달, 유체역학 계산기를 대화만으로 구현. 반복 계산을 웹 도구로 전환합니다.
데이터 시각화
실험 데이터와 CFD/FEA 결과를 인터랙티브 차트와 웹 대시보드로 표현합니다.
IoT & 제어 대시보드
센서 데이터를 실시간 모니터링하고, 장비 제어 인터페이스를 웹으로 직접 구축합니다.
프로토타입 제작
아이디어를 빠르게 프로토타입으로 구현. 논문의 데모, 교육 도구 등을 신속하게 만듭니다.
바이브코딩의 한계
- ⚠AI가 생성한 코드의 물리적 정확성 검증 필요 — 도메인 전문가의 리뷰가 필수입니다.
- ⚠복잡한 시스템은 여전히 전통적 접근이 유리 — 대규모 아키텍처 설계에는 한계가 있습니다.
- ⚠디버깅 시 코드 이해 능력 필요 — AI가 해결하지 못하는 버그를 직접 분석해야 할 수 있습니다.
- ⚠Karpathy 본인도 "throwaway weekend projects"에 적합하다고 언급 — 프로덕션 수준의 코드에는 추가 검증이 필요합니다.
코딩을 배우는 것이 아니라,
여러분의 공학 지식에 날개를 다는 것입니다.
Navier-Stokes 방정식을 이해하는 사람이 AI에게 “유동 시뮬레이션 해줘”라고 말하는 것과,
프로그래머가 같은 말을 하는 것은 완전히 다른 결과를 만든다.
AI의 현재를 숫자로 보다: AI의 현재
Stanford Human-Centered AI Institute가 매년 발표하는 AI Index Report의 핵심 데이터
AI 특허 출원 수 — 10배 증가
10년간 AI 특허 10배 증가
AI 연구 논문 수 — 연도별 증가
AI가 인간을 앞선 분야 — 타임라인
2015 — 이미지 인식
AI가 인간 수준의 이미지 분류 달성 (ImageNet)
2019 — 자연어 이해
GPT-2 등장, AI가 인간 수준의 글쓰기 가능
2023 — 코드 생성
GPT-4, Claude가 프로그래머 수준의 코드 작성
2024 — 수학 올림피아드
AI가 국제수학올림피아드 은메달 수준 달성 (28/42점)
산업별 AI 투자액 (2024)
이 강의에서 배우는 바이브코딩은 이 거대한 변화의 가장 실용적인 출발점입니다.
데이터 출처: Stanford HAI AI Index Report, GitHub Octoverse, Statista 등 공개 자료를 종합 정리. 정확한 수치는 원문 참조.
다음 시간에 계속됩니다
Lecture 2: AI Agent & 환경 설정
Claude, ChatGPT 등 다양한 AI 도구를 비교하고, Claude Code를 직접 설치하여 첫 바이브코딩을 체험합니다.
Lecture 2로 이동