엔드 간 네트워크 통신 한도(rate limit) 조절에 관련된 영어 표현 모음
·
개발이야기/토막글
클라이언트(프론트엔드) 관련 표현Debounce: 어떤 이벤트가 끝나자마자 다음 함수를 호출하지 않고 기다리다가, 같은 이벤트가 다시 반복되면 묶어서 처리하는 기법Throttle: 같은 함수를 다시 실행할 수 있는 최소 주기를 설정하는 것 = 짧은 주기 내에 같은 함수가 지나치게 많이 호출되는 것을 막는 기법Abort: 진행중인 요청을 취소한다는 의미. 서버와의 connection을 끊을 수도 있음. 웹에서는 보통 AbortController를 통해서 구현됨. 요청이 abort되면, 서버는 disconnection을 감지하여 처리를 멈추거나 클라이언트로 응답을 보내지 않는다.Cancel: 기술적인 용어라기보단, UX나 user-facing 관점의 의미. 서버/네트워크 관련 표현Drop: 네트워크 패킷을 ..
파이썬 프로젝트 우아하게 시작하기: pyenv, poetry
·
개발이야기/토막글
여러분의 맥북에는 이미 파이썬(Python)이 깔려있다. 맥 OS의 여러 유틸리티들이 파이썬을 필요로 하기 때문이다.그럼 파이썬 프로젝트를 시작할 때, 파이썬을 별도로 설치하지 않아도 되는 것일까?그렇지 않다. 프로젝트마다 요구하는 파이썬의 버전이 다르기 때문이다.이 글은 파이썬 프로젝트를 우아하게 시작하려면, 반드시 이용해야 할 버전 관리 도구(version manager)와 의존성 관리 도구(dependency manager)의 필요성과 간단한 사용 방법을 소개한다.파이썬의 버전관리버전관리의 필요성프로젝트마다 파이썬 버전을 맞춰야하는 이유가 무엇일까? 무조건 최신의 파이썬을 쓰면 안되는 것일까?- 파이썬 버전을 올리면 지원하는 기본 라이브러리가 사라지거나, 코드의 기능이 달라질 수 있다. 내 컴퓨터에..
Firebase Hosting 도메인 설정 후 Site Not Found에 관하여
·
개발이야기/토막글
Firebase Hosting에 도메인 주소를 추가했는데 아래와 같은 화면이 뜨면 당황스럽다.위 내용대로 3가지 가능성이 있다.1. 아직 배포를 안함(You haven't deployed an app yet)- 그렇지만 website-xxx.web.app 주소는 정상적으로 동작하고 있었기에, 이것은 배제할수 있었다.2. 빈 폴더를 배포함(You may have deployed an empty directory)- 역시 그럴리가 없다.3. 커스텀 도메인이지? 우리가 아직 설정을 덜 끝냄.(This is a custom domain, but we haven't finished setting it up yet.)- 무슨 설정을 덜 끝냈다는 걸까? 아마도 저 페이지는 서빙에 뭔가 문제가 있을 때 땜빵으로 서빙하..
Github CLI로 터미널에서 git 인증 편하게 하기
·
개발이야기/토막글
새로운 터미널 환경에서 새로운 레포지토리(repository)라도 클론(clone)받으려고 하면 인증이 참 귀찮다. 웹에서 쓰는 비밀번호를 입력하면, 아래의 이미지처럼 비밀번호 인증(Password Authentication)이 종료되었다는 오류로 실패하게 되기 떄문이다. 따로 깃헙의 개인 액세스 토큰(Personal Access Token)을 발급받거나, SSH key를 생성해야 하는데, 토큰의 권한도 관리해줘야하고, 여러모로 복잡하다.  그래서 나는 Github CLI로 로그인하는 방법을 선호한다. Github CLI를 이용하면 여러가지 편리한 방법으로 터미널에서 로그인을 할 수 있다.brew install gh // macOSapt install gh // Linuxgh auth login이 대화형..
TinyMCE로 이미지/파일 다루기
·
개발이야기/토막글
게시글 작성 화면을 구현하려면, WYSIWYG 에디터를 사용하게 된다. ChatGPT의 추천으로 나는 TinyMCE라는 에디터를 선택했다. 이 에디터를 이용해 게시판 작성 화면을 구현하면서, 이미지와 파일을 다루는 방법에 대해 내가 작업한 내용을 이 글에서 소개한다. 나도 대부분의 코드 작성을 claude-3.5-sonnet(cursor AI)이라는 친구에게 맡기고, 이후 생긴 버그들을 디버깅한 정도라, 코드에는 개선의 여지가 더 많을 수 있다. 1. 사진/파일 업로드 하기문제상황TinyMCE의 이미지업로더(ImageUploadPicker)와 파일업로더(FileUploadPicker) 기능을 활용하고자 한다면, 이미지/파일을 어딘가에 업로드하고, 그 업로드된 URL을 반환해주는 핸들러 함수가 필요하다. ..
안드로이드 개발시, 휴대폰과 맥북을 와이파이 환경에서 무선연결하기
·
개발이야기/토막글
안드로이드 개발을 할 때, 안드로이드 휴대폰을 맥북과 연결해서 사용합니다. 하지만 유선연결은 여러가지 이유로 불편하죠.이 글에서는 두 기기를 무선으로 연결해보겠습니다. 아래의 과정을 따라갑니다.미리 말하자면, 휴대폰과 맥북이 같은 와이파이 위에 있어야합니다.adb(Android Debugger Bridge) 설치휴대폰 무선 디버깅 켜고 페어링/연결1. adb 설치adb는 Android Debugger Bridge의 약자로, 안드로이드 개발환경과 안드로이드 실기기의 연결을 도와주는 cli 입니다.안드로이드 스튜디오를 설치하고, 설치 과정 중 sdk도 정상적으로 설치되었다면, 이미 설치가 되어있을것입니다.터미널에 adb 를 입력했을 때, adb의 버전넘버와 매뉴얼이 나온다면 이미 사용가능한 상태입니다.만약,..
Kubernetes 사용자라면 설치해야 할 보조 도구 모음
·
개발이야기/토막글
쿠버네티스와 kubectl 커맨드 관련 작업을 행복하게 만들어주는 보조 도구들을 소개합니다. 쿠버네티스를 처음 사용하거나, 새로 개발 환경을 세팅해야 할 때, 읽어보세요. k9s https://k9scli.io/ K9s - Manage Your Kubernetes Clusters In Style Who Let The Pods Out? K9s is a terminal based UI to interact with your Kubernetes clusters. The aim of this project is to make it easier to navigate, observe and manage your deployed applications in the wild. K9s continually watches..
mysqldump 치트 시트
·
개발이야기/토막글
dump 가져오기 mysqldump --column-statistics=0 -h [host] -u [user] -p [데이터베이스명] > [파일명].sql -p : 패스워드를 입력하겠다는 옵션 --column-statistics=0: mysql 8.0부터 새로 지원하는 COLUMN_STATISTICS 테이블 관련 기능을 끄는(0)옵션 dump 밀어넣기 mysql -h [host] -u [user] -p [데이터베이스명] < [파일명].sql -p : 패스워드를 입력하겠다는 옵션