2020년 새해 복 많이 받으세요!

류광, 2020/01/04 19:31

제 번역서 독자 여러분과 블로그 방문자 여러분께 새해 인사드립니다. 2020년 새해 복 많이 받으시고, 366일 내내 많이 웃고 많이 감동하시길 기원합니다.

작년 한해 격려와 지도편달에 감사드립니다. 올해도 저는 본업인 번역에 주력할 텐데요. 올해 처음으로 나올 번역서는 아마도 Natural Language Processing in Action(줄여서 NLPiA)일 가능성이 큽니다. 현재 역자 교정을 보고 있는 중이고요. 그다음에는 Git Bash 팁 두 가지에서 잠깐 언급한 Cybersecurity Ops with bash이 될 것입니다.

교정 마무리하고 번역을 시작할 책은 Linux Observability with BPF입니다. 뭐랄까 '커널 공간 스크립팅'이라고 부를 만한(실제로 저런 용어가 있는지는 잘 모르겠습니다), 다소 생소한 주제를 다루는 책인데요. 항상 그렇듯이 배워 가면서 번역하는 신공을 펼칠 생각입니다.

그밖에 강화 학습에 관한 책이 예정되어 있고, 어쩌면 올해 안에 K 교수의 새 책을 번역하게 될지도 모르겠습니다. 종종 근황 글로 알려 드리겠습니다.

이곳 홈페이지&블로그와 관련해서는, 태터툴즈(!)를 은퇴시킬 때가 한참 지났다는 생각이 점점 강해지고 있습니다. 유행 따라 정적 사이트 생성 쪽으로 고민 중입니다.

출처 불명의1 움짤로 글을 마무리하겠습니다. 다시 한 번 새해 복 많이 받으시고, 항상 건강하시길!

Imgur


  1. 혹시 출처나 저작권&사용권 정보를 아시는 분 제보 부탁드립니다! 

top
트랙백 0 : 의견 # + 0

Git Bash 팁 두 가지

류광, 2019/11/05 12:18
Git 자체와는 관련이 없는 Git Bash 팁 두 가지입니다.

저번 달 중순부터 오라일리의 Cybersecurity Ops with bash라는 책을 번역하고 있습니다. 책의 예제 중에 Git Bash를 기준으로 하는 것들이 많은데요. 예전에는 Git Bash를 주로 git을 실행하는 용도로만 사용했는데, 이 책을 번역하면서 좀 더 본격적으로 사용하다 보니 여러모로 감탄을 자아내는 측면도 있고 좀 불편한 부분도 있더군요. 다음은 특히 불편했던 점 두 가지에 대한 간단한 해결책입니다.

한글화된 Windows 고유 명령의 출력이 깨져 나오는 문제의 해결책

Git Bash 창의 문자들은 기본적으로 UTF-8이지만, 안타깝게도 Windows 한국어판의 경우 명령 프롬프트의 기본 문자 집합은 EUC-KR 또는 UHC에 해당하는 CP949입니다. 그래서 Git Bash 창에서 한글화된 Windows 명령을 실행하면 출력 메시지들이 깨져 나옵니다.

예를 들어 다음을 실행하면

$ netstat --help

다음과 같이 전혀 도움이 안 되는 도움말이 나옵니다.

Imgur

환경 변수 또는 Git Bash 창의 설정 메뉴를 이용해서 로캘을 아예 CP949나 EUC-KR 등으로 바꾸는 방법도 있지만, 요즘은 웹페이지든 프로그램 소스 코드이든 대부분의 텍스트 파일이 UTF-8이니 로캘은 아무래도 UTF-8로 두고, 대신 필요에 따라 다음처럼 출력을 iconv로 변환하는 게 나을 것입니다.

$ netstat --help 2>&1 | iconv -f CP949 -t UTF-8

Imgur

2>&1netstat이 도움말을 표준 출력이 아니라 표준 오류로 출력하기 때문에 넣은 것입니다. 모든 명령이 그렇지는 않지만, 어차피 오류 메시지도 봐야 할 것이므로 다른 명령들도 그냥 이렇게 하는 것이 좋겠죠.

참고로 iconv는 Git Bash와 함께 설치되므로 따로 설치할 필요가 없습니다.

매번 iconv -f CP949 -t UTF-8를 입력하기가 번거롭다면 다음처럼 별칭 설정을 ~/.bashrc~/.bash_profile에 넣으면 됩니다.1

alias tou8="iconv -f CP949 -t UTF-8"

다시 로그인(또는 source 적용)한 후에는 다음처럼 좀 더 간결하게 사용할 수 있습니다.

$ netstat --help 2>&1 | tou8

커스텀 man 명령

Git Bash에는 유닉스류 운영체제의 기본 매뉴얼 시스템인 man이 없습니다. Git Bash에 man 명령과 man 페이지들을 설치하는 게 불가능하지는 않겠지만, 좀 더 간단한 해결책은 그냥 웹에서 man 페이지를 찾아 보는 것입니다. 개인적으로는 터미널 창에서 man 페이지를 읽는 것보다 브라우저로 보는 게 더 편합니다.

다음은 주어진 명령의 man 페이지를 브라우저로 띄워주는 셸 함수입니다.

man()
{
  start "http://man.he.net/?topic=$1&section=all"
}

이 함수 정의를 ~/.bashrc./bash_profile에 추가하고 다시 로그인한 후 예를 들어

$ man ls

를 실행하면 기본 브라우저에 ls의 온라인 man 페이지(http://man.he.net/?topic=ls&section=all)가 표시됩니다.

man 페이지들을 제공하는 웹사이트는 많이 있으므로, http://man.he.net보다 나은 사이트가 있다면 man() 본문의 URL을 그 사이트의 것으로 대체하면 됩니다. 단, 명령 이름(함수의 $1)만으로 원하는 man 페이지에 접근할 수 있는 형태의 URL을 제공하는 곳이어야 합니다. 예를 들어 man7.org를 사용하려면 함수 본문을

start "http://man7.org/linux/man-pages/man1/$1.1.html"

으로 바꾸면 됩니다.

top
트랙백 0 : 의견 # + 0

번역서 '신경망과 심층 학습' 출간 소식 및 근황

류광, 2019/10/12 14:19
'Neural Network and Deep Learning: A Textbook'을 번역한 '신경망과 심층 학습' 출간 소식과 번역 마친 책, 번역 시작한 책 이야기.

소식이 좀 늦었습니다. 2월 중순에 탈고한 Neural Networks and Deep Learnig: A Textbook의 번역서가 지난 달 중순에 '신경망과 심층학습'이라는 제목으로 출간되었습니다.

실행 가능한 예제 코드 같은 것은 없고 수학 공식이 많은 교과서임을 주의하시고요. 학부 고학년&대학원용 교재를 독학용으로 좀 더 친절하게 다듬은 책이라고 하면 될 것 같습니다. 텐서플로나 파이토치 같은 기계 학습 프레임워크들을 그저 블랙박스처럼, 그러니까 "이걸 넣으면 저게 나온다" 정도만 알고 사용하는 수준을 넘어서고 싶은, 또는 그런 틀 자체를 벗어나고 싶은 분들에게 이안 굿펠로의 심층 학습과 함께 좋은 독본 세트가 되었으면 합니다.

오탈자나 오역 보고, 질문 및 의견은 이 책을 위한 페이지 http://occamsrazr.net/book/NeuralNetAndDeepLearning로 오세요~

그리고 간단한 근황입니다. 저번 근황 글에서 언급한 Natural Language Processing In Action을 저번 주에 탈고했습니다. 이번 달부터는 오라일리의 Cybersecurity Ops with bash를 번역합니다.

그밖에... 가능하면 올해 안으로 (드디어!) 루아 5.1을 벗어나서 루아 5.3으로 넘어가기 위해 주로 사용하는 루아 확장 모듈(C/C++로 작성된)들을 짬짬이 빌드하고 있습니다. 어제는 Lua-zip(https://github.com/brimworks/lua-zip)을 빌드하느라 삽질을 좀 했습니다. CMake 덕분에 Windows에서도 C/C++ 라이브러리 빌드가 한결 쉬워지긴 했지만 그래도 여전히 어렵습니다...

top
트랙백 0 : 의견 # + 0

'Blockchain By Example' 번역서 '예제로 배우는 블록체인' 출간 소식

류광, 2019/09/05 12:04
'Blockchain By Example'을 번역한 '예제로 배우는 블록체인'이 며칠 전 출간되었습니다.

본문 열기

top
TAG 번역서
트랙백 0 : 의견 # + 0

Mecab-ko 설정 파일과 사전 디렉터리를 상대 경로로 지정하기

류광, 2019/08/31 18:48
배포와 설치가 쉽도록 Mecab-ko의 설정 파일과 사전 디렉터리를 상대 경로로 지정하는 방법입니다.

본문 열기

top
트랙백 0 : 의견 # + 0

◀ PREV : [1] : [2] : [3] : [4] : [5] : ... [67] : NEXT ▶