8월 6일부터 8월 7일에 열린 멋쟁이 사자처럼 12기 해커톤 후기입니다!
멋쟁이 사자처럼 12기 해커톤에 다녀왔다!
여기서 우리 조가 만든 product 'AICH'를 설명하려고 한다.
해결하려는 문제 (기획 이유)
- 자기계발 동아리에서 습관개선을 위해 각자 선언인증이라는 것을 단톡방에 올리곤 했다.
- 가령 매일 운동을 몇개씩 하겠다고 한 사람들은 운동 타임랩스를, 몇 시까지 기상 혹은 독서실에 가겠다고 한 사람은 해당 시간에 맞게 사진을 찍어 올리고 규칙을 지키지 못하면 랜덤으로 기프트콘을 쏘는 방식이었다
- 각자의 목표를 위해 노력하는 방식이었다. 이 방식의 장단점으로는
장점
1. 평판을 이용한다: 책 '역행자' 에도 나온 내용으로 사람은 자기 평판이 떨어지는 것을 죽어도 싫어한다. 그래서 자기가 일단 무엇을 하겠다고 주변인들한테 알리면, 거짓말쟁이가 되어 쪽팔리지 않기 위해서라도 하게 된다.
2. 손실회피효과 이용: 상보다 벌이 더 심리적으로 압박을 준다. 새로운 이득보다 기존의 손실을 더 심리적으로 크게 여기기 때문이다. 목표한 바를 달성하지 못했을 때 벌금을 내는 시스템은 손실회피효과를 잘 이용하였다.
3. 다른 사람들 보며 동기부여: 단톡방 자체에서 다른 사람들이 선언인증을 수행하는 걸 보며 자신도 생활습관을 바로잡기 위한 동기가 된다.
4. 하는 게 없더라도 손해 볼게 없음: 딱히 아무선언도 하지 않고 단톡방에 있더라도 손해볼 건 없다. 그냥 가만히 있어도 약속을 지키지 못한 사람의 벌금을 선물로 받을 수도 있다!
단점
1. 인증방식의 불편함: 단톡방에 올릴 수 있는 형태는 사진, 동영상 등으로 제한되어 있다. 이 경우 다양한 약속을 선언하는데 방해가 된다.
2. 카카오톡이 쌓이면 보이지 않는다: 하루에도 수십 개의 선언인증이 올라오는데 매우 보기 불편했다. 이전에 이 사람이 어떤 약속을 했는지 스크롤을 올려 확인하기 힘들었다.
3. 기간을 정해둘 수 없다: 카카오톡 인증방식으로는 언제까지 무엇을 하겠다는 기간을 명확히 설정하기가 힘들다
4. 올리기 귀찮다: 약속을 수행하고 -> 사진이나 동영상 혹은 다른 앱으로 인증된 이미지를 찍어서 -> 단톡방에 올려야 한다. 이 과정까지가 너무 귀찮다. 이런 진입장벽은 사소하지만 마찰을 주고, 결국 의지를 조금씩 갉아먹게 된다.
그런 부분들을 개선하고자 해당 'AICH'를 만들었다.
상세 기획
대상
집에서 쉽게 운동 원하는 청년층, 자기 계발, 원하는 청년층
서비스 개요
- 어떤 운동을 언제, 얼마큼 할지 해당 서비스를 통해 약속한다.
- 운동 자세를 확인해 주는ai를 통해 해당 운동을 했는지 확인한다. 이는 운동 자세 교정의 효과도 있다.
- 이렇게 약속된 내용들은 같은 그룹원 사람들끼리 공유되며, 지키지 않았을 시 벌칙을 해야 해 동기를 부여해 준다..
- 약속을 성공하면 포인트가 올라간다.
가설 검증
위에서 언급한 내용들이 그저 가설에 불과한지 아니면 실제로 그렇게 느끼는지 알기 위해 해당 선언인증방 단톡방에서 설문조사를 실시하였다.
그 결과,
- 80%는 타인에게 인증받는 방식이 도움 된다고 하였고 100%는 선언인증 서비스가 만들어진다면 사용할 의향이 있다고 하였다.
- 90%는 매주 운동을 하나 이중 70%는 별도의 운동 자세를 교정 수단을 가지고 있지 않았다.
- 85%는 인공지능 자세 교정 서비스가 만들어진다면 이용할 의향이 있으나 아직 90%는 별도의 운동 관련 서비스 앱을 ㅇ;용하지 않고 있었다.
서비스 안의 약속 구성
1. 약속자 (본인: 약속을 하는 사람)
2. 기간(이 기간 동안n일에 m번꼴로 or 그 기간까지))
3. 약속 내용(구체적으로!)
4. 인증방식
5. 실패 시 공약 (포인트지불 혹은 송금)
6. 벌칙 수령자
ex) 나 김성균은/ 6월 1일부터 6월 31일까지 매주 3번씩/ 스쿼트를 30개씩 5세트 하겠습니다/ 운동 자세 ai를 통해 자동으로 확인합니다/ 이를 지키지 못할 경우 벌금 10000원을/ 같은 그룹원 3분에게 랜덤으로 드리겠습니다.
그룹 달력을 통해서 알 수 있는 정보들
- 누가 현재 약속을 진행 중인지
- 누가 약속을 성공, 완료 했는지
- 누가 기간이 끝났지만 성공, 실패, 여부를 올리지 않았는지
- 누가 실패했지만 아직 벌칙 이행을 하지 않았는지
개인 프로필 구성
닉네임, 약속 로그들 및 성공 실패 기록들
그 외 기타
-약속 기간이 마감인데도 지키지 않고 있으면 (그룹원에게) 알림이 간다.
약속을 잘 지키게 하는 요인들
위에서 언급한 선언 단톡방을 개선한, 약속을 잘 지키게 하는 요인들이다.
1. 접근성
어떤 습관을 들이는 데에는 접근성이 가장 중요하다. 만약, 운동을 하고 싶어도 헬스장이 너무 멀리 있거나 도움받을 만한 수단이 없다면 잘 안 하게 될 것이다. 반대로 주위에 운동하는 사람이 많아서 같이 할 기회가 많거나, 운동을 할 수 있는 환경이 쉽게 조성된다면 운동을 별다른 부담 없이 더 많이 하게 될 것이다. 우리 서비스는 인공지능을 통해 쉽게 운동을 확인받을 수 있게 한다.
2. 평판 관리
인간은 사회적 동물로 다른 사람에게 안 좋은 평판을 가지는 것을 매우 두려워한다.. 이를 이용해 약속을 다른 사람에게 알린다면, 자신이 거짓말쟁이가 되는 것이 두려워 동기부여가 될 것이다.
따라서, 우리가 기획한 서비스는 낮은 접근성과 평판관리를 통해 효과적으로 운동을 할 수 있게 도움을 준다.
비즈니스 모델
이 앱을 깔게 만드는 유인
1. 순수한 운동습관을 들이려는 사람
2. 운동 자세를 확인받고 싶은 사람
3. 함께 운동을 원하는 사회적 유대감을 원하는 사람
4. 아무 그룹에나 들어가서 아무것도 안 해도 랜덤으로 다른 사람들이 주는 벌칙을 받고 싶은 사람
5. 운동을 하지 않았을 시 벌칙을 걸었을 경우 벌칙을 수령할 지인
수익을 올리는 방법
- 사용자는 매일 출석 시 광고를 보고 포인트를 얻을 수 있다. 포인트는 기프트콘과 같은 다른 상품으로 변환된다. 포인트와 광고 수익 사이의 차액만큼 회사는 이익을 얻을 수 있다.
-포인트를 다른 상품으로 전환하려면 일정 금액 쌓여야지만 바꿀 수 있다. or 포인트에 만료기간을 넣는다. 이를 통해 포인트를 통한 추가 수익이 가능해진다
- 계약을 타인이 아닌 귀여운 캐릭터 모양을 한 회사와 할 수 있다. 이 경우 실패 시 벌칙에 건 것을 회사가 가져간다. 회사한테 생돈을 주는 것 이야말로 가장 선호하지 않을 테니 그 누구보다 약속을 잘 지킬 수 있다.
- 아팠다거나 모종의 사유로 정말 약속을 지킬 수 없었다. 할 때 면제권을 사용 가능함. 면제권을 쓰면 이행하지 못했어도 성공으로 처리. 이 면제권은 최초 가입 시 1장만 주고, 그 이후로 사용하려면 결제하게 한다. 이는 Duolingo 에서 사용하는 '일일 학습 면제권' 방식에서 따왔다.
항상 선입금 방식이다. 만약 벌칙으로 10000원을 주겠다고 걸었다면, 일단 10000원을 회사에 주고, 성공하면 포인트를 얹어서 돌려받고, 실패하면 벌칙 수령자에게 간다. 즉 약속이 이행되는 동안 돈은 회사가 가지고 있으니 이를 통해 이자수익을 올릴 수도 있다.
확장성
- 처음에는 몇 개 안 되는 운동만 측정할 수 있지만 인공지능을 학습시킴에 따라 인공지능이 판단하는 운동의 종류를 늘릴 수 있다.
운동뿐만 아니라 핸드폰 사용시간, 러닝 트래커, 매일 일기 등 다양한 약속으로 카테고리를 늘려나갈 수 있다.
개발
- NextJS를 이용하여 웹앱으로 개발하였다.
- 운동 자세는 티쳐블 머신으로 학습하여 NextJS로 만든 앱에 연동시켰다.
- 백엔드는 firebase로 처리하였고, 웹 앱으로 만들어 vercel로 배포하였다.
해당 웹으로 접속하면 저렇게 로그인 페이지가 나온다. 그래서 회원 가입 후에 목표 달성을 위한 그룹에 들어가면 오른쪽 화면과 같이 나온다.
달력을 넣어서 편하게 그룹원들의 약속내용과 약속 기간, 성공실패 여부를 확인할 수 있게 하였다. 그리고 운동을 카메라로 인공지능이 인식해 정자세일 때만 개수를 count 한다.
느낀 점, 있었던 일
- 나는 팀장으로서 총기획을 맡았다. 이전에 아이디어톤에서도 해당 아이디어로 교내 2위를 했었는데 그 내용을 조금 더 발전시켰다.
- 회의를 진행하여 정리해 단톡방에 올리고, 각자 프로젝트 완성을 위해 해야 할 일을 배분하였다. 이 과정에서 각자의 환경 차이로 git이 꼬이는 경우가 있었는데 적절한 git PR 요청으로 해결하였다.
- 우리 팀은 팀원 개개인의 개발능력에 차이가 있어서 각자 할 수 있는 역할을 배분하는 게 핵심이었다. 그래서 디자인, 관련 문서 제작, 인공지능 자세 학습 등은 상대적으로 개발 경험이 적은 팀원들에게 배분하여 빠르게 처리해 나갔다.
- 해커톤 도중에 원래 학습시켜 두었던 인공지능이 개수 count를 못하는 문제가 발생하였다. 해당 코드의 index.html을 뜯어보고 해커톤 시연장 한가운데서 직접 인식이 되는지 스쾃를 하면서 오류를 해결하였다.
- 웹으로 만들었는데 접근성 적인 측면에서 앱으로 최종적으로 완성하지 못한 게 아쉽다. 환경이 괜찮았다면 PWD를 통하여 앱으로 만들 수도 있었을 텐데 말이다.
- 앱으로 만드는 거 말고도 접근성 개선이 좀 더 필요할 것 같다. 원래는 실행하자마자 바로 운동이나 선언인증을 할 수 있도록 카메라가 켜져야 하는데 현재는 그 과정까지의 거리가 너무 멀다. 이러면 기존 취지에서 어긋난다. 프로젝트를 개선한다면 빠르게 카메라를 켜고 운동 인증을 하는 버튼을 만들 것 같다.
- 디자인에서 색감적인 측면을 많이 신경 썼다. 색 배합 사이트도 찾아보고 조합한 결과 기존에는 민트색이었는데 옅은 보라색으로 바꾸었고, 버튼이나 다른 요소들도 깔맞춤 하였다. 사용자들이 UI/UX 적으로 혼돈이 없도록 하기 위함이었다.
마무리하며
아쉽게 입상은 못했지만 좋은 경험이었다. 1박 2일 동안 팀원들과 함께 프로덕트를 만드는 경험 자체가 의미 있었다. 다만 멋사 건물 안에서 와이파이가 거의 먹통이었는데 그로 인해 더 신경 써서 만들 수 있었던 부분들을 시간에 쫓겨 그냥 제출해야 했다. 어려운 환경 속에서도 프로덕트를 완성시키는 게 진정한 협동심이 아니었을까 하는 생각이 든다.
사이크 링크:
깃허브 링크:
'개발' 카테고리의 다른 글
[리눅스 프로그래밍] WSL환경에서 Kernel 컴파일 하기 (1) | 2024.06.30 |
---|---|
[웹 프로그래밍] 나만의 사이트 만들기 (0) | 2024.06.30 |
[Unity] 스윙바이 게임과 유사한 2D 게임, Space (1) | 2024.06.30 |