개발
-
지금으로부터 약 10년전 꼬꼬마 대학생 시절 RSA 알고리즘에 사용하는 소수 중 하나를 257로 고정하면 바이트를 그 알고리즘을 통해 나온 값은 반드시 0~256이 나온다고 글을 올린 적이 있었다. [C#] RSA를 이용한 File Encryp.. : 네이버블로그 근데 이건 진짜 암호화라기 보다는 그냥 RSA 알고리즘을 이용해서 비슷한 짓을 한 것이었다. 사실 여기서 나오는 키(257이 아닌 또 하나의 소수)를…
-
git remote ssh 설정을 맨날 까먹는다. 회사에서는 그냥 https로 리모트 설정을 해서 맨날 까먹기 때문에 따로 써놔야겠다. 참고로 Windows 기준임 키 생성 ed25519 알고리즘으로 생성한다. 이후 적절히 생성한다. public key 등록 github이나 gitea(개인용으로는 gitea 띄워서 쓰는 중임)의 유저 설정에 들어가서 SSH 키 관리에 들어가서 퍼블릭 키를 등록한다. 로컬 ssh config 사실 위까지는 그냥 검색하면 나오는데…
-

새로 구입한 디바이스가 몇개 있는데 이게 스냅드래곤 X 엘리트를 탑재했다. 요즘 AI 디바이스니 뭐니 하는데 이걸 써보려고 했다. 그런데 스냅드래곤 X 엘리트에서 사용하려면 ONNX 모델로 만들어야하니 그거까지 해보려고 대충 짰다. 그래서 주제는 뭐가 좋을까… 하다가 치와와와 머핀을 구분하는 모델을 만들어봅시다. 우선 데이터셋을 얻기 위해 Kaggle에 있는 데이터를 받습니다. https://www.kaggle.com/datasets/samuelcortinhas/muffin-vs-chihuahua-image-classification 학습도 ONNX로 되는거같긴한데… 이건 그냥 파이썬으로…
-
이게 필요한 경우가 생겼는데 난 당연히 안되겠지 하면서 ChatGPT에 물어보니 가르쳐줌;; 시발;; 다음 경우를 말한다. 얘를 사용하고 싶은데 로직 상 리플렉션에 의해 생성된 객체 안에서는 Bean을 넣을 방법이… 없… 는 줄 알았는데 있다. 저 홀리쉿헬퍼를 사용하는 서비스가 다음과 같이 생겼다고 하면 서비스레이어야 사실 @Service 어노테이션 써서 빈으로 만드는데 그냥 저런게 있다 치고, 저걸 다른 곳에서…
-
상태관리와 npm 라이브러리 래핑하는 법도 얼추 알겠으니 풀스택을 해봅시다. 백엔드는 자주 쓰는 Spring Webflux이다. 프로젝트 구조는 루트 프로젝트 밑에 backend (Spring Boot) + frontend (Kotlin/JS React) + shared library (공통 모델 정의) 이다. 가장 막혔던 부분은 shared library에 모델을 어떻게 정의해야하는가이다. 처음에는 인터페이스로 정의하고 각 프로젝트에서 재정의해야하나 했는데 그럴거면 시발 왜 이걸 씀하는 생각이 들었는데…
-
리액트 기본 useReducer를 쓰는건 아무리 생각해도 너무 개같아서 결국 Zustand를 래핑해서 쓰기로 했다. 기존에는 Zustand를 통째로 들어서 Kotlin/JS 로 바꾸려는 원대한 꿈을 가지고 있었으나 사실 그럴 필요가 없는게 겉으로 공개된 API에 대한 인터페이스만 만들면 되는거라 그렇게 다시 접근… Mutate 가 결국에는 종착점이 StoreApi이기 때문에 이 끝점만 알면 되는거고 중간에 뭐가 있든 신경을 안쓰면 된다. 그래서…
-
코틀린에서는 타입스크립트의 Partial 을 자체로 구현할 수 없다. 그런데 jso 를 통해 자바스크립트 객체를 만들면 코틀린에서 nullable이 아니더라도 설정한 필드만 설정이 되고 나머지는 설정하지 않는다. (undefined) 그래서 요즘에 State 관련해서 여러개 올렸는데 useReducer에 넘기는 리듀서의 리턴타입은 온전한 State여야하기 때문에 자바스크립트에서처럼 spread 연산자로 쓰고 싶은데 코틀린은 이걸 지원 안한다. 처음에는 Object.assign을 쓰면 되지 않을까 싶어서 썼는데…