2015년 1월 31일 토요일

genoglobe.com을 중심으로 한 도메인 운영정책 변화

내가 소유한 도메인의 운영 연혁을 글로 남기려니 그 내력이 상당히 복잡하다.

블로그를 포함한 2개의 웹사이트를 각각 별도의 서비스를 통해 운영하고 있었다. 전부 genoglobe.com을 기반으로 한 서브도메인 형태였다("www.genoglobe.com" "blog.genoglobe.com"). 둘 중 메인 사이트에 해당하는 www.genoglobe.com은 무료 서비스인 구글 사이트 도구로 만든 것이라서 genoglobe.com으로는 직접 연결이 불가능한 상태였다. 구글이 제공하는 <내 도메인에 사이트 매핑하기>라는 글에 다음과 같은 주의사항이 있다.


구글 사이트 도구가 아닌 다른 웹 호스팅 서비스를 사용한다면 www 없이 도메인명만으로도 접속이 가능하게 만들 수도 있었을 것이다. 그러나 나름대로의 장점이 있는 구글 사이트를 버리고 싶지는 않았다(주: 여기에서 구글 사이트란 구글 사이트 도구를 의미한다). 그렇다면 방법은 하나. 호스팅어에서 genoglobe.com 도메인을 운영하면서 내부의 메뉴를 통해서 각 서브도메인으로 연결하면 된다.

처음에는 손으로 간단한 html 코드를 짜 보았는데 외관이 너무 허름하여 genoglobe.kr에 연초 Zyro로 작성하였던 정보들을 그대로 가져와서 genoglobe.com쪽으로 업로드하였다. 그랬더니 한가지 문제가 발생하였다. Zyro 웹사이트 빌더가 작동을 하지 않는 것. FTP로 퍼 나른 파일들이 뜨는 것이 아니라 처음부터 새로 만드는 것처럼 보이는 것이다.

사실 이런 대문 역할을 하기 위해 genoglobe.kr 사이트를 따로 구축한 것이었다. 이 상태로 1달 간을 유지하면서 드러난 문제는 genoglobe.com으로 구성된 과거의 블로그 포스팅들의 링크가 깨지고 만 것이었다. 상업적 냄새가 나지 않게 하려고 닷컴에서 .kr로 전환하고자 했던 시도가 무의미해진 순간이다.

당분간은 특별한 이유가 없다면 genoglobe.com을 기반으로 더 이상 기본 도메인을 바꾸지 아니할 생각이다.

2015년 1월 29일 목요일

주 도메인을 바꾸면서 간과한 사실

주력으로 사용하는 도메인을 genoglobe.com에서 genoglobe.kr로 바꾸면서 미처 생각하지 못한 것이 있었다. 바로 이 블로그의 주소 문제이다. 과거에는 blog.genoglobe.com으로 이 블로그가 연결되었었다. 이를 blog.genoglobe.kr에 새롭게 연결하면서 blog.genoglobe.com도 계속 동시에 연결 가능할 것으로 생각했었는데, 설정 화면에 들어가 보니 더 이상의 추가적인 주소 연결을 허용하지 않는다.

과거에 이 블로그에서 글을 작성하면 자동적으로 구글 플러스에도 공유가 되었었다. 당시 공유된 글은 당연히 blog.genoglobe.com 주소를 기반으로 하고 있다. 이제 구글 플러스를 통해서 공유된 글을 클릭하면 더 이상 연결이 되지 않는다.

어쩔 도리가 없다. 글 자체가 없어진 것이 아니니 원하는 사람은 검색을 통해서 원 글을 찾을 수 있을 것이다. 좀 더 신중한 도메인과 호스트 관리 정책이 필요하다.

2015년 1월 28일 수요일

행정ㆍ공공기관 웹사이트 정비, 잃는 것은 없을까

2014년 기사를 하나 인용해 보겠다.

인기없는 정부부처 홈페이지 폐쇄된다

이제는 정부대표포털에서 일괄적으로 정보를 서비스하고, 소위 '웹사이트 총량제' '웹사이트 일몰제''웹사이트 품질관리제'를 운영한다는 것. 이용률(접속자 수, 이용자에 의한 정보 업데이트 수 등)에서 일정 기준을 충족하지 못하는 웹사이트는 퇴출 대상이 된다.

안전행정부가 주체가 되어 이제 이를 실행하기 위한 기본 작업에 착수하게 되었다. 대상은 행정기관 및 공공기관이다. 이러한 분위기에서 정부출연연구소도 예외는 아니다. 업데이트가 되지 않고 사후관리가 잘 되지 않는 웹사이트가 계속 남아서 관리 비용이 계속 들어가고, 유효하지 않은 정보로 인해 혼란을 야기하며(정보 현행화가 되지 않는다고 표현), 이로 인해 공공기관의 신뢰도가 떨어질 수 있다.

이러한 문제를 해결하기 위하여 웹사이트에 대한 총량 단위의 규제를 하고 최소한의 품질이 확보되도록 품질검증 방안을 마련한다는 것이다. 이제 공공 웹사이트의 대대적인 통합 내지는 폐합을 피할 수 없게 되었다. 한 기관에 대해서 웹사이트를 통한 모든 서비스는 예를 들어 "portal.도메인명/서브디렉토리"의 형태로 통일화하고, UI까지도 일치시킨다는 것이다. 이렇게 하지 못하는 웹사이트는 폐쇄해야 하고, 계속 유지하는 경우 그 사유를 적시해야 한다. 별도의 도메인을 사용하는 경우 당분간은 리다이렉트를 허용하지만 그 이후에는 체계화된 URL을 따라야 한다.

대국민 정보 서비스를 해야 하는 행정부나 정부의 웹사이트는 이렇게 하는 것이 바람직할 수 있다. 문제는 기타공공기관으로 분류되는 정부출연연구소까지 이런 가이드라인을 지켜야 한다는 것. 출연연의 홈페이지는 기관 현황이나 정보 서비스의 역할을 일정 수준 감당해야 하니 이러한 취지의 웹사이트 관리 개선 방안을 따르는 것이 옳을 것이다. 하지만 일반인이 아닌 연구자들을 위한 전문연구정보 공개를 위해 접속자 수가 그다지 많지 않은 웹사이트가 생기는 일이 비일비재하다. 예를 들어 생명과학 분야 저널에 어떤 논문을 실었을 때, 인쇄된 논문으로는 다 수용하지 못하는 데이터를 제공하거나, 생명정보 분야의 경우 프로그램의 배포 등을 위해 웹사이트를 이용하는 것이 필수적인 경우가 많다. 어떤 아이디어를 구현한 데이터베이스를 구축하여 검색이나 분석 등 부가 기능을 포함한 웹사이트를 만들고, 이를 논문을 통해 공개하는 사례도 비일비재하다. 이런 사이트는 해당 분야에 종사하는 연구자들이 주로 접속하게 되므로 접속자의 수가 많지 않고, 업데이트의 개념도 필요없는 경우가 많다. 국민 참여 건수라는 것도 아예 무의미하다. 오류 보고나 업데이트를 위한 피드백 수준을 넘는, 컨텐츠 제공 수준의 참여가 일어나기가 아예 곤란한 것이다.

생명정보 분야의 저널에서는 논문에 제시한 사이트를 통해 독자가 정보를 서비스받을 수 있는 최소한의 기간(예: 2년)을 요구하기도 한다. 출판된지 몇년이 넘은 논문을 읽어보고 그와 관련한 데이터 혹은 프로그램을 입수하기 위해 논문에 나온 사이트를 방문하고자 했으나 더 이상 존재하지 않아서 낭패를 겪는 일을 막기 위함이다.

도메인은 일종의 브랜드와 같다. 공공 연구소이므로 abc.re.kr이라는 도메인 체계를 따르는 것이 좋겠지만, 프로젝트의 성격에 따라서 .org나 .net과 같은 독립 도메인에 이러한 정보를 올릴 수도 있다. 그런데 이번 웹사이트 운영 효율화 방안에 따라서 웹사이트 주소를 반강제적으로 바꾸게 되면 오직 논문을 통해서 해당 사이트를 접속하려는 독자는 어떻게 해야 할까?

또 다른 사례를 하나 들어보자. 잘 알려지지 않은 어떤 생물종의 유전체 정보 서비스를 정부출연연구소가 주도한 과제에서 웹사이트 형태로 오픈했다고 가정하자. 월 페이지뷰 2만건, 방문자 수 5천건을 충족할 정도의 연구 커뮤니티가 형성되기는 어렵다. 그 정도의 주목도 받지 못하는 프로젝트를 왜 공공기관에서 주도해서 하느냐고 묻는다면 물론 할 말은 없다.

웹사이트의 기능 중복을 계산한다는 것도 얼마나 의미가 있을까?

본 제도의 취지에는 어느 정도 공감하는 바이지만, 대국민 서비스가 아닌 전문 연구 정보 제공을 위한 사이트에 대해서는 이러한 엄격한 제한을 가하지 않는 것이 바람직하다. 연구 관 기관의 웹 주소 체계 하에 들어오도록 편제를 꾸미고, 오류 없이 서비스되는 기간과 관리자를 명시하여 철저하게 유지하는 것은 매우 필요한 일이다. 그러나 이러한 웹사이트에 대해서는 이용률을 통한 일률적인 통제는 바람직하지 않다. 비록 당장의 사용자는 많지 않더라도, 연구자들의 자발적이고도 창의적인 정보 제공 욕구를 저하하는 일은 생기지 않았으면 한다. 이러한 방안을 수립한 사람들이 '참 할 x도 없네'라는 소리를 듣지 않았으면 정말 좋겠다.

2015년 1월 25일 일요일

고정용 파트가 부러진 RJ45 커넥터의 임시방편 수리

보호용 부트 없이 만든 저가형 네트워크 케이블 끝의 커넥터는 고정용 탭이 똑 부러지는 일이 흔하다. 이는 아주 짜증스러운 상황을 유발한다. 케이블 끝이 컴퓨터나 공유기 혹은 네트워크 스위치에서 아주 쉽게 쏙 빠지기 때문이다.

수리업자가 아닌 이상 소위 "랜 케이블 툴"을 돈 주고 사기는 아깝다. 몇년에 한번 쓸까 말까한 물건이기에 그렇다. 우리집에서는 벽면에서 나와있는 선 끝의 커넥터가 이렇게 되어 있는 상태이다. 공유기에서 각 컴퓨터로 연결하는 케이블이 이렇게 되었다면 새것으로 장만하면 그만이다.

인터넷을 서핑하다가 케이블 타이를 이용하여 이를 수리하는 힌트가 나와있어서 따라해 보았다.

Repair a Broken Ethernet Plug





케이블 타이의 머리부분을 잘 썰어내는 것이 중요하다. 손을 다치지 않게 조심할 것. 어설프게 따라했더니 고정력이 신통하지 않다. 자른 끝을 길게 꺾어서 타이의 말단 가까운 곳을 지지하게 했어야 하는데 이를 철저하게 지키지 못하였다. 그래도 약하게 선을 잡아당기는 정도에 빠지지는 않는다.

이보다 훨씬 좋은 아이디어 상품이 있다. 바로 RJCLIP이라는 것이다. 손상된 RJ45 커넥터 위에 씌우기만 하면 된다. 상품 소개 동영상을 첨부한다. 전세계 배송인데 가격은 결코 싸지 않다. 6개에 8달러, 15개에 15달러.



단지 커넥터 부위가 망가졌다고 해서 내부 선재에는 아무런 이상이 없는 케이블을 버리는 것은 너무 아깝다. 랜 케이블을 스피커 케이블이나 배선용 선재로 쓰는 경우가 가끔 있다. 나도 만능기판 뒷면 배선용으로 써 본 일이 있는데, 도금이 되어 있지 않아서 납이 그렇게 잘 붙는 편은 아니다.

아마도 RJClip 한 봉지를 가까운 미래에 사게 될 것 같다.

2015년 1월 20일 화요일

왜 호스팅 서버 내의 파일을 지우지 못하는 것일까?

Ncity의 호스팅 서비스를 이용하면서 두어가지 위키 엔진을 직접 설치하기 위한 시행착오를 겪는 중이다. 설치가 제대로 되지 않아서 FTP로 접속한 상태에서 전체 디렉토리를 지우려고 몇 번이나 시도했지만 삭제가 되는듯 하더니 접속이 끊어진다. 디렉토리명 변경은 되는데 지워지지 않는 것은 무슨 조화인가?

웹 프로그래머 혹은 관리자라면 피식~ 웃으면서 '당연하지!'하고 손가락질을 할지도...

Ncity 게시판에 요청글을 올린지 일주일이 넘어서 비로서 SSH 접속 권한을 얻었다. 서버명이 하필이면 gaybar일게 뭐람. 자, 이제 잘못된 파일을 몽땅 지워볼까.

안 지워진다.

디렉토리 내용을 살펴보았다.

jeong0449@gaybar:~/public_html/doku/data/cache$ ls -l
total 24
drwxr-xr-x  2 www  member  512  1 19 23:00 1
drwxr-xr-x  2 www  member  512  1 19 23:01 7

아... 이제 소유자는 내가 아니구나. 몇번 위키 엔진을 설치하면서 무사히 설정을 통과한 경우도 있었다. 그때 PHP 스크립트가 작동하면서 유저 'www'로서 생성한 파일이었다. 구글링을 해 보았다. 이런 상황에 파일을 지울 수 있는 PHP 예제가 있다.

그렇다고 해서 PHP까지 공부해야 하나? 도큐위키나 모니위키를 직접 설치하기 위해 반드시 PHP를 알 필요는 없다. 대부분 웹 화면에서 관리가 가능하고, 정 불가피한 경우 스크립트 파일을 열어서 변수 내용을 손질하는 정도만 알면 될 것이다.

대신 웹 프로그램을 잘못 건드려서 생긴 찌꺼기를 제거하기 위한 방안은 마련해 두어야 되겠다. 내가 아는 프로그래밍 언어는 Perl이 있지 않은가. 10년도 넘은 예전 이야기지만 CGI.pm과 MySQL DBI를 써서 초보 수준이지만 유전자 정보 페이지를 만든 적도 있었다(Thanks to Lincoln Stein!). 모듈을 쓰지 않고도 Perl로 CGI 프로그램을 만드는 것이 가능하다.

너무 깊숙하게 들어가지는 않겠다. 'www', 'nobody' 혹은 'apache'라는 사용자가 남긴 public_html 내 찌꺼기를 정리하기 위함이다. 구글에서 "Nobody 폴더/파일 지우기"로 검색만 해 보아도 여러가지 팁이 널려있다.

올해가 시작되면서 도메인 관리와 호스팅 서비스 이용으로 촉발된 관심이 점점 더 끝을 알 수 없는 곳으로 파고든다.

오디오트랙 MAYA 5.1 MK-II ZENI 구입

온보드 사운드 카드보다는 음질이 좀 더 나을 것이라는 기대를 갖고서 오디오트랙의 내장형 사운드 카드로는 가장 저가품인 MAYA 5.1 MK-II ZENI를 구입하였다. G마켓에서 주문한지 하루만에 배송되었다. 배송료 포함하여 23,490원이 들었다. 외장형(USB)인 MAYA U5와의 사이에서  한참을 고민하다가 결국 이것으로 결정하였다. 오디오트랙 홈페이지의 게시판에 내가 올렸던 문의의 글이 있는 것을 보면 무려 3년 전부터 고민을 하고 있었던 것으로 생각된다.


메인보드에 꽂을 자리가 마땅치 않아서 설치가 쉽지 않았다. 처음에 꽂은 위치는 PCI-X 슬롯이었는데, 이것은 서버용 보드에서 제한적인 목적으로(RAID 카드 등) 쓰기 위한 것으로서 일반적인 PCI용 확장 보드와는 호환이 안된다고 한다. 이것을 모른 상태에서 그저 카드가 들어간다고 꽂기만 했으니 인식이 될 리가 있나.

메인보드(슈퍼마이크로 X8SAX)의 온보드 사운드 기능을 죽이려고 바이오스 셋업에 진입했는데 아무리 찾아도 그 기능이 보이지 않는다. 매뉴얼을 뒤져보니 하드웨어 점퍼로 세팅을 해야 한다. 손가락이 들어가질 않아서 꽂았던 카드를 다시 뽑고, 보드에 딱 하나 있는 일반 PCI 슬롯에 사운드 카드를 끼우기 위해 그래픽 카드 위치를 바꾸고... 내가 쓰는 그래픽 카드는 쿨러가 하도 두껍게 붙어있어서 한 슬롯에 꽂으면 다른 슬롯까지도 못쓰게 만든다. 이런 도둑X 같은... 결국 USB 3.0 카드와 자리를 바꾸어야 겨우 사운드 카드를 꽂을 수 있었다.

접촉 불량으로 잠시 좌절을 겪기도 하였고...

헤드폰을 꽂았다. 헤드폰은 음악감상 전용이라고 할 수는 없는 오디오테크니카 TH-380AV이다. 내장 사운드 기능보다는 확실히 좋은 것 같다. 일단 합격점 준다.

2015년 1월 19일 월요일

Consed 28.0, 무엇이 달라졌을까?

마지막으로 사용한 consed의 버전이 23.0이다. Consed는 Sanger sequencing 시절, 거의 유일한 finishing 도구로서 나에게는 대단히 중요한 프로그램이었다. 최근 약 1년 반에 걸쳐서 이쪽 실무를 거의 하지 못했고 더군다나 permanent "high" quality draft로만 남게되는 NGS(주로 일루미나) 유래의 assembly만 전적으로 다루다 보니 consed의 업데이트는 상대적으로 소홀했었다. 최근 resequecing을 통해 거의 완성 수준으로 만들어진 bacterial genome을 깨끗하게 마무리하고자 consed의 최신 버전인 28.0을 받았다. 이 프로그램의 개발자인 University of Washington의 David Gordon은 언제나 답장이 빠르다.

시퀀싱용 프라이머를 선정할 때 파라미터를 자동적으로 완화하는 기능은 아마도 지금보다 수 버전 이전에 추가된 기능일 것이다. 가장 생소한 것은 bamScape라는 것이다. REAME.txt를 보니 BAM file viewer로 소개되어 있다.


Reference 위에 정렬된 read의 상태를 problem 또는 variant의 측면에서 탐색을 해 나가는 시각화 도구라고 생각된다.

454 시절만 하더라도 NGS read 단위의 편집을 consed에서 할 수 있었다. contig들을 read 단위로 끊고, read들을 따로 뽑아서 miniassembly를 하고, read의 서열을 직접 수정하고... 지금은? 일루미나 데이터는 너무나 양이 많아서 도저히 불가능이다. 한 contig에 수직선을 그으면 2-300은 기본이요, 많게는 1000개나 되는 read가 중첩되어 있다. CLC Genomics Workbench에서 전반적인 상황을 판단하는 것은 가능하지만, 환경을 바꾸어서 consed에서 이 데이터를 그대로 가져와서 작업을 하는 것은 어렵다. 그래서 내가 주로 쓰는 방법은 NGS assembly에서 문제가 없음이 확인된 부분을 가상 Sanger read가 중첩된 assembly로 바꾸어서(ace file을 생성) 이를 consed로 가져와서 편집을 하는 것이다. 마지막 단계의 편집에서 가장 중요한 단서는 바로 Sanger read이다.

BAM 파일을 다룰 수 있게 한다거나, NGS read와 관련된 기능을 추가함으로써 consed도 새 시대에 맞는 도구로 변신하기 위해 노력을 계속 해 오고 있는 것이 너무나 반갑다. 비록 소박한 그래픽 기능을 사용하는 도구이지만, genome research를 해 오는 거의 모든 연구자에게 아직도 잊혀질 수 없는 소중한 수단인 것이다.