Emacs로 글을 쓴 지는 꽤 오래 됐지만, 한국어 맞춤법 검사기가 없어
아쉬웠다. 워드 프로세서를 썼을 때는 맞춤법 검사기를 사용해 기본적인
오탈자를 잡아냈지만, Emacs에서는 눈을 크게 뜨고 꼼꼼히 읽으며 오탈자를
찾아야 한다. 블로그 글도 공개하기 전 여러 번 읽어 보지만, 공개 후 몇
달이 지나서 오탈자를 발견하는 일도 드물지 않았다. 비록 독자는 많지
않지만, 내가 쓴 글에 오탈자가 있는 것은 부끄러운 일이다. Emacs에서
쓸만한 맞춤법 검사기를 쓸 수 있다면 정말 좋을 것 같다.
예전부터 블로그에 포함된 수식은
mathjax-node-page(이하
mjpage)와 Bash 스크립트 함께 사용해 SVG로 렌더링했다. mjpage는
Node.js 스크립트로 STDIN으로 소스를 입력받아 렌더링 결과를 STDOUT으로
출력하는 방식이라 Bash 스크립트를 함께 사용해야 했다. HTML 파일마다
mjpage를 호출하다 보니 속도가 이만저만 느린 게 아니었다. md5
체크섬을 도입해 변경된 글만 골라 렌더링하도록 개선했지만, 처리 속도는
여전히 만족스럽지 못했다.
SQLite는 작고 빠른 데이터베이스 엔진이다. 다른 DBMS 처럼 서버
프로세스들 띄울 필요 없이 명령행 셸(sqlite3)로 데이터베이스 파일을
열어 SQL을 실행할 수 있다. CSV 파일을 바로 SQLite 테이블로 로드할 수
있어, 간단한 데이터 분석 시 유용하게 사용할 수 있다.
사촌 동생 다니엘라는 이탈리아 북부 볼차노/보젠(Bolzano/Bozen) 근처에
산다. 이곳은 알프스 자락에 위치해 매우 아름다운 곳이어서 예전부터 한번
가보고 싶었지만, 교통이 불편해 쉽게 갈 수 없었다. 구글 맵에서 찾아보니
항공편이 있을 만한 근처 큰 도시로 밀라노(Milano)와 베네치아(Venezia)가
보였다. 비행기를 타고 가서도 기차를 3~5시간 타야 한다.
Java에 스트림 API가 도입된 것은 2014년 발표된 Java 8부터다. 벌써
10년도 넘는 세월이 지났지만, 실제로 스트림 API를 사용할 기회는 많지
않았고, 간단한 작업에도 헤메는 경우가 많았다. 여기 스트림의 기본
사용법을 정리해 놓고, 필요할 때마다 참고하려 한다.
주피터 노트북(Jupyter Notebook)이 세상에
나온지 꽤 됐지만 그동안 눈길 한 번 주지 않았다. 주피터 노트북에서는
파이썬을 사용하는 경우가 많은데, 내가 파이썬을 별로 좋아하지 않아서
그랬던 것 같다. 어찌어찌 하여 쓸 일이 생겼는데, 막상 써 보니 상당히
괜찮은 것 같았다. 문서에 코드와 그 실행 결과, 설명을 함께 쓸 수 있다는
점이 마음에 들었다.