목록분류 전체보기 (493)
규도자 개발 블로그
2일차의 테마가 동생의 주도로 이뤄지는 관광이었다면 3일차의 테마는 자유여행이었다. 은혜로운 동생 와이프분의 배려로 자동차 + 냉장고의 각종 음식들을 이용할 기회를 얻었다. 매운맛이 그리워서 신라면을 생라면으로 하나 부셔먹고 여행을 시작했다. 매운맛이 그리웠기 때문에. 하지만 차는 이용하지 않았다. 2일차에도 운전하면서 동생이 운전에 대한 주의사항들을 알려줬는데 예를 들면 경찰차가 갓길에 서있으면 그 옆차선을 달리면 안된다던가, 스쿨버스에 STOP사인이 뜨면 방향이 같아도 맞은 편에서 가고 있어도 일단 멈춰야 한다던가, STOP사인이 있을 땐 무조건 멈춰야 한다던가, 좌회전이나 우회전에 대한 규칙 등등등 너무나도 생소한 규칙들과 만약에 사고가 났을 때 나 혼자 수습할 수 없을 뿐더러 나 뿐만 아니라 동생..
아침에 일어나자마자 느꼈다. 아. 어제 먹은 와플하우스 음식이 남아있다. 저녁에 야식으로 치킨이나 감튀 등 기름진거 먹고 바로 자면 느껴지는 그 더부룩함이 느껴졌다. 보다 강하게 ㅋㅋ 이녀석들의 힘이었다. 그리고 나를 위해 휴가를 내준 동생과 함께 일정을 시작했다. 어제는 보지 못했던 미국의 아침은 정말 끝내줬다. 날씨가 미쳤다고밖에 표현하지 못 할 정도이다. 한국에서는 미세먼지때문에 봄에 이렇게 쾌청한 하늘을 보는 날이 손에 꼽는데 여기는 비가오지 않으면 항상 이런날씨다. 그리고 그만큼 자외선도 강하고 햇빛도 따갑다. 근데 또 습도는 낮아서 집에 반팔과 빤쓰만 입고 있으면 추운데 바깥에 나가면 적당하다. 정말 좋았다. 말 그대로 햇빛이 없는 곳은 서늘해서 저녁에도 후드티를 입고 돌아다녔고, 잘 때도 반..
난 내 자신을 세일즈할 무기가 없어서 항상 특수부대 출신인 것을 포인트로 잡고 나를 소개하고는 한다. 특수부대 출신 개발자라니, 유니크하지 않은가. 내가 만약 직원들을 포켓몬처럼 모으는 타입의 대표라면, 한 번쯤은 가져보고 싶은(?) 그런 수식어이기는 하다. 뭐 아무튼 직업군인, 그것도 특수부대라는 환경을 같이 지내온 사람들이 있는데 정말 이 무슨 기이한 인연인지 가장 즐겁게 군생활을 보냈던 시절, 가장 친했고 추억도 많이 쌓아왔던 사람들 중 두 명이 미대륙에 거주하고 있고, 정말 놀랍게도 둘 다 가까운 지역에 살고 있다. 한명은 조지아 주 애틀랜타. 한 명은 노스 캐롤라이나 주 샬럿. 그래서 둘이 가끔 만나서 스파르탄 레이스도 나가고 운동도 하고 사격도 하고 이것저것 취미생활을 즐긴다기에 도저히 참을 ..
k8s kind cluster 만들 때 SAN 설정하기 (kind cluster에 외부 접속 허용하기) 로컬에서 간단하게 k8s환경을 구성해서 테스트해볼 때 주로 사용하는 minikube와 비슷한 역할을 하는게 kind이다. 솔직히 말해서 둘의 차이점은 잘 모르겠다. 그래서 ChatGPT쨩에게 물어봤다. Q: What is major differences between minikube and kind? A: Minikube and Kind (Kubernetes in Docker) are both tools used to run Kubernetes clusters locally. The main difference between the two is that Minikube runs a single-node..
2022 LiftIO 후기 (부제: 개발자 부족의 시대, Elixir가 특효약이 될수 있는 이유) 지금으로서는 약 한 달이나 지난, 어쩌면 너무나도 늦은 후기일 수도 있겠다. LiftIO란 함수형 프로그래밍을 좋아하는 사람들이 모여 만드는 콘퍼런스라고 홍보하고 있으며 올해가 딱 두번째인 신생아 컨퍼런스이다. 아마 함수형 프로그래밍이 점점 더 인지도를 얻어가는 만큼 이 흐름이 쭉 이어지지 않을까 싶다. 나도 현업에서는 파이썬을 주로 쓰고는 있지만 항상 함수형 프로그래밍에 대한 관심은 갖고 있고, 특히나 또 elixir와 Rust에 관심이 많으므로 참여하게 됐다. 당시 세션은 이렇게 구성돼있었다. 아쉽게도 Rust와 관련된 세션은 없었다. 사실 세션 하나하나는 기억이 나질 않고 예전에 내가 엘릭서(Elixi..
나는 오픈소스를 굉장히 선호한다. 코드 예제도 대부분 얼마 전에 쓴 포스팅인 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로 추가돼있는 프로젝트들을 찾아볼 수 있다. 정말 고맙게도 와일드카드를 지원해준다. 검색 결과를 보면 이런 형태이다. 이밖에도 정말 유용하지만 많은 사람들이 ..