3 minute read

5주간의 나만의 무기 준비하기가 끝났다

첫째주.

팀이 결성이 된 후에 바로 아이디어 회의 발표를 해야 했다. 완성을 했다는 전제하에. 기획의도, 시연, 그리고 기술적 챌린지, 기술 스택까지 모두 결정해야 한다는 뜻이었다.

아이디어는 세가지가 나왔다.

  1. rewind 앱 클론 코딩. rewind 는 화면을 주기적으로 캡쳐뜨는 데스크탑 어플인데, 이것을 개발자 용으로 만들어서 디버깅이나, 참고했던 문서를 정리해주는 프로그램을 만들어보자.

  2. 선물 펀딩. 생일이나 기념일 선물시 여러사람이 돈을 모아서 비교적 큰 금액의 선물을 해줄 수 있는 프로그램이다. 추가로 채팅이나, 결제 기능을 붙여볼 수도 있겠다.

  3. 1분 배틀. 하나의 토픽에 대해서 찬/반, 혹은 반대의 의견을 토론하는 커뮤니티. 토론에 참가하는 두 명 외에 다른 사람들도 댓글로 배틀에 참여할 수 있도록 했다.

팀원들은 모두 1번을 하고싶어했다. 하지만 운영진들은 일단 모아니면 도라는 평가를 내렸다. 우리들끼리 2일 정도, 1번 아이디어 구현을 직접 해봤다. 주기적으로 캡쳐를 뜨고, 불필요한 화면을 제거하는것 까진 성공했으나, 기숙적인 문제가 아니라 기획에서 막혔다. 그래서 이렇게 수많은 화면을 캡쳐떠서 유저한테 어떤 정보를 제공할것인가? 유저가 무엇을 보고 싶어할것인가?

프로그램이 존재하는 이유가 해결이 안되서. 포기하게 되었다. 개발로 구현하는 방법을 찾아내는 것도 중요하지만, 그래서 만들어서 어떻게 할건데? 라는 기획도 중요하다는것을 깨달았다.

나머지 아이디어들도 … 적절한 아이디어가 아닌것 같아 아예 새로운 아이디어를 생각해 내게 되었다.

내 아이디어였는데, 나는 평상시에 투두리스트에 관심이 많았다. 매일 ios 미리알림을 작성하고 하루 일과를 정리했으니까.

0주차에도 카테고리 별 투두리스트를 만들었을 정도였으니.. CRUD의 정석이라는 생각과, 투두리스트에 대한 나의 애정이 합쳐진것.ㅋ

그 투두리스트를 다마고찌와 합치면 어떨까? 라는 생각을 해봤다.

그래서 시작한것이 doWith 프로젝트.

팀원들도 모두 재미있을 것 같다는 의견을 내줬고, 프로그램 특성상 웹보다는 모바일에 적합할것이라 생각했다.

그래서 내 소원(?) 대로 Flutter 를 프로젝트에 적용하기로 했다.

flutter 를 배우고 싶었던 이유는 다음과 같았다.

  1. 나는 모바일 개발자가 되고 싶었다. 왜냐하면 내가 개발자가 된 이유는 나와 내 주변사람들이 좀더 편리하게 살았으면 하는 마음이었고, 사람들이 매일 가지고 다니는 스마트폰 앱개발을 하면 더 접근성이 높다고 생각했다.
  2. 코틀린과 스위프트는 5주(발표준비를 제외하면 4주) 라는 개발 기간을 생각했을때 무리였다. react native 혹은 flutter 중에 선택해야 했다. react native보다 flutter 가 낫다고 생각했다. 그 이유는, 개발속도가 빠르고 초보티(?)가 많이 나지 않는 UI 가 큰 장점이라고 생각했다. 더하여 react native는 다른 서드파티 라이브러리 의존성이 높은데, 버전 때문에 문제가 발생하는것이 싫었다. 기존 회사에서 ionic 으로 개발했을 당시 버전때문에 빌드가 안되서 고생한적이 있다.
  3. 나를 제외한 팀원들은 javascript 에 대한 지식이 없었다. react native를 하든 flutter를 하든 어쨋든 바닥에서부터 공부해야 했다. 그럼 flutter 도 괜찮지 않을까? 라고 생각했다. 다행히 팀원들도 모두 동의해주었다.

그렇게 플러터 공부가 시작되었다. 생각보다 길어져서 나눠서 작성해야겠다.

Updated:

Leave a comment