분류 전체보기

Review

[넷플릭스] 타다 : 대한민국 스타트업의 초상 (feat. 신박하다)

이 다큐영화가 나온다는 소식을 접하고 꼭 봐야겠다 생각했다. 개봉(2021-10-14)하였다는 소식에 상영관을 찾았지만 시간과 장소의 제약이 컸다. 시간이 많이 지나서 우연히 넷플릭스 추천영화를 검색하던 도중 '타다 : 대한민국 스타트업의 초상'이 넷플릭스에 있다는 것을 확인하고 1초의 망설임도 없이 영화를 시청했다. 법인카드를 활용하여 타다를 탈 기회에 몇 번 있었다. 프리미엄 택시인가보다 하고 탔는데 넓고 쾌적해 사용감은 좋았다. 왜 타다는 모두 카니발인가? 그리고 왜 어느 순간 타다는 사라졌는가? 에 대한 물음도 없이 그냥 그렇게 나의 경험 속에서 사라졌었다. 시간이 지나고 문득 기사 속에서 '타다금지법'이라는 키워드를 만나긴 했지만 많은 모빌리티 스타트업들과 택시 간의 다툼이 잦았기때문에 그런 것..

Googling/postgresql

[postgreSQL] 써보니 유용한 쿼리 (feat. 메타 정보 쿼리)

내가 직접 만든 테이블은 아니지만 postgreSQL에 내장되어있는 테이블이 존재한다. 실제로 잘 활용하는 쿼리를 사례와 함께 적어보려고 한다. 테이블 인덱스 확인 실행계획을 볼 때 인덱스를 아예 타고 있지 않거나 잘못된 인덱스를 타고 있음을 확인할 수 있다. 이 떄 보통 테이블에 어떤 인덱스가 있는지를 보고 의도하는 인덱스를 탈 수 있게 쿼리를 튜닝해준다. SELECT * FROM pg_indexes WHERE tablename = '소문자 테이블 명'; 현재 테이블별 전체 카운트 확인 테이블 별로 전체 카운트를 수시로 확인하면 얼마나 데이터 성장세가 가파른지, 어떻게 인프라를 대비해야하는지, 어떻게 데이터를 관리하는게 더 효율적인지 고민해볼 수 있다. 테이블별로 count 쿼리를 직접 때려도 되지만 ..

Deep Dive Series/Good Condition

[좋은 조건문 작성하기 4] JSON 객체를 활용한 조건문 형태

※ 대부분에 언어에 해당될 수 있는 내용이지만, javascipt 언어에 가장 적합한 글입니다. 꼭 , 을 써야만 조건문인 것은 아니다. JSON 객체를 활용해서도 조건문을 만들 수 있다. function getFruitByName(name) { if (name === 'apple') { return '🍎' } else if (name === 'banana') { return '🍌'; } else if (name === 'kiwi') { return '🥝'; } else if (name === 'lemon') { return '🍋'; } else { return ''; } } 위의 조건문을 으로 바꿔보자. function getFruitByName(name) { switch (name) { case 'a..

Googling/Node.js

[Node.js] ES모듈(ESM) 사용하는 방법

Javascript는 ES 모듈 시스템을 공식 모듈 시스템으로 사용하고 있고, Node.js는 CommonJs 모듈 시스템을 표준 시스템으로 사용하고 있다. //CommonJs const gulp = require('gulp'); const babel = require('gulp-babel'); //ESModule import gulp from 'gulp'; import babel from 'gulp-babel'; Node.js 에서 ES모듈 시스템을 활용하려면 Babel이라는 별도의 도구가 필요했는데, Node.js 13.2 버전(2019-11-21) 부터 손쉽게 ES모듈을 활용할 수 있게 되었다. package.json 파일에 type 항목을 module로 설정하면 바로 활용 가능하다. { //.....

Deep Dive Series/Algorithm

[Javascript] Combination(조합), 이항계수 가져오기

/** * Q. 자연수 n을 이진법으로 변환했을 때 나오는 1의 개수를 k라고 했을 때, * n보다 작은 자연수 중에서 이진법으로 변환하여 * 1의 개수가 k인 수가 몇 개 있는지를 return 하도록 solution 함수를 완성해 주세요. */ 이 코딩 문제를 효율적으로 풀기 위해 직감적으로 Combination(조합)이 필요하다고 느꼈다. (확률과 통계에서 배운 개념들이 스르륵 스쳐갔다.) 정확히는 이항계수를 구해야하는데 이항계수란 다음과 같다. 위의 이항계수를 코드로 구현해보자. 크게 어려울 것은 없다. //10 C 2 => getCombinationsCount(10, 2) function getCombinationsCount(총원소수, 선택원소수) { const 곱셈 = (a, b) => a * ..

Deep Dive Series/Good Condition

[좋은 조건문 작성하기 3] 애매한 조건문은 팀원들과 생각 나누기

※ 대부분에 언어에 해당될 수 있는 내용이지만, javascipt 언어에 가장 적합한 글입니다. 복잡한 조건문을 작성하다보면, 무언가 잘못 분기하고 있다고 느낄 때가 있다. 이 부분은 애매하지만 매우 중요한 부분이라 생각되어 어떻게든 글로 풀어써보려고 한다. 정답이 있는 문제라기보단 앞서, 왜 좋은 조건문(IF) 을 작성해야할까? 라는 질문에 나는 '서로의 조건 로직을 잘 이해해 서비스를 잘 디벨롭하기 위해서'라고 답하고 싶다. 라고 포스팅했기에, 아래의 시나리오를 팀원들과 같이 읽어보며 좋은 조건문에 대해서 고민해보면 좋을 것 같다. 상황1 . 과일의 이름에 따라 적용가능한 색깔들(배열)을 가져오는 함수를 만드려는데 조건문을 어떻게 만들지 고민이다. function availableColorsByFru..

Retrospective

[개발자회고] #8. 2021 하반기 회고 ( feat. 문샷싱킹, 언주니어 )

벌써 2022년, 다사다난했던 2021년을 기록해두고, 2022년으로 나아가야겠다. 목차 드디어 리뉴얼이 끝났다. 🎉 수정 딜레마 문샷 디벨롭 상처 주는 리더 남은 과제 회사는 순항중 🏆 운빨 개발자 세 번째 이사 연차 36일 개발을 잘하고 싶다 🔥 언주니어 포트폴리오 기술 블로그 공부하기 드디어 아이가 태어났다 👶 늦잠 0회 게임 0회 우리의 소원은 건강 맺으며 목표 가장 감사한 사람 1. 드디어 리뉴얼이 끝났다. 🎉 올해 2월부터 시작한 리뉴얼 프로젝트가 7개월 만에 드디어 끝이 났다. 이 챕터는 리뉴얼 회고라고 봐도 무방할 것 같다. 1-1. 수정 딜레마 모두가 꿈꾸는 수정 하나 없는 속전속결 프로젝트는 환상의 동물에 가깝다고 본다. 리뉴얼의 처음 방향은 톤 앤 매너를 갖춘 리디자인 정도였다. 그러..

Deep Dive Series/Good Condition

[좋은 조건문 작성하기 2] Switch/Case 톺아보기

※ 대부분에 언어에 해당될 수 있는 내용이지만, javascipt 언어에 가장 적합한 글입니다. 0. 방법이 바뀐다고 조건문의 성능 차이가 있을까? 조건문에는 문도 있지만 문도 있다. 개인적으로 이 둘의 '가독성' 차이는 별로 없다고 생각한다. 취향 차이가 있을 뿐이지 두 조건문 방법 모두 충분히 좋은 조건문이라 보인다. 위 주장이 맞기 위해서는 조건문 방법이 달라진다고 '성능' 차이는 크게 발생하지 않는다라는 전제가 있어야 한다. 하지만 문 성능이 우수하다는 의견이 많았고 정말 그러하다면 '좋은 조건문'에 대하여 다시 한번 생각해볼 문제라고 생각했다. 그래서 특별히 문의 성능을 들여다보게 되었다. 1. 문은 무엇이 특별한가? 한 블로거께서 다음과 같이 표현해주셨다. if-else문은 원하는 조건이 나올..

날개단
'분류 전체보기' 카테고리의 글 목록 (4 Page)