-
[개인 프로젝트] 내가 사용하기 위한 앱 만들기 (Feat. 집중을 위한 앱)Daily/Project 2024. 5. 12. 16:45728x90
나에게 필요한, 내가 사용하기 위한 앱을 만들어보자.
나는 다시 개인 프로젝트를 시작하려고 한다. 이번 프로젝트는 나 자신을 위한 앱을 만드는 것이 목표이다.
지금 나에게 필요한 것은 무엇일까?
나는 약 3개월 전 안드로이드 개발자로 일을 시작했다. 그러나 나는 일반적인 안드로이드 앱을 개발하는 것이 아니라, 안드로이드 에이전트(라이브러리, SDK)를 개발하는 일을 하게 되었다.
새로운 분야에서의 시작은 어려움이 많았다. 그러나 나는 빠르고 확실하게 적응하기 위해 노력을 했고, 난 지난 3개월 동안 회사 업무(코드)에 집중하며 열심히 일했다.
이런 과정에서 난 많은 것을 배우고 성장했다. 하지만, 나는 계속해서 공부하고 성장하고자 하는 욕망을 느꼈다. 그러나 지난 3개월 동안 나는 나 자신을 위한 여러 가지의 핑계를 대며 앱 분야에 대한 공부를 소홀히 했다.
힘들어서, 피곤해서, 퇴근길이 길어서
갖은 핑계를 대던 나는 오늘 다시금 깨달았다. 지나온 시간 동안 내가 어떤 모습이었는지 되돌아보게 되었다.
불과 3개월 전, 나는 아침 8-9시에 일어나 샤워를 하고, 카페로 가 공부를 시작했다. 자리에 앉아 강의를 듣고, 코딩을 하고, 기술 면접을 연습하며 프로젝트를 진행했다. 밤 9-10시까지도 끝나지 않는 열정으로 문제를 해결하고 새로운 것을 배우며 개발을 이어나갔다. 종종 새벽 2-3시까지 작업을 하더라도, 다음 날 아침에도 일찍 일어나 공부를 시작했다.
그런데 그런 모습은 어디로 간거지? 내 마음 속에 자리잡은 피곤함과 핑계가 나를 방해하고 있다.
하지만 나는 이 모든 것을 다시 시작하려고 한다.
"집중을 위한 앱"
이 앱의 목적은 내가 목표에 집중할 수 있도록 돕는 것이다. 책상에 앉아서 작업을 시작할 때, 유투브나 인스타그램과 같은 앱으로 시간을 낭비하지 않도록 도와주고, 내가 설정한 할 일 목록을 효율적으로 관리하도록 돕는 것이 목표다.
너무 많은 기능을 넣지말 것. 선택과 집중할 것.
내가 정말 필요한 기능만으로 다루고자 한다.
앱의 기능
1. 특정 앱 사용 제한 기능
- 내 집중을 방해하는 특정 앱들을 선택해 사용을 제한한다.
- 폰 잠금, 앱 잠금
- 아이폰 기준, 다운타임 | 모래시계 | 암호 설정 | 암호 해제 시 사용 가능
- 안드로이드 기준, 앱 고정 | 암호 해제 시 사용 가능
- 암호 설정 및 해제 기능으로 사용할 수 있도록 설계
- 내가 집중하는 시간 동안 선택한 앱들에 대해 알림을 받지 않도록 설정한다.
- 사용자는 상황에 맞춰 다양한 집중 옵션을 만들 수 있다.
2. TODO 리스트
- TODO 리스트를 작성한다.
- prefix 목표 키워드를 선택한다. 공부, 자격증, 개발, 프로젝트, 업무 그리고 직접 입력할 수 있다.
- suffix 진행 키워드를 선택한다.
- COMPLETE(완료), PROGRESS(진행중), PENDING(보류)
- TODO 항목을 터치 이벤트로 순서 변경할 수 있다.
3. 포모도로 기법에 따른 시간 관리 기능
- 포모도로 기법에 따라 집중 시간과 휴식 시간을 설정한다.
- 사용자는 집중 시간(25분)과 중간 휴식 시간(5분)을 자유롭게 조절할 수 있다.
- 4 사이클 (4의 배수)에 한 번씩 루틴 휴식(30분)이 존재한다.
- 기본 25분, 5분, 30분 (집중, 중간 휴식, 루틴 휴식)
- 사용자 설정 가능
- 앱은 설정된 시간에 맞춰 알림을 보낸다.
4. 집중 시간
- 집중 시간이 시작되면, 핸드폰 잠금 처리가 된다.
- 완전한 잠김은 아니지만, 집중 시간의 시작을 알리기 위한 잠금 화면 전환 퍼포먼스
- 설정해둔 일부 앱이 사용할 수 없도록 잠금 된다.
- 폰 잠금 설정 시, 핸드폰 잠금을 해제할 수 없다.
- 앱 잠금 설정 시, 특정 앱을 사용할 수 없다.
- 잠긴 화면에서는 타이머와 TODO의 첫 번째 항목이 나타난다.
- TODO 항목의 진행 정도를 처리할 수 있다.
- TODO 항목의 완료 혹은 보류 처리 시, 다음 우선 순위에 위치한 TODO 항목이 나온다.
5. 특정 앱의 스크린 타임 관리
- 자주 사용하는 앱의 스크린 타임을 관리한다.
- 30분 이상 스크린 타임이 넘어갔을 경우 알림, 이후에는 40분에 한번 스크린 타임을 체크하여 푸시 알림 처리한다.
- "Zigzag를 보기 시작한지 30분이 지났어요. 할 일을 시작하러 가는게 어때요?"
- "Youtube를 보기 시작한지 1시간 10분이 지났어요. 할 일을 시작하러 갈까요?"
- "핸드폰을 보기 시작한지 1시간 50분이 지났어요. 할 일을 시작하러 갈까요?"
- 앱의 사용이 지속될 경우, 앱의 스크린 타임 알림
- 단발적으로 여러 앱을 사용하되 전체 핸드폰 사용이 지속될 경우, 핸드폰의 스크린 타임 알림
'Daily > Project' 카테고리의 다른 글
[Project/Android] `OutOfMemoryError` 오류 해결하기 (0) 2023.12.19 [Project/Android] GameActivity 만들기 (Feat. 조이스틱 만들기) (2) 2023.12.14 [Project/Android] `도전! 환경 지킴 방범대` 프로젝트 1 (Feat. 소개) (0) 2023.12.12 - 내 집중을 방해하는 특정 앱들을 선택해 사용을 제한한다.