1년에 1천 시간 몰입 프로젝트 - prototype
『타이탄의 도구들』과 『세이노의 가르침』을 읽고 구상해 본,
1년에 1천 시간 몰입하기 프로젝트를 지난 7월 8일부터 가열차게 시작했다.
1년 안에 1천 시간을 어떻게 채우는가? 계산을 한 번 해보자.
우선 1년은 52주(+1일)로 되어 있지만, 계산의 편의성을 위해 50주라고 가정하자.
혹시 짜투리 15일 쉬기 위해 남겨놨다고 생각했다면 정답!
그리고 일주일 7일 중에서 평일 5일은 회사 업무도 있기 때문에 2시간의 시간을 사용하고,
주말 2일은 자유롭게 시간을 쓸 수 있기 때문에 5시간의 시간을 사용한다.
역시나 계산의 편의성을 위해, 일주일 중에 섞일 수 있는 15일의 공휴일들은 잠시만 나중에 생각하도록 하자.
이렇게 해서 계산하면 1,000시간이 간단하게 나온다.
평일 2시간 X 5일 = 10시간
주말 5시간 X 2일 = 10시간
일주일 20시간 X 50주 = 1,000시간
50주에 포함되지 않는 15일은 자유롭게 활용한다.
여행을 떠나거나, 그동안 해보고 싶었던 것들을 하거나, 나만을 위한 휴가인 셈이다.
이 15일이 1년 중 어디에 포함될 것인지에 대한 것도 자유다.
다만, 1년을 4로 나눠서 91일마다 즉, 분기마다 250시간의 몰입 시간을 채워졌는지 검토할 예정이다.
그리고 평일 중에 있는 공휴일은 평일 규칙에 따라 2시간 몰입을 해야 하지만, 그 외 시간에 대해서는 자유다.
3시간, 혹은 그 이상의 시간을 더 몰입해서 1,000시간을 더 빨리 채우고 연말에는 좀 쉬도록 계획할 수도 있을 것이다.
아니면 영화를 보거나 독서를 하거나 컴퓨터 게임을 즐길 수도 있을 것이다.
1년의 중간인 7월 8일부터 시작했기 때문에,
아직 이 프로젝트는 정상 작동 여부를 확인하기 위한 prototype이다.
내년 1월 1일부터 본격적으로 시작할 예정이다.
몰입 시간 중에는 기술 서적을 공부하고, 인터넷 강의를 수강하고, 사이드 프로젝트를 만들고,
프로젝트에 대한 회고를 할 작정이다.
이 몰입 프로젝트는, 열정보다는 시스템이 성장하기에 유리하다는 전제를 바탕으로 한다.
나만의, 나를 위한 시스템으로서 잘 작동해주기를 바라는 바이다.
크롤러 구현이라는 것은 생각보다 어려워서
요즘 필자는 사이드로 Go 언어로 만들어진 CLI 애플리케이션을 통해서 작동하는 크롤러를 구현해보고 있는 중이다.
하지만 생각지도 못한 문제가 하나 생겼다.
내부적으로 ChromeDriver를 사용해서 크롤링하는 로직이 문제였다.
이 로직을 go run main.go 명령어를 통해 바로 실행하면 별문제 없이 크롤링을 수행할 수 있다.
하지만 go build 명령어를 통해 빌드한 후 ./(app-name) 처럼 실행하려고 하면,
크롤링에 40초 이상의 딜레이가 발생하는 것이다.
사실은 build 문제인지도 모르고 context를 중첩해서 문제가 생기는 게 아닐까 해서 일주일 가량을 허비했다.
어떻게 해결해야 하지? build를 간소화하는 옵션이 있을까?
하는 고민들을 계속하다가 결국, 다른 방법을 찾아보기로 했다.
내가 생각해낸 또 다른 방법은 Docker에서 ChromeDriver를 실행시켜 두고,
CLI 애플리케이션이 실행된 Docker의 url을 통해 크롤링을 요청하도록 하는 방법이었다.
그런데 이게 또 웬걸, 내 맥북이 m1 arm64 아키텍처를 사용하고 있어서 제대로 작동하는 ChromeDriver 이미지가 없었다.
더 이상 시간을 지체하기 싫었으므로, 가차 없이 다른 방법을 찾기로 했다.
지금은 결국 mac arm64용 ChromeDriver를 내려받아서 직접 실행시켜 두고,
여기서 제공해 주는 9515번 포트를 사용해서 크롤링 요청을 하고 있다.
뭔가 아쉽다. 하지만 비장의 차선책이 있다!
바로, ChromeDriver를 Lambda Layer에 담아두고 실행되는 AWS Lambda 함수를 활용해 보는 것이다!
물론 이 방법은 프로젝트 구상 초기에 생각했던 No Server, No DB라는 규칙에 어긋나는 일이다.
하지만 뭐 별 수 있나. 일단 이런 방향으로 추진하고, 나중에 더 나은 방법이 있을지 탐색해 보자.
나를 위해 작동하는 크롤러 (gif from GIPHY)
뒤숭숭한 여름
개발팀의 든든한 버팀목이 되어주셨던 Principal Engineer님이 나가시고, 출퇴근 규정이 엄격해졌다.
더 자세하게는 얘기할 수 없지만, 이로 인해 이번 여름에는 업무 분위기가 다소 어수선해졌다.
덥기도 너무 덥고 말이다!!!
하지만 앞으로 1년 더, 부트캠프 후불 요금을 완납하기 전에는 딴맘 품을 여유도 없다.
몇 달 전 새로 구매한 파세코 창문형 에어컨과 함께 조금만 더 힘내자!
'Essay > 월기장' 카테고리의 다른 글
2023.09 <강제 셧다운> (0) | 2023.09.23 |
---|---|
2023.08 <태풍이 지나간다> (1) | 2023.08.28 |
2023.06 <경배하라, 릴리트를> (0) | 2023.06.26 |
2023.05 <적색 경보> (0) | 2023.05.27 |
2023.04 <올바르게 성장하기 위한 재료들> (3) | 2023.04.30 |