왜 만들고 싶은지부터 생각합니다
저는 주로 제가 좋아하거나 불편하게 느꼈던 것에서 아이디어를 얻습니다. 키보드 그림판은 내 글의 색깔이 궁금해서였고, 텐텐텐은 공연장에서 느낀 감정을 남기고 싶어서였고, 대전은 성심당에서 나온 사람의 다음 일정이 궁금해서였습니다.
아이디어를 생각하는 것은 어렵지 않은데, 그게 실제로 누군가에게 필요한지는 다른 이야기였습니다. 그래서 우선 누구에게 언제 필요한지부터 적어보려고 합니다.
PROCESS / HOW I MAKE THINGS
생각한 대로 만들기가 생각보다 쉽지 않았습니다. 그래서 만들고 고친 이유를 기록하려고 합니다.
저는 주로 제가 좋아하거나 불편하게 느꼈던 것에서 아이디어를 얻습니다. 키보드 그림판은 내 글의 색깔이 궁금해서였고, 텐텐텐은 공연장에서 느낀 감정을 남기고 싶어서였고, 대전은 성심당에서 나온 사람의 다음 일정이 궁금해서였습니다.
아이디어를 생각하는 것은 어렵지 않은데, 그게 실제로 누군가에게 필요한지는 다른 이야기였습니다. 그래서 우선 누구에게 언제 필요한지부터 적어보려고 합니다.
아이디어가 떠오르면 이것도 넣고 저것도 해보고 싶어집니다. 그러다 보면 정작 처음에 만들려던 것이 무엇이었는지 흐려질 때가 있습니다.
대전에서는 여행 계획표와 로그인을 빼고 다음 장소 하나를 고르는 데 집중했습니다. 텐텐텐에서는 음악을 편집하는 기능을 생각하다가 짧은 감상 기록으로 다시 돌아왔습니다.
기능을 없애기보다 나중으로 미루는 것에 가까울 때도 있습니다. 다만 이번에 무엇을 확인하려고 만드는가만큼은 놓치지 않으려 합니다.
AI 에이전트와 함께 코드를 만들고 있습니다. 처음에는 돌아가는 프로그램을 얻는 것만으로도 신기했는데, 오류가 나기 시작하니 제가 무엇을 만들었는지 모른다는 것이 문제였습니다.
이후에는 코드를 다시 분해해 보면서 API 호출과 데이터 저장, 예외 처리 등을 공부했습니다. AI가 작업을 해줄 수는 있지만 어떤 기능을 만들고 어디까지 수정할지 결정하는 것은 제가 해야 합니다.
기획할 때는 문제없을 것 같았던 부분도 막상 실행하면 다릅니다. 위치 권한을 거절하면 화면은 어떻게 보일까? 추천할 장소가 없으면? 녹음하던 중 인터넷이 끊기면?
직접 사용하고 테스트하면서 이런 문제가 하나씩 드러났습니다. 수정한 뒤에 다른 곳이 잘못 작동하기도 했습니다. 그래서 테스트 결과와 변경한 이유를 기록하려고 합니다.
완성했다는 말을 빨리 하고 싶은 마음도 있지만, 제가 직접 확인하지 않은 부분까지 괜찮다고 이야기할 수는 없으니까요.
시간을 관리하면서 중요하게 생각한 것은 지속성과 변동성이었습니다. 하루 24시간을 4시간씩 여섯 스택으로 나누는 이유도 그 때문입니다.
프로젝트마다 무조건 네 시간을 쓰고 옮겨가는 것은 아닙니다. 어느 날은 QA가 예상보다 오래 걸릴 수 있고, 다른 프로젝트의 기획을 잠시 미뤄야 할 수도 있습니다. 그러면 그 작업에 스택을 더 배정합니다.
주간·월간 루틴은 개발을 계속하기 위한 틀이고, 프로젝트에 할당하는 시간은 개발 여건에 따라 바꾸는 것이 제가 생각하는 운영 방식입니다.
아이디어를 계속 확장하다 보면 하나의 생각에 너무 깊이 빠질 때가 있습니다. 그때는 당연하다고 여겼던 선택이 시간이 지난 뒤에는 다르게 보이기도 합니다.
그래서 예전에 작성한 기획서를 다시 읽으며 그때 놓친 문제나 보류했던 생각을 꺼내보려 합니다. 일종의 브레이크입니다.
미래의 제가 지금의 저에게 '이건 왜 이렇게 했지?' 하고 물어볼 수 있도록, 당시에 무엇을 고민했는지 남기는 것이기도 합니다.