전체 글13 지스토리 프로젝트 회고록 1 : 지스토리는 왜 망했는가 지스토리는 무엇인가? 지스토리는 지스트 학부생을 위한 BBS 서비스입니다. 각종 자치기구의 공지가 올라오고 학생들이 작성한 정보가 올라와야 했습니다. 그렇지만 망했습니다. 왜 망했을까요? 우선 서비스의 기획적인 측면에도 망할 이유는 충분히 많았습니다. 하지만 이 서비스가 망한 이유는 개발적인 이유가 훨씬 컸습니다. Django를 쓰지만 Django의 MVC 패턴과 사이클에 대한 이해가 전혀 없었습니다. DB에 대한 이해 없이 모델을 만들어서 DB가 금세 더러워졌습니다. 원인 불명으로 게시물 번호가 초기화 되어서 충돌이 일어났습니다. 집단 특성(대학생 집단) 상 프로젝트가 1년마다 참여 인원이 바뀌는데, 이 때문에 프로젝트가 한번 늘어지자 계속 늘어지게 되었습니다. 코드 리뷰, 브랜치 전략 등 코드의 품질.. 2022. 2. 23. 지스토리 프로젝트 회고록 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. 이전 1 2 3 4 다음