개발자는 기록이 답이다
[항해플러스] 오픈소스 프로젝트 2주차에 배운 점 본문

이번 오픈 소스 2주차에서 느낀점에 대해 회고를 적어보겠습니다. 사실 7주간의 프로젝트를 끝나고 난 뒤라 그런지.. 오픈소스 프로젝트 범위를 너무 작게 가져가서 그런지 모르겠지만, 역할 분배도 조금 애매했고.. 열정이 조금 식은 느낌이 들었습니다...ㅎㅎ 벌써 프로젝트의 80%는 완수했고, 다음주에는 고도화를 할지 말지 정하고 발표장표를 만들면 끝납니다.. 사실 큰 비용 낸 만큼 뽕 뽑을만큼 뽑아야하는데, 뭔가 조금 아쉬웠습니다. 오픈소스라는게 이렇게 간단한 느낌인것인가..?
1주차때는 이전 포스팅에서 언급했던 것 처럼, npm 패키지 생성하는걸 테스트로 적용해봤습니다. ( 동일한 이름은 생성안되므로, 기존에 패키지명이 있는지 확인) 또한 오픈 소스 주제 (총 4개 중에 gpt로 만든 랜덤 data 생성기로 정함)를 명확히 하고자 했습니다.
GPT API 나, Open Ai 라이브러리를 한번도 안써봤기 때문에, 개인 래포 파서 typescript+nest.js로 테스트 용으로 연습해봤습니다. gpt의 응답값을 토큰이라고 하는데, 그게 1024를 넘으면 과금이 된다고 합니다. 그래서 1000으로 설정해서 테스트했습니다
위에 레포는 테스트용이라, 실제 팀 프로젝트에서는 또 코드가 방식이 달라지도록 했습니다.
제가 생각하고 있는게 맞는지 소통하기 위해 gpt를 사용하는 로직을 3단계정도 정리해서 팀원분들한테 확인받았습니다. 이외에도 자잘하게 생각해야할 부분은 색깔을 지정해서 물어봤습니다.

개인적으로 테스트 해본 결과 기존에 이미 저장된 랜덤 데이터랑 다른 데이터가 나와야 하는데, gpt한테 프롬프트 명령시 추가해야 할것 같은데, 팀장님께 여쭤보니 GPT자체적으로 캐싱처리되어 있어서 어쩔 수 없다고, 차라리 프롬프트 명령어 안에 응답값 개수를 변경하면 좀 더 나을 거라고 말씀해주셨습니다.
그리고 이번 2주차에는 Commander라이브러리랑 gpt를 연결하는 과정을 거쳤습니다. Commander라이브러리를 js파일에서 만들고 gpt관련 ts파일을 js파일에서import하려니까 안되더라구요. 결국에는 src 디렉토리내에 전부 다 ts파일로 바꾸고, package.json파일에 "type"="module"을 제거하니까 성공하는걸 확인할 수 있었습니다.

참, 이번 프로젝트해서 제가 PR, ISSUE 템플릿을 만들어서 적용했는데, 왜 이제서야 이걸 알게되었나 싶고 또 자세히 작성하니까 나중에 기억이 안나도 찾아볼 수 있는 기록으로 남아서 좋은것 같습니다.이제 gpt가 불려오기 전까지 로딩시간이 좀 있어서 해당 시간 동안 Progress Bar를 만들고, 고도화하고 싶은 부분까지 고도화하면 프로젝트가 완료 될것 같습니다.


이번에 자바스크립트, 타입스크립트를 써보면서 느낀점은,, 도대체 CommonJS와 ES Modules이 뭔지에 대한 거였습니다. 정확히 언어에 대해 잘 모르고 쓰다보니까 컴파일 문제, 모듈문제가 계속 발생했습니다 (can't not find module) 나중에 시간 내서 좀 더 공부해야겠다는 생각이 있었습니다.
그리고 이전 프로젝트 처럼 시나리오가 정해지는게 아니다 보니까, 팀원 모두가 같은 방향으로 가기 위해 단계별로 그림을 그려서 명확한 플로우를 그려보는게 좋을 것 같습니다. 저는 개인적으로 말로만 얘기를 나누면 정확하게 이해가 안되더라구요.... '전기차'라는 주제를 두고 누구는 테슬라, 누구는 현대차, 누구는 자율주행차 까지 생각할 수도 있으니까 진행 플로우를 정확히 잡는게 중요한 것 같습니다.
'항해플러스' 카테고리의 다른 글
[항해플러스] 10주간 느꼈던 내돈내산 솔직한 후기, 장점과 단점 (0) | 2023.08.22 |
---|---|
[항해플러스] 오픈소스 프로젝트 1주차에 배운 점 (0) | 2023.08.22 |
[항해플러스] 7주간의 프로젝트를 통해 배운 것 (0) | 2023.08.22 |