본문 바로가기
📝 회고/✅ 22년 회고

[주간 회고] 22.01. 4주차 👫🕹

by kukim 2022. 1. 30.

일기 형태로 작성되었습니다.

 

월, 화요일

멀티 프로세스, 스레드 스케줄링하는 프로젝트를 했다. 스케줄링에 라운드 로빈을 적용했다. 자바에서 처음으로 스레드 생성을 했다. 자세한 내용은 일일 회고로 대체한다. [일일 회고] 22.01.24~25 - 자바의 동시성 프로그래밍과 몇 개의 아이템 적용

JK의 그룹 리뷰 시간도 유익했다. 인간과 인공지능의 차이점은 인간은 '모르는 것'을 바로 모른다고 할 수 있다. 하지만 기계는 모른다고 대답하기 위해 기계가 알고 있는 모든 정보를 검색, 계산하고 마지막에 모른다고 한다. 모르는 것을 아는 것, 비판적 사고와 메타인지를 높이는 것은 배움에 중요한 요소다. 또한 이미 안다고 하는 것을 점검할 필요가 있다. 사실 모르는 것인데 해당 지식을 자주 접하면 친숙하게 느껴져 안다고 착각할 수 있기 때문이다. 따라서 해당 지식을 아예 다른 분야 사람에게 설명하는 등 점검하는 방법이 필요하다. 또한 특정 지식이 익숙해져 알고 있다고 착각할 수 있다. 지식에 대해 항상 겸손하고 비판적 사고를 멈추지 말아야겠다.

 

수요일

행복은 멀리 있지 않다. 일상에서 나 자신과 마주하고 작은 것들에 감사와 기쁨을 느낀다. 하지만 멀리 있지 않은 행복을 느끼기 어렵다. 익숙한 것에 대한 기쁨을 누리는 삶은 그냥 주어지는 것이 아닌 의식적인 노력이 필요하다. 의식적인 노력 중 회고가 도움을 준다. 나라는 사람이 어떤 일에 좋고 안 좋은 것을 느끼고 나를 되돌아보고 분석할 수 있다. 요즘 발견한 것은 나는 오전 10~11시 사이 가장 예민하다. 왜냐하면 당이 떨어지기 때문이다. 그래서 10시에 당을 충전하는 편이다. (사탕 하나에 감정이 요동친다니.. 사실이다)

오늘은 컨디션이 떨어졌다. 집안일을 하고 기분전환을 위해 커피를 내리고 요리를 했다. 내일 또 힘을 낼 수 있겠다.

 

목요일

월,화요일에는 멀티 스레딩을 사용해봤다면 오늘은 이 작업을 비동기로 병렬 처리했다. 비동기와 멀티스레드가 헷갈렸는데 정리할 수 있었다. 비동기 작업을 이벤트로 처리하여 비동기는 멀티스레딩과 반대의 기술이 아니다. 멀티스레딩은 크게 두 가지로 구분할 수 있다. computed-bound의 멀티스레딩과 IO-bound이다. computed-bound 스레드는 CPU부터 메인 메모리 범위에서 실행되는 작업이다. 보통 실제 CPU에서의 계산이나 메모리의 데이터 처리이다. IO-bound는 CPU와 메모리 이외의 저장장치(HDD, SSD, 네트워킹)이다. 이 두 과정을 한 스레드에서 처리할지, n개의 스레드에서 처리할지, 동기로 처리할지 비동기로 처리할지를 정한다. 비동기를 사용하면 IO-bound 작업을 효율적으로 작업할 수 있다. 자바의 'completablefuture' 클래스를 사용해 비동기 작업만 생성하여 간단하게 작성했다. 

 

금요일

어제 비동기 프로젝트에 대한 JK 리뷰가 있었다. 어제는 이벤트 루퍼와 타이머를 사용하지 않고 while() 무한루프에 Thread.sleep() 시간을 단위로 구현했다. 이를 자바 라이브러리를 사용해 리팩터링 해야겠다. 또한 어제 비동기의 개수를 조건에 맞게 생성하였는데 이게 사실 스레드 poll이었다. OOP에도 적용할 부분이 많았다. 클래스 간 강한 결합을 인터페이스로 끊어줘야 했다. 팩토리 패턴도 추가하여 의존성 주입으로 결합을 줄일 수 있었다. 또한 출력에 publisher subscriber 패턴을 적용해볼 수 있었다. 중앙에 publisher Center을 두어 출력 클래스 e.g. DashBoard의 능동적 역할을 수동적으로 만들 수 있었고 이는 이후 1개 이상의 DashBoard에 대한 확장성의 강점도 있었다.

 

토요일

현재 슬랙을 무료로 사용하고 있다. 많은 정보가 매일 사라져 아쉬웠다. 줌 미팅도 무거운 느낌이 있어 가벼운 토크나 다양한 사람들과 스몰토크 하기 부담스러웠다. 방을 여러개 나누어도 접근성이 떨어지는 느낌이다. 40여 명의 멤버들에게 의견을 물었고 디스코드를 만들기로 했다. 혼자 하기보다 도와줄 동료를 찾았다. 후, 포키, 나단, 케이가 흔쾌히 도와줬다. 케이는 공지를, 나단은 디자인을, 포키와 후는 채널 생성과 관리를 도왔다. 채널명은 리아코의 센스로 채널명 '뒤끝'(back end)으로 정해졌다. 불과 하루 만에 멋진 디스코드 채널이 만들어졌다. 혼자 했다면 금방 지쳐 오래 못했을 거다. 하지만 동료들과 함께 일을 나누고 시작하니 쉬웠다. 오히려 즐거웠다. 과거를 되돌아봤다. 예전엔 남들에게 폐 끼치는 게 미안했다. 그냥 내가 참고 일을 더 했다. 하지만 오래 지속하지 못했다. 주변 반응도 오래가지 못했다. 이제는 함께 하는 방법을 알 것 같다. 이곳에 힌트가 있다. 

 

일요일

휴식이다. 주말을 정리하고 부족했던 하루를 점검한다. 다음주에 비동기 글을 작성해야겠다. 반스가 저녁에 테스리스 대회를 열었다. 어제 만든 디스코드에서 진행했다. 성공적인 일주일이었다.

뒤끝 - 제 2회 테트리스 최강전

댓글