<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>olaf.kr</title><description>그 날 기분에 따라 반말과 존댓말을 섞어씁니다.</description><link>https://olaf.kr</link><item><title>매직 트랙패드2 배터리 교체</title><link>https://olaf.kr/magic-trackpad2-battery-replacement</link><guid isPermaLink="true">https://olaf.kr/magic-trackpad2-battery-replacement</guid><description>오래쓴 매직 트랙패드가 부풀었다. 일단 최신 매직 트랙패드를 써본적이 없으나, 라이트닝을 꽂는 구형 모델이다. 라이트닝 충전 케이블을 꽂으려다가 들어가면 안되는 곳으로 단자가 들어가는 느낌이 들길래 봤더니 배터리가 제왕절개 직전이었다. 맨 처음에는 사설 수리를 알아봤다…</description><pubDate>Tue, 09 Jun 2026 13:34:36 GMT</pubDate></item><item><title>Ralph Loop (랄프 루프) 후기</title><link>https://olaf.kr/ralph-loop-review</link><guid isPermaLink="true">https://olaf.kr/ralph-loop-review</guid><description>랄프 루프에 대한 설명은 https://wikidocs.net/blog/@jaehong/6728/ &lt;- 포스트를 참고. 내 포스트에서는 랄프 루프를 실제로 세팅한 방법과 후기를 간단하게 소개한다. 내가 선택한 구현체: 랄프 루프는 여러 구현체가 있다. claude 공식…</description><pubDate>Sat, 21 Mar 2026 05:20:58 GMT</pubDate><category>llm</category><category>claude</category></item><item><title>Auto-Switch iTerm Profiles on SSH Connection</title><link>https://olaf.kr/auto-switch-iterm-profiles-on-ssh-connection</link><guid isPermaLink="true">https://olaf.kr/auto-switch-iterm-profiles-on-ssh-connection</guid><description>미국에 있는 서버와 한국에 있는 서버는 핑 차이가 크다. 미국서버에 배포하던 서비스를 최근에 한국으로 옮기니, 로컬 개발 터미널인지 라이브인지 구분이 힘들어졌다. 좋은 방법이 없을까 고민하던 차에 내가 발견한 방법을 공유한다. 1/ 프로필을 생성한다. 나는 평소에 밝은…</description><pubDate>Sun, 23 Nov 2025 00:10:47 GMT</pubDate><category>terminal</category></item><item><title>warp directory `wd`</title><link>https://olaf.kr/warp-directory-wd</link><guid isPermaLink="true">https://olaf.kr/warp-directory-wd</guid><description>터미널에서 특히 자주 찾게되는 폴더들이 있다. nvim 설정 디렉토리, 회사 git repo 디렉토리, 개인 git repo 디렉토리 등등. 이런 디렉토리들을 즐겨찾기처럼 등록하고, 즐겨찾기 목록을 볼 수 있고, 즐겨찾기에 등록된 곳을 바로 이동할 수 있게 만들어주는…</description><pubDate>Sat, 18 Oct 2025 08:22:04 GMT</pubDate></item><item><title>macOS에서 키보드로 출력 오디오 장치 바꾸기</title><link>https://olaf.kr/change-sound-output-device-using-keyboard-in-macos</link><guid isPermaLink="true">https://olaf.kr/change-sound-output-device-using-keyboard-in-macos</guid><description>최근에 헤드폰을 하나 샀다. 하지만 헤드폰으로 듣다가 밥을 먹을 때는 맥북 스피커로 바꾸고 싶다. 그렇게 출력 장치를 바꿀 때마다 상단의 제어센터 버튼을 눌러서, 오디오 버튼을 누르고, 위 스크린샷에서 원하는 장치를 고르는 것은 매우 귀찮더라. 키보드 “딸깍”으로 오디…</description><pubDate>Fri, 12 Sep 2025 12:11:06 GMT</pubDate><category>macos</category></item><item><title>토막글 다섯 개 (5)</title><link>https://olaf.kr/five-short-articles-5</link><guid isPermaLink="true">https://olaf.kr/five-short-articles-5</guid><description>1\. PR Approve에는 장미를 한 송이 🌹 팀원의 풀 리퀘스트를 Approve 할 때, LGTM와 같은 인삿말도 좋지만 나는 장미를 쓴다. 낭만 있고, 메신저에서 PR Approve 구걸을 할 때 장미를 부탁한다고 하거나, 팀원의 Approve 부탁 메세지에…</description><pubDate>Tue, 19 Aug 2025 11:33:14 GMT</pubDate></item><item><title>검은 빨래 먼지 조지기</title><link>https://olaf.kr/how-to-remove-black-laundry-lint</link><guid isPermaLink="true">https://olaf.kr/how-to-remove-black-laundry-lint</guid><description>필터 잘 동작하는 건조기가 있으면 건조기로 끝난다. 하지만 난 건조기가 없다. 이런 상황에서 검은 빨래를 하면서 먼지를 줄이려면/떼어내려면, 먼지가 잘 달라붙는 세탁물을 일부러 집어 넣는다. https://www.ikea.com/kr/ko/p/nyskoeljd-dish…</description><pubDate>Fri, 15 Aug 2025 08:14:44 GMT</pubDate></item><item><title>안 쓰는 아이폰으로 할 일 수첩 대체하기</title><link>https://olaf.kr/using-an-unused-iphone-to-replace-a-to-do-notebook</link><guid isPermaLink="true">https://olaf.kr/using-an-unused-iphone-to-replace-a-to-do-notebook</guid><description>처음에는 모든 할 일을 omnifocus로 관리했다. 근데 일상적으로 해야하는 일도 omnifocus에 관리하다보니, 할 일 리스트가 오염되는 느낌을 받았다. tag와 flag, project 등으로 분리도 해보고, omnifocus pro도 결제해서 perspecti…</description><pubDate>Sun, 29 Jun 2025 03:11:36 GMT</pubDate><category>notes</category></item><item><title>api.olaf.kr/holidays가 해외에서 더 잘 팔리고 있다?!</title><link>https://olaf.kr/api-olaf-kr-holidays-more-popular-overseas</link><guid isPermaLink="true">https://olaf.kr/api-olaf-kr-holidays-more-popular-overseas</guid><description>부제: (※무리가 아니었다?!) https://olaf.kr/korean-holidays-api 에서 소개했던 한국 공휴일 api에 대한 요청이 해외에서 매우 늘었다. CF에서 해당 라우트를 24시간 캐시로 서빙하고 있기 때문에, 그리고 특별히 내 서버에서 따로 통계를…</description><pubDate>Fri, 20 Jun 2025 04:34:58 GMT</pubDate><category>apis</category></item><item><title>The version of macOS on the selected disk needs to be reinstalled.</title><link>https://olaf.kr/the-version-of-macos-on-the-selected-disk-needs-to-be-reinstalled</link><guid isPermaLink="true">https://olaf.kr/the-version-of-macos-on-the-selected-disk-needs-to-be-reinstalled</guid><description>저녁먹으러 가기 전에 15.5로 업데이트 버튼을 눌러뒀다. 저녁을 먹고오니 The version of macOS on the selected disk needs to be reinstalled. 라는 에러 메세지와 함께 “Startup Disk…” 또는 “Recover…</description><pubDate>Tue, 17 Jun 2025 10:46:21 GMT</pubDate><category>macos</category></item><item><title>Vimium으로 가볍게 Vim 입문하는 건 어떨까?</title><link>https://olaf.kr/getting-started-with-vim-using-vimium</link><guid isPermaLink="true">https://olaf.kr/getting-started-with-vim-using-vimium</guid><description>vim을 예찬하는 글입니다. 맨 처음에 코드 에디터로 sublime text를 주로 썼다. 이후엔 atom을 썼다. 나는 무료를 좋아한다. 그러다가 vscode가 나오고 (정확히 이유는 기억 안나지만 아마 속도 때문에?) 탭이 구현되지 않은 상태에서도 vscode를 쓰…</description><pubDate>Sun, 08 Jun 2025 05:04:06 GMT</pubDate><category>vim</category></item><item><title>Logseq to Simplenote</title><link>https://olaf.kr/logseq-to-simplenote</link><guid isPermaLink="true">https://olaf.kr/logseq-to-simplenote</guid><description>Logseq를 1년 정도 사용했다. 비슷한 아웃라이너인 Dynalist는 논문 쓸 때 매우 유용했었지만, logseq는 별로였다. 몰입을 깨는 사용성이 군데군데 있어서 그랬다. 초기 실행이 느리다. 아마도 electron 기반이라 그런 것 같다. outliner인 것까…</description><pubDate>Thu, 01 May 2025 17:15:55 GMT</pubDate><category>notes</category><category>logseq</category><category>llm</category><category>mcp</category><category>simplenote</category></item><item><title>내가 사용하는 로스트아크 세팅</title><link>https://olaf.kr/64k06rcaioycroyaqe2vmouklcdrozzsiqttirjslyttgawg7is47yyf</link><guid isPermaLink="true">https://olaf.kr/64k06rcaioycroyaqe2vmouklcdrozzsiqttirjslyttgawg7is47yyf</guid><description>이 글로 하여금 로아를 즐기려는 유저들이 라데온 대신 엔비디아를 사도록 유도하기 위해 글을 씁니다. 특히 9700XT 사서 로아 하려는 사람들이 있던데, 9700XT는 당연하게도 이전 드라이버에서 지원하지 않고요. 9700XT를 지원하는 최신 드라이버는 제가 쓰는 69…</description><pubDate>Sat, 05 Apr 2025 17:14:25 GMT</pubDate></item><item><title>How &quot;Fallthrough Attributes&quot; work in Vue3 (feat. v-if)</title><link>https://olaf.kr/how-fallthrough-attributes-work-in-vue3-feat-v-if</link><guid isPermaLink="true">https://olaf.kr/how-fallthrough-attributes-work-in-vue3-feat-v-if</guid><description>What is “Fallthrough Attributes”? Vue3에서 Fallthrough attributes(이하 폴스루 속성)은 &quot;컴포넌트에 전달되지만 받는 컴포넌트의 props나 emits에 명시적으로 선언되지 않은 속성이나 v-on 이벤트 리스너를 말한다.…</description><pubDate>Fri, 21 Feb 2025 15:34:19 GMT</pubDate><category>javascript</category><category>vuejs</category></item><item><title>9800x3d 데스크탑 조립 완료!</title><link>https://olaf.kr/9800x3d-assembly-completed</link><guid isPermaLink="true">https://olaf.kr/9800x3d-assembly-completed</guid><description>목요일(12/12)에 킹뱅크 램을 마지막으로 모든 부품이 도착했다. 편의점에서 핫도그 사와서 뚝딱 해치우고 바로 조립(과 도축) 시작! 일단 기존에 쓰던 데스크탑에서 파워와 그래픽카드, 저장장치들을 해체했다. 그래픽 카드는 각이 안나와서 드라이버를 사용했지만, 전동 드…</description><pubDate>Sat, 14 Dec 2024 10:16:13 GMT</pubDate></item><item><title>나머지 부품 주문 완료!</title><link>https://olaf.kr/64ky66i47keaiou2go2sicdso7zrrlgg7jme66omiq</link><guid isPermaLink="true">https://olaf.kr/64ky66i47keaiou2go2sicdso7zrrlgg7jme66omiq</guid><description>메인보드, 쿨링팬, CPU 쿨러 모두 주문했다. 사실 CPU가 2월 초 배송으로 찍혀있긴 했지만 아무래도 그것보단 일찍 오지 않을까 생각하고 있었고, 근질근질해서 좀 찾아본 결과는! 나보다 하루 정도 빨리 시킨 분이 미마존에서 배송 출발했다는 글을 발견! 그래서 빠르게…</description><pubDate>Sun, 01 Dec 2024 09:19:06 GMT</pubDate></item><item><title>KingBank Hynix A-Die CL28 DDR5 16GB X2 6000MHz RAM 구매</title><link>https://olaf.kr/kingbank-hynix-a-die-cl28-ddr5-16gb-x2-6000mhz-ram</link><guid isPermaLink="true">https://olaf.kr/kingbank-hynix-a-die-cl28-ddr5-16gb-x2-6000mhz-ram</guid><description>90일 이내 무료 반품이 붙어있길래 적당히 싼 가격에 업어왔다. 9800X3D를 포함한 대부분의 AMD CPU들은 6000MHz에서 램타이밍이 빠른 램과 궁합이 좋다고하여 구매했다. 이젠 메인보드와 쿨러만 남았다! ✅ CPU - 9800X3D $532.22 ($479…</description><pubDate>Thu, 28 Nov 2024 13:39:30 GMT</pubDate></item><item><title>Fractal Design Pop XL Slient Solid Black 케이스 구매</title><link>https://olaf.kr/fractal-design-pop-xl-slient-solid-black</link><guid isPermaLink="true">https://olaf.kr/fractal-design-pop-xl-slient-solid-black</guid><description>블프인지 광군제인지 아무튼 11월 할인으로 서린 공식에서 싸게 팔길래 샀다. 지금 쓰고 있는 케이스도 앞면이 막혀있고, 발열로 문제를 느껴본 적이 없으며, 미들타워에서 빅타워로 업그레이드 할 예정이기 때문에 쿨링 성능은 더 올라갈 것이라고 기대하는 중. + 집에 도착하…</description><pubDate>Thu, 21 Nov 2024 10:00:52 GMT</pubDate></item><item><title>Ryzen7 9800X3D 드래곤볼 시작!</title><link>https://olaf.kr/ryzen7-9800x3d-dragon-ball-started</link><guid isPermaLink="true">https://olaf.kr/ryzen7-9800x3d-dragon-ball-started</guid><description>(2024년 11월달 들어서는 조금 뜸해졌다만) 로스트아크라는 게임을 열심히 해왔던 편이라, 3D V-Cache가 있는 라이젠 X3D 시리즈로 업그레이드를 해야겠다고 생각해왔었다. 현재 쓰고 있는 시스템은 10600KF + 6900XT 조합인데, 로스트아크를 시작하기…</description><pubDate>Sat, 16 Nov 2024 16:53:03 GMT</pubDate></item><item><title>_.chain in lodash-es is impossible</title><link>https://olaf.kr/chain-in-lodash-es-is-impossible</link><guid isPermaLink="true">https://olaf.kr/chain-in-lodash-es-is-impossible</guid><description>lodash-es는 트리셰이킹을 지원하는 lodash npm package다. 그리고 \_.chain은 그 특성상 lodash의 콜렉션에 대응하는 함수들을 모두 활용할 수 있다. lodash-es에서 chain은 사용할 수 없다. 출처: https://github.co…</description><pubDate>Mon, 23 Sep 2024 14:16:50 GMT</pubDate><category>javascript</category><category>lodash</category></item><item><title>한국 공휴일 api</title><link>https://olaf.kr/korean-holidays-api</link><guid isPermaLink="true">https://olaf.kr/korean-holidays-api</guid><description>작년(2023년) 7월 쯤에 만들었는데 지금 공개한다. &gt;&gt; API 링크 &lt;&lt; 만들게된 동기는 기존에 공개된 API가 회원가입 &amp; 로그인, 인증키 그리고 XML으로 이루어져있어 쓰기 싫었다는 것. 누군가가 만들어줬으면 좋겠었는데 답답해서 그냥 내가 만들었다. 위 API…</description><pubDate>Sun, 21 Apr 2024 05:28:45 GMT</pubDate><category>apis</category></item><item><title>Syntax highlighting for jb</title><link>https://olaf.kr/syntax-highlighting-for-jb</link><guid isPermaLink="true">https://olaf.kr/syntax-highlighting-for-jb</guid><description>jb의 README.md에 따르면 jb는 ruby code의 문법을 따른다고 되어있다. 따라서 .jb 파일에서도 syntax highlighting을 활성화하기 위해서는, vscode macOS 기준 ctrl + shift + l 으로 위 창을 띄워서 &quot;Configur…</description><pubDate>Tue, 23 Jan 2024 13:05:41 GMT</pubDate><category>ruby</category><category>ruby-on-rails</category></item><item><title>Plasmo 간단한 소개와 사용 후기</title><link>https://olaf.kr/plasmo</link><guid isPermaLink="true">https://olaf.kr/plasmo</guid><description>Plasmo는 멀티 브라우저를 지원하는 브라우저 확장(Browser Extension)을 만들기 위한 개발 SDK이다. Plasmo Itero는 브라우저 확장을 내부적으로 알파 테스트를 빠르게 돌릴 수 있도록 지원하는 TestBeds와 Github intergratio…</description><pubDate>Tue, 21 Nov 2023 12:25:12 GMT</pubDate><category>javascript</category><category>browser-extension</category></item><item><title>전문연 소집해제 &amp; 이직</title><link>https://olaf.kr/technical-research-personnel-discharge-and-turnover</link><guid isPermaLink="true">https://olaf.kr/technical-research-personnel-discharge-and-turnover</guid><description>9/20을 끝으로 전문연구요원(이하 전문연) 소집해제 및 데이블을 퇴사했다. 9/20에 맞춰서 남은 연차와 3년 근속에 주어지는 리프레시 휴가(유급 5일)을 써서 8/23~9/20, 약 28박 29일 정도를 쉬었다. 퇴사, 소집해제 &amp; 이직 축하파티와 낮술, 피부과,…</description><pubDate>Wed, 01 Nov 2023 12:20:09 GMT</pubDate></item><item><title>계차수열의 일반항</title><link>https://olaf.kr/generalized-terms-in-factorial-sequences</link><guid isPermaLink="true">https://olaf.kr/generalized-terms-in-factorial-sequences</guid><description>LeetCode 한 문제를 계차수열로 풀었다. 나중에 까먹을 것 같아서 나를 위해 메모한다. 수열A = \[1, 3, 6, 10, ...]을 등차수열이 나올 때까지 분해한다. 그럼 우리는 앞대가리 \[1, 2, 1]을 얻는데, 이를 공식에 대입하면 수열A의 일반항을 얻…</description><pubDate>Thu, 31 Aug 2023 06:54:51 GMT</pubDate></item><item><title>토막글 다섯 개 (4)</title><link>https://olaf.kr/five-short-articles-4</link><guid isPermaLink="true">https://olaf.kr/five-short-articles-4</guid><description>1\. RDB에서 JSON 타입은 언제 써야할까? 비즈니스 로직에 엮이는 테이블에는 안 쓰는 것이 좋다. 어떤 행에는 데이터가 없고, 어떤 행에는 데이터가 문자열이 아닌 문자열 배열이거나 하는 경우가 발생한다. 위와 이어지는 이야기로, 데이터의 정합성을 유지하기 힘들다…</description><pubDate>Thu, 27 Jul 2023 09:57:09 GMT</pubDate><category>essay</category></item><item><title>ChatGPT를 활용한 Node.js API 개발 (2)</title><link>https://olaf.kr/nodejs-api-development-with-chatgpt-2</link><guid isPermaLink="true">https://olaf.kr/nodejs-api-development-with-chatgpt-2</guid><description>LangChain.js 이전 글에서 설명했던 대부분의 코드는 LangChain.js(이하 랭체인)의 재발명이었다. 복잡하고 귀찮은 대부분의 작업들을 랭체인을 통해서 간단하게 처리할 수 있다. 아마 이전 글에서 설명한 부분을 직접 구현해본 경험이 있는 사람이라면, 해당…</description><pubDate>Wed, 05 Jul 2023 00:13:55 GMT</pubDate><category>javascript</category><category>nodejs</category><category>openai</category><category>chatgpt</category></item><item><title>토막글 다섯 개 (3)</title><link>https://olaf.kr/five-short-articles-3</link><guid isPermaLink="true">https://olaf.kr/five-short-articles-3</guid><description>1\. 최^택 나쁜 짓이라는 것을 알면서 이름으로 장난쳐봤다. 3의 5승. 3^5를 각각 끊어 읽으면 삼, 승, 오 라고 읽을 수 있지 않을까? 그렇다면, 친구 이름인 최승택도 최, 승, 택으로 끊어 읽는다면 우리는 최승택을 최^택으로 표현할 수 있을 것이다. 이때,…</description><pubDate>Sat, 17 Jun 2023 03:07:39 GMT</pubDate></item><item><title>ChatGPT를 활용한 Node.js API 개발</title><link>https://olaf.kr/nodejs-api-development-with-chatgpt</link><guid isPermaLink="true">https://olaf.kr/nodejs-api-development-with-chatgpt</guid><description>Model - GPT 3.5 Turbo 대기열에 등록해서 바로 지금 실사용하기 힘든 GPT4를 제외한다면, OpenAI에서 제공하는 GPT3.5 모델을 이용하는 것이 가장 무난한 선택이었다. GPT 3.5 Turbo 모델으로 문자열 입력, 문자열 출력을 하는 대부분의…</description><pubDate>Tue, 16 May 2023 12:08:55 GMT</pubDate><category>javascript</category><category>nodejs</category><category>openai</category><category>chatgpt</category></item><item><title>토막글 다섯 개 (2)</title><link>https://olaf.kr/five-short-articles-2</link><guid isPermaLink="true">https://olaf.kr/five-short-articles-2</guid><description>1\. 기대 관리(Expectation Management) 창업 동아리에 가입했을 때, 조원들 중에 내가 제일 나이가 많았다. 자연스럽게 조장의 역할을 수행하면서 내가 조원들에게 물어봤던 질문 중 하나는 다음과 같다. 자신이 &quot;창업&quot; 동아리에 왔다고 생각하는지, 창업…</description><pubDate>Wed, 22 Mar 2023 12:25:39 GMT</pubDate><category>essay</category></item><item><title>국민카드는 버그가 아니라고 한다 🤔</title><link>https://olaf.kr/6rwt6687lm065oc64quiouyhoq3uoqwgcdslytri4jrnbzqs6ag7zwc64ukipcfpjq</link><guid isPermaLink="true">https://olaf.kr/6rwt6687lm065oc64quiouyhoq3uoqwgcdslytri4jrnbzqs6ag7zwc64ukipcfpjq</guid><description>기프트카드로 1Password credit을 충전하면서, 현재 충전된 금액으로 1Password를 이용할 수 있는 기간이 얼마나 되나, 언제부터 이용해왔나 등을 생각해보면서 지난 글을 썼습니다. 이후 기프트카드 내역을 가계부에 기입하기 위해 (원화로 결제된 금액을 확인…</description><pubDate>Fri, 10 Feb 2023 12:55:39 GMT</pubDate></item><item><title>1Password 10년 사용기</title><link>https://olaf.kr/1password-10years-review</link><guid isPermaLink="true">https://olaf.kr/1password-10years-review</guid><description>제목은 어그로입니다. 사실 9년 8개월정도 사용했습니다 😅. 확인해보니 가장 오래된 1Password 아이템은 2013년 5월 30일에 생성됐네요. 쓰고 있는 이유는 별게 없습니다. 맥을 막 쓰기 시작했을 때 자주 보던 맥 블로그 back to the mac에서 앱…</description><pubDate>Wed, 08 Feb 2023 11:40:38 GMT</pubDate><category>1password</category></item><item><title>Typescript Library on github package</title><link>https://olaf.kr/typescript-library-on-github-package</link><guid isPermaLink="true">https://olaf.kr/typescript-library-on-github-package</guid><description>이 포스트에서는 github packages, github actions 그리고 semantic-release를 이용해서 typescript library repository를 생성, 관리, 배포하는 방법을 다룬다. In library adoji92 부분에는 자신의 g…</description><pubDate>Tue, 03 Jan 2023 12:09:42 GMT</pubDate><category>github</category><category>npm</category></item><item><title>Handling utc with dayjs</title><link>https://olaf.kr/handling-utc-with-dayjs</link><guid isPermaLink="true">https://olaf.kr/handling-utc-with-dayjs</guid><description>이 포스트에서는 timezone 또는 tzoffset을 활용하여 dayjs 객체를 초기화하는 방법, 그리고 utc\_time 문자열과 local\_time 문자열로부터 dayjs 객체를 생성하는 방법을 정리한다. 이후 나오는 모든 code snippet에는 위 코드가…</description><pubDate>Tue, 20 Dec 2022 12:01:42 GMT</pubDate><category>javascript</category></item><item><title>npm overrides</title><link>https://olaf.kr/npm-overrides</link><guid isPermaLink="true">https://olaf.kr/npm-overrides</guid><description>npm 8.3부터 overrides를 지원한다. (StackOverflow) 사용하고 있는 라이브러리가 의존하는 패키지를 덮어쓸 수 있는 기능이다. 자신이 관리하고 있는 라이브러리면, 해당 라이브러리에서 사용하는 의존성을 올릴 수 있는 권한이 있겠지만, 세상에는 그렇지…</description><pubDate>Tue, 22 Nov 2022 22:45:07 GMT</pubDate><category>npm</category></item><item><title>Download CSV without API Call on Browser</title><link>https://olaf.kr/download-csv-without-api-call-on-browser</link><guid isPermaLink="true">https://olaf.kr/download-csv-without-api-call-on-browser</guid><description>프론트엔드에서 들고 있는 데이터로 바로 CSV export 하고 싶을 때가 있다. 특히, thin server &amp; fat client 구조일 수록 이런 필요성이 커지는데, 결국에 2차원 배열을 가지고 WebAPI의 File, Blob과 조합한 뒤, anchor tag를…</description><pubDate>Tue, 25 Oct 2022 10:46:44 GMT</pubDate><category>javascript</category><category>csv</category></item><item><title>맥 한글 입력 딜레이</title><link>https://olaf.kr/66elio2vnoq4gcdsnoxrokug65sc66ci7j20</link><guid isPermaLink="true">https://olaf.kr/66elio2vnoq4gcdsnoxrokug65sc66ci7j20</guid><description>TL;DR: 블루투스 대신 유선 키보드를 써보고, 나아졌다면 블루투스 이슈다. 인터넷에 있는 여러 해결책들을 써봤다. 모두 딜레이를 없애지 못했다. 한글뿐만 아니라 영어 입력도 그다지 빠른 느낌이 들지 않았다. CPU usage도 낮고, swap도 사용중이지 않을 정도…</description><pubDate>Thu, 20 Oct 2022 01:37:06 GMT</pubDate></item><item><title>토막글 다섯 개 (1)</title><link>https://olaf.kr/five-short-articles-1</link><guid isPermaLink="true">https://olaf.kr/five-short-articles-1</guid><description>1\. 당연한 일을 당연하게 해낼 수 있는 능력 이사를 했다. 창문에 커튼과 블라인드 설치를 위해 윗층 사는 친구를 불러서 같이 조립했다. 친구 사이에 인건비(?)를 주고 받기에는 조금 머시깽이니 가지가 들어간 스팸 파스타를 해먹였다. 친구가 맛있게 먹고 &quot;맛이 없을…</description><pubDate>Fri, 30 Sep 2022 12:35:03 GMT</pubDate><category>essay</category></item><item><title>명명하기(naming)</title><link>https://olaf.kr/naming</link><guid isPermaLink="true">https://olaf.kr/naming</guid><description>데이비드 알렌은 그의 저서 GTD와 그의 웹사이트에서 이름 짓기의 중요성을 이야기한다. 내가 느끼기에도 명명되지 않은 물건, 개념, 현상 등에 명명하는 것은 unknown unknown을 줄이는 데 큰 도움이 된다. 업무를 처리하다 보면 자주 사용하게 되어 명명이 필요…</description><pubDate>Mon, 19 Sep 2022 13:14:39 GMT</pubDate></item><item><title>fzf, fd and bat</title><link>https://olaf.kr/fzf-fd-and-bat</link><guid isPermaLink="true">https://olaf.kr/fzf-fd-and-bat</guid><description>fzf fzf는 terminal에서 사용할 수 있는 다목적 fuzzy finder이다. iterm에서 ctrl+t를 누르면 fzf가 활성화되고, fuzzy matching으로 디렉토리나 파일을 찾을 수 있다. fzf는 기본적으로 find를 활용하지만, 성능이 더 좋은…</description><pubDate>Fri, 19 Aug 2022 08:05:06 GMT</pubDate><category>terminal</category><category>fd</category><category>fzf</category><category>bat</category></item><item><title>멍청이 is typing...</title><link>https://olaf.kr/idiot-is-typing</link><guid isPermaLink="true">https://olaf.kr/idiot-is-typing</guid><description>Don&apos;t 내가 슬랙에서 마주치면 한숨쉬는 DM 유형. Do 나는 비동기적으로 커뮤니케이션하는 걸 선호한다. 근데 타자 빠른사람은 괜찮음. 견딜만 해. 근데 그런 타자 빠른 사람들은 성질이 급한 사람들이고, 다른 사람의 시간을 뺏는 행위 또한 선호하지 않는 느낌. 이…</description><pubDate>Thu, 28 Jul 2022 14:21:49 GMT</pubDate></item><item><title>먼저 양보하기</title><link>https://olaf.kr/66i87kcaioywkeuzto2vmoq4sa</link><guid isPermaLink="true">https://olaf.kr/66i87kcaioywkeuzto2vmoq4sa</guid><description>지금도 늙은 나이는 아니지만, 더 어렸을 때의 나는 배타적이고 계산적이었다. 그 때의 태도를 요약해보자면 다음과 같다. 나 좋다는 사람만 만나더라도 부족한 인생, 굳이 싫다는(혹은 싫어할 수도 있는) 사람 만나야할까? 이상한 사람에게 호구 당하느니 주지도 않겠다. 하지…</description><pubDate>Tue, 05 Jul 2022 12:01:00 GMT</pubDate></item><item><title>특정한 파일 사용하는 Jenkins job 찾기</title><link>https://olaf.kr/how-to-find-jenkins-job-using-specific-file</link><guid isPermaLink="true">https://olaf.kr/how-to-find-jenkins-job-using-specific-file</guid><description>잡(Job)의 이름과 그 잡에서 사용하는 파일이 1:1으로 대응되면 가장 좋겠지만, 하나의 잡이 여러 개의 파일을 사용하는 경우도 있을 수 있고, 기존에 다른 누군가가 만들어놓은 소스코드 파일이 어떤 젠킨스 잡에서 사용하는지 찾기 힘든 경우도 있을 수 있다. jenki…</description><pubDate>Wed, 29 Jun 2022 12:07:00 GMT</pubDate><category>jenkins</category></item><item><title>Callback naming convention for Front-end</title><link>https://olaf.kr/callback-naming-convention-for-front-end</link><guid isPermaLink="true">https://olaf.kr/callback-naming-convention-for-front-end</guid><description>이 포스트는 2021년 11월 7일에 발행되었습니다. 들어가기 앞서: 어떤 컨벤션이든 지켜지지 않으면 의미가 없다. 한 번 정한/정해져버린 컨벤션이 있다면 최대한 지키는 것이 좋다. 천천히 마이그레이션 해야지라는 마인드를 절대 적용해선 안된다. 한 번에 싹 바꾸던가,…</description><pubDate>Thu, 16 Jun 2022 14:00:00 GMT</pubDate><category>vuejs</category><category>reactjs</category><category>frontend-development</category></item><item><title>Vue &amp; Vuex convention</title><link>https://olaf.kr/vue-and-vuex-convention</link><guid isPermaLink="true">https://olaf.kr/vue-and-vuex-convention</guid><description>이 포스트는 2020년 9월 30일에 발행되었습니다. Vue 프로젝트를 진행하면서 만든 Convention들을 정리해본다. Vue2와 관련된 설정이니 (나중에 이 글을 보게된) Vue3의 사용자들은 감안해주시길. Project Structure vue-cli를 쓰지 않…</description><pubDate>Thu, 16 Jun 2022 13:00:01 GMT</pubDate><category>vuejs</category></item><item><title>Bootstrapping</title><link>https://olaf.kr/bootstrapping</link><guid isPermaLink="true">https://olaf.kr/bootstrapping</guid><description>이 포스트는 2019년 4월 26일에 발행되었습니다. 수요일에 Programming Language 과목의 중간고사를 준비하면서 열심히 공부한 부트스트래핑이 시험에 나오지 않았기 때문에, 공부한 게 아까워 정리해서 올려봅니다. T-Diagram T-Diagram은 간단…</description><pubDate>Thu, 16 Jun 2022 12:30:01 GMT</pubDate><category>programming-languages</category><category>bootstrapping</category></item><item><title>Introduction to LLVM (3)</title><link>https://olaf.kr/introduction-to-llvm-3</link><guid isPermaLink="true">https://olaf.kr/introduction-to-llvm-3</guid><description>이 포스트는 2019년 1월 20일에 발행되었습니다. 12\. Static Single Assignment (SSA) Form 어디서 어떤 변수가 선언/사용되고 있는지 추척하는 것이 최적화의 주된 질문 중 하나. 위와 같은 상황에서는 if를 전후로 x의 역할이 바뀐다.…</description><pubDate>Thu, 16 Jun 2022 12:20:00 GMT</pubDate><category>compiler</category><category>llvm</category></item><item><title>Introduction to LLVM (2)</title><link>https://olaf.kr/introduction-to-llvm-2</link><guid isPermaLink="true">https://olaf.kr/introduction-to-llvm-2</guid><description>이 포스트는 2019년 1월 13일에 발행되었습니다. 6\. LLVM Compiler System For Compiler Developer, 컴파일러를 만들기 위한 모듈화된, 재사용 가능한 컴포넌트들을 제공 -&gt; 컴파일러 제작 시간, 비용 등을 절감 Intermedia…</description><pubDate>Thu, 16 Jun 2022 12:10:00 GMT</pubDate><category>compiler</category><category>llvm</category></item><item><title>Introduction to LLVM (1)</title><link>https://olaf.kr/introduction-to-llvm-1</link><guid isPermaLink="true">https://olaf.kr/introduction-to-llvm-1</guid><description>이 포스트는 2019년 1월 12일에 발행되었습니다. 이번 학기에 고급 컴파일러 설계를 수강했습니다. 물론, 대학원 수업이기 때문에 형식적으로 “고급”이 붙었을 뿐이라 정말 완벽하게 고급진 내용은 아니였지만 LLVM의 구조, 철학, 사용하고 있는 이론적 배경 등을 배우…</description><pubDate>Thu, 16 Jun 2022 12:00:00 GMT</pubDate><category>compiler</category><category>llvm</category></item><item><title>all-in-one wordpress migration exodus</title><link>https://olaf.kr/all-in-one-wordpress-migration-exodus</link><guid isPermaLink="true">https://olaf.kr/all-in-one-wordpress-migration-exodus</guid><description>이전 포스트에서도 밝혔듯, all-in-one wp migration의 복원 유료화 이슈로 wordpress에서 hashnode로 이주해왔습니다. 기존에 가지고 있던 백업본으로부터 살리고 싶은 몇 개의 포스트만 살리고 나머지는 그냥 조용히 백업의 상태로 두려고 합니다.…</description><pubDate>Wed, 15 Jun 2022 12:00:01 GMT</pubDate><category>wordpress</category></item><item><title>wordpress 버렸습니다.</title><link>https://olaf.kr/fuck-you-wp-migration</link><guid isPermaLink="true">https://olaf.kr/fuck-you-wp-migration</guid><description>제가 사용하던 wp 백업 플러그인이 갑자기 복원을 유료화로 정책을 바꿨습니다. 도둑놈의 새끼들에게 돈 주기 싫고(가장 중요), 기존 있던 글들에 대한 집착도 별로 없어서 그냥 hashnode에서 새출발하려고 합니다. 많은 응원 부탁드립니다. olaf.kr www.ola…</description><pubDate>Tue, 14 Jun 2022 11:01:00 GMT</pubDate></item></channel></rss>