인생 첫 라이브 코딩 후기 : 야추 다이스(yacht dice) 3D 게임 만들기
일단 내 코딩 실력을 객관적으로 파악해볼 수 있었다. 저정도 기능을 5시간 걸려서까지 만들 필요가 있었는지 반문해보며, 2시간 안에도 충분히 구현해볼 수 있다는 생각이 들었다. 설계의 중요성을 체감했고 지금처럼 직관과 감에만 의존해서 개발하기에는 무리가 있다는 결론을 내렸다.
시간 절약에 도움이 되었다. 아마 라이브코딩을 하지 않고 편하게 개발했으면 이틀 넘게 걸렸을거라 생각한다. 특히 저 프로젝트는 내 아이디어 노트에 적혀있는 우선순위가 가장 아래에 있는 프로젝트였다. 당연하게도 사전 설계나 준비가 없었고 급하게 개발할 목적으로 만들었다.
내 시간을 어디에 활용하는지 검증해볼 수 있었다. 특히 3시간이 넘는 시간동안 쉬는시간을 10분간 가져갔는데, 아마 앞으로는 50분마다 의무적으로 쉬는걸로 해야겠다. 중간중간 집중력 저하 기간이 왔었고 이번 라이브코딩에서는 강제로 집중하다보니 결과적으론 시간이 더 길어지는 현상이 나타났다. 앞서 언급했듯 2시간 짜리 분량이다.
누군가가 보고있다는 긴장감을 줄 수 있었다. 집에서 코딩할때는 그런 긴장감을 전혀 줄 수 없다. 아마 나중에 대회나가서 집중할때에 도움이 될 듯 싶다.
수학 부분은 여전히 힘들다. 쿼터니언 값을 가지고 주사위 값을 계산하는 부분을 가져다 썼다. 조금만 노력하면 빠르게 공식을 만들 수 있지만, 시간 내에 핵심 기능을 만들어야 한다는 압박감에 시중에 나와있는 코드를 대입해서 문제를 해결했다. 프로그래머로써 부끄럽다.
이전에 만들어놓은 보일러 프로젝트를 요긴하게 사용했다. 보통 수학 문제를 풀때 공식을 미리 적어두듯이 프로그래밍도 마찬가지다. 사전에 만들어둔 보일러 프로젝트가 없다면 초기 세팅에 시간을 빼앗긴다.
그럼에도 마무리짓지 못했다. 사실 socket io 연동해서 모바일 컨트롤러를 구현하는건 그렇다 해도, 디자인하고 물리엔진까지는 끝낼 수 있다고 생각했다. 그러나 앞서 언급한 쉬는시간 분배 문제로 급속하게 피로가 몰려왔고 수학 파트등 어려움이 겹쳐 사전에 끝내지 못했다. (cannon es의 불친절한 문서로 인한 시간 낭비는 덤.)
+ 랜덤 난수 생성에서 범위 공식을 까먹었다. 첫 라이브라 긴장한 탓도 있겠지만, 와 이걸 까먹네 하는 생각으로 인해 충격받았다. 역시 기초가 중요하다.
종합하자면, 스스로 꽤 잘 한다고 자부했으나 기초가 중요하다는 생각을 다시끔 했다. 코딩 스킬, 시간 분배 측면에서 도움을 얻었고 반성했다.
집에서 공부하는 취준생이나 주니어 개발자들은 엄청난 도움이 될 것 같다. 나태해질 수 없는 환경을 만들어두고 제한 시간 내에 공부하면 실력 향상에 도움이 되는데, 라이브 코딩이 그 대안일듯 하다.
코드가 궁금한 분들은,
댓글
로그인 후 댓글을 남길 수 있습니다.
저 야추 다이스 진짜 좋아하는데 배포되면 꼭 플레이해보겠습니다!!!
라이브 코딩....좋네요!! 기다립니다...!!