programing/etc
-
Yarn Berry 찍먹 후기programing/etc 2021. 8. 8. 20:36
Yarn Berry 최근에 토스 기술 블로그에서 Yarn Berry에 대한 글을 보게 되었습니다. 블랙홀 보다 무거운 node_modules 를 지워버릴 수 있다니.. 이런 꿀 기술을 적용하지 않을 수 없었습니다. 😎 Berry 설정하기 yarn berry 버전을 설정하기 위해서는 최신 버전의 yarn이 필요합니다. npm upgrade -g yarn 포스트를 작성할 당시 최신 버전은 1.22.5 이었습니다. 그리고 yarn berry를 적용할 프로잭트 루트 내에서, 다음 명령어를 실행합니다. yarn set version berry 재빠르게 설정이 완료되었습니다. RN 프로젝트 빌드 npx react-native init dooboo --template react-native-template-types..
-
비트 연산을 이용한 쿠폰 기능 구현programing/etc 2021. 8. 1. 23:58
발단 면접 질문을 정리하다가 쿠폰 기능 구현을 보고 생각난 것. 쿠폰은 어느 경우엔 적용이 되고 어느 경우엔 적용이 안되고 같은 예외 케이스들이 엄청나게 많은데, 이걸 어떻게 우아하게 구현할 수 있을까? 방법 비트연산을 이용하면 우아하게 구현할 수 있지 않을까? 예를들어 2진법으로 상품과 쿠폰이 다음과 같다고 가정하자. 기본상품 : 1111 특가할인 쿠폰 : 0001 생일쿠폰 : 0011 멤버십 쿠폰 : 0100 특가 할인 쿠폰 적용 이 상태에서 기본상품에 특가할인을 적용해보자. 기본상품(1111)과 특가할인 쿠폰(0001) 을 and 연산을 하면 0001이 나오고, 이는 특가할인 쿠폰의 값(0001)과 동일하다. 동일한 값이라면 쿠폰 적용이 가능함을 의미한다. 만약 쿠폰을 적용한다면, xor 연산을 한..
-
[GitHub] 2FA와 authentication errorprograming/etc 2021. 6. 27. 16:33
GitHub에서는 회사 계정(Organization) 멤버들에 대해 2FA(two-factor authentication)을 요구한다. 2FA 방법에는 SMS 혹은 인증 앱등을 활용할 수 있다. 2FA를 설정한 계정은 Git CLI를 이용해 GitHub과 상호작용을 하기 위해서는 username 과 password을 입력해야 한다. 그런데 이 때, 계정 비밀번호를 password 에 입력하면 다음과 같은 에러가 발생한다. 🚨 remote: Invalid username or password. fatal: Authentication failed for 'https://github.com/xxx.git' 이를 해결하기 위해서는 GitHub에서 Settings/Developer settings/Personal..
-
부스트 캠프 멤버십 특강 - 코드리뷰programing/etc 2021. 2. 13. 01:17
코드리뷰는 협업이다 강대명님의 발표자료를 제가 정리했던 것을 블로그에 남겨봅니다. 코드리뷰에 임하는 자세 코드리뷰에서 기대하는 것은? 놓친 실수 더 좋은 방식(좀 더 언어스러운 코드) 성능 향상 코드리뷰에서 기분이 나쁜 경우 자괴감이 들어서 인신공격인지 코드리뷰인지.. 합의 코드 스타일은 합의된 lint를 이용해 통일 기능 추가는 테스트케이스를 작성해야 한다 하나의 pr에 언제까지 코드리뷰를 받아야 하나? approve 될 때 까지. 그럼 상대방과 나의 생각이 다르다면? 토론을 통해 협의를 한다. 리뷰어 코드 품질을 높이기 위해 노력한다 동료의 코드를 이해하기 위해 노력한다 단순한 스타일 지적은 지양한다 (린트를 쓰자) 리뷰이가 투자한 시간 만큼 리뷰어도 시간을 투자하자 리뷰이 필요한 배경지식을 추가하면..
-
[Git] GitHub과 연동할 때 인증 정보 포함시키는 방법programing/etc 2020. 6. 3. 13:36
안녕하세요, Einere입니다. (광고 차단 기능을 꺼주시면 감사하겠습니다.) 최근에 GitHub Actions과 gh-pages를 이용하여 PR이 merge 되면 자동으로 배포까지 하도록 CD를 구성하려고 했습니다. 이 과정에서 겪었던 에러와 삽질들을 공유하고자 합니다..ㅎㅎ gh-pages gh-pages는 GitHub Pages로 정적 웹페이지를 배포할 수 있게 해주는 라이브러리이자 CLI입니다. 보통 로컬 환경에서는 단순하게 gh-pages -d build 명령어를 통해 쉽게 배포할 수 있습니다. GitHub Actions GitHub Actions는 Travis CI, CircleCI와 같은 CI/CD 툴입니다. 마켓에서 미리 만들어진 workflow를 적용할 수 도 있고, 자신만의 workfl..
-
[Kubernetes] API Conventionprograming/etc 2020. 3. 18. 17:00
Terms 쿠버네티스에서 사용하는 특정 단어들의 정의를 설명합니다. Kind 특정 객체의 스키마를 의미합니다. 카인드는 카멜케이스에 단수형입니다. ex) Pod Resource 시스템 엔티티를 가리킵니다. JSON형식으로 HTTP를 통해 서버에 전송하거나 받을수 있습니다. 리소스는 다음 두가지 분류가 있습니다. Collections 동일한 타입의 리소스들의 목록입니다. 콜렉션은 쿼리가 가능합니다. 콜렉션은 소문자에 복수형입니다. ex) pods Elements 개별적인 리소스입니다. URL을 통해 주소 지정이 가능합니다. API Group 함께 노출되는 리소스들의 집합입니다. JSON형식에서, apiVersion이라는 필드에 "GROUP/VERSION"형식으로 표현됩니다. 여기서 GROUP은 소문자에 유..
-
[kubernetes] 쿠버네티스 - 쿠버네티스 오브젝트 이해하기programing/etc 2020. 2. 17. 22:46
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 이번 포스트에서는 쿠버네티스 오브젝트에 대해 알아보도록 하겠습니다. 쿠버네티스 오브젝트 쿠버네티스는 클러스터의 상태를 나타내기 위해 쿠버네티스 오브젝트(이하 쿠베 객체)를 사용합니다. 쿠베 객체에는 다음과 같은 내용을 기술할 수 있습니다. 어떤 컨테이너화된 앱이 동작중인지 그 앱이 사용할 수 있는 리소스 그 앱이 재구동, 업그레이드, 내고장성과 같은 것에 대해 어떻게 동작해야 하는지에 대한 정책 즉, 쿠베 객체는 하나의 "의도를 담은 레코드"라고 할 수 있습니다. 쿠베 객체에 대한 CRUD작업을 수행하기 위해선 쿠버네티스 API를 이용해야 합니다. CLI인 kubectl이나 클라이언트 라이브러리를 사용할 수 있습니다. 스펙(sp..
-