[iOS 13주차] 프로젝트 주제 선정하기

DoyleHWorks·2025년 1월 16일
1

새로운 팀 프로젝트를 시작하는 데 있어, 주제 선정에 많은 시간을 들인 하루였다.
결과적으로는 가장 처음에 고려했던 주제로 돌아왔는데, 그 고민 과정을 기록해본다.


주제 1

프로젝트를 기획하는 데 있어 가장 중요한 점은 사람마다 다를 수 있지만, 나에게는 내가 '재미'를 느끼는가 인 것 같다. 더 나아가서는 내가 필요로 하는 제품, 쓰고 싶은 제품, 내가 곧 사용자인 무언가를 만드는 것이다. 그래야 개발할 때도 즐겁고, 사용자의 피드백을 듣는 것도 흥미로우며, 그것을 적절히 수용하여 개선하고 유지보수하는데 부담이 적다.

게이머로서 한창 게임을 많이 할 때는 정말 별 것 아닌 것까지 파고들어서 연구했던 기억이 난다. 그 게임을 더 잘하는 것에 너무너무 관심이 많았기 때문이다. 지금은 개발자가 되기 위해서 그 게임을 잠시 손에서 놓았는데, 신기할 정도로 지금은 그 게임에 관심이 별로 없다. 무척 러프한 비유일지도 모르겠으나, 좋아하는 것을 한다는 것은 나에게 그런 의미구나 싶다.

우리 팀이 관심을 가진 카테고리는 '생산성'이다. 최근에는 제 2의 뇌를 가지고자 옵시디언을 열심히 공부했던 나로서는 무척 관심이 가는 카테고리이다. 그리고 더 세부적으로는, iOS의 스크린타임 기능을 통해 특정 세션동안 특정 앱을 접근하지 못하게 하는 습관 관리 앱을 만들자는 의견이 나왔다. 아래는 그 레퍼런스로서 거론된 앱들이다.

Opal: Screen Time Control
one sec | 앱과 웹사이트 제한 및 차단
터닝: 앱 잠금, 폰 잠금, 공부/집중 타이머, 루틴
잠글시간: 절대 풀리지 않는 핸드폰 잠금 스크린타임 앱

TickTick: To-Do List & Calendar
Across: 모던 캘린더

그 중 Opal이란 앱은 무척 매력적으로 느껴졌다. 기능 자체는 단순하지만 사용자가 앱을 사용하는 데 '불편'하게는 하지만, '불쾌'하지는 않게 하는 그 오묘한 선을 잘 잡았다고 느꼈기 때문이다. 개인적으로는 화장실에 갔다가 하염없이 유튜브 쇼츠를 보거나, 잠을 잘 때 늦게까지 애니메이션을 보다가 자는 습관이 있는데, 짧게나마 무료체험을 한 결과 효과적으로 그런 습관을 방지할 수 있었다.

문제점

문제는, iOS의 스크린타임 API (Family Contrls Framework)에 대한 권한을 얻는 것이 아주 어렵다는 것이다. 또한 그 권한을 얻더라도 구현하는 데 제한사항이 아주 많다 (고정적으로 주어진 기능을 사용해야 하는 경우가 많다고 한다). 튜터님의 조언과 추가적인 조사에 따르면, API에 대한 접근 권한을 얻어내는 데 필요한 심사는 짧으면 몇 주, 길면 몇 달이 걸린다.

Ref.
Screen Time API 알아보기 (1)
[2024년 Screen Time API] - (1) Family Controls

6주라는 기간 동안 앱을 출시해보고, 사용자 피드백을 받아서 개선해보는 과정이 계획되어있기에 이 리스크를 감수하기에는 기간적으로 제약 사항이 너무나도 컸다.

주제 2

결국 브레인스토밍과 Job Description 분석을 통한 필터링으로 새로운 아이디어를 선정하기로 하였고, 그 결과 운동기록 앱을 만들기로 결정하였다. 그렇게 결정한 배경에는 기능에는 충실하지만 UI/UX가 부족한 앱들이 많았고, 이러한 앱들을 보완하면서 내부 구조가 견고한 앱을 개발하여 기본기를 탄탄하게 하자는 마인드가 있었다.

바디캘린더(BodyCalendar)
플릭 - 운동일지, 운동기록, 운동일기, 운동루틴
플랜핏 - 운동 루틴 추천과 헬스 홈트 피트니스 기록
번핏 -헬스 & 운동일지 운동기록 운동루틴 헬스루틴
짐워크 - 헬스 운동 루틴, 운동일지, 운동기록
오늘의 운동 - 운동 기록 헬스 기록 앱

문제점

그런데 웬걸, 레퍼런스를 모아보니 우리가 운동 기록에 대해서 정말 만만하게 생각하고 있었다는 사실을 깨달았다. 팀원 중에 운동 기록을 상세하게 남겨가며 운동하는 사람은 1명이 될까말까 했고, 정말 다양한 운동 종류와 생소한 운동 이론 및 요소들(점진적 과부하, RIR, RM, 볼륨 등)이 있다는 걸 처음 알았다. 그래서 잘 모르는 도메인에 대한 지식과 흥미 부재, 그리고 그것이 개발에 미칠 영향들이 무척 걱정이 되었다. 반쯤 농담으로 헬스장이라도 다 같이 가보자는 얘기도 나왔지만 하고 싶은 걸 할 수 있는 기획 단계에서 무척이나 손해보는 얘기였다.

우리가 보기에는 UI가 무척 불편한데, 앱들의 평점이 모두 높은 것들을 보고 개발자인 우리와는 정말 다른 페르소나들이 이 앱을 사용하고 있는 게 아닐까 느끼기도 하였다. 좋은 앱 개발자는 곧 그 앱을 사용할 사람.. 돌이켜보니 Opal 같은 경우는 개인화를 위한 온보딩 페이지에서 직업 선택 옵션에 '개발자'가 제일 앞에 있었던 걸 보면 그것도 우연은 아닐지 모르겠다는 생각이 들었다. 그만큼 운동 기록 앱들의 UI들은 정말 몸을 만드는 것에 관심이 많은 사람들이 필요해서 뚝딱 만들었다는 인상이 무척 강했다.

결단

주제 1 - '스크린타임' 앱은 우리 모두가 흥미를 가졌지만 그 엄격하고 긴 심사 기준에 의해 목표로 한 출시조차 기간 안에 끝내지 못할 리스크가 있었고, 주제 2 - '운동 기록' 앱은 참조할 소재가 많고 개선할 점도 뚜렷하게 보였지만, 그 도메인에 대한 지식이 현저하게 부족하다는 점이 있었다.

이러한 시점에서 튜터님이 이와 같은 조언을 해주었다: 프로젝트의 목적이 무엇인지 고민해보라고. 우리가 현재 기획하고 있는 프로젝트를 진행하는 이유는 '취업'하기 위해서이고, '포트폴리오'에 올리기 위해서이다. 그렇다면 앱의 '출시' 자체가 목표가 될 필요는 없다고. 그리고 결정적으로, 이럴 때가 아니면 언제 자기가 하고 싶은 걸 해보겠는가? 라는 의견이었다.

그 말마따나, 설령 심사가 무척 오래 걸려서 제대로 출시하지 못하더라도, 만들고 싶은 걸 만들면서 그 제한적인 프레임워크의 준수와 엄격한 심사 기준을 충족하기 위해 한바탕 굴러보는 것도 무척이나 좋은 경험이 되겠다는 생각이 들었다.

그래서 우리는 스크린타임 API를 활용하는 앱을 만들기로 결정했다. 결과적으로는 빙빙 돌아 처음 지점으로 돌아왔지만, 그 고민하는 과정은 무척이나 가치가 있었던 것 같다. 이 주제를 한 번 놓았다가 다시 잡음으로써, 우리 프로젝트의 목적 의식이 더 뚜렷해지고 이 주제를 선정한 이유도 더 선명해졌기 때문이다.

앞으로의 프로젝트 과정이 험난하고 데드라인까지도 끝끝내 출시를 못 할지도 모르겠지만, 최선을 다해서 굴러보려고 한다. 결국 출시 그 자체보다도, 그 과정을 밟아 나아갈 나 자신이 중요한 것이니 말이다 :) 그 과정을 엄연한 아웃풋으로서 남겨보자!

고민한 흔적

profile
Reciprocity lies in knowing enough

2개의 댓글

comment-user-thumbnail
2025년 1월 16일

맛차 글솜씨가 멋지군요.

1개의 답글

관련 채용 정보