규도자 개발 블로그
나는 오픈소스를 굉장히 선호한다. 코드 예제도 대부분 얼마 전에 쓴 포스팅인 github 검색 팁: 특정 파일 이름 내에서 검색하기 (tistory.com) 에서 썼던 검색 팁을 이용해 찾기도 하고, 대부분의 기능은 무조건 오픈소스를 찾아본 뒤에 진짜 찾고 찾고 찾아봐도 없는 경우에서야 직접 만들곤 한다. - 그 이유는 뭐 예상할 만 한데 이미 잘 만들어지고 수백 수천, 혹은 수만명의 개발자들이 검증까지 끝낸 라이브러리가 신뢰성이 높을까, 내가 만든 라이브러리가 신뢰성이 높을까. 당연히 전자일 것이다. - 이와 더불어 다른 사람들의 코드스타일도 참고할 수 있고, 내가 모르는 로직이나 알고리즘도 긁어와서 쓸 수 있고, 어떤 언어의 딥한 사용방법이나 팁 같은 것들도 전부 다 가져올 수 있다. - 그리고 어떤..
sqlite memdb의 맹점 (※: 테스트할 때 주의할 점) 현재 사내의 거의 모든 프로젝트가 fastAPI + TDD 기반으로 만들어지고 있는데 테스트를 돌릴 때는 빠른 테스트 실행을 위해서 sqlite의 memdb를 이용하고 있다. 하지만 실제 실행환경과 pytest라는 커맨드를 이용한 테스트 환경에 조금 다른 점이 존재해서 개발 도중에 sync DB에서 사용하는 주소 sqlite:///:memory:와 sqlite+aiosqlite:///:memory:두 개를 모두 사용을 했는데 이상하게 한쪽에서 만든 table을 다른 테이블에서 조회하지 못해서 실험으로 로컬에서 실행할 때는 파일기반의 주소로 바꾸고, 테스트를 돌릴 때는 다시 메모리 db 주소로 바꿔서 진행하는 어이없는 짓을 잠깐 했었다. 상식적..
github 검색 팁: 특정 파일 이름 내에서 검색하기 정말 간단하다. 검색창에 filename:{keyword}를 치면 된다. 나의 경우 특정 라이브러리를 사용하고 있는 프로젝트가 이 라이브러리를 어떻게 활용하고 있는지 검색할 때 주로 사용하곤 하는데 조금 더 구체적인 예를 들면 python의 dependency-injector를 다른 프로젝트에서는 어떻게 사용하고 있는지 참고가 필요할 땐 dependency-injector filename:*.toml이렇게 검색을 하면 pyproject.toml에 dependency-injector가 poetry로 추가돼있는 프로젝트들을 찾아볼 수 있다. 정말 고맙게도 와일드카드를 지원해준다. 검색 결과를 보면 이런 형태이다. 이밖에도 정말 유용하지만 많은 사람들이 ..
crybaby: 오류메시지를 slack으로 보내기 위한 exception handler 최근에 오픈소스 프로젝트를 또 하나 시작했다. 바로 crybaby라는 건데 sentry처럼 오류가 발생했을 때 해당 오류내역을 slack으로 받을 수 있게 해주는 파이썬 라이브러리이다. 아니~ 센트리게 있는데 뭐하러 이걸 써!? 하겠지만 sentry를 통해 exception을 slack으로 보내는 기능은 팀플랜일 때부터 지원하는 기능이다. 그러니까 "유료"라는 의미이다. 그래서 내 개인프로젝트에서 간단하게 쓸만한 라이브러리를 만들어서 오픈소스화 해보자 하는 마음에서 제작하게 되었다. pip install crybaby 명령어로 설치할 수 있고 소스 저장소는 https://github.com/jujumilk3/cryba..