[00:00]
오늘 여러분께 정말 멋진 것을 보여드리려고 합니다.
[00:02]
우리는 Claude code를 사용하여
[00:05]
실제 Figma 플러그인을 업데이트할 예정입니다.
[00:09]
제가 이미 경험해봤기 때문에
[00:12]
어떻게 진행되는지
[00:13]
더 잘 이해하고 있습니다.
[00:16]
보통은 Cursor를 사용하지만,
[00:19]
이번에는 그것 없이 진행하겠습니다.
[00:21]
이것이 그 결과물인데요,
[00:24]
제가 혼자 개발 중인 실제 Figma 플러그인입니다.
[00:27]
이 플러그인은 기본적으로
[00:29]
모든 Figma 컴포넌트를 코드로 변환할 수 있게 해줍니다.
[00:33]
여기서 흥미로운 점은
[00:35]
서로 다른 AI 모델들을
[00:36]
비교할 수 있다는 것입니다.
[00:40]
예를 들어,
[00:41]
히스토리로 가보면
[00:44]
이 컴포넌트를 볼 수 있는데요,
[00:46]
자세히 보시면
[00:49]
이렇게 생겼고, 이것을 코드로 변환하고 싶습니다.
[00:53]
다양한 언어로
[00:55]
변환할 수 있는데요,
[00:58]
예를 들어 HTML과 Tailwind,
[01:02]
또는 React, Vue, Svelte 등
[01:05]
여러 프레임워크를 지원합니다.
[01:08]
프리뷰 기능이 작동하는 것은
[01:09]
우리가 관심 있는 부분인데요,
[01:11]
코드도 있고
[01:13]
프리뷰도 있어서
[01:14]
다른 모델들을 비교할 수 있습니다.
[01:17]
이것은 Claude 3.7로 생성된 것인데요,
[01:20]
보시다시피 모든 것이 적응형이고
[01:23]
거의 완벽하다고 할 수 있습니다.
[01:25]
사실상 완벽하다고 말씀드리고 싶은데
[01:28]
그 이유는, 유일한 문제는 이미지뿐이고
[01:31]
당연히 이미지는
[01:33]
코드로 변환될 수 없습니다.
[01:35]
이건 일반적인 문제입니다.
[01:37]
자, 이제 다른 모델과 비교해보겠습니다.
[01:40]
예를 들어 여기
[01:41]
세부사항이 있고
[01:45]
3.5를 보시면 차이가 확 드러나는데요,
[01:48]
이게 3.5버전이고, 더 안 좋아질 겁니다.
[01:51]
보여드리겠습니다.
[01:53]
4.0을
[01:54]
이게 4.0인데요, 색상도 정확하지 않고
[01:58]
아웃라인도 없고
[02:01]
보시다시피
[02:03]
이미지 중앙 정렬도
[02:06]
완전히 잘못되었습니다.
[02:08]
차이가 보이시죠?
[02:11]
다른 것도 한번 시도해보겠습니다.
[02:15]
이것을 보여드리면서 다시
[02:19]
GPT 4.0부터 시작해보겠습니다.
[02:24]
보시면 이미지의 크기와
[02:28]
아웃라인이 보이지 않네요.
[02:31]
이제 3.5를
[02:33]
볼까요? 여기는 조금 더 낫습니다.
[02:37]
아이콘을 사용했고, 80%가 파란색으로 표시되었으며
[02:40]
모양도 더 좋아졌습니다.
[02:45]
아웃라인이 완벽하진 않지만
[02:47]
아웃라인은 있죠.
[02:49]
4.0에서는 아예 없었던 것과 달리
[02:51]
이제
[02:53]
3.7을 보시면
[02:55]
거의 완벽합니다. 19가 정확하지 않지만
[03:00]
보시다시피
[03:04]
이전보다 확실히 더 좋습니다.
[03:06]
이것이 바로 흥미로운 점이죠.
[03:09]
오늘 우리가 만들 것이 바로 이런 기능들입니다.
[03:13]
많은 분들이 저에게 물어보시는데요,
[03:15]
3.7을 어떻게 사용하는지
[03:19]
Cloud 3.7을 말이죠.
[03:22]
아직 플러그인을 업데이트하지 않아서
[03:24]
오늘 아침에 올렸고
[03:25]
업데이트를 시도해봤는데요,
[03:28]
왜 이렇게 하지 않을까 생각했습니다.
[03:32]
클라우드 코드를 사용해 보도록 하겠습니다.
[03:35]
보통은 커서를 사용하는데
[03:38]
두 가지 기능을 추가했습니다. 하나는
[03:41]
가장 간단한 기능으로
[03:43]
새로운 모델을 추가하는 것입니다.
[03:46]
코드 몇 줄만으로 매우 쉽게 구현했죠.
[03:48]
그리고 다른 하나는 좀 더 어려웠던 기능인데
[03:51]
여러 번의 프롬프트가 필요했지만
[03:53]
성공적으로 구현했고
[03:55]
사실 기술적으로는
[03:57]
구현 방법을 잘 몰랐지만 로직은 알고 있었습니다.
[04:00]
예를 들어 히스토리 기능을 원했는데
[04:02]
지금 보이는 이 기능은 아직 라이브가 아니고
[04:05]
방금 클라우드 코드로 만든
[04:07]
새로운 기능입니다. 이게 복잡한 이유는
[04:10]
일종의 저장소가 필요하기 때문입니다.
[04:13]
스토리지가 있어야 하죠.
[04:16]
생성된 코드의 히스토리를
[04:18]
저장해야 하니까요.
[04:20]
이건 쉽지 않은 작업입니다.
[04:22]
클릭했을 때 이전에 생성된
[04:26]
모든 코드를 다시 실행하고
[04:30]
미리보기도 보여줘야 합니다.
[04:33]
게다가 여러 가지 기능들이 있는데
[04:36]
예를 들면
[04:38]
삭제하고 전체 히스토리를 지우고
[04:41]
스크롤하는 등의 기능이 필요합니다.
[04:45]
UI는 보통 꽤 간단한데
[04:48]
기존 UI가 있다면 더욱 쉽습니다.
[04:51]
예를 들어 설정 UI가 있으니
[04:54]
히스토리도 같은 스타일로 만들 수 있죠.
[04:56]
히스토리에도 동일한 UI를 적용할 수 있습니다.
[05:00]
물론 이렇게 말할 수도 있죠.
[05:01]
이것과 같은 UI를 원한다거나
[05:04]
프롬프트처럼 만들어달라고요. 맥락이 있으면
[05:07]
UI는 꽤 쉽게 만들 수 있습니다.
[05:09]
하지만 기능 자체는 좀 다릅니다.
[05:12]
구체적으로 명시해야 하고
[05:14]
필요한 것을 정확히 알려주고
[05:16]
맥락을 제공하고
[05:18]
이전 작업과 비교할 수 있게 해야 합니다.
[05:22]
한번 시도해 보죠.
[05:24]
보통은 커서를 열고 프로젝트를 엽니다.
[05:28]
지금까지 변경한 내용이 있는데
[05:30]
처음부터 다시 해보겠습니다.
[05:32]
걱정 마세요, 저장해 뒀으니
[05:34]
나중에 돌아올 수 있습니다.
[05:37]
변경사항 이전으로 돌아가보죠.
[05:40]
커서를 사용하는 이유는
[05:44]
커서가 제공하는
[05:46]
기능이 더 많기 때문입니다.
[05:47]
터미널에서 클라우드 코드를 사용하면
[05:50]
AI 코딩 기능은 잘 동작하지만
[05:53]
코드 변경도 가능하긴 하지만
[05:56]
문제는 많은 기능들이 빠져있다는 거죠.
[05:59]
히스토리나 커밋 같은
[06:02]
많은 기능이 없습니다.
[06:04]
예를 들어 히스토리, 커밋
[06:07]
실행 취소나 변경사항 검토 같은 것들이요.
[06:10]
개발을 훨씬 편하게 만드는
[06:14]
이런 작은 기능들이
[06:15]
개발 생활을 정말 편하게 만드는데
[06:18]
많이 부족합니다. 그래서
[06:20]
실행 취소 같은 기능을
[06:22]
여기서 구현하고 있는 거죠.
[06:25]
이제 처음부터 시작해보겠습니다.
[06:27]
변경사항 이전으로 돌아가서요.
[06:30]
보시다시피 Claude 3.7도 없고
[06:32]
히스토리 기능도 없습니다.
[06:35]
이건 변경사항 이전 버전이에요.
[06:38]
이제 새로운
[06:40]
터미널을 열고
[06:42]
시작해보도록 하겠습니다.
[06:45]
맥락을 설명하자면, 지금 우리는
[06:48]
코드 에디터인 커서를 사용하고 있습니다.
[06:51]
제가 지금까지 보여드린 것처럼
[06:54]
보통 이렇게 코드를 편집하고
[06:56]
프로젝트를 만드는데, 우리는 Claude도 사용하고 있습니다
[07:00]
Claude는 AI 모델인데, 제 경험상
[07:03]
코딩에 있어서 단연 최고입니다
[07:05]
특히 우리는 새로운 Claude Code를 사용하고 있죠
[07:09]
만약 이런 것들이 처음이시라면
[07:15]
정말 강력히 추천드리는데
[07:18]
Claude 웹사이트에 가보시라는 겁니다
[07:21]
거기서 프롬프트만으로
[07:24]
무엇이든 만들 수 있습니다
[07:28]
아무것도 설치할 필요가 없죠
[07:31]
예를 들어, 저는
[07:32]
이것을 만들 수 있었는데
[07:36]
여기 이거요. 미리보기가
[07:38]
작동하지 않는 것 같지만
[07:40]
여기 있네요. 몇 개의
[07:43]
프롬프트만으로 스크린샷을
[07:45]
업로드하고 약간의
[07:48]
애니메이션도 만들 수 있었어요. 꽤 멋지죠
[07:52]
네, 이런 것들이 가능하고
[07:57]
이것이 오늘 우리가 흥분되는 이유입니다
[08:00]
초보자든 전문가든 상관없이
[08:04]
이런 도구들을 사용할 줄 아는지 여부와 관계없이
[08:07]
누구나 웹사이트에 접속해서
[08:09]
이런 프로젝트들을 만들 수 있습니다
[08:12]
예를 들어, 저는
[08:15]
X에 직접 포스팅할 수 있는
[08:16]
UI를 만들고 싶었는데
[08:20]
실험 목적으로 괜찮을 것 같았죠
[08:23]
하지만 오늘 우리가 하는 것은
[08:26]
실제 프로젝트이고
[08:28]
앞서 말씀드린 대로 Claude Code를 사용할 겁니다
[08:31]
하지만 먼저
[08:33]
가격에 대해 이야기해 봅시다
[08:35]
일부 사람들이 Claude 3.7이
[08:37]
약간 비싸다고 불평하는데
[08:40]
제 경험상 첫째로
[08:41]
이전과 같은 가격이고
[08:43]
가격 정책을 보시면
[08:45]
이전과 동일한 가격임을 알 수 있습니다
[08:48]
3.7은
[08:50]
제가 이전에 사용하던 3.5와
[08:53]
동일한 가격입니다
[08:56]
두 번째로, Cursor를 사용한다면
[09:00]
가격은 크게 중요하지 않습니다
[09:03]
Cursor는 한 달에 20달러의
[09:05]
구독료로 사용량에 따라 다르지만
[09:08]
빠른 응답은 500회
[09:10]
느린 응답은 무제한으로 사용할 수 있습니다
[09:12]
01 mini나
[09:15]
01을 사용하지 않는 한 문제없습니다
[09:18]
하지만 Claude의 경우는 상관없죠
[09:22]
가격이 걱정되신다면
[09:24]
Cursor를 사용하시면 됩니다
[09:27]
하나의 가격으로
[09:29]
모든 것이 포함되어 있고
[09:32]
무제한으로 사용할 수 있습니다
[09:34]
물론 느린 응답의 경우죠
[09:36]
하지만 빠른 응답 500회는
[09:38]
대부분의 사용자에게 충분합니다
[09:42]
이제 가격 얘기는 접어두고
[09:45]
Claude Code를 설치해야 하는데
[09:48]
방법을 알고 싶다면
[09:49]
문서를 통해 확인하실 수 있습니다
[09:53]
여기에 설명이 나와있고
[09:55]
Node에 대해 조금 알아야 합니다
[09:58]
먼저 Node를 설치해야 하는데
[10:01]
Node.js 웹사이트에 가서
[10:03]
여러분의 플랫폼에 맞는 버전을
[10:05]
다운로드하셔야 하고
[10:07]
터미널이 무엇인지도
[10:10]
알아야 합니다
[10:11]
이 모든 것을 준비하신 후에
[10:16]
이런 모양의 터미널을 열고
[10:18]
작업을 시작하시면 됩니다
[10:21]
이 코드를 복사해서
[10:24]
터미널에 붙여넣고
[10:25]
실행하시면 됩니다.
[10:28]
그러면 여러 프로세스가 실행되고
[10:30]
모든 과정이 완료되면
[10:34]
'Cloud' 명령어를 사용할 수 있게 됩니다.
[10:37]
이 명령어를 실행할 수 있게 되면
[10:40]
프로젝트로 이동하세요.
[10:42]
제 경우에는 재미있게도
[10:45]
프로젝트 이름을 'Figma Plugin Dream Code'라고 지었습니다.
[10:48]
제가 있는 프로젝트 디렉토리에서
[10:51]
디렉토리 이동에 대해
[10:53]
알아야 할 것은 CD 명령어와
[10:56]
디렉토리 이름을 입력하는 것입니다.
[10:58]
제 경우에는 Projects 폴더 안에
[11:00]
dream code가 있고,
[11:02]
탭키를 누르면 자동완성이 됩니다.
[11:06]
시스템이 필터링해서
[11:08]
'dream'으로 시작하는 것들을 보여줍니다.
[11:11]
모든 것을 올바르게 입력하면
[11:13]
디렉토리로 들어가게 되고
[11:15]
이제 'cloud' 명령어를 입력하면
[11:18]
시작할 수 있습니다.
[11:21]
'manual'을 입력하고
[11:24]
엔터를 누르면 됩니다.
[11:27]
이 시점에서 프로젝트 실행이 필요하다면
[11:32]
'run' 명령어를 입력하면
[11:34]
코드를 분석해서
[11:37]
서버 시작이나
[11:39]
로컬 환경 설정 등이 필요한지 확인합니다.
[11:42]
package.json 파일을 검사할 텐데,
[11:47]
코딩을 처음 하시는 분들을 위해 설명하자면
[11:50]
이 파일은
[11:51]
웹사이트의 모든 설정과
[11:54]
필요한 라이브러리들이
[11:57]
설치되어야 하는 정보가
[11:59]
들어있는 파일입니다.
[12:02]
지금 이걸 실행 중인데,
[12:05]
약간 느립니다.
[12:06]
Cursor가 제 경험상
[12:10]
더 빠른 것 같네요.
[12:12]
보시다시피 39초가 걸렸고
[12:15]
계속 진행 상황을 설명해드리겠습니다.
[12:18]
지금까지는
[12:21]
코드베이스를 읽고
[12:24]
npm install과 빌드 등을 실행했습니다.
[12:28]
이제 첫 번째로
[12:30]
아주 간단한 작업을 해볼 건데요.
[12:34]
여기 Figma 플러그인이 있습니다.
[12:37]
Figma 플러그인 경험에 대해
[12:40]
설명해드리자면, 보통 Figma 로고를 클릭하고
[12:44]
plugins로 가서
[12:46]
Development를 선택한 다음
[12:49]
Manage를 클릭합니다.
[12:51]
플러그인이 없다면
[12:54]
New Plugin을 선택하고
[12:56]
이미 있다면
[12:58]
Import Plugin from Manifest를
[13:01]
선택해서 매니페스트 파일을
[13:03]
선택하면 됩니다. 아니면
[13:06]
새 플러그인을 만들어서
[13:08]
템플릿을 생성할 수도 있죠.
[13:10]
지금까지 제가 한 것이 이거고
[13:14]
플러그인이 있고 매니페스트를 추가했다면
[13:17]
이렇게 보일 겁니다.
[13:19]
그리고 나서
[13:21]
Finder에서 확인해보면
[13:26]
플러그인이
[13:27]
맞게 설정되어 있는지 볼 수 있죠.
[13:30]
Dream Code라고 되어있고, 실행하면
[13:34]
현재 버전이 실행됩니다.
[13:36]
이건 단순히 해당 디렉토리의
[13:39]
코드이고, 여기가 현재 위치입니다.
[13:44]
이제 할 작업을 설명해드리겠습니다.
[13:46]
우리는 이제 Claude 3.7 지원을 추가할 것입니다.
[13:50]
이때 API의 정확한 이름을 아는 것이 도움이 됩니다.
[13:57]
여기서 API 문서로 이동하여
[14:00]
모델 섹션으로 가보겠습니다.
[14:04]
여기 모델의 이름이 있네요.
[14:06]
이 모델명을 복사하겠습니다.
[14:08]
더 짧은 버전이 있을 수도 있지만
[14:12]
일단
[14:13]
시간을 절약하기 위해
[14:15]
이 버전을 사용하겠습니다.
[14:17]
이게 현재 작동하는 버전이니까요.
[14:19]
Cloud 모델에 이것을 붙여넣고
[14:22]
엔터를 누르겠습니다.
[14:26]
이제 Cursor에서와 같은 경험을 하게 될 겁니다.
[14:28]
컴포저와 에이전트로
[14:31]
코드베이스를 읽고
[14:33]
ui.html로 이동해야 한다는 것을 알고 있죠.
[14:36]
이게 정말 멋진 점은
[14:39]
새로운 프로젝트에 참여하거나
[14:42]
6개월 또는 1년 전에 작업했던 프로젝트를
[14:44]
다시 보게 될 때
[14:47]
어떻게 작동하는지
[14:49]
파일이 어디 있는지 기억나지 않을 때
[14:50]
UI가 매우 유용하다는 겁니다.
[14:52]
이제 변경사항을 확인하고
[14:55]
변경할 것인지 물어보고 있습니다.
[14:58]
이것은 기본적으로
[15:00]
Claude의 리뷰와 비슷합니다.
[15:03]
이제 승인하고
[15:06]
변경사항을 적용하겠습니다.
[15:07]
속도는 꽤 비슷한 것 같네요.
[15:12]
흥미로운 점은 이것이
[15:15]
확실히 에이전트에 가깝다는 것입니다.
[15:17]
일반적인 에이전트라면
[15:19]
한 번의 변경을 하고 다음 프롬프트를 기다리고
[15:21]
또 변경하고 기다리는 식이지만
[15:23]
이 경우에는
[15:25]
코드베이스를 읽고
[15:27]
다른 필요한 변경사항도 알려줍니다.
[15:30]
예를 들어 3.5라고 된 텍스트도
[15:32]
3.7로 업데이트해야 한다고 알려주죠.
[15:36]
마치 실제 개발자처럼 행동하는 거예요.
[15:39]
단순히 한 프롬프트에서 멈추지 않고
[15:43]
일반적인 개발자라면 할 법한
[15:46]
미래의 변경사항도 찾아내고
[15:49]
관련된 모든 부분을 확인합니다.
[15:52]
텍스트도 변경하고
[15:54]
모든 게 잘 진행되고 있네요.
[15:56]
변경사항을 적용하고
[15:59]
빌드 실행도 추천하고 있습니다.
[16:03]
이는 플러그인을 배포하려면
[16:05]
필요한 작업이지만
[16:07]
Figma 플러그인에서 변경사항을 보여주는 데는
[16:11]
꼭 필요하지 않습니다.
[16:13]
그래서 아니요를 선택하겠습니다.
[16:17]
모든 게 잘 되었다면
[16:19]
이제 여기에 3.7이 보일 겁니다.
[16:23]
짜잔! 잘 작동하네요.
[16:25]
정말 간단하죠? 이제
[16:28]
요소를 선택하고 코드를 생성할 수 있습니다.
[16:32]
플러그인이 이렇게 작동하고
[16:34]
코드를 생성할 겁니다.
[16:36]
아직 히스토리 기능은 없지만
[16:40]
곧 추가할 예정입니다.
[16:42]
지금은 코드를 생성 중이고
[16:43]
시간이 좀 걸리네요.
[16:46]
작동하지 않는 것 같아서
[16:50]
3.5로 다시 시도해보겠습니다.
[16:52]
확인을 위해서요.
[16:55]
코드를 검토해보니
[16:59]
모델명이 잘못된 것 같습니다.
[17:02]
한번 확인해보겠습니다.
[17:05]
정확히 무엇이 잘못됐는지 살펴보죠.
[17:10]
음...
[17:12]
알겠습니다. 3.5 버전은 잘 작동하네요.
[17:17]
이제 확인해보겠습니다.
[17:20]
여기서부터가 좀 까다로워지는데,
[17:24]
Cursor를 사용하지 않으면
[17:26]
코드로 돌아가서
[17:28]
코드를 읽을 수가 없죠.
[17:30]
그래서 Cursor로 가보겠습니다.
[17:33]
Cursor에서는 변경사항이 적용되고 있고
[17:36]
이제 비교가 가능해질 겁니다.
[17:38]
그런데...
[17:42]
37이 왜 작동하지 않는지 모르겠네요.
[17:44]
작동해야 하는데... 이름도 맞고 다 맞는데...
[17:49]
네, 앞뒤로 전환할 수 있지만
[17:54]
여기서는 코드베이스를 볼 수 있고
[17:56]
코드 파일이 바로 여기 있습니다.
[17:59]
비교도 할 수 있고 변경된 사항도 볼 수 있죠.
[18:02]
무엇이 변경되었는지
[18:04]
수정사항들을 모두 확인할 수 있습니다.
[18:08]
자, 다시 한번 시도해보겠습니다.
[18:11]
아마 뭔가 문제가 있었나 봅니다.
[18:14]
원래는 작동해야 하는데
[18:17]
작동하지 않는다면
[18:19]
이렇게 오래 기다리지 않았을 텐데요.
[18:21]
왜 그런지 모르겠지만...
[18:23]
피그마 플러그인에서는
[18:26]
플러그인으로 가서 개발 메뉴에서
[18:29]
콘솔 보기/숨기기로 갈 수 있습니다.
[18:33]
문제가 생기면 여기서
[18:37]
에러 메시지와
[18:38]
그런 것들을 볼 수 있죠.
[18:41]
이번 경우에는
[18:43]
왜 그런지 모르겠네요.
[18:45]
작동하지 않는데...
[18:52]
음... 아마도
[18:54]
빌드와 관련이 있을 수도 있겠네요.
[18:56]
이전에는 잘 작동했으니 계속 진행하겠습니다.
[18:59]
좋습니다, 작동하게 만들었네요.
[19:02]
정확히 왜 그랬는지는 모르겠지만
[19:04]
도움이 될 만한 것은 결제로 가서
[19:06]
크레딧을 추가해야 할 수도 있습니다.
[19:10]
크레딧을 추가해야 하고
[19:13]
Claude API를 사용하고 있다면
[19:17]
특히 앱을 만들 때는
[19:20]
API를 사용할 때
[19:22]
크레딧을 추가해야 합니다.
[19:25]
이 경우에는 이게 문제를 해결할 수 있고
[19:29]
가끔 좀 까다로울 수 있지만
[19:32]
이번에는 이전 코드와
[19:35]
비교할 수 있었고, 이전 코드에서
[19:38]
보시다시피
[19:40]
완전히 동일한 코드네요.
[19:42]
네, 그냥 저절로 해결됐네요.
[19:46]
코딩하다 보면 이런 일이 있죠.
[19:49]
프로그래밍의 본질이라고 할 수 있죠.
[19:52]
완벽한 건 없지만, 작동하게 만들었습니다.
[19:55]
이제 더 복잡한
[19:56]
작업으로 넘어가보죠.
[19:59]
이번에는 터미널로 다시 가볼게요.
[20:03]
여기서는 빌드를 실행할 필요가 없고
[20:08]
이렇게 말해볼게요.
[20:11]
'좋아요, 이게 새로운 거예요.'
[20:15]
이렇게...
[20:16]
새로운 것인데, 이렇게 물어볼게요.
[20:21]
'코드 세션의 히스토리를 추가해주세요.'
[20:23]
생성된 코드 세션을 위해서요.
[20:25]
이걸 해볼 건데, 확실히 더 복잡합니다.
[20:28]
많은 맥락이 필요하거든요.
[20:29]
어떤 코드인지 알아야 하고
[20:32]
무슨 맥락인지 이해해야 하죠.
[20:34]
어떤 코드 세션이고, 어떤 히스토리며
[20:36]
어떤 UI를 원하는지 등
[20:38]
이 모든 것들이 필요해요.
[20:42]
만약 이걸 사람한테 말하면
[20:43]
'무슨 말씀이세요?'
[20:45]
라고 할 거예요. 많은 맥락이 필요하니까요.
[20:47]
맥락을 이해하는 데에는 많은 것이 필요하지만
[20:49]
AI의 마법은 코드베이스를 이해한다는 거죠
[20:52]
코드베이스를 읽고 이해하며
[20:54]
그것을 빠르게 스캔할 수 있어서
[20:56]
정말 엄청나게 빠른 속도로 처리합니다
[20:59]
이런 면에서는 확실히 인간의 능력을 뛰어넘죠
[21:03]
물론 40초 정도 걸리긴 하지만
[21:05]
인간이라면 이것보다 훨씬 더 오래 걸릴 거예요
[21:07]
그래서 이건 좀 위안이 되는 부분이에요
[21:11]
어떤 것은 인간이 더 잘하고
[21:13]
어떤 것은 AI가 더 잘한다는 사실이
[21:15]
그래서 이런 면에서 각자의 장점이 있죠
[21:19]
기다리는 동안에
[21:22]
우리가 원하는 UI를 한번 살펴보겠습니다
[21:26]
이 UI를 사용하려는 이유는
[21:29]
이 UI를 사용하면 프리뷰가
[21:31]
계속 아래로 밀려내려가기 때문이에요
[21:34]
그러면 계속 위아래로 스크롤해야 하니까
[21:37]
확실히 좋지 않죠
[21:40]
보여드리면
[21:42]
제 경험상 이 UI가 먼저 나올 텐데
[21:44]
이게 정말 긴 시간이 걸리네요
[21:46]
정말 오래 걸리고 있어요
[21:48]
드디어 뭔가 진전이 있는 것 같네요
[21:51]
이제
[21:53]
그리고
[21:55]
우리가 원하는 UI 형태를
[21:59]
이런 식으로 만들고 싶다고 알려줘야 해요
[22:01]
음
[22:02]
우선 타입스크립트를 생성하고 있는데
[22:06]
이제
[22:07]
코딩을 잘 아시는 분들은
[22:09]
코딩 실력이 늘수록
[22:11]
이 코드가 무엇인지 파악하는 데
[22:15]
더 능숙해지실 거예요
[22:18]
빠르게 코드를 이해할 수 있게 되죠
[22:20]
이건 타입스크립트 관련 코드인데
[22:22]
타입 안정성을 보장하기 위한 것이에요
[22:24]
히스토리를 만들기 위해서는
[22:26]
ID와 타임스탬프, 사용된 모델 등이 필요하고
[22:30]
히스토리 생성을 위해
[22:31]
ID, 타임스탬프, 사용된 모델 종류 등이 필요해요
[22:35]
그리고 보니까
[22:36]
솔직히 이전 세션과 비교해보면 일관성이 있어요
[22:39]
제가 이전에 해봤을 때
[22:41]
클라이언트 스토리지를 사용하는 것 같아서
[22:44]
승인하도록 하겠습니다
[22:46]
네, 계속 진행하면서
[22:50]
계속 진행될 텐데요
[22:53]
여러 가지 변경사항이 필요해서
[22:55]
제가 흥미롭게 발견한 점은
[22:57]
Cursor와는 다르게 작동한다는 거예요
[23:01]
Cursor는 한 번에 모든 것을 처리하는데
[23:04]
여기서는 하나씩 진행해야 해요
[23:06]
이것을 변경할지, 저것을 변경할지
[23:09]
하나하나 물어보면서요
[23:10]
이런 면에서는
[23:12]
Cursor가 확실히 더 유리하죠
[23:14]
하지만 터미널도 나름대로 장점이 있어요
[23:19]
매우 유연하고 어떤 플랫폼에서도 사용할 수 있죠
[23:24]
수십 년 동안 존재해왔어요
[23:27]
Cursor보다 훨씬 더 오래됐죠
[23:30]
Cursor는 1년 정도밖에 안됐고
[23:32]
아마 2년 정도 됐을까요
[23:34]
아마도요
[23:36]
결국 모든 변경사항을 만들긴 했지만
[23:40]
계획대로 정확히 진행되지는 않았다고 인정해야겠어요
[23:43]
약간의 변경사항이 있었고
[23:46]
몇 가지 오류도 발생했어요
[23:48]
그래서 되돌아가서 다시 시도하는 대신
[23:52]
영상이 너무 길어지는 것을 피하기 위해
[23:55]
그리고 시간을 더 들이지 않기 위해
[23:59]
이 영상이 너무 길어지지 않도록
[24:01]
이전 세션으로 돌아가보겠습니다
[24:04]
제가 겪은 경험을 살펴보면서
[24:08]
설명해드리도록 하겠습니다
[24:10]
이것이 어떻게 진행되었는지 설명해드리겠습니다
[24:13]
히스토리를 생성하는 방식이
[24:15]
다르게 되었고
[24:18]
약간의 오류가 있었는데
[24:20]
설명하기가 좀 어려웠습니다
[24:22]
그래서 우리는 다시
[24:25]
최종
[24:26]
결과로 돌아가서
[24:29]
정확히 무슨 일이 있었는지 설명하겠습니다
[24:32]
분명히 우리는 히스토리 기능이 있고
[24:35]
제가 했던 것과 같은 프롬프트가 있습니다
[24:40]
'코드 세션 히스토리를 추가할 수 있나요?'라고 했고
[24:42]
모든 것을 생성했습니다
[24:44]
정말 잘 작동했지만, 제 경험상
[24:47]
스토리지라는 것을 사용했는데
[24:50]
당시에는 작동하지 않았습니다
[24:53]
그래서 어느 시점에 제가
[24:57]
콘솔이 스캔하기가 더 어렵다고
[25:00]
생각했던 것 같습니다
[25:02]
어떤 프롬프트를 요청했는지 보면
[25:05]
다음 프롬프트로 넘어가겠습니다
[25:10]
변경사항의 마지막 부분에서
[25:12]
변경된 내용을 보면
[25:14]
이것이 바로 그 세션입니다
[25:17]
이전에는 잘 작동했던
[25:19]
세션이어야 했는데
[25:21]
네, AI 코드의 특성상
[25:24]
매번 정확히 같은 결과를
[25:27]
보여주지는 않습니다
[25:30]
그래서 모든 것이
[25:32]
잘 진행되는 세션을 갖기가 어렵죠
[25:33]
그리고 만약 이 모든 과정을 거쳐야 한다면
[25:37]
때로는 한 시간이 걸릴 수 있고
[25:39]
약간 지루할 수 있습니다
[25:42]
하지만 이번에는
[25:44]
다음 단계로 넘어가보죠
[25:46]
마지막 세션에서는 잘 작동했습니다
[25:49]
그 세션에서는 히스토리라고 표시된 UI가 있었고
[25:54]
이런 카드들이 보였습니다
[25:57]
하지만 제가 경험했을 때는 비어있었고
[26:00]
코드를 변환할 때마다 업데이트되지 않았다는 것을
[26:03]
나중에 알게 되었습니다
[26:07]
그것이 이유일 수 있겠네요
[26:09]
어쨌든 저는 물었습니다
[26:11]
히스토리가 비어있다고요
[26:14]
그리고 결국에는
[26:17]
이전에 언급했던 것처럼 콘솔로 갔습니다
[26:21]
개발할 때 콘솔이
[26:24]
정말 유용하거든요
[26:27]
AI에 컨텍스트를 제공하기 위해
[26:32]
콘솔로 가서
[26:33]
무언가를 탭하거나 클릭할 때
[26:36]
코드를 생성하면
[26:38]
콘솔에서 히스토리와
[26:41]
관련된 것을
[26:42]
찾을 수 있을 것입니다
[26:45]
이번 경우에는
[26:47]
히스토리 키워드가 있는
[26:49]
무언가를 찾을 수 있었고
[26:53]
코드 변환을 탭했을 때
[26:57]
이 오류를 모두 복사해서
[27:00]
Claude Code에 붙여넣었더니
[27:04]
수정할 수 있었습니다
[27:08]
여기서 보시면 콘솔 오류에
[27:11]
로컬 스토리지와 프리뷰 업데이트에
[27:14]
두 가지 주요 문제가 있었는데
[27:17]
나중에 수정했습니다
[27:20]
프리뷰 업데이트를 제거했는데
[27:22]
코드를 생성할 때마다 업데이트되고
[27:25]
프리뷰를 보여주는 데 유용했죠
[27:28]
빈 프리뷰 문제도
[27:30]
해결할 수 있었습니다
[27:33]
여기서 그걸 해결했고, 파일별로 살펴보면
[27:37]
물론 시간이 좀 걸리죠
[27:39]
시간이 좀 걸리는 게
[27:41]
이런 세션을 진행하기 어려운 이유이기도 해요
[27:43]
자, 다음으로 넘어가 보겠습니다
[27:47]
제가 새로고침할 때마다
[27:50]
히스토리를 새로고침해야 하는 것 같은데
[27:53]
새로운 코드를 생성할 때
[27:56]
코드를 생성할 때
[27:57]
히스토리가 자동으로 새로고침되게 할 수 있나요?
[28:00]
이게 제가 원하던 거였고, 결국 성공했습니다
[28:03]
이제 끝났네요. 지금까지
[28:07]
4번이나 5번 정도의 프롬프트를 사용했나요
[28:09]
네, 이렇게 Claude Code 사용법과
[28:12]
Cursor와의 차이점을 살펴봤는데요
[28:17]
장점이 많지는 않다고 솔직히 말씀드리겠습니다
[28:21]
저는 Cursor를 더 많이 사용할 것 같아요
[28:23]
하지만 Cursor는
[28:25]
UI를 배워야 하고 코드 관리 방법도 알아야 하죠
[28:29]
UI도 배워야 하고
[28:32]
이런 것들을 모두 알아야 합니다
[28:34]
코드 관리 방법이라든가
[28:36]
이런 것들 말이죠. 반면 이건
[28:38]
더 간단해요. 터미널로 가서
[28:41]
바로 채팅 세션을 시작할 수 있고
[28:44]
디렉토리로 가서
[28:46]
그게 전부예요. 하지만
[28:48]
둘은 다른 도구이고, 제가 항상 말하듯이
[28:52]
코드를 배울 때 가장 어려운 부분은
[28:55]
어떻게 시작해야 할지 아는 것이에요
[28:58]
어떤 소프트웨어를 설치하고
[29:01]
어떤 코드 에디터를 쓰고 UI가 어디 있는지
[29:04]
그래서 제가 Cursor 관련 강좌를 만들었죠
[29:07]
Xcode와 React 둘 다에 대해서요
[29:11]
처음부터 시작하는 방법을
[29:15]
배우고 싶으시다면
[29:18]
제 강좌를 확인해보세요
[29:20]
그리고 이게 Claude Code입니다
[29:23]
정말 흥미로운 점은
[29:25]
이런 것들을 할 수 있다는 거예요
[29:27]
그리고 희망컨대
[29:30]
여러분에게 도움이 될 거예요
[29:33]
최소한 Cursor와
[29:35]
Claude Code의 차이점을 알게 되었고
[29:37]
이제 자신만의 프로젝트를 만들 수 있을 거예요
[29:41]
그리고 완전 초보자라면
[29:44]
제가 말씀드렸듯이
[29:45]
Claude.ai로 가서
[29:48]
처음부터 뭔가를 만들어보세요
[29:52]
이게 시작하기 가장 쉬운 방법이에요
[29:54]
사실 저도 이렇게 시작했고
[29:56]
SVG 패턴 생성기도 이렇게 만들었어요
[30:00]
많은 분들이 정말 좋아하시더라고요
[30:02]
트위터에서도 많은 분들이
[30:04]
이야기하시고 즐겨주셨어요
[30:06]
실제로 꽤 많은 결제가 있었고
[30:09]
수익도 좀 냈어요
[30:11]
한 2,000달러 정도 벌었는데
[30:14]
AI로 만든 간단한 프로젝트치고는
[30:17]
꽤 괜찮은 결과라고 생각해요
[30:20]
꼭 한번 시도해보시기를 추천드리고
[30:22]
여러분이 사용하고 싶은 제품을 만들고
[30:24]
자신의 문제를 해결하는 제품을 만들어보세요
[30:27]
네, 시청해주셔서 감사합니다
[30:31]
이런 형식이 마음에 드셨길 바라고
[30:32]
궁금하신 점이나 피드백이 있으시다면 댓글 남겨주세요
[30:35]
다음 영상에서 뵙겠습니다
[30:37]
감사합니다