Devfest GDG Daegu Hackathon 2022 회고

김한울·2022년 12월 4일
1

회고

목록 보기
5/6
post-thumbnail
재밌게 했던 Devfest GDG 대구 해커톤이다!
아주 절거웠어요

👋 여는 말

요즘 한 달에 한 번은 해커톤에 나가는 것 같다. 9월부터 4번 째 나간다... 나도 내가 해커톤 중독이 될 줄은 몰랐는데, 그냥 나가다 보니까 벌써 이게 몇 번째 해커톤인지도 모르겠다. 이번 해커톤은 일정이 딱 12시간으로 잡혀있고, 중간에 카타르 월드컵을 본다고 해서 가벼운 마음으로 친구도 끌어들여서 신청했다.


🍿 팀 빌딩

호텔에 도착해서 프론트 백엔드 디자이너 기획자로 나뉘어진 판에 이름을 붙였다. 해커톤이 시작하고 상품 주는 두근두근 룰렛 돌리기도 하고, 운영진 분들의 삶 발표도 듣고, 이것저것 하고 나니 팀 빌딩을 한팀한팀 불러주셨다. 당황스럽게 1조라서 바로 불려서 팀원 분들과 통성명을 했다. 사실 소마고 모임인 줄 알고 도망치려고 했는데 친구가 바짓가랑이 붙잡고 울어서 오기로 했던 건데, 우리 팀원 분들은 다 대학생이셨다. 프2 백1 디자인1이었다. 근데 디자인 하시는 팀원 분은 인공지능 하시는데... 인공지능 칸이 없어서 디자인에 넣었다고 하신다. 외로운 백엔드...


💭 아이디어 회의

아이디어는 엄청나게 금방 정했다. 보통 무박 2일이나 3일 하는 해커톤을 12시간밖에 안 하는데, 중간에 월드컵도 보고 야식도 먹고 발표도 봐야 해서 실질적으로 개발하는 시간은 6시간 됐나? 엄청 짧았다. 어차피 심사도 운영진 50% 민간인 50%였다. 그래서 간단하고 재밌는 아이디어를 찾고 있다가, 어차피 다들 깃허브 아이디 하나씩은 있으니까 github 활동을 분석해서 그 사람의 mbti를 유추해 내는 서비스를 개발하기로 했다.

😻 GITI


GITI, 깃허브로 알아보는 MBTI! 깃허브 이름을 입력하면, 깃허브 contributions 수와 팔로잉, 팔로워 수 같은 유저 정보를 githubAPI를 사용해서 긁어 온다. 그리고 그러한 정보를 바탕으로 사용자의 MBTI를 유추해서,

다음처럼 귀여운 mbti별 토마토와 함께 나타낸다. (이 귀요미 토마토도 팀원 분께서 열심히 그렸다... 짱귀입니다...)


💻 개발

깃허브 API를 써본 적이 없어서 많이 헤맸다. 간단한 거라 얼마나 다행인지 모른다. 일단 나는 쓸 줄 아는 것 중에 스프링을 가장 잘 하니까 개발 효율 좋은 스프링을 사용하기로 했다. github user 정보를 끌어오기 위해 spring cloud의 feign client를 사용했다. feign client는... 참 사용하기 쉽고 편하고 좋은 것 같다. 또한 contributions 수를 따로 또 긁어와야 했는데, 이건 REST API로 해결이 안 됐다. 이곳저곳 찾아보니 github의 graphQL api를 사용해야 했다. feign client에 graphql도 지원했으면 좋았을 텐데, 그런 기능은 없어서 라이브러리를 직접 찾아보기 시작했다. 나같이 graphql을 사용해야 하는 사람은 없었는지 잘 나오지 않았다. 겨우겨우 하나 찾아내고, 예제도 없어서 메소드를 하나하나 뜯어보면서 사용했다.


🍅 발표

이런 알 수 없는 ppt가 우리의 발표 자료이다. 참고로 저 qr code는 들어가도 동작 안 한다. 서버를 껐기 때문이다. 팀 이름이 멋쨍이 토마토라서 수치스럽게 토마토 노래도 부르고, 1분 발표라서 엄청 편하게 발표했다. 무엇보다 실제 서비스에 접속해서 사용해보도록 했다. 발표가 끝나고 데이터베이스를 까보니 50명 정도가 사용했다.


📺 결과

입상은 못했다! 하지만 팀원과 개발하고 노는 게 즐거웠다. 재밌었고, githubAPI를 다뤄보는 것도 처음이라 신선했다. 사실 동아리 프로젝트에서 github API 만질 일이 있었는데 이번 대회를 통해 프로젝트 코드 미리 짠 것 같아서 개이득이라는 생각이 든다.


⭐️ 어김없이 세 가지 점들

😚 즐거운 점

  • 월드컵 포르투갈전!!!!
    웬 소리냐고 하겠지만 이번 해커톤에선 이게 가장 절거웠다. 어떻게 이걸 이기지? 팀원 분들이랑 경기 시작 전에 삼단논법으로 일목요연하고 조리있게 설명했다. 지금 우리나라와 포르투갈의 축구 역사 속에서 우리나라의 승률이 100%이다. 그리고 오늘 하는 것은 우리나라와 포르투갈의 축구 경기이다. -> 그러므로 우리는 오늘 승리한다. 였는데 이걸 증명하고 말았다... 역시 삼단논법은 틀리지 않아........ 골 넣을 때 모든 사람들이랑 함성 지르는 분위기도 좋았다. 특히 연장 시간 역전 골은 진짜... 입을 못 다물겠다.......

  • 팀원들과 놀기
    그냥 새로운 사람 만나서 티키타카 노는 게 즐거웠다. 어쩌면 이게 내 해커톤 참가의 원동력인 것 같다. 개발 얘기도 하고, 장난도 치고, 많이 지쳐있었는데 리프레시가 충분히 된 것 같다.


😈 아쉬운 점

  • 발표로 자세한 로직을 말 못했다.
    말해야지 말해야지 다짐하고 올라갔는데, 까먹고 github 여러 정보를 분석해서 도출한다는 사실을 말 못했다. 이게 다 토마토 노래를 불렀기 때문이라고 본다... ㅎㅎ 앞으론 이런 중요한 말 할 것들은 슬라이드에 힌트 느낌으로 추가하면 좋을 것 같다.

  • 배가 아팠다.
    사실 해커톤 할 때마다 느끼는 건데 밤새고 아침에 배가 너무너무너무너무너무 아프다. 아팠다보다는 울렁거린다가 맞나? 빈속에 커피를 때려 넣어서 그런가? 이런 생각을 하면 야식을 먹어서 그다지 빈속도 아닌 것 같다.

  • graphql 쓸 줄도 모르면서 복붙했다.
    100번은 썼다 지웠다 했다. 수치스럽기 때문이다. graphql 쓸 줄도 모르면서 github contributions 수 긁어오는 쿼리문 복사해서 그대로 사용했다. 솔직히 공부해서 직접 짜는 건 시간 여유도 없어서 가능한 일은 아니었다고 본다. 이걸 여기에 쓰는 이유는, 다짐하기 위해서이다. 이렇게 박제해 놓고, 나중에 graphql 공부해서 꼭 저거 이해해야지!

😎 배운 점

  • httphttps가 서로 http 통신을 못 한다
    그동안 제대로 https로 배포해본 적이 없어서 서로 통신할 수 없다는 사실을 몰랐다. 해봐야 라즈베리파이에 배포, vercel에 백엔드 없이 프론트만 배포, aws에 백엔드만 배포였기 때문에 몰랐다. 하지만 이번에 팀원 분이 알려주셔서 알게 되었다. 완전 비상 상황이었는데, ngrok 써서 해결했다.

🤫 비밀스런 이야기

운영진 분들 고생하셨습니다!
아주 즐거웠어요 특히 월드컵...
1조 멋쨍이 토마토 팀도 수고하셨습니다! 재미었어요!
참가한 모든 분들 멋있었습니다!

profile
hanulog.vercel.app

0개의 댓글