2015년 7월 30일 목요일

Python 종강

뜻하지 않게 학교에서 Python을 강의할 기회가 주어져서 강의 자료를 만들고 수업을 하며 한 달 여를 보냈다. 정규 과목에는 Python이 없지만 방학 특강을 통해 학생들에게 소개하고자 수업을 구상하고 강사를 찾던 학부장님과 출판사를 통해 이어진 것이다.

잘 해낼 수 있을지 걱정이 되었지만 흔치 않은 기회를 놓치고 싶지 않았기에 덤벼들었다. 덕분에 수업 준비에 많은 시간을 쏟았고, 그 와중에 꼭 필요하지도 않은 맥북을 구입하고 스타벅스에서도 돈을 많이 썼다. 내가 알고 있는 것을 다른 사람에게 설명하고 글로 풀어내는 것과는 또 다른 것이 바로 수업자료 만들기였다.

준비가 된 상태에서 수업에 임하는 것은 힘들지 않고 재미있고 보람 있었다. 학생들 앞에서 떨지나 않을까 걱정도 했지만, 전혀 그렇지 않았다. 하지만 제대로 공부하지 않고 섣부르거나 잘못된 말을 했을 때 학생들이 나를 어떻게 생각할 지에 대해선 신경이 쓰였고, 정신을 차리게 하는 채찍 역할을 했다.

강의 자료를 처음엔 종이에 출력했다가 슬라이드셰어에 올려서 공유하는 것으로 바꾸었다. 종이도 아끼고 편리하지만, 불특정 다수의 리뷰를 받는 셈이라 어설픈 내용으로 나쁜 이미지를 얻지 않기 위해 신경을 더 써야했다. 그리고 나눔고딕코딩 글꼴로 작성한 부분이 슬라이드셰어에서는 다른 폰트로 대체되어버리기 때문에 추가적인 손질이 필요했다.

http://slideshare.net/sk8erchoi/

2015년 7월 20일 월요일

Python 강의

전에 책을 내었던 출판사를 통해 한 전문대학과 인연이 되어 방학 동안의 특강을 맡게 되었다. 2주 동안 Python에 대한 수업을 하는데, 그 중에서 1주일은 학교 교수님이, 나머지 1주일은 내가 수업을 하기로 했다. 지난 주에 개강을 했고, 모레부터는 내 차례이다.

내 책을 교재로 채택하기는 했지만 수업을 위한 슬라이드는 책을 요약하지 않고 인터넷의 자료를 찾아가면서 완전히 새로 만들었다. 지난 한 달 동안 많은 시간을 들였다(덕분에 스타벅스의 매상도 약간 올라갔을 것이다). 직장을 다니고 있었다면 그만큼 시간을 투자하기가 쉽지 않았을 것이다.

수업 시간만 따지면 벌이가 나쁘지 않지만, 준비에 몇 배의 시간이 들어갔다. 겉보기에 그럴 듯해 보이는 일이라 해도, 실속이 없을 수 있겠다는 생각이 들었다. 그렇기는 해도 이참에 Python의 요즘 흐름을 따라잡고 자료도 만들었으니, 나로서는 그리 손해는 아니다. 오히려 학교에서 강의를 하는 특별한 경험을 할 수 있다는 것만으로 감사한다.

강의 개설과 폐강의 기준이 되는 인원수를 아슬아슬하게 오가고 있어서 폐강을 고려할 정도의 상황이지만 다행히 내 차례가 없어지지는 않았다.

수업을 듣는 학생들 스스로는 아직 잘 모를 수도 있겠지만, 이번에 배우는 것들이 그들의 커리어에 있어서 큰 도움이 될 수도 있을 것이다. 강의를 개설한 학교와 교수님, 나는 그들을 물가에 데려다주는 역할을 하는 것이고, 그 후에 일어나는 일은 학생들의 몫이다.

오늘은 슬라이드의 분량이 부족하다는 피드백이 있었다. 한 시간에 30 페이지 정도 나간다고. 수업 리허설도 해보고 싶었지만 슬라이드 쓰기도 벅찬 현실. 첫술에 배부르랴.

2015년 7월 18일 토요일

아이폰 5 강제 재시작

iPhone 5를 쓴 지 2년이 넘었다. 오늘은 운동을 하고 폰을 보니 화면이 들어오지 않는다. 전원 버튼을 눌러도 답이 없다. 배터리는 충분했는데도.

애플 매장에 들러서 아이패드 미니 2와 3를 번갈아 구경하면서, 충전 케이블을 폰에 연결해보았지만 역시 켜지지 않는다. AS가 필요한 것 같다는 생각이 들어, 매장 직원에게 "폰 점검이 가능하냐"고 물었다. 그랬더니 직원은 증상이 어떤지 반문하고는 바로 해결해주었다.

홈 버튼과 전원 버튼을 함께 10초 정도 누르면 강제로 재시작이 된다고. 하나 배웠다.

2015년 7월 17일 금요일

맥에서 zsh 사용

Mac의 터미널은 bash를 기본으로 설정되어 있다. Jython 2.7.0 설치 경로를 PATH에 등록하려다가, Mac에는 다른 셸들도 들어있다는 것을 알게되어 zsh을 사용해보기로 했다.

기본 설치된 zsh의 버전이 낮아서 따로 설치했다는 글도 보였지만, 내 맥북에는 그보다 더 높은 버전이 설치되어 있다. 특별한 이유가 없다면 시스템에 포함된 셸을 쓰는 것이 좋으며, OS 업데이트만으로 충분하다는 것이 내 생각이다.

% zsh --version
zsh 5.0.5 (x86_64-apple-darwin14.0)

터미널의 기본 셸은 환경 설정에서 변경할 수 있다.

zsh 매뉴얼은
man zsh
또는 다음을 참조. http://linux.die.net/man/1/zshall

2015년 7월 15일 수요일

맥북 12인치 구입

iPad 1세대와 iPhone 5에 이어, 이번에 12인치 맥북을 구입했다.

기존의 IBM 노트북은 집에서 메인으로 쓰고, 맥북은 항상 갖고 다니면서 토막 시간이 날 때 카페에서 쓸 생각으로 샀다. 하지만 집에서도 자꾸 손이 간다.

맥은 처음이라 키보드 배열과 단축키 등이 익숙하지 않다. 조금씩 익혀나갈 생각이다.

좋은 점

  • 작고 예쁘다.
  • 11인치 맥북 에어보다도 더 가볍다. 가방에 늘 스케이트를 넣어다니는 내게는 무게가 중요한 요소.
  • 배터리가 오래 가므로 충전 케이블을 들고 다니지 않게 되었다.
  • 시스템 시작과 종료에 시간을 낭비하지 않는다.
  • 레티나 디스플레이의 높은 해상도에서 얻어지는 높은 선예도.
  • 터치 패드의 품질이 월등하다. 두 손가락 스크롤이 아주 편리하다. 터치 패드에 포스 터치가 적용되어, 적은 힘으로, 모든 위치에서 동일한 힘으로 눌러지는 점이 마음에 든다.
  • 애플 제품끼리 자연스럽게 연동된다. 심지어 iPhone 번들 이어폰으로 볼륨 조절도 된다.
    • 캘린더와 주소록 프로그램이 탑재되어, 웹 브라우저를 사용하여 icloud.com에 접속할 필요가 없어졌다. UI가 비슷하지만 웹 버전에 비해 UX가 더 좋다.
    • iPhone으로 온 문자 메시지를 맥북에서 볼 수 있어,  작업 도중에 맥북에서 눈을 돌려 확인할 필요가 없다.

사용하거나 검토 중인 프로그램

  • Dropbox: Windows, 폰과 태블릿을 이어주던 Dropbox가 Mac까지 맡아주니 연간 요금이 아깝지 않다. N 드라이브나 One Drive는 별로 사용하지 않는다.
  • 오피스 365: 매월 요금을 내고 구독 중이라, 추가 비용 없이 설치했다. Mac 용의 오피스 2016이 설치되었다. 파일이 Dropbox를 통해 동기화되므로, 집에서 작업하던 파일을 밖에 나가서는 맥에서 작업하고, 집에 돌아오면 또 작업을 계속할 수 있다. 물 흐르듯 이어지니 효율이 높다. 
  • 캘린더, 주소록, 메시지 등 기본 프로그램
  • 카카오톡: 일단 설치해보았는데, 자주 쓰지는 않을 것 같다.
  • 페러렐스: 맥북 구입 전에는 꼭 필요할 것만 같았지만, 아직까지는 필요를 못 느끼고 있다.
  •  bluestacks: 안드로이드만 지원하는 앱을 사용할 일이 있을 때를 위해 설치해보았는데, 곧 지우게될 것 같다.
  • 바쁜 일이 지나가면 번역 프로그램인 OmegaT를 사용할 생각이다.

한계, 불편한 점

  • 윈도우 PC와 iPhone에서 사용하고 있는 클머니 가계부 앱은 맥을 지원하지 않고, 앞으로도 지원할 계획이 없다고 한다. 그래서 bluestacks에서 안드로이드용 클머니 앱을 설치해보았는데, iPad 에디션처럼 태블릿 화면에 맞춘 UI가 아니라 조그맣고 조악한 화면이 보이길래 환불해버렸다. 아름다운 하드웨어와 소프트웨어 사이에 끼인 에뮬레이터란 얼마나 보기 싫은 존재인지.
  • 요즘은 성가신 ActiveX를 피하기 위해, 쇼핑몰 웹사이트에서는 장바구니에 넣어두고 결제는 폰으로 처리한다는 사람들이 있다. 그 점에 착안해서 은행 앱을 bluestacks 내에서 설치해보려고 했지만, 루팅 폰은 설치 불가라는 메시지가 나타나며 실패.
  • 메인 PC는 따로 있어야 한다. 특히 한국의 환경에서는 Windows가 필요.
  • Command 키에 아직 익숙하지 않아서인지 한/영 전환이 불편하다. 오른쪽 Command 키가 한/영 키 역할을 하도록 매핑하는 사람도 있던데,  별로 내키지 않는다.
  • 켄싱턴 락을 물릴 곳이 없다. 화장실 갈 때에도 들고 다녀야겠다고 생각하지만, 그렇게 하기보다는 짐을 정리해서 나오게 된다. 가방은 더 가벼워져서 좋다.
  • 맥북에는 포트가 USB-C 한 개 밖에 없다. 이 점 때문에 맥북 에어와의 사이에서 고민을 했지만, 없으면 없는대로 쓰면 될 일이다. 포트를 확장하는 어댑터도 사지 않았다. 아이폰을 충전할 수 없다는 아쉬움이 있지만 요즘은 전화가 꺼져도 그리 문제되지 않는다.

2015년 7월 14일 화요일

해킹 프로그램 도입

이 글에 국가 기관의 선거 개입과 민간인 사찰을 옹호하려는 목적은 없음을 밝혀둔다.

국정원으로 추정되는 모처에서 해킹 프로그램을 구입한 정황으로 인해 들썩이고 있다. 다른 군부대와 경찰도 구입을 고려한 것으로 보인다.
http://m.ohmynews.com/NWS_Web/Mobile/at_pg.aspx?CNTN_CD=A0002127086#cb

물론 내국인을 대상으로 법적 절차를 무시한 채 자행하는 해킹은 잘못된 것이다. 하지만 군부대가 군사 목적으로 해킹하는 것은 다른 문제다.

해킹은 무조건 범죄일까. 살인이 범죄인지 생각해보면, 군인과 경찰이 올바른 명령에 따라 저지른 살인에는 죄를 묻지 않는다. 해킹도 군사작전일 수 있고 이때 작전에 필요한 무기는 바로 해킹 프로그램이다.

역지사지로 외국의 어느 부대에서 한국인을 대상으로 해킹과 도감청 작전을 수행한다면 섬뜩하겠지만, 그것이 한국의 부대에서 해킹을 하지 말아야할 이유는 되지 않는다. 공격과 방어는 따로 생각할 수 없고, 국민을 보호하기 위해 군경은 무기를 갖출 필요가 있다.

숨어서 몰래 들여올 일이 아니라 전투기 도입과 같이 드러내놓고 추진해야 할 일이다. 몰래 구입해서 사용해온 것은 뭔가 켕기는 일이 있거나, 혹은 국정원이 굳이 외부에 알릴 필요가 없다고 생각했기 때문일 것이다. 가능하면 드러내놓고 했으면 좋겠다. 국내 보안 업체에게 쓰잘데기 없는 액티브엑스 대신 고품질의 군사 무기를 개발할 기회도 주고 말이다.


2015년 7월 10일 금요일

네이버 블로그 방문자 급증

운영 중인 네이버 블로그의 방문자수가 6월 22일 376명으로 최고점을 찍은 이후 쭉 빠져서 7월 초 들어 10명 남짓으로 떨어졌다. 그러다가 7일 하루는 다시 269명으로 뛰었다.

방문 트렌드


시간대별 분포를 보니 7일 밤 10시에서 11시 사이에 258건이 들어왔다. 내가 마지막으로 글을 올린 것이 1일이니, 새로운 글로 인한 방문은 아닐 것이다. 지식in의 질문 몇 개에 답변을 한 것도 7일 새벽 5시경이므로 이 그래프를 설명하지 못한다.

시간대별 분포

또한 유입 URL도 딱 한 개.
http://section.blog.naver.com/sub/SearchBlog.nhn?type=post&option.keyword=1

유입 URL 분석

여러 모로 보아 정상적이지 않은 현상이다.

블로그 방문자수에 연연하는 것은 아니지만, 이상한 현상에 대해서 이해를 하고 싶어 검색을 해보고 잠정적으로 내린 결론은 다음과 같다.

내 블로그가 방문자수 통계를 부정한 방법으로 끌어올린 것처럼 보이게 해서, 부정 사용을 방지하려는 네이버 검색 알고리즘으로 하여금 검색 결과 순위가 떨어지도록 유도하기 위해 누군가가 고의로 저지른 범행이다. 흔히 하는 표현으로는, 네이버 검색 엔진에게 "저품질" 블로그로 낙인찍히게 할 목적의 "방문자수 테러"이다.

어떤 사람은 경찰청에 사이버 범죄로 신고를 하던데, 나도 그렇게 하는 것이 좋을지.