< 소개 >
하하~ (하이호 하이라는 뜻)
19기 풀스택 스터디를 듣고 있는 하이호라고 합니다.
종이에 눈이 달린 종이 클립
이번 사례글에서는
RAILS에 대해서, 제가 진행하는 프로젝트에 대해서 차근차근 이해하려고 노력한 것을 간략하게 작성합니다.
AI가 뭘 하는지도 모르고 제가 무슨 기술스택을 쓰는지도 모르는 현 상태!!의 심각성을 느끼고! 천천히 공부했다고, 앞으로도 공부할 거라고 보고하는 글에 불과합니다!!
제목의 의미는 그래서
RAILS에 대해 몰랐는데 이젠 좀더 알게 되었다~는 뜻입니다.
아이유 - 나만 몰랐던 이야기 노래 제목 패러디입니다.
** 왜 공부를 하죠? 도구는 쓰라고 있는 거 아닙니까?
저는 rails라는 프레임워크를 사용해서 사이트를 만들고 있으면서도
rails와 개발 개념에 대한 이해가 부족했습니다.
어느 정도냐면 GEM은 대충 도구고 RAILS는 대충 RUBY라는 언어로 만든 신박한 프레임워크고 여기에 온갖 기능들이 패키지로 들어있어서 알못이 사이트 만들 때 쓰면 풀스택 커버치기 좋다~ 정도만 알았어요.
적어도 OT 때 설명한 GEMS에 어떤 것들이 있는지 정도는 알았어야 했는데도요. 알아야 잘 쓰지 않습니까? 저는 GEMS을 써서 사이트를 만들고 있는지도 어쩐지도 모르겠더라구요.
그동안 제가 방향을 잘못 잡았음을 깨달았습니다.
그동안은 RAILS라는 도구를 가지고 빨리 사이트를 만들어야지~ 가 기조였는데, 그랬으면 안되었습니다.
제가 16기에 피그마MAKE라는 노코드툴로 사이트 만드는 스터디를 들었는데, 이때는 빨리 만들어서 배포하는 경험이 적절했거든요.
하지만 이번에는 개발적인 이해를 올리려고 들어간 거잖습니까? RAILS라는 프레임워크를 쓰고, 환경을 구축해서 하나하나 설계해보고 있는 거잖아요??
그러니까 하나를 만들더라도 차근차근 제대로 만들어야 했던 겁니다!!
어차피 AI 오류로 사이트 날라가거나, UI가 잘 정돈이 안된다 등의 이유로 사이트 하나를 완성도 못하고 있는지 어언 3주 째... 이번 스터디의 테마는 완성이 아니라 이해였음을... AI도 알려주고 있었다는 거... 공부하라고 판 깔아둔 스터 디인데 몰라뵌 거죵.
스터디원분들의 사례글 발표 들으면서 혼자 이해 못하는 불상사는 더는 STOP입니다.
저는 이쪽으로 잘 아는 사람이 되고 싶어요!!
그니까 바이브코딩을 제 무기로 삼고 싶으니까
이렇게 '해줘'밖에 못하는 무력한 사람으로 남으면 안된다는 겁니다...!
< 진행 기록 >
1. GEMS를 AI가 알아서 잘 쓰고 있었다
레일스에서 젬이란 도구를 의미합니다. 파이썬에서 패키지 같은 거.
제가 어떤 젬 써달라고 명시하지 않았는데
젬을 어떻게 써야 하는지 알고 나서 GEMFILE 살펴보니까
이렇게 알아서 잘 설치해서 쓰고 있었네요....
2. GEM 뭐 쓸지 추천해달라고 했음
가만 둬도 AI가 알아서 잘 하겠으나
얼마나 잘 할지 미지수이기도 하고 해서
프로젝트 문서를 보고 GEMS 추천해달라고 하였습니다.
커서 모델인 COMPOSER1가 문서 읽고 추천하는 무언가 만들기엔 적절하다고, 이런 작업은 똑똑한 모델이 크게 필요하지 않다고, 컴포저가 빠르다고 들었습니다.
그래서 이 모델을 사용하고 이렇게 입력했습니다.
docs 폴더의 문서들을 읽고 rails gem 쓸만한 걸 추천하라. 기능/페이지 등 적절한 분류를 만들어서 목록화하라.이렇게 ㄹㅇ 가볍게 입렭하였습니다.
만들어준 문서가 적절한지, 이런 문서가 효과적인진 모르죠.
제가 살펴보려고 만든 것도 있습죠...
이제 이걸 아래의 공간으로 가져가서 알려달라고 할 겁니다.
3. 퍼플렉시티에 학습 공간을 만들다
퍼플렉시티가 제 생각엔 학습에 적절합니다.
최신 검색, 공식문서 검색이 원활하고
검색 출처를 통제할 수 있습니다. (학술, 인터넷 커뮤니티 등)
학습 모드가 있으며
플래시 카드 만들기 등도 지원합니다.
무엇보다도, 실시간으로 들은 내용에 대해 설명을 요구하니 잘 말아주었습니다.
증거:
한국어 텍스트가 있는 페이지
4. 이런 것도 공부합시다
ㄱ. 차근차근 기초부터 하나씩 알아가기~
한국어 텍스트가 포함된 Google 검색 페이지의 스크린샷
사실 이런 기초적인 질문을 할 거면
구글에 직접 검색하는 게 환경적으로나 뭘로나 효율적이겠지만
저는 게으른 해줘충 인간이므로 퍼플렉시티에몽에게 떠먹여달라고 했습니다.
나의 선생님 퍼플렉시티에몽도 자신의 학생이 GEM 설치하는 법도 모르는 기초 중의 기초라는 거 알아야 할 거 아녜요.
ㄴ. 스터디원 사례글에 나온 이해 안가는 부분 긁어서 설명해줘 하기
안읽어봤는데 그렇다네요
그냥 작동방식이라네요
글엏군아?
ㄷ. 트러블슈팅 문서 "이해시켜줘"
제가 저번 사례글로 올린 'BAT 파일 안만들어짐' 문제도 그렇고
https://www.gpters.org/dev/post/case-study-breathing-type-yUyh192Q7SkMJC7
얼마 전에 겪은 'AI 오류로 갑자기 만들던 거 날아가서 힘겹게 복구함' 이슈도 그렇고
원인, 결과, 해결을 싸그리 이해 못하고 있었습니다.
대충 '아 ~ AI가 명령어 실수해서 저장안했는데 변경해가지고 날아간 거구나. 컴퓨터 전원 꺼서 메모리 날라가니까 그것도 다 사라진 거구나' 정도로만 알고 BAT 파일 안만들어진 건 아예 이유도 모르고...
트러블슈팅 문서를 매번 만들라고는 했지만, 문서를 잘 만들어준 건지 파악이 안됩니다.
그래서 이렇게 했습니다.
제대로 안읽어봣서용 ㅎ ㅋㅋ ㅎㅎ
4. 이제 무슨 작업을 시켜야 할지도 모르겠어서
이마저도 AI한테 추천 받았습니다.
UI 개선이야 보이는 거 수정해달라고 하면 되죠.
근데 기능적으로 뭘 붙여야 하면 그걸 해달라고 해야 하잖아요.
근데 무슨 GEM을 붙였는지 뭘 개발해야 하는지 어디까지 된지 몰랐습니다.
그래서
@MyApp/docs/WORK-LOG.md 보고 @MyApp/docs/PROJECT-PLAN.md 에 처리한 작업 체크해.
애매하거나 진행 중인 경우 표시를 다르게 해.이거 먼저 시키고용
이제 뭐 해야 하는지 체크가 되었잖아?
1. 이제 해야 하는 하루치 작업 5~10개씩 묶어. ai 기준의 작업량을 보고 갯수를 판단해.
2. 그 다음에 내가 공부해야 하는 것, 내가 입력할 프롬프트를 각 작업 당 매겨줘.
3. 너무 모든 단계를 정리하지 마. 3일 간 해야 하는 작업만 정리해봐. Phase 3~6 정도로.
4. 아까 만들었던 @\rails-gem.plan.md 보고 각 작업 단계에서 무슨 gem을 써야 하는지 추천해줘.
-> 그런데 이 작업을 시작하기 전에 먼저, 이 요청의 작업량과 효율성이 적당한지 판단해.이렇게 해서 적합한 작업을 추천 받았습니다.
물론 프로젝트 플랜.MD가 있긴 한데요, 그걸로는 제 기준 어리둥절이에요!
한국 컴퓨터 화면의 스크린샷
이제 이렇게 AI가 최근 3일 간에 하루에 적당한 작업량만 해가지고
프롬프트까지 해서 이렇게 하자고 추천해주었어요.
저는 이걸 또 퍼플렉시티 쌤한테 가져가서 "뭔 소리야 알려줘" 해야죠!
한국어 페이지 스크린샷
그그그렇다네요 ㄷㄷ
< 액션 플랜, 배운 점 >
작업을 날짜, 프롬프트 포함해서 상세하게 쪼개서 하려면? 어떻게 나누는 게 적절한가? 또 어떻게 검토하나? 프로젝트를 진행하면서 AI가 이해를 잘 못하거나 기획을 변경하게 되면 처음에 만든 플랜을 수정해야 할텐데 토큰 비효율적이지 않나?
이렇게 세세하게 작업을 나누고 계획하면, 커서 기본 모델 컴포저로도 충분할까?
커서나 안티그래피티의 자동 진행 모드를 이용해서, 문서 하나만 주고 알아서 하라고 하고, 보고서를 쓰라고 하는 게 효율적이지 않나? 그게 클로드.MD 같은 기본 지침을 잘 만들어야 하는 이유일 것이다. 클로드MD 샘플이 2개 있으니 이를 분석하는 시간이 필요하다.
중요한 건 내가 읽어보는 것이다.
책을 읽어봐야 할 것이다...
개발 원리 이해하기 어렵고(정확히는 귀찮고) 먼나라 얘기 같다고 회피하기만 해선 안된다. 이젠 학습할 때이다. 여러모로 적기이다.
< 여담 >
저녁에 시간 나면 AI 오류로 사이트 날라갔다가 다시 복구한 시행착오를 사례글로 작성하겠습니다.
어쩐지 개발이랑 인연이 자꾸 이어지는 거 같습니다?
개발이 어렵고 번거롭다고 생각해서 제 쪽에서 손절쳤는데, 개발이 어쩌면 제가 들고 가야 할 무기일지도 모릅니다... 물론 제대로 된 개발자 말구요, 개발에 대해 수상하게 좀 더 아는 사람 정도?
왜냐면 저 친구 중에 개발자도 많고, 개발자 성향이라는 말도 여기저기 좀 들어봤고, 개발 교육장에 속해있고, 원리 모르고 손 놓고 있는 제 상태에 대해 마음 편하게 여기지도 못하니까요...
개발 또한 내년부터 저를 손절칠까요?
아니면 지금 개발이 제게 내미는 손을 잡아야 할까요?
아니면 제가 개발의 바지자락을 잡고 있는 걸까요?
어쨌든 개발은 지금의 제겐 어려운 손님입니다.