아직도 cmake는 제대로 쓰고 있다는 느낌이 당최 들지 않는다...

이하
@evenharder@hackers.pub · 24 following · 25 followers
이것저것 해보고 싶은 사람입니다. 지금은 C++과 함께 고통받고 있습니다.
실크송...이게 맞나...?
오늘 오후 4시부터 9시까지 49th ICPC World Finals Baku가 진행됩니다.
실시간 스코어보드: https://worldfinals.icpc.global/scoreboard/2025/index.html
실시간 스트리밍: https://www.youtube.com/live/93DYRPNRrRA
문제지: https://worldfinals.icpc.global/problems/2025/problemset.pdf
오늘은 다른 파트에서 나온 이상 현상을 보다가 흔한 실수 중 하나인 memcpy(dest, src, strlen(src))
를 발견하고 공유했다. 동적 할당 방지를 위해 std::string
과 std::format
을 못 쓰는 상황도 아쉽고, 프로젝트 초창기에 다양한 helper class(std::array
기반 문자열 등)가 정립이 되지 않아 아쉽다. 그 때는 정말 초짜 신입이었으니, 별 도리가 없기도 했다.
올해 초에 조금이라도 바로잡고자 문자열 조작 로직을 개량해 직접 snprintf
를 쓰지 않고 편리하게 문자열을 다룰 수 있도록 변경한 적이 있었다. 꽤 많은 팀원이 그 존재를 익혔지만 수많은 레거시 코드는 앞으로도 태곳적 상태에 머물지 않을까. 슬프기보다는 아쉽다. 근원적인 실수를 줄일 수 있는 기회가 더욱 있었을텐데...
금요일은 반차써서 실크송하러 가야겠다. 얼마나 황홀한 맵과 음악과 적과 기술이 날 반길까...
2주 동안 거의 못 봤던 Pyodide PR 작업이 오늘 모각코 시간에 혈이 뚫려서 조금 더 보완했다. 역시 때로는 휴식이 약이다.
오늘은 평소 출근보다 조금 일찍 나왔는데 조조할인이 되었다. 오전 6시 30분까지였구나...
@2chanhaeng이찬행 기하학 유형하면....
@evenharder이하 이 분이 굉장히 달인이셨던걸로 알고 있는데요(?)
@kodingwarriorJaeyeol Lee
@2chanhaeng이찬행 저 문제를 조금 살펴봤는데요, 적분식에 매몰되지 않고 discrete한 문제로 해석하면 각 차원마다 포함 배제의 원리를 써야 해서 태그가 저렇게 주렁주렁 달려있어 보입니다.
이번 주는 내내 휴가이니만큼 즐겁게 휴식해야겠다
실크송 출시일에 연차를 써야하나...
회사컴이 점점 맛이 가고 있어서 내일 포맷을 할 예정이다. 브라우저 북마크나 환경설정 백업을 열심히 해두고 있지만, 꼭 몇몇은 기억 저 편 너머에 있다가 한참 나중에 생각이 나곤 한다...
Hackers’ Public 어때요
블로깅의 쇠퇴, AI의 끝없는 학습, 비공개 플랫폼(Discord 등)으로의 이주, 짧고 중독성만을 강조하는 피드와 BM, 한 번 보면 다시 찾기도 힘든 SNS 포스트, 범람하는 가짜뉴스와 개소리와 혐오... 웹은 정보의 망망대해도 아닌 소행성대로 변해가고 있다.
네이버플러스 멤버십 해지가 잘 안되어서 고객센터에 전화했다. 몇 차례의 좌절 끝에 비밀통로를 발견했다.
이번 주는 그래도 dotfiles 올리고 Pyodide 첫 PR 제출하고...주말에 열심히 공부했다
연휴를 이용해 문제를 열심히 깎아 Call for Task에 제출했다. 선정이 되련지...
C++ module에 대한 좋은 글을 발견했다. https://lucisqr.substack.com/p/why-nobody-is-using-c-modules
C++ module의 처참한 지원을 놀리기라도 하듯 https://arewemodulesyet.org/ 같은 홈페이지도 있지만, 왜 module이 더디게 발전하는지 알 수 있는 글이었다.
C++을 쓰다보면 Rust 부러운 점이 한둘이 아니지만 cargo만 봐도 top3 안에는 들어가지 않을까 싶다. cmake는... 너무 어렵고 야생적이다 😇
C++ module에 대한 좋은 글을 발견했다. https://lucisqr.substack.com/p/why-nobody-is-using-c-modules
C++ module의 처참한 지원을 놀리기라도 하듯 https://arewemodulesyet.org/ 같은 홈페이지도 있지만, 왜 module이 더디게 발전하는지 알 수 있는 글이었다.
강의자료 정리한 부분도 적당히 가공해서 올리려고 하는데, 생각보다 백업이 파편화되어 있다는 안타까운 사실을 깨달았다...
사용감은 생각보다는 괜찮지만, fallback 설정이 잘 안 되어있는지 일부 nerd font가 마름모 물음표로 표시된다.
powershell nerd font installer 대신 폰트를 직접 설치하니 해결되었다. 며칠간 더 써본 느낌으로는 Powershell 7은 wezterm보다는 좀 느리다. vim keystroke 하나의 latency가 미세하게 느껴지는 정도. config는 다소 복잡해보였다. Windows 11의 난해한 번역 때문일수도...
C++ module에 대한 좋은 글을 발견했다. https://lucisqr.substack.com/p/why-nobody-is-using-c-modules
C++ module의 처참한 지원을 놀리기라도 하듯 https://arewemodulesyet.org/ 같은 홈페이지도 있지만, 왜 module이 더디게 발전하는지 알 수 있는 글이었다.
문서 번역과 리뷰가 참 노고가 많이 필요한 일이구나...
번역 훈수는 언제나 환영합니다
@joonnotnotJoon 사소하지만 코멘트 살짝 남겼습니다. 이 훌륭한 자료를 번역해주셔서 감사합니다 🥰
오늘 Pyodide 모임은 비록 40분을 늦게 도착해서 세미나는 많이 못 들었지만, Typer를 어떻게 교체해야 할지 조언을 들었다. 뒷풀이에서도 멘토 멘티분들과 가까워지는 시간을 잘 보냈다. 앞으로가 더욱 기대된다
오늘은 바이너리의 glibc++ 버전이 안 맞는 걸 삽질분석하다가 ldd와 objdump랑 조금 더 친숙해졌다. 해결책은 그냥 LD_PRELOAD긴 했지만, ldd -r -v
와 objdump -T
라는 재밌는 옵션을 발굴했다.
왜인지는 모르겠으나 회사컴을 Win11로 올린지 얼마 안 된 오늘 WezTerm이 실행이 안 되어서 Powershell v7로 급하게 이주했다. 회사 보안 프로그램 때문으로 보이는데 고치기도 어려워보인다. 대체 왜 이런 시련이...
사용감은 생각보다는 괜찮지만, fallback 설정이 잘 안 되어있는지 일부 nerd font가 마름모 물음표로 표시된다.
왜인지는 모르겠으나 회사컴을 Win11로 올린지 얼마 안 된 오늘 WezTerm이 실행이 안 되어서 Powershell v7로 급하게 이주했다. 회사 보안 프로그램 때문으로 보이는데 고치기도 어려워보인다. 대체 왜 이런 시련이...
pyodide issue 작업하며 python package의 구조를 조금씩 배우고 있다. 망각곡선 저 너머로 사라지기 전에 일지를 기록해놓아야겠다...
주변에 감사하며 살아가자는 진리를 다시금 깨닫는 새벽 12시 56분
내일은!! 퇴근하고 PT하고 pyodide랑 good first issue에서 종종 언급되는 typer library를 뜯어봐야겠다
pyodide-build가 어떻게 돌아가는지 조금 습득했다. cli가 어떻게 작동하나 싶어 찾아봤는데 python package의 entry point 개념을 새롭게 익혔다. uv sync를 수행하니 neovim에 연결된 lsp가 알아서 제3자 패키지도 분석해줘서 한결 작업을 쉽게 해볼 수 있겠다
멤버변수가 200개 가량 되는 C++ 클래스 인스턴스를 정녕 우아하게 직렬화할 수는 없는 걸까? 컴파일 에러 메시지를 보니 g++ paramater pack 상한에 걸리는 느낌이다
reflect-cpp랑 toml++을 엮어서 reflectivity 기반으로 컴파일이 되기는 했고, 출력도 아주 잘 된다. TU 1개 컴파일에 무려 10분이 걸린다는 '사소한' 문제가 있어서 어떻게 해야 할지 고민이 된다.
올해 UCPC 본선에 H번 문제 시간선 통합을 출제했습니다! 구현이 풀이 도출에 비해 까다로운 문제임에도 불구하고 많은 팀이 도전해주셔서 감사했습니다. 내년에도 좋은 문제로 찾아뵙고 싶습니다 😊
내일은!! 퇴근하고 PT하고 pyodide랑 good first issue에서 종종 언급되는 typer library를 뜯어봐야겠다
멤버변수가 200개 가량 되는 C++ 클래스 인스턴스를 정녕 우아하게 직렬화할 수는 없는 걸까? 컴파일 에러 메시지를 보니 g++ paramater pack 상한에 걸리는 느낌이다
TDD 실습으로 TDD의 한계점만 느끼고 있다. std::cin buffer를 바꿔치기해서 thread를 띄우고 gmock에 시간차를 두고 표준 입력을 전달하려니 이게 프로그램 테스트인지 C++ 지식 테스트인지 모르겠다. 테스트 코드가 테스트할 코드보다 어려운 현상은 매우 흔하며, 대개 src 폴더에 있는 코드보다 더욱 빠르게 레거시 코드로 상해버린다. 테스팅은 소프트웨어 개발 주기에서 필수적인 역할을 지니고 있으나 TDD가 프로그램의 명확함을 보장하는 방향으로 굴러가긴 어렵다. 명확한 프로그램은 선행되는 테스트가 아니라 명확한 설계에서 나오기 때문이다.
교육 받으며 Windows 11에서 nvim dotfile이랑 lazygit 깔아 쓰려고 했는데 git이 계속 타임아웃 걸려서 순정 nvim에 미니멀한 .vimrc
적용해서 쓰고 있다. 기이하게도 git이 명령 하나에 (git log, git switch 포함) 2초씩 걸리고 lazygit에서 커서를 움직이면 diff pane이 한 줄씩 갱신되는 수준의 끔찍한 속도를 자랑하고 있다. Windows는 뭐가 잘못된걸까.
사내 작업환경에서 dotfile 묶음을 꺼내오려고 했는데 Gmail에 ps1
파일이 있는 압축 파일을 수신 거부하는 정책이 있는 줄은 몰랐다. 보안 사고 방지 때문이려나 싶다.
압축파일이 계속 수신거부되어서, bash script로 파일 내용과 이름을 출력하도록 해 평문으로 보냈다. 😅
사내 작업환경에서 dotfile 묶음을 꺼내오려고 했는데 Gmail에 ps1
파일이 있는 압축 파일을 수신 거부하는 정책이 있는 줄은 몰랐다. 보안 사고 방지 때문이려나 싶다.
예전에 만들어놓았던 Oracle Cloud 계정으로 다시 instance 만들고 있다. WSL2가 너무 느리긴 하다
OSSCA 발대식에 사람이 정말 많다.
때문에 UCPC 관련 작업은 못 하고 있다 😅
OSSCA 발대식에 사람이 정말 많다.
셸에 쳐야할 git status 명령어를 Claude Code에게 보내서 토큰을 낭비하는 모습, 스크린에 점묘화. 568 (H) x 1264 (W) px.
올해도 열리는 UCPC 2025에 많은 관심 부탁드립니다. 돌아오는 토요일에 예선이 있으며, Open Contest도 진행될 예정입니다.
오늘도 데이터 깎는 공돌이였다
Void Linux 한국 미러가 없어서 수제로 구워왔습니다 많관부
https://mirror.kyoku.dev
오늘은 요리하고 집청소하는 날인데 장마가 끝나서인지 정말 덥구나...이럴수록 물을 든든히 마셔야 한다.
이하 shared the below article:
OSSCA: Fedify 프로젝트 기여자들을 위한 안내

洪 民憙 (Hong Minhee) @hongminhee@hackers.pub
이 글은 오픈 소스 컨트리뷰션 아카데미 참여자, 더 나아가 Fedify 프로젝트에 기여하고자 하는 모든 이들을 위한 안내서입니다. Fedify 프로젝트 참여를 위한 준비 사항과 소통 채널, 개발 환경 설정, 그리고 프로젝트 구조에 대한 이해를 돕는 것을 목표로 합니다. 먼저 Fedify Discord 서버에 참여하여 자기소개를 하고, 연합우주(fediverse)에 대한 기본적인 이해를 쌓기 위해 계정을 만들어보는 과제가 주어집니다. JavaScript와 TypeScript에 대한 간략한 소개와 함께, Fedify가 ActivityPub 프레임워크로서 연합우주 SNS 소프트웨어 개발을 쉽게 만들어주는 도구임을 설명합니다. 저장소를 포크하고 클론하는 방법, Node.js, Deno, Bun 등 다양한 런타임 환경 설정 방법, 그리고 Visual Studio Code를 활용한 개발 환경 구성 방법을 상세히 안내합니다. 마지막으로, Fedify 저장소의 구조와 린트, 테스트 실행 방법을 소개하며, 기여할 일감을 찾는 방법과 추가 정보 링크를 제공합니다. 이 글을 통해 독자는 Fedify 프로젝트에 실질적으로 기여하기 위한 첫걸음을 내딛을 수 있으며, 오픈 소스 기여에 대한 자신감을 얻을 수 있습니다.
Read more →회사에서 테스트 프레임워크를 대공사하며 이런저런 리팩토링을 해야하는데, config file을 어떻게 생성하고 읽어야하는지에 대한 논의가 오갔다. TOML을 쓰는 방향을 강력히 주장했는데, 다음 주에도 이어서 논의를 이어나가봐야겠다
Fedify에도 지원했었는데 다른 프로젝트에 참여하게 되었습니다. Hackers' Pub에 Fedify에 넉 달 동안 깊게 빠져들 멘티분들이 많이 계신데, 언젠가 연이 닿았으면 좋겠습니다. 모두 화이팅입니다 🥰
3지망이 있었으면 ThorVG에 지원할 생각이었는데, 주 언어인 C++ 프로젝트기도 했고 그래픽 라이브러리가 제겐 생소하면서도 재밌어 보였기 때문입니다. 시간이 나면 기여해보고 싶습니다.