Posts

다크모드

어느 날 블로그에 다크모드를 추가해야 겠다는 생각이 들었다. 다크모드가 있다면 깜깜한 곳에서 블로그를 볼 때 눈에 부담이 덜할 것이다. 별로 어렵지 않아 보였다. 다크모드 CSS를 따로 만들어 놓고 블로그에서 다크모드를 선택하면 CSS를 바꿔주면 그만 아닌가.

Read more...

Hugo 업그레이드

정적 사이트 생성기로 Hugo를 사용하고 있다. 속도도 빠르고 상당히 안정적이다. 버전이 바뀌었다고 사이트가 깨진 일은 한 번도 없었기에, 항상 최신 버전으로 업그레이드 해 사용하고 있다. 며칠 전 v0.60.1로 업그레이드 했는데, 사이트를 생성할 때 다음과 같은 경고 메시지가 보였다.

Read more...

파일 확장자 바꾸기

예전에 DOS에서는 디렉터리 안에 있는 파일의 확장자를 바꾸는 작업이 간단했다. ren(또는 rename) 명령을 사용하면 현재 디렉터리 안의 모든 *.txt 파일의 확장자를 .bak로 바꿀 수 있었다.

Read more...

아침형 인간

제 경험상 아침형 인간과 저녁형 인간의 유일한 차이점은,
일찍 일어나는 사람들이 단지 지나치게 우쭐댄다는 정도입니다.
- 러셀 포스터

한동안 '아침형 인간'이 유행했다. 성공한 사람은 아침에 일찍 일어난다든가, 아침에 일찍 일어나는 사람이 더 건강하다든가 하는 말이 정말 맞는지는 모르겠다. 저녁 늦게 또는 밤 늦게 일하는 게 효율적인 사람도 많을 테고, 잠만 충분히 잔다면 늦게 자고 늦게 일어난다고 해서 건강하지 못하란 법도 없을 것 같다.

Read more...

러들로

영어 수업이 끝난 다음에도 영어 선생님과 가끔씩 연락을 주고 받는다. 크리스마스에는 카드와 선물을 교환한다. 선생님은 전화로 얘기하자고 하지만 나는 메일을 선호한다. 영어로 듣고 말하는 것보다는 읽고 쓰는 쪽이 부담이 덜하다. 그러던 어느 날 영어 선생님이 남는 방 하나를 에어비앤비로 쓴다는 소식을 들었다.

Read more...

조퇴

거의 다 나았던 기침이 다시 심해졌다. 사무실에서 계속 기침을 했더니 매니저가 사내 메신저로 말을 걸어왔다.

"너 별로 좋아보이지 않는다. 괜찮냐?"

기침을 하긴 했지만 일을 못할 정도로 심각하다고 생각하지는 않았다.

Read more...

구멍 뚫기

집을 사서 이사오고 나서 전동 드릴을 장만했다. 한국에서는 드릴을 사용해본 적이 없는데 여기서는 드릴을 쓸 일이 자주 생겼다. 벽에 구멍을 뚫는다든가 가구를 조립할 때 드릴이 필요한 경우가 많다. 인건비는 비싸고 내 수입은 적기 때문에 웬만한 작업은 내가 직접 해야 한다. 드릴로 구멍을 뚫는 게 쉬워 보이지만 막상 해보면 만만한 작업이 아니다.

Read more...

highligh.js 서버측 렌더링

블로그 글에 포함된 코드를 하이라이팅 하기 위해 highlight.js를 사용한다. highlight.js 역시 별도 JavaScript 파일을 로딩한 다음 페이지에 포함된 코드를 찾아 렌더링하는 식이라 페이지를 로드할 때마다 매번 다시 렌더링하는 비효율이 발생한다. MathJax 만큼 느리진 않지만, 가끔씩 네트워크 속도가 느린 환경에서 코드 블록이 울컥 하는 현상을 볼 수 있다. MathJax 서버측 렌더링에서 했던 것처럼 코드도 사이트를 생성할 때 한꺼번에 렌더링해두면 좋을 것 같다.

Read more...

MathJax 서버측 렌더링

블로그 글에 포함된 수식을 표현하기 위해 MathJax를 사용한다. MathJax 덕분에 수식을 멋지게 표현할 수 있지만 수식 렌더링 속도가 매우 느리다. 브라우저에서 처음 로드했을 때 페이지 안에 \rm\TeX 소스 코드가 그대로 있다. 이후 로딩된 JavaScript가 \rm\TeX 코드를 HTML/CSS, SVG 또는 MathML로 변환하고, 브라우저가 변환된 결과를 화면에 표시한다.

Read more...

JUnit 5 매개변수 테스트

JUnit 4에서는 매개변수 테스트(parameterized test)를 작성할 때 불편한 점이 몇 가지 있다. 가장 대표적인 단점은 다음과 같이 정리할 수 있겠다.

Read more...