오늘은 국비지원 AI 과정의 초반 수업으로, 본격적인 Python 문법에 들어가기 전에 앞으로 사용할 개발 환경을 세팅하고 전체 과정의 방향을 이해하는 시간을 가졌다.
처음에는 수강생들이 각자의 전공, 경험, 입과 이유를 간단히 소개했다. 개발 경험이 있는 사람도 있었고, 완전히 처음 시작하는 사람도 있었다. 전공도 컴퓨터 관련 전공뿐 아니라 경영, 디자인, 음악, 사진, 기획, 마케팅 등 다양했다. 서로 다른 배경을 가진 사람들이 모였지만, 공통적으로 AI 시대에 필요한 역량을 배우고 싶다는 목표가 있었다.
우리가 배우는 AI는 무엇인가
수업에서 가장 먼저 정리된 부분은 이 과정의 방향성이었다.
AI를 배운다고 해서 모두가 GPT 같은 모델을 직접 만드는 것은 아니다. AI 모델을 직접 학습시키는 영역은 수학, 통계, 데이터, GPU 자원 등이 많이 필요하다. 이번 과정은 그보다는 이미 존재하는 AI 서비스와 LLM을 활용해서 실제 웹 애플리케이션을 만드는 방향에 가깝다.
즉, 우리가 배우는 것은 단순히 “AI”가 아니라 Python을 기반으로 백엔드, 프론트엔드, 에이전트, 멀티 에이전트, 인프라를 연결해 AI 서비스를 구현하는 과정이다.
AI 코딩 시대에도 기본기가 필요한 이유
강사님은 AI가 코드를 대신 작성해주는 시대가 되었지만, 그렇다고 개발자의 기본기가 필요 없어지는 것은 아니라고 설명했다.
AI에게 요구사항을 잘 말하면 코드를 빠르게 만들 수 있다. 하지만 회사 내부 시스템은 보안 문제 때문에 외부 AI 서비스에 코드를 그대로 보낼 수 없는 경우가 많다. 또한 포트폴리오를 AI의 도움으로 만들었다고 해도, 면접에서 코드 구조와 동작 방식을 설명하지 못하면 문제가 된다.
결국 중요한 것은 AI를 쓰지 않는 것이 아니라, AI가 만들어준 코드도 이해하고 수정할 수 있는 사람이 되는 것이다.
오늘 이 이야기를 들으면서 앞으로의 공부 방향을 조금 더 명확히 잡을 수 있었다. 단순히 결과물을 만드는 것이 아니라, 그 결과물이 어떻게 동작하는지 설명할 수 있어야 한다.
Python과 VS Code 설치
이후에는 개발 환경 세팅을 진행했다.
먼저 Python을 설치하고 PowerShell에서 버전을 확인했다.
python --version
py --version
또 현재 어떤 Python이 실행되는지도 확인했다.
where python
Python을 설치한 뒤에는 pip도 업그레이드했다. pip는 Python에 외부 패키지를 설치할 때 사용하는 도구다.
python -m pip install --upgrade pip
다음으로 VS Code를 설치했다. VS Code는 앞으로 코드를 작성하고 실행할 개발 도구다. Python 확장 프로그램, Pylance, Markdown 관련 확장, GitHub 관련 확장도 설치했다.
VS Code에 GitHub 계정으로 로그인하면서 Copilot 같은 AI 도우미를 사용할 수 있는 환경도 확인했다. 다만 AI 도구에 바로 “해줘”라고 맡기기보다는, 먼저 설명을 요청하고 내가 이해한 뒤 적용하는 방식이 안전하다는 점도 배웠다.
GitHub와 첫 프로젝트 업로드
오늘 가장 헷갈리면서도 중요했던 부분은 Git과 GitHub였다.
Git은 내 컴퓨터에서 코드 변경 이력을 관리하는 도구이고, GitHub는 그 코드를 온라인 저장소에 올려 관리하는 공간이다.
오늘은 Repository를 만들고, VS Code에서 파일을 수정한 뒤 commit과 push를 하는 흐름을 연습했다.
commit은 내 컴퓨터에 변경 내용을 기록하는 것이고, push는 그 변경 내용을 GitHub에 올리는 것이다.
commit = 내 컴퓨터에 변경 사항 기록
push = GitHub에 변경 사항 업로드
반대로 GitHub에 있는 변경 내용을 내 컴퓨터로 가져오는 것은 pull이다.
pull = GitHub의 변경 사항을 내 컴퓨터로 가져오기
처음에는 Repository 연결이 꼬이거나 이메일 인증, .git 폴더, 저장소 이름 문제 등으로 어려움이 있었다. 하지만 오히려 이런 문제를 겪으면서 GitHub가 단순한 업로드 도구가 아니라 협업과 이력 관리를 위한 도구라는 것을 조금씩 이해하게 되었다.
가상환경과 requirements.txt
Python 가상환경도 만들었다.
가상환경은 프로젝트마다 따로 사용하는 Python 실행 환경이다.
py -m venv .venv
가상환경을 사용하는 이유는 프로젝트마다 필요한 라이브러리와 버전이 다르기 때문이다. 하나의 Python 환경에 모든 패키지를 설치하면 나중에 충돌이 생길 수 있다.
가상환경을 만든 뒤에는 터미널에 (.venv) 표시가 나타나는지 확인했다. 이 표시가 보이면 현재 프로젝트의 가상환경이 활성화된 상태라는 뜻이다.
또 requirements.txt 파일도 확인했다. 이 파일은 프로젝트에 필요한 외부 패키지 목록을 정리해두는 파일이다.
pip install -r requirements.txt
이 명령어를 사용하면 requirements.txt에 적힌 패키지들을 현재 가상환경에 설치할 수 있다.
GitHub에 올릴 것과 올리지 말아야 할 것
오늘 수업에서 보안과 관련해서 특히 기억해야 할 부분도 있었다.
GitHub에는 코드와 README 같은 문서는 올릴 수 있지만, 모든 파일을 다 올리면 안 된다. 예를 들어 .venv는 내 컴퓨터에서 사용하는 가상환경 폴더이기 때문에 GitHub에 올릴 필요가 없다.
그래서 .gitignore 파일을 만들어 Git이 무시할 파일이나 폴더를 지정했다.
.venv/
앞으로 API key, token, password, .env 파일 같은 민감 정보도 절대 GitHub에 올리면 안 된다. 공개 저장소에 실수로 올린 정보는 보안 사고로 이어질 수 있기 때문에, 개발자는 무엇을 공유해도 되고 무엇을 공유하면 안 되는지 구분할 수 있어야 한다.
README.md와 Markdown
마지막으로 README.md 문서와 Markdown 문법도 다뤘다.
README.md는 프로젝트 설명서 역할을 한다. 프로젝트를 처음 보는 사람이 이 프로젝트가 무엇인지, 어떻게 실행하는지, 어떤 기술을 사용했는지 이해할 수 있도록 정리하는 문서다.
Markdown은 README를 작성할 때 사용하는 문법이다. #으로 제목을 만들고, **굵은 글씨**, 목록, 코드 블록, 표 등을 간단히 표현할 수 있다.
앞으로 포트폴리오를 만들 때 코드만 올리는 것이 아니라 README를 잘 작성하는 것도 중요하다는 생각이 들었다.
오늘 느낀 점
오늘은 본격적인 프로그래밍보다 환경 세팅에 가까운 수업이었다. 처음에는 설치하고 로그인하고 터미널 명령어를 입력하는 과정이 복잡하게 느껴졌다. 하지만 개발을 시작하기 전에 환경을 제대로 이해하는 것이 얼마나 중요한지 알게 되었다.
Python, VS Code, GitHub, 가상환경, Markdown은 각각 따로 떨어진 도구처럼 보였지만, 결국 하나의 프로젝트를 만들고 관리하기 위해 연결되는 요소들이었다.
AI가 코드를 만들어주는 시대라고 해도, 개발 환경을 이해하고 코드가 어떻게 실행되는지 설명할 수 있는 기본기는 여전히 중요하다. 앞으로 수업을 들으면서 AI를 잘 활용하되, 그 결과를 내 것으로 이해하는 방향으로 공부해야겠다고 느꼈다.
댓글