EEYatHo 앱 깎는 이야기

2023 Summer [let us: Go! 찍먹톤] 참가 후기 - EEYatHo iOS 본문

iOS, Swift/Conference

2023 Summer [let us: Go! 찍먹톤] 참가 후기 - EEYatHo iOS

EEYatHo 2023. 6. 30. 17:51
반응형

 

개요


  • 이번 2023 렛어스고 찍먹톤 행사에, 정말 운이 좋게도, 예비에서 붙어서 참가하게 되었다!!
    • 2023 WWDC 에 나오는 신기술들을 주제로,
      6월 10일 하루동안(10~20시) 미니 프로젝트를 진행하는 컨퍼런스다.

 

 

행사 전날


  • 팀 메이킹
    • 나 포함 네명이 한 팀으로 팀이 만들어졌고,
      팀원으로는 민디고님, 김호세님, 라면먹는 제이지님을 뵙게 되었다.
    • 총 10팀 중에 우리가 1팀(첫번째) 이었다.

 

  • 디스코드 회의
    • 행사 전날에 디스코드로 미리 모여서 얘기해보자 하셔서 놀랐다.
      ( 해커톤같은 걸 안해봐서인지, 생각지도 못했다.. )
      야근 후 돌아가서 바로 디스코드로 들어갔다.

    • WWDC 볼륨 워낙이 커서, 다들 미처 다 시청하지 못하셨고,
      어떤 신기술을 사용해볼지, 그 기술에 관해 어떤 영상들을 보고 올지만 정했다.

    • Widget Live Activity, 실시간 Dynamic Island 업데이트, SwiftData, Macro 를 사용해보자 했고
      아무도 SwiftUI 경험이 없지만 SwiftUI 도 겸사겸사 맨땅에 헤딩 해보자고 했다

 

 

행사 당일 (오전)


  • 행사장 도착
    • 1시간 정도 일찍 도착했는데 1등이었다
    • 블로그나 단톡으로만 보던 분들을 실제로 뵈니까 너무 신기했었다
    • 찍먹톤 티셔츠와, 목에 거는 이름표를 받았고, 무제한 간식을 제공받았다 👍

 

  • 아이디어 회의
    • 10시에 시작하여 팀끼리 모여 앉았고, 처음 대면으로 만나서 아이스 브레이킹을 했다.
    • 다양한 앱 아이디어가 나왔으며, RunningRPG 라는 앱을 만들기로 했다.
      • 우리가 만들어야하는 앱은
        실시간으로 업데이트가 되어야했고, (실시간 Dynamic Island 업데이트)
        Widget 으로 바로바로 제공할만한 정보가 있어야하며, (Widget Live Activity)
        로컬DB도 활용해야 했다. (SwiftData)

      • 이에 부합하는 것이 만보기를 통해 몬스터를 사냥하는 RunningRPG 였다.
        Widget 이나 Dynamic Island를 통해,
        실시간으로 걸음 수를 보여 줄 수 있으며, 싸우고 있는게 어떤 몬스터인지, 남은 체력이나 쌓은 재화 등을 보여줄 수 있고,
        게임이므로 들고 있을 로컬 데이터도 충분해보였다.

      • 정말로 남는 결과물이 있으면 좋을 것 같았고,
        아이디어도 마구마구 나와서 디테일한 설정이나 BM, 운영방법들도 잡았다. ( 기밀사항 !! )
    • 12시에 각 팀마다 어떤 주제를 선정했는지 나가서 간단히 발표를 진행했다
      라면먹는 제이지님이 발표해주셨다 👍👍

 

 

행사 당일 (오후)


  • 개발 시작!! 그리고 곱씹어보는 문제점들..
    • 각자 업무를 분담해서 개발을 시작했다.
      • 이얏호(나) : 홈화면 상단 UI, 하단탭바, 만보기 모듈
        라면먹는 제이지님 : 홈화면 하단 UI, 위젯
        민디고님 : 이미지 소스, 다이나믹 아일랜드
        김호세님 : 몬스터 사전 (리스트) 화면, 다이나믹 아일랜드
    • merge 하다가 꼬여서 시간낭비를 많이 했다..
      • 주도적으로 머지 전략을 리드하는 사람이 없는게 가장 큰 문제였다.
        고작 3년차지만 내가 제일 선임개발자 였는데, 자신감있게 제대로 리딩하지 못한 것 같아서 너무 아쉽다..
      • 내가 맨날 1,2명이서 개발하다가 네명이서 하다보니,
        내가 아는 git 지식으로 리딩하기엔 자신감이 부족했던 것 같다
    • SwiftUI 를 얕잡아봤다.
      • UI 그리는 거는 쉽게 되었는데, Data 를 조작하는 부분이 완전 생소하다보니..
    • 그외 문제들.. 시간 부족..
      • 신기술들 테스트에 실제 디바이스 & iOS17 가 필요해서 시간이 더 지연되었다.
        ( 민디고님이 아이폰을 iOS17 업데이트를 해주셨다 👍👍 )

      • 왜인지 모르겠지만 디바이스가 맥북에 연결되어 있어야, 다이나믹 아일랜드가 실시간으로 반응했다.
        ( 마지막까지 이거 삽질한다고 시간을 얼마나 날린겨ㅓㅓㅓ!! )

      • 위젯도 다이나믹 아일랜드와 자꾸 꼬이는 듯 했다.
        ( Target 관련해서 자꾸 문제가 생기는 듯 했는데, 메인 화면이랑 만보기 신경쓰느라 도움을 못드렸다 ㅠ )

      • 결국 시간 모자라서 Macro 나 SwiftData 는 손도 못 댔고, 위젯도 못 넣었고, 기능 & UI도 미구현 천지...

      • 다음에 해커톤 같은 프로젝트에 참여하게 된다면, 좀더 실현 가능성 있게 목표를 잡아야 겠다고 느꼈다.
        ( 너무 시간에 쫒기면서 개발해서 공부나 연구를 병행하지 못한게 아쉽다. )

      • 시간 부족해서 점심먹으면서 계속 개발했다!!
        점심은 넘 맛있었다. 치킨마요🧡

  • 김호세님이 간략한 ORM을 그려주시기도 했다 👍👍👍

 

 

마무리


  • 최종 결과 앱
    • Github : https://github.com/letusGo-Hack/RunningRPG
    • 아쉬운 점 투성이지만 그래도 만보기는 잘 작동했다.
      • 걸음수에는 HealthKit으로 접근하는 방법과 CoreMotion로 접근하는 방법이 있는데...
        건강 데이터 전체가 필요하지도 않기에 CoreMotion으로 접근하였다.
    • 앱 안에서 걸음 수에 따라 몬스터의 체력이 줄어든다.

    • Dynamic Island 도 잘 작동했다!!
      걸음 수에 따라 몬스터의 체력이 줄어든다!! 😎😎😎

    • 몬스터 리스트 화면을 김호세님이 깔끔하고 멋있게 완성 해주셨다.

    • 메인화면 UI 가 그럴싸하게 잡혀있다..ㅎ

Home  / 몬스터 리스트 / 다이나믹 아일랜드

 

  • 저녁식사 및 발표
    • 저녁 식사
      • 피자를 먹으면서 팀별로 돌아가면서 최종 발표를 진행했다.

    • 다른 팀의 수려한 앱들..
      • ShareKit 으로 상호작용하는 앱들 ( MBTI 명함 교환, 캐치마인드, 미니게임 등 )
      • RealityKit 으로 내가 원하는 물건을 3D 모델링으로 기록하는 앱들
      • Dynamic Island, Widget 을 이용한 지하철 추적, 라면 타이머, OP.GG 등
      • 수려한 앱들이 많이 정말 많이 나왔다.

    • 발표는.... 망해버렸다....
      • 마지막까지 개발 및 버그픽스 하느라 발표 준비를 아에 못했는데,
        내가 가위바위보 져서 발표하러 나갔고, 완전 횡설수설 했다 ㅠㅡ..
        ( 그런데 그걸 회사 선임분이 스트리밍으로 보셨다...😇 )
      • 그나마 팀원분들이 한마디씩 거들어주셔서 다행이었다.

 

 

 

  • 수상
    • 그런데 이게 왠걸? 우리 RunningRPG 가 최우수상을 수상하게 되었다?!
    • 전혀 예상을 못해서 순간 잘못 들은 줄알았다!! 세상에 감사합니다 ㅠ푸ㅜㅜㅜㅜ

 

 

 

최종 후기


  • 시니어 분들한테 무언가 더 많이 배울 기대를 하고 갔지만, 갓 3년차인 내가 팀에서 최고연차여서 살짝 아쉬웠다.
    그런데 다들 잘하셔서 놀랐다!!

  • 자신감있게 리딩하지 못한 것 같아서 너무 아쉽다..
    다음에 기회가 되면 좀더 주도적으로 리딩해야겠다.

  • 이런 프로젝트류 컨퍼런스에 처음 참여했는데,
    자연스럽고 재밌게 신기술을 습득하게 되고, 인적 네트워크도 형성할 수 있어서 너무 만족스러웠다.
    지속적으로 참여하려 해야겠다.

  • 다음에도 이런 프로젝트에 참여하게 된다면, 좀더 실현 가능성 있게 목표를 잡아야 겠다고 느꼈다.
    너무 시간에 쫒기면서 개발하니, 공부나 연구를 병행하지 못한게 아쉽다.

  • 기획과 디자인, 머지 전략을 다시 확고하게 잡고 추가 개발할 예정이다!!

 

Comments