2014년 11월 30일 일요일

사생활 보호와 인터넷

인간은 누구에게나 자신을 돋보이게 하고 싶은 욕구가 있다. 인터넷이라는 시대의 총아는 이러한 욕구를 표출하기에 아주 적절한 기회를 제공하여 주었다. 누구나 큰 돈을 들이지 않고도(심지어 무료이다) 자신의 모습을 전세계인에게 드러낼 수 있다. 이는 단순한 일상의 기록일 수도 있고, 세상을 바꿀 원대한 꿈을 실현하기 위하여 자신의 지식과 사상을 세상에 드러내는 방편일 수도 있고, 마치 개인의 관심사 기록처럼 위장한 교묘한 마케팅 수단일 수도 있다. 특히 맨 마지막의 의도를 잘 걸러내는 것은 결코 쉽지 않다. 마치 드라마의 간접 광고처럼 말이다.

이러는 과정 중에 글을 쓰는 사람의 신분이 어느 정도 드러남은 피할 수 없는 현실이다. 현대 인터넷 시대에서 이미 사생활이라는 것은 없어졌다고 우려하는 사람도 있다. 심지어 인터넷 상에 존재하는 정보를 지워주는 속칭 '인터넷 장의사'라는 직업도 생겨났다. 부주의하게 올리거나 해킹을 통해 유포된 민감한 정보를 지우거나 - 연인과 같이 찍은 은밀한 동영상을 철없이 인터넷에 올렸다가 뒤늦게 후회하면서 지우고 싶어하는 사람이 많을 것이고, 혹은 나쁜 의도를 가진 사람이 악의적으로 유출한 경우는 더 많을 것이다 - 이미 고인이 된 사람이 남긴 글을 정리하고 싶은 경우에도 이 서비스를 이용하게 될 것이다.

자신의 신분을 인터넷에 어느 정도 드러낸다는 것은 그만큼 자신이 올린 글이나 사진에 대하여 책임을 지겠다는 좋은 뜻을 내포하고 있다. 그만큼 위험성도 따른다. 직접 대면하지 않는 세계에서는 의외로 엉뚱한 사람들이 많다. 글로만 자신의 뜻을 전파하게 되면 오해의 소지도 있기 마련이다. 따라서 댓글이나 이메일 등을 통하여 공격을 당하고 상처를 입을 수도 있다. 나는 한동안 전화번호를 제외한 실명이나 이메일, 현 거주지와 직장 정도는 공개하는 것이 바람직하다고 생각해 왔었다. 비록 내가 공인은 아니지만, 공공기관에 있으면서 자연스럽게 사람들을 만나게 되고 따라서 나의 업무 내용이나 개인적인 성향 등을 서비스 차원에서 인터넷 공간에 어느 정도는 공개하는 것이 자연스럽다고 생각했기 때문이다. 그러나 어제의 <댓글과 태클>일을 겪으면서 나의 사이트 운영 방식을 좀 더 폐쇄적으로 바꾸어야 하겠다는 마음을 먹게 되었다. 이는 분명히 퇴보를 의미하지만 어쩔 도리가 없다.

내성이나 포용력을 좀 더 키우고 나서야 댓글 기능 혹은 내 이메일 주소를 자신있게 공개할 수 있을 것 같다. 무대응이 가장 현명한 전략인데 나는 아직 그 수준에는 이르지 못하였다.

댓글과 태클

가족들과 함께 롯데월드몰 근처에서 즐거운 시간을 보내고 있던 주말, 내 구글플러스로 들어온 댓글 하나가 기분을 완전히 망치게 만들었다. 이에 질세라 나도 반박 댓글을 달았는데 또 이에 대하여 신경을 거스르게 하는 글을 부지런하게 달았기에, 아예 원본 포스팅까지 지워버리고 말았다.

사건의 발단은 이러하다. 내 구글플러스에다 기타리스트 박규희씨(페이스북 링크)의 유튜브 동영상을 링크로 달고, 간단히 글을 달았었다. '작은 몸집으로(특히 손) 기타를 자유자재로 다루려면 얼마나 힘이들까?... 앞으로 더 큰 활약을 기대해 본다' 정도의 짧은 글이었다. 박규희씨의 동영상을 몇 개 보면 쉽게 알겠지만. 여자로서 결코 큰 몸집이 아니다. 몸집이 작으면 당연히 손도 작고 따라서 클래식 기타를 치기 위한 왼손 운지가 쉽지 않다. 유튜브에 달린 외국인의 덧글 중에도 이러한 불리한 점을 극복한 것에 찬사를 보내는 것이 있었다. 내가 쓴 글은 아무리 읽어봐도 '신체적으로 불리하니 앞으로 더 노력해라'라고 비하하듯 쓴 것으로 읽히지 않았다.

신문 기사와 사진을 보라. 링크1 링크2 그리고 기타를 안고 있는 그녀의 모습을 보라. 기타가 얼마나 크게 느껴지는지 사진을 통해 느껴 보라. 그녀가 세계 수준의 기타리스트가 되기 위해 얼마나 많은 노력을 했을지는 쉽게 이해할 수 있다.

내가 쓴 구글플러스 포스팅에 b*e라는 사람이 이러한 댓글을 달았다. 기억에 의존한 것이라서 정확하지 않을 수도 있다.

"이미 자유자재의 경지에 오르신 분인데요. 이런 글을 쓰시다니요. 그것도 반말로... 님은 대단한 연주자이신가보죠? 그렇다면 한곡 땡겨 보시지요?"

이건 뭔 헛소리인가? 내가 유튜브 사이트에 올라온 동영상 밑에 댓글을 단 것도 아니고, 내 구글플러스에 링크를 달고 글을 작성한 것인데 반말이라고 시비라니? 그리고 아무리 기성 아티스트라 해도 어떤 공연이나 연주가 마음에 들지 않으면 문화 소비자 입장으로서 비평을 할 수도 있는 것 아닌가? 마치 가수의 노래를 듣고 나쁘게 비평한 사람에게 '너는 그만큼이나 부를 수 있느냐?'고 비난하는 것과 무엇이 다른가? 난 나쁘게 비평을 하지도 않았고, 이렇게 멋진 연주가가 되기까지 뒤에 숨은 피나는 노력이 얼마나 컸을까 하는 것을 쓴 것에 불과하다. '기특하다, 더 열심히 해라'라고 비아냥거린 것도 아닌다.

기분이 몹시 나빠진 나는 휴대폰으로 덧글을 달았다.

"여긴 박규희씨의 공식 사이트나 공공 게시판이 아니고 제 구글플러스입니다. 저는 박규희씨의 앨범도 갖고 있는 팬의 한 사람입니다... 님의 글을 지울 권한도 제게 있습니다."

그랬던니 또 얼마 안되어 덧글이 달렸다. 내 구글플러스에 +1을 한 것은 실수였고 애초에 내 글이 어이가 없었다고 한다. 기분이 몹시 상한 나는 원본글까지 전부 지워버리고 말았다. 아울러서 내 구글플러스의 덧글 기능도 없애버리고 말았다.

호기심이 발동하여 b*e이 구글에서 어떤 흔적을 남기고 있는지 조사해 보았다. 프로필 같은 것은 없고, 전부 유튜브 동영상에 삐딱한 시선의 댓글을 남기고 있었다. 자신의 공식 공간(블로그나 구글플러스등)에 링크를 가져다 놓고 비평적인 글을 작성했다면 전혀 문제가 되지 않는다. 그러나 정작 자신은 유튜브 사이트에 직접 댓글을 달았고, 개중에는 반말로 된 것도 당연히 있었다. 물론 동영상을 업로드한 사람 혹은 동영상에 찍힌 사람이 보면 기분이 좋지 않을 내용이었다.

키보드와 모니터 앞에 앉으면 사람들이 조금씩 전투적으로 변하는 모양이다. 어쩌면 내가 과민 반응을 한 것일지도 모른다. 내가 만약 마케팅의 수단으로서(혹은 단순히 내 생각을 세상에 전파하기 위한 수단으로서-이것에도 마케팅이라는 용어를 붙이는 것이 정당하다면) 인터넷 공간을 활용한다면 좀 더 치밀하게 계획을 세우고 설득력있는 어체로 글을 작성할 것이다. 자기 블로그나 사이트임에도 불구하고 경어체로 글을 작성하는 것도 마찬가지의 노력으로 이해할 수 있다.

그러나 내가 사이트와 블로그를 운영하는 이유는 개인적인 용도가 더 강하다. 업무와 취미, 그리고 일상생활과 관련된 정보들을 공개된 공간에 정리하는 것은 혹시 타인들이 내 글을 통해서 유용한 정보라고 생각되는 것이 있으면 활용했으면 하는 소박한 마음이 있기 때문이다. 딱 그만큼이다. 나는 라라윈이나 최윤섭 박사 정도로 정성이 가득하고 전문성이 담긴 사이트를 운영할 생각은 전혀 없고 그럴 능력도 없다.

더 이상 사소한 덧글에 반응하지 말자. 개인용도로 운영되는 사이트라면 과감히 댓글 기능을 차단하는 것도 고려해 보자.

2014년 11월 28일 금요일

GOLD(Genomes OnLine Database)에서 유전체 주석화 실시하기

경북대학교와 공동으로 진행하는 미생물 유전체 프로젝트가 몇가지 있다. 그 중에서 하나를 Standards In Genomics Sciences(SIGS)라는 저널에 발표하기로 하였다. 이 저널에서는 시퀀싱, 주석화 및 균주 특성 등을 정해진 포맷에 맞추어서 정리하여 제출해야 한다. 그리고 GOLD(Genomes OnLine Database)에서 프로젝트를 등록하기를 의무적으로 요청하는 것으로 보인다.

IMG/ER에는 계정을 만들어서 작업을 해 본 일이 있지만 GOLD를 통해서 annotation까지 해 본 일은 없기에, 이번에 연습 삼아서 처음으로 진행해 보기로 하였다.

GOLD 사이트에 들어가면 1. Register라는 메뉴가 있다. NGBI에서 BioProject를 등록하는 것과 비슷하게 정보를 넣으면 된다. NCBI와 다른 점은 Study, Biosample, Sequencing Project를 한번에 등록한다는 점이다.

NCBI에서는 SRA(sequence read archive)에 NGS raw read를 등록할 때 비로소 필수 조건으로서 BioSample을 등록하게 된다. 따라서 개념을 잡기가 조금 까다로운데, GOLD에서는 다음과 같이 친절하게 설명이 붙어 있다.

Biosample is the original place of the physical sample, from where the DNA was isolated.

프로젝트에 대한 기본 등록을 마친 뒤 AP, 즉 analysis project를 등록하고 assembly 파일을 제출하였다. NCBI에 이미 12개의 PacBio 유래 contig가 등록되어 공개된 상태라서 웹 브라우저에서 ftp 사이트를 열어놓고 간편하게 등록하였다. 파일을 다운로드하여 다시 밀어넣을 필요가 없이 단지 ftp link를 복사해 넣으면 된다.

SIGC 저널에서 필수 테이블로 요구하는 정보에는 다음과 같은 것들이 있다.

Pseudo genes
Genes in internal clusters
Genes with function prediction
Genes assigned to COGs
Genes with Pfam domains
Genes with signal peptides
Genes with transmembrane helics
CRISPR repeats











NCBI Prokaryotic Genome Automatic Annotation Pipeline(PGAAP)에도 분석을 의뢰해 놓은 상태이다. 표의 내용을 채우려니 약간 번거로운 일을 할 필요는 있겠다. COG 정보는 PGAAP에서 수치로 얻을 수 있는데, 나머지는 다른 프로그램을 돌려서 수작업으로 집계해야 할지도 모른다. 

KOBIC에서 바쁘게 일하는 동안 실무 작업에서 손을 많이 놓고 있었다. 이제 다시 정상을 찾아가는 중이다. 나 책임연구원 맞아...?


2014년 11월 27일 목요일

초/중/고 동창 밴드에서 전부 탈퇴하다

지난 일년 넘는 기간 동안 참으로 즐거웠었다. 아니, 정확하게 말하자면 작년 가을 무렵 가입 초기에는 30년이 훌쩍 지나 잊고 지냈던 친구를 다시 만난다는 것이 정말 신기하고 즐거웠었다. 그 즐거움은 그러나 그렇게 오래 가지 못하였다. 생각과 생활을 오랫동안 공유하지 않았던 친구들, 심지어는 학교를 다니던 당시에는 서로 알지도 못하던 불특정한 친구들과 오직 온라인 공간에서만 만남을 유지한다는 것은 대단히 어색하다. 사이버 세계에서도 잘 운영되는 모임은 얼마든지 있지만, 그런 경우 분명한 모임의 목적이 있다는 것이 나의 생각이다. 특히 작년에 구성된 초대 초등학교 동창 밴드의 경우 다소 말을 거칠게 하고 심지어는 직접 전화를 걸어서 생활에 불편함을 초래했던 몇몇 친구들 때문에 초대에 의해서만 가입을 할 수 있는 별도의 밴드를 만들어야 할 지경에 이르렀다.

그렇게 된 이후 나는 휴대폰에서 앱을 지우고 PC의 웹 브라우저를 통해서만 올라온 글들을 읽고, 아주 가끔 글을 올리고는 하였다. 제1대 밴드 원년 멤버 시절에는 꽤 열심히 글을 올리곤 했건만... 그러면서 올 가을에는 서울 출장 길에 두 번의 오프라인 모임을 갖기도 하였고.

한번도 같은 반이 아니었던 친구를 밴드 앱에서 알게되어 몇 번의 대화를 나눈다. 같은 시절 같은 학교를 다녔으니 공유되는 추억이 분명히 있지만 어딘가 모르게 공허하다. 프로필 사진을 계속 보게 되니 얼굴은 서로 조금씩 익숙해진다. 그러다가 오프라인 모임을 통해 비로소 처음 만난다. '아, 네가 ???구나'라고 인사를 하지만 실제로는 '처음 뵙겠습니다'가 맞는 것이다.

이제와서 친한 대학 동창 몇 명이 모인 밴드를 제외하고 전부 탈퇴를 해 버린 것은 왠지 자연스럽지 못한 온라인 세계에서의 소통방식이 어색하고 자꾸 새 글과 내 글에 대한 반응을 확인해야 한다는 욕구에 대해 피로감이 극도에 달했기 때문이다. 마치 여러명의 궁사가 서로 다른 표적을 향해 활을 쏘아대듯, 누군가 시작한 포스팅에 대해서 덧글과 덧글이 꼬리를 물고 급기야는 누가 누구에게 말을 거는 중인지 알기 어려운 상태가 되어버린다. 간혹 사회적인 성공을 강조하고 싶어하는 친구들도 있고(대개는 오프라인 모임에서 더 진가를 발휘하는 듯), 그때그때 새로 등장한 회원들이 초창기에 쏟아내는(나 역시 그랬었다) 글들의 러시가 이어진다. 수십개의 새로운 소식이 있다고 해서 들어가 보면 단지 '좋아요'에 해당하는 표식을 남긴 것에 불과할 뿐이다. 그 자체가 즐거움을 추구하는 한 방식이요 스트레스 해결의 수단이 될 수도 있겠지만 큰 의미도 없고 영양가도 없이 이어지는 글과 뒤엉킨 덧글이 주는 피로감은 매우 컸다. 게다가 최근에는 조직화 또는 권력화(?)의 움직임까지 보이고 있어서 여간 어색한 것이 아니었다. 그저 친목을 도모하는 모임으로 머물면 안되는 것인지? 이런 피로감과 혼란스러움에 나는 밴드 상의 친구들에게 아무런 기별도 남기지 않고 아무런 주저함 없이 '탈퇴'의 터치를 누르고 말았다.

기술이 예상할 수 없는 속도로 변하면서 인간관계를 맺는 방식도 크게 변하고 있다. 이러한 변화가 바람직한 것인지 혹은 그렇지 않은 것인지 아직 알기는 어렵다. 정성껏 조리한 음식을 꼭꼭 씹어 먹던 시대에서 이제는 알약 하나만 먹으면 모든 배고픔이 해결되고 필요한 영양을 취할 수 있는 시대가 되었는지도 모르겠다. 이러한 현실에 우리의 신체와 정서가 적응하려면 매우 오랜 시간이 걸린다. 인간관계도 마찬가지다. 우리가 자연스럽게 수용할 만한 점진적인 변화가 필요하다.

2014년 11월 25일 화요일

나를 위한 선물 - 베가 팝업노트(IM-A920S)

어제 SK 기기변경으로 휴대폰을 바꾸었다. 요즘 파격적인 출시가로 인하여 잠시 인기를 끌었던 베가 팝업노트(IM-A920S)이다. 팬텍의 재정상태를 돕기 위하여 제품 사양은 꽤 괜찮지만 거의 땡처리 수준으로 풀린 것으로 알고 있다. 사후 서비스가 조금 걱정이 되기는 한다. 구입은 대전역 앞 지하상가에 있는 점포에서 하였다. 바로 직전까지는 모토로라 레이저를 쓰고 있었다.

나에게 5.5인치 화면은 너무 크다! 휴대폰 자체가 그동안 사용해 오던 것에 비하여 월등히 커서 휴대하다가 떨어뜨릴까봐 걱정이 된다. 물론 장점도 있다. 이제는 노안으로 작은 글씨를 보기가 점점 힘들어지므로, 큰 화면이 도움이 될 것이다.

나는 휴대폰의 모든 기능을 철저하게 파악하여 쓰는 체질은 아니다. 이메일과 주소록을 연동하여 사용하고, 사진을 찍어 기록하고 구글플러스 정도를 쓸 뿐이다. 펜이 달려있는 대화면 스마트폰을 샀다는 것은 다이어리를 대신하여 쓸 생각이 있다는 뜻이다. 펜 이름은 'V펜'이다. 삼성은 S펜...

펜 터치가 지원되는 정식 메모 앱을 써도 되고, 인터넷 서핑 중 V펜을 꺼내면(옆면의 버튼을 밀면 톡 튀어나오는 재미가 있다. 팝업이라는 이름이 여기에서 나왔다) 자동으로 V펜 커버라는 메뉴가 뜬다. 그러면 캡쳐 후 편집을 선택하여 그 위에 펜으로 메모를 남길 수 있다.

 며칠간은 심심하지 않겠다!

2014년 11월 24일 월요일

인터스텔라 재관람

딸과 함께 보았던 <인터스텔라>를 이번에는 아들과 함께 보았다. 주인공 쿠퍼가 물벼락을 맞고 돌아와서 23년간 쌓인 메시지를 보는 장면, 블랙홀에서 타스와 함께 '90%만 솔직하기'를 읊조리며 스스로 레인저호를 분리하는 장면, 그리고 마지막에 에드몬드의 돌무덤을 쌓으며 외로움과 절망감에 울고 있는 아멜리아의 모습... 영화 <레 미제라블>에서 팡틴 역을 하면서 I dreamed a dream을 부르던 모습이 자꾸 떠오르는 것이 아쉽기는 하였지만. 도저히 눈물 없이 보기 어려웠다. 옆에서 같이 보던 아들도 마찬가지였고, 여기저기서 눈물을 훌쩍이는 소리가 들렸다.

최신 천문학과 관련된 내용이 중요한 소재로 다루어지고 있어서 꽤 어려운 영화라고들 한다. 틀린 말은 아니다. 그렇지만 그런 세부적인 상황이 영화를 영화로서 받아들이기에 큰 지장을 주지 않는다. 너무 신파조로 흐른다느니, 그래서 정작 이 영화가 만들어진 미국에서는 인기가 없다느니 하는 소식도 있다. 그러나 나는 인류의 위기에서 개인적인 부름을 받아 고뇌하면서 받아들이는 모습(물론 미션에 끌어들이기 위해 브랜드 박사는 진실을 숨기기까지 했지만), 항성간 여행을 다녀온 뒤 시간의 흐름 속도가 차이가 나서 벌어지는 기막힌 현실, 큰 손상을 입어서 연료가 얼마 남지 않은 인듀어런스호를 이끌고 결국 에드먼드 행성으로 아멜리아를 보내기 위해 자신을 희생하는 모습 등 인간의 보편적인 정서에 호소하는 바가 너무나 강력한 영화라고 생각한다. 이러한 줄거리가 우주라는 장대한 볼거리, 그리고 정교한 세트와 촬영 및 파이프 오르간 비슷한 소리의 악기 연주로 이루어진 한스 짐머의 장중한 음악과 아주 잘 어우러진 감동적인 영화라고 생각한다. 약간 지루한 느낌이 들 수도 있지만,두번째 보는 내내 전날 잠을 설쳐서 쏟아지는 피로를 전혀 느끼지 못할만큼 몰두할 수 있었다.

TV 조선에서는 아주 한국에서의 인터스텔라 흥행 돌풍이 지적 허영과 관련된 것으로 보인다는 아주 웃기는 기사를 냈다. 공부하면서 보는 영화? 정말 영화 평론가가 지적 허영이 이런 흥행 돌풍을 불러일으키는데 일조를 했다는 말을 하기나 했을까? 기자가 하고 싶은 말을 쓴 것이겠지. 영화 자체가 재미있으니 사람들이 보는 것이고, 또 많은 사람들이 본다고 하니 다른 사람들도 영화관으로 발길을 돌리게 하는 것 아니겠는가? 그러면 1700만명이나 되는 관객을 모은 <명량>은 허영에 가까운 국수주의적 태도에 의한 것인가? 난 <인터스텔라>의 맹목적인 추종자는 아니다. 분명히 약한 구석도 있고, 불충분한 부분이나 오류가 있었을 것이다. 그러나 충분히 눈과 귀가 즐거웠고, 감동적이었으며, 같은 영화를 두번이나 보게 된 최초의 사건이 이 영화를 통해 일어났음을 강조하고 싶을 따름이다.

2014년 11월 20일 목요일

우분투 설치하느라 1박2일

바이오리눅스 7과 8, 그리고 우분투 14.04와 14.10. DVD 매체를 각각 구워 놓고 설치를 시도하였다가 이틀째에 겨우 성공하였다. 윈도우와 리눅스를 듀얼부팅으로 쓰기 위한 가장 정석적인 방법은 내가 알기로 이러하다. 윈도우를 먼저 깔고, 리눅스를 나중에 설치한 뒤 grub에서 부팅할 OS를 고르게 하는 것이다. 이번에 고생을 하게 된 것은 아마도 설치 순서가 예사롭지 않았기에 그런 것 같다.

설치 이력을 잠시 살펴보자. 

원래 하드디스크 하나만 있던 데스크탑 컴퓨터에 바이오리눅스 6을 설치하여 업무용으로 사용하고 있었다. 리눅스는 VirtualBox에 깔아 사용하였다. 그러다가 하드디스크를 하나 더 정착하였고, 가상머신이 아닌 제대로 된 윈도우가 필요하다는 생각이 들어서 세번째 하드디스크를 장착하고 여기에 윈도우를 설치하였다. 윈도우를 나중에 설치하면 멀티부팅이 쉽지 않은데, easyBCD라는 유틸리티로 이를 해결하였다.

그러다가 리눅스를 업그레이드하기로 마음을 먹었는데 이게 쉽지 않았다. 설치가 거의 끝나갈 무렵 오류가 발생했다며 되돌아가기도 하고, 정상적으로 설치가 되었다 생각했는데 첫 부팅에서 난데없이 grub> 프롬프트가 뜨고... 바이오리눅스와 우분투의 최신 배포판 두가지씩을 DVD로 구워 놓고 거의 15번은 설치를 시도한 것 같다. 최종적으로 성공한 조합은 첫번째 하드디스크만 연결하고 나머지 두개의 케이블은 빼 놓은 뒤 바이오스 셋업에서 인식이 확실히 된 것을 확인한 다음 바이오리눅스 7을 설치하는 것이었다. 즉 처음에 리눅스만을 깔았던 상황을 그대로 재현하자는 것이다. 문제가 발생한 원인도 잘 모르겠고, 해결도 제대로 한 것인지 알 수가 없다. 게다가 왜 자꾸 윈도우로 부팅하면 시스템 시간이 틀어져 있는 것일까? 바이오스 백업용 배터리가 교체할 때가 되어 그런 것일까?

CentOS의 Gnome 환경만 접하다가 이제 unity를 쓰려니 조금은 걱정이 된다. 한글 입력은 당분간 신경을 쓰지 말자. 그리고 제 성능은 잘 나오지 않겠지만 윈도우 환경에서 VirtualBox로 우분투 최신 버전을 깔아 놓은 뒤 익숙해지도록 노력해야 되겠다. 리눅스로 부팅하여 작업을 하는 일은 그렇게 빈번하지는 않다. 대부분 윈도우에서 PuTTy로 성능이 더 좋은 리눅스 서버에 연결하여 사용하고 있으니까. 지금 생각하면 별로 좋은 서버도 아니다. 2009년에 구입한 Tyan 서버이니 이제 교체할 때가 되어간다.

리눅스를 접한지도 거의 20년, 그러나 파워유저의 길은 멀기만 하다!

2014년 11월 14일 금요일

올림푸스 E-620 IS(image stabilization) 기능 고장

언제부터인가 카메라 뒷면 액정의 IS 표시가 빨갛게 반짝인다. 연세대학교에서 열린 학회에 참석하는 김에 신촌 서비스센터에 가서 수리 가능 여부를 알아 보았다. CCD 센서 등 가장 고가의 부품 일체를 교체하는 것 말고는 방법이 없는데, 이것이 카메라에서 가장 비싼 부품이라고 한다. 무려 30만원! 카메라는 이제 더이상 내구재가 아니다. 3-4년이면 말썽을 슬슬 일으키기 시작하는 전자제품에 불과할 뿐이다.

지난 글을 검색해 보니 꼭 4년전 이맘때에 구입을 했었다.

Olympus E-620, 새식구가 되다!

차라리 중고 바디를 사는 게 낫지. 30만원이라니!

DSLR이 아니어도 좋으니 20만원 근방의 적당한 카메라는 없을까? 검색을 해 보았다. 둘 다 내가 좋아하는 스타일의 카메라들이다.


  • 캐논 PowerShot SX510HS
  • 후지필름 FinePix S8600


사양 측면에서는 캐논 제품이 훨씬 낫다. 가격은 좀 더 비싸다.

요즘 들어서는 노키아의 윈도폰에도 관심이 생긴다. 익스팬시스 사이트를 가 보면 10만원대의 매력적인 휴대폰이 몇 가지 보인다. 그냥 나를 위한 장난감으로 생각하고 확 질러버릴까?

2014년 11월 5일 수요일

카톡과 밴드, 내 체질에는 잘 맞지 않는다

작년 가을 무렵 밴드라는 것을 알게 되었다가 초등학교 동창생들이 하나둘 모이면서 꽤 몰두를 한 적이 있다. 다시는 못만날 것으로 생각했던 추억 속의 친구들을 34년만에 찾게 되어 정말 신기하고도 반가운 마음이 그지 없었다. 그러나 시도때도 없이 울려대는 새글 및 덧글 알림이 점점 피곤해지고 자꾸 휴대폰을 들여다 보는 일도 번거롭게 느껴져서 이제는 앱을 지우고 가끔 웹 브라우저로만 접속한다. 대부분 휴대폰 정보가 공개되어 있으니 필요하면 밴드 앱을 통하지 않고 직접 연락을 하면 된다. 부끄러운 이야기가 되겠지만 배우자 이외의 이성을 다시 자연스럽게 만날 수 있는 창구가 되니 다들 열심히 활동하는 것이 아닌가 싶기도 하다. 남자 학교였던 중고교 밴드에 비해서 초등학교 밴드가 월등하게 잘 운영되는 것을 보면 이러한 면이 없다고 볼 수 있겠는가? 밴드 활동에서도 어떤 흐름이 있어서 가입 초기에는 꾸준이 글이나 사진을 올리고 열심히 활동을 하다가 그러한 열정은 슬슬 사라지고 또 새로운 회원이 등장한다. 물론 해를 넘겨서도 열심히 활동하는 친구도 있고, 사무실까지 차려주는 사업가 친구도 있다.

번거로움을 느끼게 하는 것은 카톡도 마찬가지. 카톡이 아니면 연락이 잘 안되는 친구가 있어서 지우지를 못하고 있다가, 이것 역시 사람의 신경과 정성을 빼앗는 노예라는 생각이 들어서 탈퇴하고 다시 깔고를 반복하곤 하였다. 그러다가 어제 누군가 남긴 글, "나타났다 사라졌다를 반복하는구나"를 보고 기분이 별로 안좋아져서 다시 탈퇴를 해 버렸다.

문자 메시지는 비용도 많이 들지만 고해상도 사진을 보내기가 나쁘다. 그런 면에서 카카오톡이 유리한 면이 있지만, 휴대폰 주소록에 있는 모든 사람이 친구로 뜨는 것은 불편하다. 예전에 알아본 바에 의하면 주소록 이름 앞에 무슨 특수문자를 삽입하면 친구로 등록되지 않는다고 하였었는데, 그게 무엇이었는지 도무지 기억이 나지 않는다.

아, 찾았다. 바로 '#'이다...

그러나 이것도 별로 좋은 방법은 아니다. 난 휴대폰 주소록을 구글에서 동기화하여 사용한다. 따라서 이메일을 쓸 때 수신자명을 입력하면 #이 삽입된 경우 이것이 그대로 드러난다. 메일을 받는 사람 입장에서는 별로 즐거운 노릇은 아니다. '내가 카카오톡 친구 리스트에 등록되는 것이 싫어서 #을 붙였구나'하고 단번에 알아차리게 되므로.

조인(joyn)이 한때 카카오톡에 대항을 해 보겠다고 야심차게 개발된 앱으로 알고 있는데, 지금은 영 힘을 쓰고 있지 못하다. 좀 더 쓸만한 모바일 메신저가 나와준다면...

2014년 11월 3일 월요일

쉬운 cutadapt 사용법

조금 전에 올린 포스트에서 어댑터 서열 제거와 관련한 배경 지식을 살펴보았다. One Tip Per Day라는 블로그를 보면 어댑터/프라이머 서열 제거를 위한 세가지 방법을 소개하고 있다. Paired-end sequencing에서는 어느 한쪽 read에서 어댑터가 발견되는 경우 반대편 read도 같이 제거해야 한다. Short insert read는 paired end read 중 어느것도 쓸모가 없기 때문이다.
  1. FastqMfc
  2. Trimmomatic
  3. HTSeq
오늘의 포스팅에서는 좀 더 간단한 방법인 cutadapt에 대해서 알아보도록 한다. 독일 도르트문트 대학의 Marcel Martin이 발표한 도구로서 논문 사이트는 여기에 있다.

먼저 pip를 설치하자. 설치 방법은 여기를 참조하라.

pip install cutadapt

일루미나 TruSeq 어댑터가 쓰인 경우 다음과 같이 하면 된다.

1. read 1에서 TruSeq indexed adapter 및 이후의 서열을 제거.

cutadapt -a AGATCGGAAGAGCACACGTCTGAACTCCAGTCAC -o trimmed.1.fastq.gz reads.1.fastq.gz

2. read 2에서 TruSeq universal adapter의 reverse complement를 제거.

cutadapt -a AGATCGGAAGAGCGTCGTGTAGGGAAAGAGTGTAGATCTCGGTGGTCGCCGTATCATT -o trimmed.2.fastq.gz reads.2.fastq.gz

-a ADAPTER는 cutadapt의 가장 간단한(그리고 가장 일반적인 조건에서의) 실행 방법이다. 즉 read의 3'에 어댑터 서열이 나오게 되고 어댑터와 그 이후의 서열을 전부 제거할 때의 실행 모드라고 보면 된다.

혹은 좀 더 간단한 방법을 쓸 수 있다. 두 어댑터 서열이 모두 공통적인 접두어(AGATCGGAAGAGC)를 갖고 있음에 착안하는 것이다.

cutadapt -a AGATCGGAAGAGC -o trimmed.1.fastq.gz reads.1.fastq.gz
cutadapt -a AGATCGGAAGAGC -o trimmed.2.fastq.gz reads.2.fastq.gz

입력 파일이나 출력 파일 전부 read의 수는 같다. 즉, read 전체가 다 trim되어 제거가 되어도 서열 헤더와 길이 '0'짜리 read가 출력 파일에 남아 있다는 뜻이 된다.


Paired-end read의 처리

paired-end read를 처리할 때에는 trim 작업 결과 길이가 어느 기준 이하로 줄어들었다면 그 read를 제거함은 물론 반대편 read(mate)도 없애야 한다. cutadapt에서는 이를 위해서 아직까지는 두 번의 작업을 거쳐야 한다. 실제 작업은 다음과 같이 세 단계를 거친다(홈페이지에 있는 예제를 가만히 들여다 보니 생각보다 어렵다. -p 옵션의 의미를 도대체 모르겠다. 한참을 더 공부하여 겨우 확인하였다. 어쩌면 SolexaQA 혹은 SolexaQA++가 더 이해하기 쉬울지도 모른다. 그러나 SolexaQA는 내가 알기로 어댑터 서열 제거는 하지 못한다).

(1) cutadapt -q 10 -a ADAPTER_FWD --minimum-length 20 -o tmp.1.fastq -p tmp.2.fastq reads.1.fastq reads.2.fastq

자, 조금 어렵다. -p FILE은 무슨 의미인가? cutadapt --help를 해 보면 "Write reads from the paired-end input to FILE."라고 되어 있다. 이게 도대체 무슨 말인지를 모르겠다. 1st read file에 trim이 적용되고 나서 -o로 지정된 파일에 씌여질 것은 당연한데, -p로 지정된 파일에는 도대체 뭐가 기록된단 말인가? tmp.1.fastq는 길이가 제각각이지만 tmp.2.fastq는 그렇지 않다. 그러나 두 파일에 기록된 read의 수는 같다. 그렇다면 이렇게 해석을 할 수 있다. -o로 지정된 tmp.1.fastq에는 실제 어댑터 제거와 트리밍까지 이루어져 살아남은 read만이 기록되고, -p로 지정된 tmp.2.fastq에는 이와 짝을 맞춘 second read가 기록된다. 매우 독특한 작동 방식이다.

(2) cutadapt -q 15 -a ADAPTER_REV --minimum-length 20 -o trimmed.2.fastq -p trimmed.1.fastq tmp.2.fastq tmp.1.fastq

그렇다면 두번째 단계에서 할 일은 명백하다. tmp.2.fastq와 tmp.1.fastq가 순서대로 인풋 파일이 된다. 최종적으로 쓰일 파일은 -o trimmed.1.fastq -p trimmed.1.fastq로 지정된 2개이다. 이제서야 어렴풋하게 이해를 하겠다.

(3-임시 파일 제거) rm tmp.1.fastq tmp.2.fastq

아직 이해가 완벽하게 된 것은 아니다. 예제에서는 왜 first와 second read에 대해서 -q 값을 다르게 적용했는가 하는 점이다. second read의 quality가 first read보다는 더 나쁘므로(per base quality plot을 해 보면 쉽게 알 수 있다), 일부러 더 stringent하게 trim을 유도하는 것인지도 모르겠다.

first 및 second read에 똑같은 옵션(-q 20 --minimum-length 50 -a AGATCGGAAGAGCACACGTCTGAACTCCAGTCAC)을 적용해 보았다. 어댑터 서열을 지나치게 길게 설정한 것이 보기는 좋지 않다. 어찌되었든 15,833,979개의 read 중에서 first file에서는 15,720,585개, second file에서는 15,467,766개가 살아남았다. 따라서 같은 조건을 적용하면 당연히 second file에서 더 적은 read가 살아남는다.


만약 일루미나 TruSeq 방법으로 시퀀싱 라이브러리가 만들어졌다면, NGS raw data 등록 시 어댑터 서열을 공급하지 않아도 대부분 같은 원리가 적용됨을 알 수 있지 않을까? NGS에 사용되는 거의 대부분의 어댑터/프라이머 서열이 여기에 수록되어 있으니 참조하도록 하자.

Trimming과 관련한 최근 논문이 있어 소개한다.

An Extensive Evaluation of Read Trimming Effects on Illumina NGS Data Analysis
오랜만에 효모의 RNA-seq 데이터를 받아들었다. 시료는 총 4개. Sample에 대해 기술한 파일을 열어보니 다음과 같은 어댑터 정보가 있다.

Adapter,AGATCGGAAGAGCACACGTCTGAACTCCAGTCA,,,,,,
AdapterRead2,AGATCGGAAGAGCGTCGTGTAGGGAAAGAGTGT,,,,,,

자, 이게 뭔 말이냐? 일루미나의 MiSeq Sample Sheet Quick Reference Guide 2012년 11월판 10-11쪽을 보자.

Adapter. Specify the 5' portion of the adapter sequence to prevent reporting sequence beyond the sample DNA.
AdapterRead2. Specify the 5' portion of the Read 2 adapter sequence to prevent eporting sequence beyond the sample DNA

즉 insert(sample)의 길이가 sequencing read보다 짧을 경우, 샘플 DNA 서열을 지나서 나타나게 되는 어댑터의 서열을 read 1과 read 2에 대해서 표시한 것이다. 서열을 살펴보니 매우 낯이 익다. 이 포스팅 윗부분의 cutadapt 사용례에서 보인 것 그대로이다. Read 1에서 sample DNA를 넘어서 나올 수 있는 adapter는 TruSeq indexed adapter(P5)이고, read 2에서는 TruSeq universal adapter(P7)의 reverse complement이다. 즉 이번 데이터는 지극히 보편적인 어댑터를 사용한 것이다.

구글링 과정에서 잘 정리된 문서를 또 하나 발견하였다. 


일루미나 데이터에서 어댑터 서열을 제거하기 위한 사전 지식

일루미나 paired-end sequencing을 위한 표준 라이브러리(바코드 사용)의 구조는 다음과 같다.
structure
(그림 출처: http://nextgen.mgh.harvard.edu/CustomPrimer.html)

P5와 P7 서열은 워낙 유명하므로 알아두는 것이 좋겠다.

P5: 5' AAT GAT ACG GCG ACC ACC GA 3'
P7: 5' CAA GCA GAA GAC GGC ATA CGA 3'

인서트 좌우의 전체 어댑터 서열을 알아보자. P5와 P7 서열은 파랑색으로 표시하였다. blunt end로 만들어진 insert의 3'-end에는 A가 하나씩 더해지므로, insert와 인접한 어댑터 서열에 외견상 A 혹은 T가 하나씩 더 있는 것처럼 보인다. 
(왼쪽 TruSeq universal adapter) 
AATGATACGGCGACCACCGAGATCTACACTCTTTCCCTACACGACGCTCTTCCGATCT3´
(오른쪽 TruSeq indexed adapter: P7의 상보적 서열이 3'-end에 보인다.)
5´AGATCGGAAGAGCACACGTCTGAACTCCAGTCAC‐NNNNNN‐ATCTCGTATGCCGTCTTCTGCTTG

양쪽 프라이머 결합 부위와 insert가 바로 인접해 있으므로, 이론상으로는 read 시작 부위에 잡다한 어댑터 서열이 존재하지 않아야 한다. 그러나 라이브러리 제작 시 아무리 insert에 대한 길이 콘트롤을 잘 했다 하더라도 read 길이보다 짧은 insert가 존재할 수 있다. 이러한 경우에는 한쪽 read가 insert를 완전히 관통한 뒤 반대쪽 어댑터 서열까지 이어지게 된다.

이러한 상태로 만들어지는 read는 de novo assembly에서 방해물이 될 수 있다. 따라서 어댑터 서열이 read내에서 확인되면 거기부터 이후를 전부 제거해 버리는 작업이 필요하다. 이를 위해서는 라이브러리에 사용되는 가능한 모든 어댑터의 서열 정보를 미리 알고 있어야 한다는 번거로움이 따른다.

여기서 기억해 둘 점이 하나 있다. 시퀀싱용 프라이머는 부분적으로 12 bp의 상보적인 영역을 갖고 있다. TruSeq DNA sample preparation kit v2를 이용하여 라이브러리를 만들 때 이들이 일부는 상보적인 쌍을 이룬 Y-shape 형태로 공급되게 만들기 위해서이다. 이를 그림으로 좀 더 쉽게 이해하려면 다음 사이트를 방문하라. 복잡한 다단계 PCR을 하지 않고 어떻게 인서트 양쪽에 서로 다른 어댑터가 붙게 하는지를 이해할 수 있다. 여기서 아직 풀리지 않는 의문점이 있다. Y-형태의 어댑터를 쓰지 않으면 양 끝에 같은 종류의 어댑터가 붙는 것을 어떻게 방지할까? flowcell에서 클러스터가 만들어지지 않는다는 것을 이용하는 것일까?

http://onetipperday.blogspot.kr/2013/06/illumina-hiseq2000-adaptor.html
http://www.bio-rad.com/webroot/web/pdf/lsr/literature/Bulletin_6343.pdf


아래에서 색깔로 표시한 부분이 바로 상보적인 서열이다. blunt end로 만들어진 insert의 3'-end에는 A가 하나씩 더해짐을 잊지 말자.

5'----GCTCTTCCGATCT[INSERT---- DNA]AGATCGGAAGAGC----3'

따라서 어느 방향으로 읽든지 (A)GATCGGAAGAGC가 나오기 시작하면 그 이후는 제거하면 된다. 실제로 CLC Genomics Workbench에서 read들을 펼쳐놓고 (A)GATCGGAAGAGC를 검색해 보니 상당히 많은 read가 이를 포함하고 있다.

이번에는 리눅스 커맨드 라인에서 단순하게 grep을 해 보았다. 정확하게 GATCGGAAGAGC 서열을 갖고 있는 read를 찾아보니 총 1583만 read 중에서 1392개이다. 아주 단순한 계산으로 1만분의 1 이하라는 의미이다. 그렇다면 de novo assembly에서 큰 문제가 되지 않을 수준이라는 생각도 든다.