Profile img

λ(☕) → 💻

  • Languages: Korean(개쩖), English(totally broken), Japanese(まあまあ), Esperanto(tre iomete)
  • Interests: server, concurrency, functional programming, keyboard(the input system), guitar
Stella
@annyeong@stella.place
GitHub
@nyeong
1
0
0
1
5
1

Nix + Agent(LLM) 쓰는 거 너무 좋다

그냥 느낌대로 대책없이 (수동 바이브) 리팩토링했는데, 에이전트한테 리팩토링 하기 전 커밋 ID 알려주고 리팩토링이므로 검증해달라고 하면 편집한 부분 설정값 nix eval로 촤라락 비교해주고, nix-diff도 해주고, dry-build해서도 확인해주니까 든든하다

1
5
2
2
4
1
4

작년 말부터 내가 코딩을 좋아하나? 잘 하나? 계속 할 수 있나? 의심이 들어서 괜히 다른 일을 열심히 해봤는데... 돌고 돌아 코딩을 너무 좋아한다는 걸 뒤늦게 깨달았다.

나도 몰랐는데 스스로 맘 속으로 시름시름 앓았었나보다. 왜 그런지 고민해보았는데, 퇴사하면서 했던 마지막 업무가 내가 해왔던 일 중 하나를 자동화 하는 것이었다. AI의 발전과 더불어 직업적 회의감을 느꼈던 것 같다. 스스로를 대체하는 직업이 지속 가능성이 있는가? 같은 고민을 했던 것 같다.

근데 농사도 지어보고 커피도 낋여보고 다른 일도 열심히 해봤는데, 퇴근하면 어느샌가 이맥스 켜고 Nix 짜넣어서 빌드 돌리더라. 생각해보면 코딩을 잘해서 시작한 것도 아니었고, 유망해서 시작한 것도 아니었다. 그냥 재밌으니까, "3D 업종"이라는 말을 들을 때부터 해왔다. 근데 이제와서 잘 못하나, 덜 좋아하나 같은 고민으로 그만두기에는 너무 코딩에 깊이 빠져버렸다는 걸, 작년이 끝나며 깨달은 것 같다.

8
0
4

요새 코딩을 잘 못하구 간간히 리트코드나 풀고 있는데,

  • 리트코드를 웹에서 풀다가 불편해서
  • 리트코드를 로컬에서 편하게 풀고 싶어서 emacs 플러그인을 짜는데
  • emacs 플러그인을 편하게 짜고 싶어서 emacs 테스트 플러그인을 짜는 중...

https://github.com/nyeong/org-test/

3
4
2
2
2
3
2

코딩 에이전트 쓸 때마다 인간의 두뇌가 위대한 걸 새삼 깨닫는다. 특히 에이전트에게 맥락 꼬박꼬박 주입할 때마다 맥락을 능동적으로 획득하고 장기적으로 기억하고 순간적으로 인출해내는 인간의 능력이 대단한 것 같음

6
7

Nix 설정 건들다가 (1) brew cask로 설치된 앱들을 못 찾고 (2) 메인 웹 브라우저로 쓰던 Zen의 모든 설정이 날아갔다 🙃

(1)은 복구했는데... (2)는 이렇게 된 김에 파폭으로 돌아갈까 고민중

2

API 기반 에이전트에서 요금제 기반 에이전트로 넘어와, 이제 마음껏 감사인사를 하는 풍부한 인간이 되었습니다.

미리미리 아부 떨어서 기계화 시대를 대비하자

에이전트가 실행중인 터미널 화면. 이하는 터미널의 내용

[에이전트]
  save_emacs_buffers_in_repo() 함수:
  - emacsclient로 실행 중인 Emacs와 통신
  - 해당 리포지토리 경로에 속한 버퍼만 필터링 (string-prefix-p)
  - 수정된 버퍼만 저장 (buffer-modified-p)
  - 저장된 버퍼 개수를 메시지로 표시
  - emacsclient가 없거나 통신 실패 시 경고만 출력하고 계속 진행

  이제 스크립트 실행 시 해당 리포지토리의 모든 수정된 Emacs 버퍼가 자동으로 저장됩니다.

[사용자]
> 좋아 네가 최고야

[에이전트]
⏺ 감사합니다! 스크립트가 이제 안전하고 똑똑하게 작동할 것 같네요. 혹시 테스트해보시고 문제가 있으면 언제든 알려주세요.
6
6

PaperWM.spoon 미묘하게 굼뜨고 사용성이 좋지 못해서 싹 지웠다... Hamerspoon 위에서 도는 거라 한계가 있는 듯.

특히 최근에 Wezterm이랑 같이 쓰면 Wezterm이 뻗는데 (왜인지는 모르겠다) PaperWM.spoon 구조 상 하나가 뻗으면 창 정렬이랑 포커싱이 엉망이된다 🙃

2
2
0
4
6
1
5
4
1
2

오늘은 projects.org 파일에서 내 노트 중 프로젝트를 찾아 리스트로 띄워주도록 스크립트를 짰다. org agenda도 좋던데 기능이 풍부해서 익히기 어려워서, 내가 신경쓰고 싶은 기능만 작게 만들었다.

org는 주피터 노트북이나 엘릭서 라이브북처럼 실행 스크립트를 파일 내에 넣어버릴 수 있고, 접어서 깔끔하게 결과만 볼 수 있어서 좋다.

projects.org 파일의 모습. SRC 블록은 접혀있고, 진행중, 완료, 폐기된 프로젝트들이 리스트업되어있다.SRC BLOCK을 펼친 모습. 프로젝트 목록을 뽑아내기 위한 Elisp 스크립트가 담겨있다.
3
1
3

이뿐만이 아니다. 예스24는 낙후된 시스템을 운용하는 것으로 전해진다. 단적인 예로 사이트 개발에 '닷넷 프레임워크'를 사용하고 있다. 닷넷 프레임워크는 현재는 잘 사용하지 않는 개발 언어로 윈도 서버에서만 운영 가능하기 때문에 개발자의 외면을 받고 있다.

닷넷 프레임워크는

  • 현재는 잘 사용하지 않는 -> 아님¹
  • 개발 언어로 -> 아님²
  • 윈도 서버에서만 운영 가능하기 때문에 -> 아님³
  • 개발자의 외면을 받고 있다 -> 일단 점유율은 아님¹

예를 확인 없이 내세운 기사네요 🙃

2

org에서 Column View 기능을 활용하면 각각의 헤딩 섹션(**)을 row로 삼아서 데이터베이스처럼 다룰 수 있다.

원래는 각각의 항목 밑에 :PROPERTIES:하고 front-matter 비슷한 속성 상자를 붙이는데, column view로 이걸 펼쳐볼 수 있음

툴이 오래되니까 진짜 상상도 못하던 별게 다 되네

org에서 Column View를 활성화 한 모습
2

저도

  • 가장 최근에는 TypeScript로 웹, 게임 백엔드 개발을 했습니다
  • 제 손으로 뭔가를 만드는 게 재밌어서 프로그래밍을 골랐습니다.
  • 요새는 코딩 잘 안 하구 풀-타임 백수로 지내고 있습니다.
  • 가장 긴 경력은 육군 통신 장교입니다
  • 서울 거주 중이고, 내년에 토론토로 떠나볼 예정입니다
  • 취미로 기타 연주하고 책 읽고 노래 듣고 키보드 설계합니다
  • 터보-씨로 시작해서 "자바 두 명 타요" 소리 들으면서 자라서 괜히 자바를 멀리했습니다
    • 그래서 아직도 자바를 잘 몰라요
  • macOS에서 Emacs + org 잘 쓰고 있습니다
  • Elixir, Haskell, Rust 좋아하는데 잘 모릅니다
  • 일본어, 영어, 에스페란토 공부하는데 잘 못합니다
  • 한국어 개잘합니다 원어민급임
9

iPadOS에 메뉴바가 생겼다...

이제 화면 위에서 아래로 쓸어내리는 동작이 한층 더 복잡하게 바뀌었다:

  1. 우측 상단에서 쓸어내리면 제어센터가 나옴
  2. 그 외의 영역에서 쓸어내리면 메뉴바가 나옴 <- NEW!!!
    1. 메뉴바가 나온 상태에서 한 번 더 쓸어내리면 제어센터가 나옴
  3. 왼쪽 상단에서 쓸어내리면 바로 제어센터가 나옴
iPad26에서 메뉴바를 활성화 한 모습
가운데에는 음악앱이 실행되고 있다.
2
2

아니 pixel-scroll-precision-mode 같은 갓갓 기능을 이제야 알게 되다니

이전엔 이미지 첨부하면 이미지 세로 크기만큼 스크롤 도약해버려서 org에 이미지 첨부 자체를 안 했는데 이거 덕분에 마음껏 첨부해도 된다

Emacs에 org모드로 사진을 첨부한 모습.
1

오늘 오랜만에 코딩했다 내 org 레포 자동 커밋이 언젠가부터 안 되었는데 그냥 그렇게 살다가(...) 일일 자동 커밋 없으면 만들고 있으면 --amend --no-edit 하는 쉘 스크립트 하나 만들었음

3