지난 주에는 내 생일이 있었다. 그래서 부모님을 뵈러 한 주 내내 일본에 다녀왔다. 2주 전 내 명의로는 생애 처음 하는 정부지원사업 신청을 마무리한 뒤, 그 주 주말에는 회고글도 적고 사업계획을 다시 정리하려 했으나 시간 관리를 단디 하지 못한 탓에 그러지 못했다. 그 때문에 아쉽게도 일본 여행에서 하고 있던 일의 모멘텀을 이어갈 수 없었다. 잘 성장하고 있는 대견한 아들이고 싶었으나 혼란스러움 가득한 철부지 아들내미인 모습만 부모님께 보여드린 듯 하다. 대신에 일본에서의 일정은 아주 즐겁고 행복했다.
금요일 저녁에 귀국해 대장간에 오니 석범이와 태훈이가 대장간 멤버들의 편지가 담긴 롤링페이퍼와 매우 멋진 안경을 선물해줬다. 선물과 롤링페이퍼를 받고 생각했다. 아.. 진지한 것도 좋지만 역시 삶에는 유머가 필요하구나. 경주 여행을 간 주말에는 좀 유머 가득한 시간들을 보냈다. 상황극만 백번 한 듯.
다시 책상에 앉아, 내가 바라보고 있는 미래와 만들어 나가고 있는 것, 그 과정에서 배우는 점들을 적어보려 한다.
1. 내가 바라보고 있는 미래
지난 1월과 2월, 두 회차의 대장간 인사이트 세미나에서 나는 Consumer AI와 소셜 앱을 다뤘다. 작년 12월 말 기획자 직무로 막 일을 시작하던 회사를 그만두게 되면서, 1월에는 숨을 고르며 책도 읽고 공부도 하는 시간을 가졌는데 그 때 읽은 아티클의 내용과 약간의 내 생각을 보태어 공유했다. 관련하여 많은 도움을 받은 콘텐츠의 목록은 아래와 같다:
Two Cents - “2세대 모델”과 그 너머 — 초기 투자자로서 Consumer AI 투자 기회에 대한 몇 가지 생각 더 (HRZ 허진호)
Consumer Startups - How Pokémon GO for music fans grew 0-400K DAUs <1 year
특이점은 오고 있다. 일단 ChatGPT가 나보다 글 정리를 잘 하고, Cursor는 내 요구사항을 기가막히게 알아듣고 코드를 짠다. AI 도구들은 인간의 생산성 끝까지 끌어올려 줄 것이다. 올해는 회사의 문제를 해결하기 위해 AI 에이전트들끼리 협력하는 제품(어쩌면 팀이라고 말하는게 더 적절할지도 모르겠다)들이 쏟아져 나올 것이다. 이제 남는 건 여가와 문화이다. 2000년대 후반에 아이폰이 나온 이후 데이터베이스에 정보를 쓰고 읽는 앱을 만들 줄 아는건 경쟁적인 기술이었다. AI와 함께하는 지금은 그러한 기술은 대중화되었다. 이제는 전통적인 의미의 직업적 생산성보다 생산적 ‘소비’에 집중해야 할 때이다.
나는 문화를 만드는 것이 사람이 성취할 수 있는 가장 인간다운 업적이라고 생각한다. 나의 일과 삶에 큰 영향을 준 디스콰이엇 팀에 합류하던 2021년에도 문화를 발전시키고 싶다는 말을 했다. 디스콰이엇에 서로 얼굴도 모르는 사람들이 본인이 제품을 만들며 배운 점을 공유하고 도움을 주고받는 것은 문화이다. 또 러닝크루도 문화에 대한 좋은 예시라고 할 수 있다. 사람들이 모여서 음악을 틀며 뛰어다니고, 그 중 몇명은 무거운 카메라를 들고 뛰며 사진을 찍는 것은 문화라는 단어를 빼고서는 설명할 방법이 없다.
한편, 걱정하며 지켜보고 있는 사회/경제 현상도 두 가지 있다. 첫번째는 한국 경제 쇠퇴이다. 한국 경제가 앞으로 최소 20년간 긴 장기 경제 침체에 접어들 것이라고 전망하는 기사가 쏟아져 나오고 있다. 두번째는 스스로 목숨을 끊는 청년이 늘어나는 것이다. 취업은 어렵고, 학교를 졸업하면 친구는 없고, 소셜 미디어에는 성공한 사람들만 가득하니 정신적으로 어려움을 겪는 사람들이 많을 것이다.
나는 어떤 역할을 할 수 있을까? 사람들을 외롭지 않게 만들고, 정신적/육체적으로 건강하게 하는 일로서 글로벌 고객들을 상대하고 싶다. 지금부터 소개할 내용은 2월부터 시작한 나의 걸음마이다. 일단 내가 건강한 삶을 유지하기 위해 필요한 앱을 3개 만들었다. 가까운 친구들과 함께 쓸 목적으로!
2. 영단어 퀴즈 앱 Oxford 5000
https://the-oxford-5000.vercel.app/
만든 배경
1월부터 의식적으로 영어로 읽고, 쓰려 하고 있다. 영어로 노트를 적다 보니까 사용하는 단어가 50개도 안 되는 것 같았다. 어휘 양을 늘려야겠다 싶어서 단어장 겸 단어 퀴즈 앱을 만들었다.
oxford에서 oxford 3000, 5000이라는 단어 셋을 레벨(A1 ~ C2)을 매겨 제공한다. oxford의 단어셋을 사용하면 되겠다 싶었다. 나는 B2 ~ C1 레벨의 단어들만 있으면 좋겠다 싶어 2천여개의 단어를 긁어왔다.
영어 아티클을 읽을 때 의미를 정확히 모르거나 나도 사용하면 좋겠다 싶은 단어들이 있다. 이 앱에서 내 단어 셋에 add 할 수 있도록 만들었다. 단어만 입력하면 뜻과 예제를 GPT가 생성해 준다.
만들기와 기술
어떻게 하면 외국어 단어를 효과적으로 기억하게 할 수 있을까? Anki 같은 단어장 앱은 spaced retention(간격 반복 학습) 알고리즘이 적용되어 있다. 어떤 단어에 대한 퀴즈를 풀었다면 맞고 틀린 여부에 따라 30일 뒤, 7일 뒤 이런 식으로 다시 출제되어 장기 기억으로 넘어갈 수 있게 도와준다. 나는 그 알고리즘을 적용하는 건 설계하는 데 시간이 걸린다고 판단해 단어 하나하나에 점수를 매겨 맞고 틀림에 따라 점수가 변하도록 했다. 그리고 그 점수를 가중치로 활용해 랜덤한 단어를 불러오도록 했다.
아래 2개의 앱과 마찬가지로, Cursor에서 Claude 3.5(또는 3.7) Sonnet과 함께 NextJs/tailwind, Supabase, Vercel 로 웹앱을 만들었다. 어떤 기능을 만들어야 할 때, 목표를 명확히 설명하고 요구사항을 숫자를 붙여 적어넣으면 빠르고 똑똑하게 만들어 준다. (참고로 나는 웹앱 개발을 조금 해 본 경험이 있다. 개발 경험이 없다면 repleit을 추천한다!) 구동되는 초기 버전을 만드는 데는 아이디어를 정리하는 시간을 포함해 2시간이면 충분했다.
최적화 문제: Supabase(DB)의 단어 테이블에서 데이터를 무식한 방법으로 가져와 처리하기 때문에 지금 앱이 좀 느려져서 사용 경험이 좋지 못하다. 빠른 시일 내 픽스 예정.
사용 경험
사용자인 나의 목표는 꾸준히 하루 10개의 정답을 맞히는 것이었다. 초반 2주는 내가 만든 앱이 제대로 작동하는 게 뿌듯해서 열심히 썼다. 이동 시간에 타임 킬링하는 용도로 딱이다. 근데 성취감도 있다. 그 다음에는 조금씩 사용이 뜸해져서 퀴즈 페이지 상단에 하루 목표에 대한 progress bar를 넣었다. 그래서 한 번 시작하면 목표량을 잘 달성하긴 하는데 접속하는 날이 줄어들고 있다.
점수 체계가 좋지 않아서 지금 어떤 단어는 다른 단어들의 평균값에 비해 300배 더 높은 랜덤 가중치로 출제되고 있다. 맨날 똑같은 단어 나온다. 수정 필요.
놀라운 건 이 단어 퀴즈를 열심히 풀던 시기에 영어 작문이 훨씬 매끄러워진다. 그래서 고쳐서 계속 쓸 것 같다.
3. 운동/단백질 식사 트래킹 앱 Workout Works
https://workout-works-app.vercel.app/graph
만든 배경
나는 체덕지(영어로는 sound mind in sound body)를 삶의 원칙으로 가지고 있다. 신체 건강이 무너지면 아무것도 못 한다. 그래서 1-2월에 규칙적으로 헬스장에 가기 위해 노력했다. 그러다 상민이와 같이 운동을 시작했고, 여름에 바디프로필 같은 걸 찍기로 했다. 3년 전 처음 바디프로필을 찍으며 단백질 섭취의 중요성에 대해 몸소 배운 나는 이번에는 목표 단백질 양을 채워서 챙겨먹기로 했다.
식사와 영양소를 기록하는 앱은 많지만 나는 하루 170g의 단백질을 섭취(닭가슴살 8팩에 해당한다..)한다는 하나의 목표만 도와주는 단순한 앱을 원했다. 그래서 그런 걸 만들었다. 먹은 음식의 이름과 무게, 단백질 함량을 기록할 수 있다.
운동 기록 기능을 추가하게 된 이유는, 바디프로필을 찍기로 하면서 운동을 보다 체계적으로 할 필요성을 느껴 아이폰 메모장에 기구별 운동을 기록하던 걸 식단을 기록하는 이 앱에 옮겨오고 싶다는 생각이 들어서였다.
만들기와 기술
이 앱은 GPT4o-mini를 3가지 기능에 활용한다. 첫번째는 식사 기록에서의 단백질 햠량 추측(함량을 직접 입력하거나 요술봉 버튼을 눌러 GPT의 추측을 적용할 수 있다), 두번째는 운동 기록할 때 운동의 이름(예: lat pulldown)을 ‘등 운동’으로 분류하는 것, 세번째는 메모장에 메모하듯 적은 무게와 횟수 기록을 인식하고 total volume을 계산하는 것이다. 흥미로운 점은 volume을 계산하도록 요청하는 프롬프트에 결과만 내놓으라고 할 때와 식과 결과를 함께 달라고 할 때 계산 정확도의 차이가 크게 체감되었다. GPT에게 사고하는 과정을 잘 가르치는 것, 그리고 인간이 AI를 통제하며 협업할 수 있도록 제품을 만드는 것이 중요하다.
제일 먼저 만든 식단 기록 페이지의 스타일을 참고하여 나머지 페이지를 개발하고 디자인해달라고 하니 기가 막히게 적용했다. ‘키 컬러는 이렇게, 미니멀하게/이모지를 넣어서’ 와 같은 요청도 잘 알아듣는다. 내가 특이한 UX를 설계하지 않은 이상 대체로 정석에 가까운 UI를 그려 주었다.
vercel로 배포한 후 나의 맥북과 아이폰에서만 테스트했는데, 상민이의 갤럭시에서는 로그인이 정상적으로 되지 않는 문제가 있었다. 만약 돈을 벌 목표로 앱을 만들게 된다면 안전성을 확보하는데 많은 시간을 들여야 할 것이다.
사용 경험
처음 배포한 2월 15일부터 오늘까지 매일 사용하고 있다. 하루에 10번은 새로 접속한다. 단백질을 몇 그램 먹었고, 오늘 얼마나 더 채워야 하는지 머리로만 기억하기엔 한계가 있기 때문이다. 나에게 유틸리티 앱으로서의 기능을 톡톡히 하고 있다.
운동을 기록하다 중간에 해당 운동에 대한 데이터가 유실되는 경우가 종종 있었다. 디바이스 로컬에 데이터를 저장하는 방식으로 해결했다. 사용 경험을 해치는 작은 기술적인 문제들은 매일 사용하면서 고치고 있다.
운동과 식사를 하며 기록하다 보니 이제 단백질은 충분히 먹고 있는데 내 한계까지 무게를 않아 성장이 더디다는 걸 깨달았다. 운동 기록 기능에 대해서는, 이전 운동에 대한 히스토리를 보고 싶은데 어떤 식으로 디자인하면 좋을지 모르겠어서 보류 중. fitnessAI, planfit과 같은 운동 추천 기능이 있는 다른 앱도 다시 써보고, 내 운동 데이터를 가지고 트레이너인 친구들에게 운동법에 대해 조언을 구하면서 개선 예정. 물론 다른 앱이나 도구를 쓰는 것으로 결론이 날 수도 있다.
다음 글에 계속..
글 분량이 길어져 이메일 한 개의 권장 용량을 넘어서서 아래 내용은 다음 글에 이어 쓰려고 한다.
북마크 앱 collector
배운 점 종합 + 회고
앞으로의 계획
항상 파이팅
오 생일이셨군요 축하드립니다-! 사람들이 외롭지 않으면서 정신, 육체적으로 건강하게 살아갈 수 있도록 돕는 역할 너무 공감이요 저도 개발하면서 관심이 생기는 제품이나 기술들도 다 여기서 비롯되는 것 같아요