계획을 세우고 있습니다.
실천할 수 있는 계획을 세우기 위해선 명확한 목표가 있어야할 것 같습니다. 최종 목표를 세우고 최종 목표를 단기적으로 성공할 수 있는 단위로 목표를 분할해야 성공하기 쉽다고 합니다.
저는 뚱뚱하기 때문에, 3달 동안 다이어트를 하고 싶습니다. 음... 30킬로그램 정도는 뺐으면 좋겠습니다. 건강하게 오래 살고 싶네요. 또한, 영어 공부를 하고 싶습니다. 영어로 된 레퍼런스나 자료를 읽는게 힘이 드네요. 좋은 프로그래머가 되고 싶은데, 영어를 좀 더 잘하지 않으면 좋은 프로그래머가 되기 힘들 것 같습니다. 그리고 습관을 기르는데 도움이 되는 앱을 하나 만들고 싶습니다. 구글 마켓에 보니 그런 앱이 있긴 한데, 제가 원하는 기능을 딱 맞춘 앱은 없는 것 같습니다. 공부도 할겸, 앱하나 만들어야 어디가서 프로그래머라고 당당하게 말할 수 있을 것 같습니다. 모바일 앱을 만들고, 그 앱에서 사용하는 REST API 서버를 만들면 되겠네요.
정리하면 저는 현재 다이어트, 영어공부, 앱개발. 이렇게 세 가지 목표를 가지고 있습니다.
1. 다이어트
헬스장에 매일 출석합니다. 제가 다니는 헬스장은 일요일에 쉬니까, 일주일에 6일이 되겠네요. 그리고 하루 식단을 식단 기록 앱에 기록합니다. 처음 일주일은 칼로리 제한을 두지는 않고, 먹은 것을 빼먹지 않고 기록해, 제 식습관이 얼마나 형편없는지를 보려고 합니다. 헬스장 출석과 식단 기록은 사흘 전부터 시작했습니다.
2. 영어공부
영어 공부에 하루의 대부분을 사용할 수는 없고, 조금씩 꾸준히 공부하는 습관을 기르고 싶습니다. 영어 인강 사이트에서 두 달동안 하루도 빠짐없이 강의를 수강하면, 수강료의 일부를 환급해주는 이벤트가 있더군요. 결제 했습니다. 꾸준히 영어 공부를 해내기 위한 동기부여로 이보다 더 강한 동기가 있을까 싶습니다. 오늘 오전에 1일차 수강을 완료 했으며, 앞으로 63일을 하루도 빠짐없이 수강하고 그 내역을 인증해야 합니다.
3. 모바일&웹 앱 개발
모바일 앱은 React Native나 Flutter를 사용해 만드려고 합니다. 두 방법 모두 지금은 잘 모르기 때문에 공부해야합니다. 웹 앱도 만들 계획이기 때문에 React Native가 좋을것 같다는 생각도 했는데, 저는 VueJS를 조금 다룰 줄 아니, 웹 앱은 VueJS를 사용해 만들고, 모바일은 React Native보다 성능 측면에서는 조금 더 좋다는 Flutter를 이용해 만드는 것도 나쁘지 않을 것 같습니다. 걸림돌이 있다면, Dart를 새로 익혀야한다는 것이겠네요. 대강 살펴보니, JavaScript와 Java를 섞어놓은 것 같은 문법이던데, 두 언어 모두 능숙하게 사용하지 못하는 제가 새로운 언어를 또 익히는게 잘하는 일인지 모르겠습니다.
백엔드 서버로 사용할 Rest API 서버는 스프링 부트를 사용할 예정입니다. 데이터베이스는 제게 지금 익숙한 MySQL 등의 RDMS를 사용할지, MongoDB를 사용할지 고민 중입니다. 검색이 필요한 앱인 경우, 엘라스틱서치를 연동하려 합니다.
영어 공부와 다이어트는 할애해야하는 시간이 비교적 명확한데, 이 목표는 시간을 어떻게 분배해야할지 감이 잘 안오네요. 그래도 최소 하루에 5시간 이상은 코딩에 시간을 투자할 생각입니다.