ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [회고] 2019 오픈핵 해커톤
    카테고리 없음 2019. 7. 3. 20:08

    2019 OPENHACK

    2019.06.26. - 29. 전북 익산에서 2019 오픈핵이 열렸다.

    한 가지 다른 해커톤과 크게 다른 점이 있다면, 참자가들이 모두 SW중심대학 소속 대학생이라는 점이다.

    전반적인 진행은 비교적 비슷하지만, 몇몇 오픈핵만의 장점들이 있는데 그 부분들은 아래에서 차차 써보겠다.

     

    오픈핵은 대학생 5명이 모여 한 팀을 이룬다.

    사전에 팀구성은 불가능하고, 같은 학교끼리 팀구성을 하지 못한다.

    개발자 4명과 디자이너 1명으로 이루어지고, 기획자는 따로 없이 누구나 아이디어를 피칭해서 팀장이 될 수 있다.

    대략 30개 정도의 아이디어들이 선정되고 팀이 만들어진다.

     

    자기소개, 아이디어 피칭, 팀빌딩 이 모든 과정이 대략 3시간 동안 이루어진다. 

    정신없이 시간이 지나면, 내 앞에 처음 보는 사람 4명이 앉아 있게 된다. 

     

    해커톤의 일정은 굉.장.히. 단순하다.

     

    팀이 만들어지게 되면, 

    개발하고 밥먹기

    가 무한 반복된다.

     

    오픈핵만의 장점이라고 하면,

    수 많은 멘토들

    이다. 

    다른 해커톤에도 멘토님들이 많이 계시기는 하는데, 오픈핵처럼 적극적이진 않으셨던 거 같다.

    오픈핵 멘토님들의 영향력은 무지막지하다...

    굉장히 다양한 도움을 받을 수 있다. 

     

    우리 팀같은 경우에는 css작업하는 데 애를 먹어서, 멘토님께서 대략 1시간 정도 가르치면서 도와주셨다. (짝코딩 형태로 도와주셨다.)

    웹 프론트부터 백, iOS, Android, ML 등 거의 모든 분야에서 도움을 받을 수 있을 정도로 다양한 멘토님들이 계신다.

    멘토님들도 참가자의 일부인 것처럼 즐겁게 도와주셔서 부담없이 도움을 요청하고 많은 걸 배울 수 있었다. 

    물론, 이것을 이용해 먹지는(?) 않았고, 정말 해결하기 어려웠을 때 도움을 요청했었다. 

     

    다시, 우리 팀을 돌아보면

    개발자 4명과 디자이너 1명으로 구성되었고 

    개발자 그룹을 크게 나누면 백엔드 2명과 프론트엔드 2명으로 구성했다.

     

    우리 팀의 주제는 

    '주니어 개발자를 위한 개발 자료 모음 플랫폼'이었다.

     

    서비스의 이름 Dev init

    서비스의 이름은 dev init 이다.

    npm init, git init 처럼 개발을 시작하다. 라는 의미로 네이밍을 해보았다. ($ sudo dev init)

     

    개발을 시작할 때, 특히 웹 과 앱, 도움이 되는 자료들을 모아주는 플랫폼이다.

    보통 구글링으로 React tutorial, Flutter tutorial 등을 검색하며 공부를 시작한다. 

    하지만, 같은 검색어라도 굉장히 다양한 자료들이 검색 결과에 노출이 되는데 

    검색 결과에는 아래와 같이 제목, 간단 내용 정도 밖에 나오지 않아서 정확히 어떤 내용을 다루고 있는 지 가늠하기 쉽지 않다.

    react tutorial 을 검색한 결과 (구글)

    또한 주니어 개발자로서 해당 블로그 글을 다 읽더라도 실제로 처음부터 끝까지 다 따라하지 않는한 어떤 주제의 튜토리얼인지, 어떤 난이도의 튜토리얼인지 등 심지어 내가 무엇을 하고 있는지 조차도 쉽게 판단하기 어렵다. 

     

    그래서 해당 서비스에서 아래와 같이

    구글과 똑같이 검색 (+ 주제별 검색)을 한 다음에

    아래와 같은 검색결과가 나오게 된다. (아래 예제는 검색한 키워드와는 무관함)

    그 후에 링크 별로 세 가지 추가 정보가 제공된다.

    1. 정보 태그

    2. 레벨

    3. 하트 

     

    정보 태그

        URL에 담겨져 있는 제목과 요약만 가지고 판단하기 어려운 안의 내용을 태그로 좀 더 보충 설명할 수 있다. 따라서 링크를 직접 누르지 않더라도 해당 링크가 어떤 내용을 다루는지 보다 더 상세하게 알 수 있다. 심지어 주니어 개발자들은 링크를 들어가 직접 보더라도 이게 어떤 내용을 다루고 있는건지 정확하게 판단하기가 매우 어렵다. 

     

    레벨 

        튜토리얼, 예제 등은 쉽다곤 해도 난이도가 천차만별이다. 예를 들어, 기본적인 nginx 서버 구축하는 거라면 쉽겠지만 어떤 블로그에서는 nginx를 docker를 통해 container 구축하는 예제가 있다. (같은 키워드로 검색을 했는데도) 따라서, 각자가 느끼는 난이도를 평가할 수 있게 기능을 제공하여 해당 링크의 난이도의 난이도를 알 수 있게 한다. 난이도를 운영자 측에서 설정하게 된다면, 주관적인 난이도로 끝나게 될 수 있는데 직접 링크를 읽고 온 사용자에게 난이도를 물어보게 한다면 주관적인 난이도 데이터들이 점차 쌓여 점점 객관적인 난이도로 조정이 될 것이다.

     

    하트

        단순히 내가 이 링크를 추천하는가이다. 사람들은 항상 좋은 자료를 찾기를 원한다. 같은 정보, 비슷한 난이도여도 분명히 받아들이기 좋은/나쁜 자료는 구별된다. 이 지표를 하트 기능으로 해결하고자 했다. 또한 일종의 북마크 기능으로, 마이페이지에서 내가 하트를 누른 글들을 모아볼 수 있게 했다.

     

    결론적으로는, 구글 검색으로 아래 세 가지가 핵심이다.

    1. 부족한 정보를 채우고

    2. 난이도를 측정하고

    3. 질 좋은 자료를 모은다. 

    구글링도 실력이라고 하지만, 주니어 개발자가 개발을 막 시작할 때 구글링을 도와주는 사이트라고 할 수 있겠다. 

     

    모든 소스는 오픈소스로 제작되었고 깃헙 주소는 아래와 같다.

    https://github.com/openhack-jgs

    https://github.com/openhack-jgs/jgs-front-end

    https://github.com/openhack-jgs/jgs-back-end

     

    openhack-jgs

    openhack-jgs has 2 repositories available. Follow their code on GitHub.

    github.com

     

    앞으로 개인적으로 필요하다고 생각하는 서비스이기 때문에 보완할 점을 보완하고 프론트엔드 부분은 새롭게 개발하여 토이 프로젝트로 시작해볼까한다. 그리고 무엇보다도 오픈소스로 운영할 것이기 때문에 언제나 PR은 환영...

     

    댓글 0

inthewalter