24 Apr 2019
Docker 란?
Docker란 컨테이너 기반의 오픈소스 가상화 플랫폼이다. 거창하게 말하면 그렇지만 간단하게 말해서 많은 서버와 프로그램의 환경을 컨테이너로 추상화하여 사용자의 PC에 직접 설치하는 일 없이 가상환경으로 돌려주는 플랫폼을 의미한다. 최근의 많은 개발 작업들은 의존성 패키지들이 버전도 다양하여 환경 셋팅만 하루종일 걸리고 정작 실제 개발은 시작도 하지 못하고 지쳐버리는 현상이 나타나는데, 이 환경 셋팅을 아주 간편하게 가상화하여 사용할 수 있는 녀석이다.
20 Apr 2019
Hackintosh 설치 계기
맥을 쓰고 싶으나 맥을 쓰지 못하는 사람들이 항상 꿈꾸던 해킨토시에 도전했다. 필자는 윈도우에서 작업하는 것을 그렇게 좋아하지 않고 그래서 노트북에 리눅스 민트를 설치해서 유용하게 사용하고 있었다. 그러나 이 리눅스 OS 는 몇 가지 아주 큰 단점이 존재했는데 먼저 한국에서 대학생으로서 살아가는데 필요한 Office 들의 호환이 아주 좋지 않고, 무엇보다 카카오톡을 wine 으로 돌려야 하는데 이것마저 아주 버그가 심하다. 개발과 업무를 모두 만족시킬수 잇는 방법이 없을까 생각하다가 해킨토시를 설치하게 되었다. 생각보다 굉장히 어려운 작업이었고, 공부할 것도 많아서 고생을 좀 한 것 같다.
17 Apr 2019
Latex 적용법
깃헙의 마크다운은 네이트브로 수식 입력을 지원하지 않으므로, MathJax 를 연결하여 사용할 수 있도록 하자. Jekyll 로 만든 Github Blog 의 경우 따로 커스터마이징 하지 않았다면 대부분 _layouts
라는 폴더가 존재할 것이다. _layouts/post.html
이라는 파일은 blog post 를 작성할 때 이 구조를 따르게 되는데, <article>
태그 안에는 우리가 Markdown 으로 적은 내용(contents)이 들어가게 된다. 여기에 다음과 같은 script 코드를 넣어주자.
18 Mar 2019
Kafka 란?
Kafka는 publisher-subscriber 모델의 메세지 큐이고, 분산환경에 특화되어 설계되었다. 기존의 많은 다른 메세지 큐와 비교하였을 때 월등하게 성능 처리가 좋고, 필자는 여기서 Spark Structured Streaming 환경을 구성하기 위해 kafka 를 사용하였다. 기존의 publisher-subscriber 에 대한 개념은 이전 MQTT 에서도 한번 다룬 적이 있다.
16 Mar 2019
Asciinema
손쉽게 터미널을 녹화하여 동영상으로 만들어주는 프로그램이다. 간단한 명령어로 녹화를 시작하고 끝낼 수 있다. 녹화가 완료됨에 따라서 자동으로 웹에 업로드 되며, 로컬에 저장할 수도 있다. 또한 다른 웹에 embedded 하거나 markdown 에 넣기 편리하도록 링크도 제공한다.