본문 바로가기

개발12

지스토리 프로젝트 회고록 2 : 정의되지 않음과 없음에 관해 지스토리는 리액트로 만들어졌습니다. 당연히 JavaScript를 많이 쓸 수 밖에 없습니다. TypeScript로 마이그레이션 하기는 했지만 TS도 결국 JS로 돌아가기 때문에, JS의 문제점도 어느정도 가지고 가야 합니다. 특히 지스토리처럼 나중에 TS로 마이그레이션 한 경우는 다 엎을 수 없으니 이런 문제가 더 많습니다. 오늘은 그 문제 중 가장 대표적인 undefined와 null에 대해 논하겠습니다. undefined와 null이란? 우리는 산술적으로 없음을 표기할 때 0이라는 값을 사용합니다. 그렇지만 이 것말고도 또 다른 값이 존재할 수도 있습니다. 예를 들어, 변수를 선언하고 값을 정의하지 않았다면, 이 변수의 값은 무엇이 되어야 할까요? 만약 변수를 사용하고, 그 값이 유효하지 않아서 변수.. 2022. 2. 23.
HCI 논문 읽기 CHI2017 <Improving Communication Between Pair Programmers Using Shared Gaze Awareness> 2021년 5월 8일 글 마이그레이션 입니다. 지금이랑 이해나 관점이 달라졌을 수 있겠네요. 학교 과제로 읽기 시작한 논문인데, 이 논문 읽기를 고른 이유는 별 것 없고, 줌을 통한 비대면 프로그래밍을 하면서 너무 효율이 낮아서 화나 있을때 논문을 골랐기 때문입니다. 처음 읽는 거라 오래 걸려서 부분 부분 토막쳐서 메모해놓은 게 많아서 따로 정리합니다. ABSTRACT (문제 사항)원격 프로그래밍은 여러 이유로 어려운데, 그 이유 중 하나는 상대방이 어디를 보는지 알 수 없기 때문입니다. (만든 거)그래서 Pair Programming에서 현재 보고 있는 지점을 서로에게 알려주는 시스템을 만들어서, 테스트를 하였습니다. (만든 거) 참여자가 보는 곳을 표시해주고, 같은 곳을 보고 있으면 색이 바뀌며, 불.. 2022. 2. 20.
뉴스레터 리팩토링 2. 타입스크립트 적용 저장소 # 저번의 첫 번째 뉴스레터 개선에 이어서 이번에 두번째 개선을 진행하였습니다. 가장 큰 변화는 Typescript 도입, Yarn PnP 도입, 커스텀 에러 정리를 진행하였습니다. 1. Yarn PnP 적용 및 패키지 업데이트, Workflow 수정 첫번째 리팩토링에서 밝혔듯이, 이 프로젝트는 npm을 사용해서 진행하고 있었습니다. 그렇지만 npm 대신에 다시 Yarn을 사용하게 되었습니다. Yarn이 2.x 이상 버전으로 올라오면서(code명 berry) Plug'nPlay라는 기능이 추가되었습니다. # node_modules라는 폴더를 만들어서 사용하던 기존 방식은 굉장히 비효율적인 관리 방식입니다. 의존성을 정리하는 과정에서 package.json에 없는 패키지임에도 사용할 수 있게 되는 .. 2021. 11. 21.
giscus: Github Discussion을 이용하여 댓글을 달아보자. Github로 댓글 달기: utterances 혹시 Github을 이용하여 댓글을 달아보신 경험이 있을까요? 댓글을 남기려 하면 Github에 로그인을 한 뒤에 댓글 서비스 앱을 계정 설정에서 허가 하면 댓글을 쓸 수 있는 서비스 말입니다. 이런 서비스의 대표적인 예시로 utterances가 있습니다. 이런 이슈들은 Github issues를 이용해서, 각 페이지별로 매핑되는 이슈를 생성하여 댓글을 관리합니다. DB가 필요 없고, Github 이슈의 형태로 저장하니깐 정적 사이트에도 달기도 쉽고, GFM 문법도 지원됩니다. 플랫폼을 이전해도 여전히 사용할 수 있기도 하고요. 개발자면 대부분 Github 계정을 가지고 있으니 기술 관련 사이트에서 좋은 선택입니다. 그렇지만 Github issues는 한 문.. 2021. 11. 16.