• [번역] Mongoose 모델과 단위 테스트: 최종 가이드

    원문: Mongoose models and unit tests: The definitive guide - Jani Hartikainen Mongoose는 node.js로 보다 쉽게 MongoDB를 사용하게 해주는 훌륭한 도구입니다. 모델 관련 로직을 코드 사방에 뿌려놓는 대신, Mongoose의 모델을 이용하면 설계가 매우 쉬워집니다. 데이터를 쿼리하는 것도 쉽고 빠르며, 사용자가 직접 정의한 쿼리 로직도 필요하다면 모델에 숨겨 둘 수 있습니다....


  • 좋은 git commit 메시지를 위한 영어 사전

    골치아픈 이름 짓기 프로그래머들에게 가장 어려운 것 하나만 꼽아보라고 하면 절반이 ‘naming’을 선택한다고 합니니다. 프로그램을 작성하면서 파일명, 클래스명, 변수명, 함수명 등 수도 없이 많은 이름들을 지어내야 합니다. 거의 작명소 수준입니다. 그런 이름 짓기보다 더 어려운 것이 있습니다. 바로 커밋 메시지 작성입니다. 한글로 커밋 메시지를 작성하는 팀이라면 별 걱정이 없겠으나, 영문으로...


  • 3년간의 리모트 개발에 대한 소회

    리모트 근무를 시작한지 햇수로 만 3년이 되어갑니다. 지금까지 한번도 이 주제를 공개적으로 이야기해본 적이 없었는데, 블로그의 about 섹션을 작성하다 언급된 김에 생각들을 조금 더 적어볼까 합니다. “리모트 근무는 복지가 아니다. 하나의 업무 형태일 뿐이다.” 무척이나 신뢰하는 동료이자, 회사의 CTO 였던 분께서 인터뷰를 할 때 자주 했던 말씀입니다. 일주일에 하루 정도의...


  • MongoDB와 Mongoose에서 update를 사용 할 때 주의할 점

    처음부터 Mongoose를 ODM(Object Document Mapper)으로 썼던 탓에, MongoDB 문법을 Mongoose로 배웠습니다. 기본적인 쿼리 인터페이스는 이 둘 간에 큰 차이가 없기 때문에 이후 MongoDB Driver API를 사용해 코드를 작성 할 때도 별다른 불편함을 느끼지 못했습니다. 오히려 오리지널의 API가 가진 불편함을 해소시켜주는 Mongoose의 친절한 부분에 고마워하기도 했지요. 별 생각없이 update 쿼리를 작성했다가...


  • VS Code로 node.js 애플리케이션을 디버깅 할 때의 소소한 팁

    VS Code로 node.js 애플리케이션을 디버깅 할 때, 브레이크포인트를 잡아 라인 단위로 진행을 시키다보면 async 함수를 지나갈 때 어김없이 node의 emitHookFactory 함수로 프로세스가 이동됩니다. 비동기 처리를 하다보니 어쩔 수 없는 일이지만, 이게 디버깅을 심각하게 방해하죠. 바로 요놈. function emitHookFactory(symbol, name) { // Called from native. The asyncId stack handling is taken...