요새 인수인계를 받은 프로젝트가 있다. 지금은 내 입맛대로 수정할 수 있게끔 리팩토링 작업을 주로 하는데 OCP, SRP 원칙을 지키지 않은채로 구현된 부분들을 정리중이다. 최대한 리팩토링 잘해서 yaml 파일 같은데에 pipeline 을 파일 레벨에서 기술해서 동작하게 하고싶다. 지금은 배포환경이 다른 경우 하드 코딩돼있는 부분이 많다. 이걸 코드로 하드 코딩돼있는 게 그냥 내가 관리자가 된 입장에서 싫어가지고 위와 같은 작업을 진행하고 있다. SRP 원칙을 Opus4.6에게 최대한 쉽게 알려달라고 했다.🧱 "이 클래스, 왜 이렇게 뚱뚱해?" — SRP(단일 책임 원칙) 쉽게 이해하기코드를 짜다 보면 하나의 클래스에 이것저것 기능을 넣게 됩니다. 처음엔 편하지만, 나중에 수정할 때 지옥이 펼쳐지죠. ..
#!/bin/bashif [ "$(id -u)" -ne 0 ]; then echo "이 스크립트는 root 권한으로 실행해야 합니다." echo "사용법: sudo $0" exit 1firead -p "생성할 계정 ID: " USERNAMEif [ -z "$USERNAME" ]; then echo "ID를 입력해주세요." exit 1fiif id "$USERNAME" &>/dev/null; then echo "이미 존재하는 계정입니다: $USERNAME" exit 1firead -s -p "비밀번호: " PASSWORDechoread -s -p "비밀번호 확인: " PASSWORD_CONFIRMechoif [ "$PASSWORD" != "$PASSWORD_CONFIR..
https://github.com/developer0hye/Yolo_Label GitHub - developer0hye/Yolo_Label: GUI for marking bounded boxes of objects in images for training neural network YOLOGUI for marking bounded boxes of objects in images for training neural network YOLO - developer0hye/Yolo_Labelgithub.com지금와서 보니 프로젝트 네이밍 컨벤션 엉망이다. 내 repo 중 가장 많은 스타를 보유하고 있어서 애정이 있는 프로젝트... 그치만 학계를 떠나 산업계로 건너와서는 QT를 안 쓰기도 했고 굳이 내가 이 툴 개..
Claude Code Permission이 작동하지 않는 이유: :* vs * 패턴 문제TL;DRClaude Code의 .claude/settings.local.json에서 Bash 허용 규칙을 Bash(docker run:*)으로 설정했는데도 매번 permission 팝업이 뜬다면, :* 형식이 deprecated되었기 때문일 수 있다. Bash(docker run *)(공백 + 별표)으로 바꾸면 해결된다.문제 상황Claude Code로 Docker 기반 C++ 프로젝트를 개발하면서, docker run 명령이 매우 빈번하게 실행된다. 매번 permission 팝업이 뜨면 워크플로우가 끊기므로, "Allow always"를 눌러서 자동 허용 규칙을 추가해놨다.그런데 규칙을 추가했는데도 계속 물어본다.B..
서버 운영 중 CPU 부하 상황에서의 동작을 검증해야 할 때가 있다. 모니터링 알림 테스트, 오토스케일링 트리거 확인, 고부하 환경에서의 애플리케이션 안정성 검증 등이 대표적인 사례다. 이 글에서는 stress-ng를 이용해 간편하게 CPU 부하를 생성하는 방법을 정리한다.1. stress-ng란?stress-ng는 Linux 시스템에 다양한 종류의 부하(CPU, 메모리, I/O, 네트워크 등)를 인위적으로 발생시키는 도구다. 기존 stress 도구의 확장 버전으로, 더 다양한 부하 시나리오와 세밀한 제어를 지원한다.2. 설치RHEL / CentOS / Rocky Linuxyum install -y epel-releaseyum install -y stress-ngUbuntu / Debianapt upda..
좀 오래된? 이미지로 생성한 컨테이너에서 codex 실행하니 이런 에러가 났다.root@5e3f0705a929:~/repo/smarteye# codexfile:///usr/local/lib/node_modules/@openai/codex/bin/codex.js:160const childResult = await new Promise((resolve) => { ^^^^^SyntaxError: Unexpected reserved word at Loader.moduleStrategy (internal/modules/esm/translators.js:133:18) at async link (internal/modules/esm/module_job.js:42:21) N..
원래는 Cursor만 썼었다. 최근에 내 생각에 거대한 C++ 프로젝트를 인수인계 받으며... 이참에 안 써보던 Claude Code 써서 리팩토링 하고 내가 좀 이해할 수 있는 형태로 코드를 수정해봐야겠단 생각이 들어서 110달러 짜리 플랜을 사비로 지불해서 써보고 있다. Cursor와 다른 점은 Claude Code가 뭔가 내 개입 없이 일을 더 오래한다. Claude Code 사용이 꺼려졌던 이유는 CLI로 동작하고 수정하는 탓에 변경 사항을 보는 것이 Cursor 와 같이 IDE 지향제품보다 불편할 거 같단 생각에 꺼려졌었는데, 점점 AI가 생산하는 코드의 양이 증가하고 수준이 올라감에 따라 얘가 생산하는 걸 내가 혼자서 다 리뷰할수가 없고 굳이 리뷰안해도 잘 짜준다는 그 믿음이 강하게 생겼다. ..
- Total
- Today
- Yesterday
- 가장 긴 증가하는 부분 수열
- 문제집
- 파이참
- 백준 11053
- 백준 11437
- 위상 정렬 알고리즘
- 조합
- 이분탐색
- LCA
- 백준 1766
- 인공지능을 위한 선형대수
- PyCharm
- MOT
- 자료구조
- ㅂ
- 백준
- 단축키
- FairMOT
- C++ Deploy
- Lowest Common Ancestor
- 순열
- cosine
- 백트래킹
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
