rinae's devlog

안도형(Dohyung Ahn)
삽질을 하고, 글을 남기면서 다른 사람들과 함께 자라고 싶어하는 프론트엔드 개발자입니다. 더 좋은 코드와 설계를 항상 고민하며 지식을 어떻게 효율적으로 습득하고, 어떻게 잘 나눌 수 있을지도 고민합니다.

GitHubTwitterFacebook

This month I Learned - 2021년 7월

(내용 정리에 생각을 덧붙일 경우 🤔 이모지를 첨부합니다.)

General

  • How To Create An On-Off Button For Your Mind - 마음 속 켜기/끄기 스위치 만들기 (미디엄 유료)

    • 부정적이든 긍정적이든 생각을 너무 많이 할 수록 정신력 소모가 크다. 그래서 때때로 뇌를 쉬게 해 주어야 한다. 이 글은 뇌를 쉬게 해주는 방법 몇 가지를 소개한다.
    • 매일 저널을 작성한다.

      • 우리 모두 머릿속에 계속 재잘대는 무언가가 있는데, 종이에 그 생각을 적어내려가면 조금 다루기 수월해진다.
      • 특별한 시스템을 구축하거나 대단한 강좌를 들을 것 없이 생각을 그냥 써 보라.

'자바스크립트는 왜 그 모양일까?' 읽기

도입부

  • 이 책은 자바스크립트를 철저하게 ‘프로그래밍 언어’ 관점에서 접근하고 있다. 엔진이나 웹의 구동 환경 등을 다루지 않고, 언어 자체에 대해 모든 개발자가 알아야 할 것들을 다룬다.

    • 그래서 자바스크립트라는 언어에 대해 조금 더 깊이있게 알아보고 싶은 사람들, 분야에 따라 관심은 없지만 ‘현재 대세인 언어 중 하나’ 에 대해 관심이 있다면 살펴볼만 하다.
    • 또한 필자가 주장하게 될 자바스크립트를 ‘잘 사용하는 법’ 에 대한 이야기는 결국 자바스크립트 뿐 아니라 프로그래머로서 더 나은 방식으로 코드를 작성하는 방법에 대한 이야기이기도 하겠다는 생각이 들었다.

This month I Learned - 2021년 6월

General

  • 역사가 말해주는 포스트 팬데믹 경제 호황의 교훈

    • 막연하게 ‘팬더믹이 끝나면 경기가 활성화 될 것이다’ 라고 생각은 해 왔지만, 역사적으로 짚어보며 그 형태에 대해 구체적으로 파악하는데 도움이 되는 글이었다.
    • 소비의 증가, 새로운 사업 시도, 더 적극적인 자동화 도입, 정치적 변화가 일어날 것이라 분석한다.
  • Progressive Summarization: A Practical Technique for Designing Discoverable Notes - Forte Labs

    • ‘태그로 노트를 정리하는 방법은 그다지 효율적이지 못하다’ 라는 글 내용에 붙어있던 링크 글이었다. 내용이 꽤 길고 3부작이다. (3부는 유료 컨텐츠) 하지만 1부만으로 대략적인 아이디어는 얻을 수 있었다.
    • 지식을 습득하는 것은 요즘 같은 시대에 약간의 검색만으로 매우 쉽게 할 수 있게 되었다. 문제는 ‘언제 읽느냐’ 이다. 정말로 필요할 때에 해당 지식의 묶음을 다시 꺼내들려면 다시 찾기 쉬운 형태로(발견하기 쉬운 형태로) 노트가 정리되어야 한다.

'Test Driven Development: By Example' 책 내용 정리

들어가며

  • 어디까지나 개인 노트에 정리했던 내용을 그대로 옮긴 것이라 가독성이 많이 떨어질 수 있습니다.
  • 책을 읽고 계신 분이, 혹은 읽어보신 분이 맥을 되짚는데 참고가 되길 바랍니다.

책은 1부에서 실전 튜토리얼을 진행하고, 2부는 xUnit 활용 예, 3부에서 TDD를 활용한 리팩터링을 다룬다. 여기서 xUnit 파트는 제외한다.

TDD에서는 두 가지 규칙을 따른다.

This month I Learned - 2021년 3월

General

  • 평가방법 OKR, KPI, MBO 뭐가 다른거에요?

    • 조직에 OKR이 적용되고 있지만, 내가 어떻게 받아들이고 적용해야 할지는 아직 명확하지 않다고 느끼고 있었다. 이 글은 KPI와 OKR의 핵심을 쉽게 설명하고 있어서 OKR을 이해하는데 조금 더 도움이 되었다.
    • 각각의 비교는 그렇다 치고, 이 글에서 특히 중요한 부분이라는 느낌을 받은 것이 ‘액션 아이템을 정하기에 앞서 명확한 목표치를 설정해야 한다’ 라는 부분이었다. 그리고 그 목표를 향해 올바른 방향을 가고 있느냐를 중점적으로 본다면 OKR이고, 목표 달성율이라는 수치에 더욱 초점을 맞추면 KPI가 되는 것으로 보였다.

This month I Learned - 2021년 2월

General

  • 누구나 팀장이 되고 싶진 않아

    • “팀장은 팀장 역할을 맡을 자격이 있는 사람 중에 팀장이 되고 싶어 하는 사람이 맡는 것이 가장 좋다” 라는 종합 정리가 무척 마음에 와닿았던 글이다.
    • 보통 그 분야에서 일을 오래 했거나, 그 회사에서 일을 오래 했다고 으레 팀장이 되는 경우도 있을텐데 그런 방식으로 팀장이 임명된다면 조직에게 크게 이득이 되지 않을 수도 있다.
    • 또한 팀장은 그 업무를 잘 수행한다고 팀장이 되는 것이 아니라 그 팀의 팀장으로서 역할을 잘 수행할 수 있는 사람이 해야 한다고 한다. 단순히 업무를 잘 하는 것과 팀장으로서 팀원을 이끄는 것은 별개의 업무다.

This month I Learned - 2021년 1월

Developer

  • 엔지니어링 매니저를 위한 추천 도서 | GeekNews

    • 어쩌다 보니 나를 포함한 두 명이서 한 팀이 되어있고, 장기적으로 이 팀을 이끌어야 하는 입장이 되었다.
    • 지난 번 팀의 팀장님께 ‘개발 7년차, 매니저 1일차’ 도서를 선물해드린 적이 있었는데, 이제 나도 그 책을 봐야할 때가 된걸까…

JS / TS

  • Typescript Helper Types · GitHub

    • 타입스크립트 헬퍼 타입 모음집. 조금 어려운 부분도 있지만, 상대적으로 쉽고 실용적으로 접근할 수 있는 타입들도 있으니 한번 쭉 읽고 따라쳐보고 활용해볼만 하다고 느꼈다.
  • Joe Fallon’s Blog | TypeScript try/catch/finally and Custom Errors

    • 일단 제목에는 타입스크립트가 언급되어있긴 한데 자바스크립트로 에러를 처리하는 법 모범 사례(Best Practice)를 안내하고 있다.
    • 에러를 캐치할 때 타입 정보를 제대로 캐낼 것
    • Error 객체(혹은 이를 상속한 객체)를 활용하고 그 외의 단일값은 최대한 지양할 것
    • finally 구문에서 리소스 해제
    • 에러를 특정할 것. ts-custom-error 같은 패키지가 도움이 된다.

This month I Learned - 2020년 11월

General

  • 에이미 커디(Amy Cuddy): 신체언어가 여러분의 모습을 만듭니다 | TED Talk Subtitles and Transcript | TED

    • 일단 결론부터 이야기하면 이 영상에서 말하는 이론은 아직 논란의 여지가 있다. 그런데 이 영상을 링크한 것은 몸의 자세를 바꾸는 것으로 인생이 바뀐다는 것을 이야기하기 위해서가 아니다.
    • 최근에 회사 내부 강연에서 ‘성공이란 무엇인가’ 라는 주제로 내 마음가짐에 대해 다시 생각할 계기를 마련할 수 있었다. 그 때 강연 말미에 추천되었던게 이 영상이다. 이 영상을 통해 배울 수 있는 것은 영상 그 자체의 내용보다는 아래의 심플한 내용이다.

[발표 정리] 복잡한 백오피스에서 Form의 상태 다루기

들어가며

  • 이 글은 FEConf 2020에서 tPay의 김성현님이 “복잡한 백오피스에서 Form의 상태 다루기” 라는 주제로 발표하셨던 영상을 글로 옮기면서 정리한 것입니다.
  • 발표 영상은 바로 아래에 붙여두었습니다.

슬라이드 1

  • React Context + useImperativeHandle 은 순수 리액트 API로 폼 상태 관리를 구현할 수 있는 최후의 수단이라고 생각하셨다고 한다.