2021년 7월 30일 금요일

[독서 기록] 『공포가 과학을 집어 삼켰다』와 『디자인은 어떻게 세상을 만들어가는가』


탈핵과 코로나바이러스 감염증. 얼핏 보면 서로 관계가 별로 없는 분야의 주제이다. 전문가들이 흔히 하는 말 있지 않은가? 
'제 분야가 아니라서..(별로 할 말이 없습니다 또는 괜히 이야기해서 구설에 오르고 싶지 않습니다)' 
누가 나에게 원전 문제에 대해서 묻는다면, 나 역시 비슷한 논리로 이를 회피할 것이다. 난 생명과학자니까. 아니, 코로나바이러스 감염증에 대해 물어도 또 내 전공을 세분화하여 살짝 피해 나갈 구실을 찾을 것이다. 나는 미생물, 특히 세균의 유전체를 연구하는 사람이니까..
  • 공포가 과학을 집어삼켰다(원제: Radiation and Reason - The Impact pf Science on a Culture of Fear)
  • 지은이: 웨이드 앨리슨
  • 옮긴이: 강건욱·강유현
두 공역자는 부녀 관계이다. 학술 논문에 부모와 나란히 공저자로 이름을 올리는 일이 과연 올바른 일인지에 대하여 사회적으로 한바탕 홍역을 치렀고 이제는 누구나 조심하는 시대가 되었다. 그럼에도 불구하고 당당하게 부녀 관계임을 밝히면서 공동 작업을 했음을 밝혔다는 것은 그만큼 각자가 제 몫을 충분히 했음을 반증한다고 생각한다. 강유현이 쓴 역자 서문의 일부를 소개한다.
많은 물리과 대학생들 또한 대학 졸업 후 대다수가 금융, 회계, 컨설팅 분야로 진출하며, 비전문가뿐만 아니라 전문가마저 남에게 해를 끼치지 않는 생각, 즉 정사유(正思惟)를 벗어난 자본주의적인 욕심으로 치우쳐져 있습니다. 전문가로서 활약을 할 수 있는 많은 인재들이 욕심을 앞세워 사회와 인류를 위한 생각은 하지 않습니다. 결국 개인 투자자들이나 기업가들이 올바른 투자의 선택을 하기 위해서는 통찰력과 과학적 지식과 논리가 필요하게 되었습니다. (287쪽)

연구분야에 종사하던 사람들에게 자본주의적 영감을 불어넣어 사업화의 길을 걷도록 하는 것이 마치 올바른 길이고 국민에게 봉사하는 것처럼(혹은 내 욕망을 채우는 길인가?) 느껴지는 요즘의 분위기에서는 매우 신선한 시각이 아닐 수 없다. 

2011년 동일본 대지진에 이은 후쿠시마 원전 사고를 겪고도 어떻게 이런 책이 나올 수 있느냐고 반문하는 사람도 있을 것이다. 이 책은 원래 2009년에 쓰여진 책이다. 그러나 후쿠시마 방문기를 에필로그 형태로 다루었다. 원전 방사선 유출에 의한 직접적인 피해보다 '패닉' 자체가 더 큰 문제였다. 사실 인명피해는 쓰나미에 의한 것이 비교할 수 없이 더 컸음에도 불구하고.

저자는 방사능에 대한 공포가 지나치게 높고 안전 규제 역시 실제적인 위해성을 입증할 수 없는 수준에서 너무나 강한 현실을 바로잡아야 한다고 주장한다. 안전에 대한 새로운 기준은 ALARA(As Low As Reasonable Achievable)에서 AHARS(AS High AS Relatively Safe)가 되어야 한다는 것이다.

쟁점은 저선량 피폭이 암 발생 등의 위험 가능성을 현저히 높이는가에 관한 것으로 귀결된다. 저자의 입장은 그렇지 않다는 것이다. 암 치료를 위해 방사선 요법을 택하는 경우 그 부작용은 환자가 충분히 이해하고 감내하겠다는 조건으로 치료를 받는 것이다. 지난 7월 27일 그린란드에서는 8억톤은 빙하가 녹아 내렸다고 한다(관련 기사). 과연 신재생에너지만으로 인류가 요구하는 수준의 복지를 달성하면서 빙하를 지킬 수 있을까? 선진국 국민들은 전부 에너지를 덜 쓰기로 합의하고, 이제 막 자동차나 에어콘의 혜택을 입기 시작한 인구 폭발 중의 개발도상국 국민들에게는 그냥 현재 수준의 삶을 살라고 설득할 수 있겠는가? 이에 대한 가장 합리적인 대안은 원자력 발전 뿐이라는 것이다.

두 번째 이야기.

딸아이가 디자인 관련 대학을 목표로 입시를 준비하던 시절, 입시 설명회 등을 통해서 기존의 대학에서 어떤 문제를 내는지 설명을 들은 일이 있다. 나의 느낌은 이러했다. 디자인을 공부하는 대학에서는 세상의 모든 문제를 해결하려고 도전하는구나! 나의 전공인 생명과학도 감히 그렇게 하지 못하는데...

  • 디자인은 어떻게 세상을 만들어가는가(원제: How design makes the world)
  • 지은이: 스콧 버쿤(Scott Berkun) https://scottberkun.com/
  • 옮긴이: 이정미

제한된 자원만을 가지고서 최대의 효율을 힘겹게 추구해야만 했던 과거(그렇게 먼 과거도 아니고, 어쩌면 지금도 별로 바뀌지 않았는지도)에는 '디자인'이란 다분히 시각적인 것이었고 또 이를 감안하여 일을 한다는 것은 일종의 사치처럼 여겨지기도 했었다. 디자인이라는 낱말이 담고 있는 뜻이 워낙 광범위하고 시대에 따라서 조금씩 변하다보니 '세상의 모든 것을 바꿀 수 있는 계획'까지도 포괄할 수 있는 수준이 된 것 같다. 제 1 장의 제목은 감히 이러하다. '모든 것은 디자인을 담고 있다'

책의 말미에서는 다음과 같은 체크 리스트를 제시하였다. 이른바 4가지 질문이다. 꼭 디자인과 관련한 것이 아니더라도 내가 현재 하고 있는 모든 일에 대해서 이런 4가지 질문을 던질 수 있다. 

  1. 무엇을 개선하고자 하는가?
  2. 누구를 위해 개선하려고 하는가?
  3. 당신의 디자인 결정이 옳다는 것을 어떻게 확인할 것인가?
  4. 당신이 한 일로 현재 혹은 미래에 피해를 볼 수 있는 사람은 누구인가?
만약 지금 하고 있는 일이 잘 풀리지 않는다면, 이 4가지 질문을 한번 던져 보자. 특히 2번 질문은 어떠한 과업의 고객을 명확히 하고자 할 때 유용한 질문이다. 주어진 과업에 대해서 비용을 지불하는 사람이 바로 그 결과물을 직접적으로 활용하지는 않는 경우가 종종 발생한다. 정부에서 발주하는 많은 사업이 그러하다. 국민의 세금이 들어가는 일이므로 사양서에 맞추어 제대로 목표가 달성되었는지를 꼼꼼히 점검하는 것은 중요하다. 그러나 그 사업의 결과물을 실제로 활용하는 대상은 발주처(정부)가 아닌 일반 대중인 경우가 많다. 돈을 직접 대는 사람에게만 초점을 맞추게 되면, 정작 실제 사용자의 공감을 불러 일으키지 못하게 된다. 여기까지만 이야기하면 아마 정부출연연구소에서 근무하는 사람은 대략 감을 잡을 것이다.

자작 진공관 싱글 앰프의 빈약한 소리에 실망을 하다 - 7년 반만의 결론

진공관 앰프의 소리가 남다른 감동을 줄 것이라는 막연한 기대를 갖고 주문 제작을 의뢰하기도 하고 - 들인 비용을 생각하면 결코 큰 기대를 할 수 없는 - 많은 시행 착오를 겪으면서 직접 자작을 해 보기도 하였다. 그런데 남은 것은 무엇인가? 수북하게 남은 처치 곤란한 부품들, 그리고 자작 과정에서 느꼈던 희열 정도가 될 것이다. 정녕 진공관 (싱글) 앰프가 나에게 최고 수준의 음악을 들려주었나? 답은 '아니올시다'라고 해 두겠다. 특히 최근에 출력이 충분한 반도체 앰프로 다시 돌아서게 되면서 이러한 결론은 거의 확고하게 굳어졌다.

자작 43 앰프(왼쪽)와 주문제작 PCL86 앰프. PCL86 앰프는 오른쪽에서 잡음이 나기 시작하였다. 2014년 설 무렵에 구입하여 지금까지 사용했으니 슬슬 문제를 일으킬 시간도 되었다. 좌우의 관을 서로 바꾸어 뀌어도 잡음은 계속 오른쪽에서 난다는 것이 골칫거리. 초단관(12DT8)을 6N2P로 바꾸면 잡음은 사라진다. 물론 이렇게 쓰기 위해 히터 배선을 약간 바꾸는 수고를 하였다. 
가장 큰 문제는 아무래도 소리가 빈약하다는 것이다. 만약 SPL 92~93 dB/W/m 수준의 고능률 스피커를 갖고 있었다면 이야기가 달라졌을 것이다. 빈약한 출력의 앰프를 만들어 놓고 여기에 맞는 새로운 스피커를 찾는다면 그것은 뭔가 목표가 잘못 선택된 것이라고 생각한다.

6LQ8 푸시풀 앰프는 그런대로 힘이 있는 소리를 내 주었지만, 본디 오디오 신호 증폭용으로 만들어진 대중적인 관을 한번도 써 보지 못했다는 것도 아쉽다.

이영건 선생님이 만들어 주신 PCL86 초삼결 앰프는 지금껏 '좋은 소리를 낸다'고 믿고 사용해 왔었다. 그런데 출력 트랜스의 모양에 대해서 제이앨범에 글을 올렸다가 갭이 없는 형태의 저 트랜스는 필시 푸시풀 출력트랜스를 원래 목적에 맞지 않게 사용한 것이 틀림없다는 의견을 받은 후 머릿속이 복잡해지기 시작하였다.

[제이앨범] 싱글용 출력 트랜스의 갭

가장 간단한 방법은 아직 휴대폰에 남아 있는 이 선생님 번호로 전화를 걸어 물어보는 것이다. 하지만 만 7년을 넘기 쓴 앰프에 대해서 이제 와서 무언가 이상하다고 문의하는 것도 예의는 아닌 것 같아 아직 궁금증을 참고 있는 것이다. 이쯤 되면 '오디오는 심리학'이라는 생각이 든다. 인간이 감각을 이용하여 영위하는 모든 활동이 다 그러하겠으나... 

적당한 수준에서 정리를 할 시간이 다가왔다고 생각한다. 객관적으로 판단하여 정말 음악 감상용으로 문제가 없다는 평가를 받지 못한 앰프는 조금씩 줄여 나가야 될 것 같다. 어느 앰프가 퇴출(?)의 대상이 될지는 아직 좀 더 지켜 보아야 하겠으나...

2021년 7월 27일 화요일

NCBI의 datasets 명령어 알아보기

평소에 NCBI에서 미생물 유전체 자료를 밥먹듯이 다운로드하는 나로서는 웹 브라우저뿐만 아니라 명령행 환경에서도 쓸 수 있는 EDirectncbi-genome-download와 같은 유틸리티가 얼마나 고마운지 모른다. Bactopia에서는 주로 ENA를 대상으로 하여 SRA 데이터를 간편하게 다운로드할 수 있는 기능을 제공한다. 물론 SRA Toolkit있지만 BioProject accession에 연결된 raw sequencing read를 다운로드하기에는 'bactopia search'를 활용하는 것이 훨씬 편리하다.

어떤 미생물 종의 유전체 해독 현황을 알아보기 위해 오늘 NCBI 웹사이트에 접속하여 검색을 해 보았다. 그랬더니 흔히 보던 검색결과 옆에 이런 안내문이 눈에 뜨인다. 오늘 처음 발견한 것은 아니다. Quickstart: command-line tools를 클릭해 보았다.

간단한 설명을 보자. datasets은 NCBI에서 대량의 생물학적 서열 데이터를 다운로드하는 명령어이고, dataformatJSON(JavaScript Object Notation) Lines 포맷의 메타데이터를 TSV나 엑셀 등 다른 형태로 전환하는 명령어이다. 이상의 두 가지 command line tool은 리눅스나 macOS 및 64비트 윈도우즈용 프로그램을 전부 제공한다.

Quickstart guides에서는 주로 인간 유전체에 대한 활용 사례를 간략하게 설명하였다. 신종코로나바이러스 유전체 서열을 다운로드하는 방법에 대한 설명도 있다. 조금만 연구해 보면 번거롭게 assembly summary 파일을 파싱하거나 다소 난해한 EDirect 명령어 조합을 만들 필요가 없을 것 같다. 

NCBI 웹사이트에서 검색을 실시한 뒤 적당한 필터로 거른 결과물을 다운로드하는 것이 불가능한 것은 아니다. 나도 최근에 신종코로나바이러스의 유전체 수십만 건을 웹사이트에서 받아 보았기 때문이다. 그러나 안내문에 의하면 1000건 이상의 유전체 혹은 15GB를 초과하는 genome data package를 다운로드하려면 datasets 명령어를 쓰라고 한다.

과학기술정보통신부의 주도로 바이오연구데이터를 등록하기 위한 시스템을 만들고자 여러 사람이 애를 쓰고 있는 것으로 알고 있다. 단지 과제 평가를 위해서 데이터 등록 자체에만 치중해서는 의미가 없다. 등록된 데이터 자체에 대한 검색이 우선 가능해야 한다. 누가 무슨 과제를 통해서 생성한 연구 성과인지를 검색하는 것은 데이터 자체가 아니라 메타데이터에 대한 검색에 해당한다. 그 다음으로는 데이터를 쉽게 가져다가 활용할 수 있어야 한다. 그러려면 오늘 소개한 것에 해당하는 유틸리티도 개발·보급되어야 한다. 이것이 결코 쉬운 일이 아님은 너무나 명백하다.

2021년 7월 25일 일요일

FM 수신용 안테나의 보수 및 재설치

튜너의 수리도 마쳤으니(관련 글 링크) 원활한 방송 수신을 위해 옥외에 설치한 안테나도 손을 보는 것이 바람직할 것이다. 파견 근무 기간을 포함하여 약 3년 이상을 안테나 상태에 대하여 전혀 신경을 쓰지 못했다. 소자가 비틀어지고, 일부는 구부러지기까지 하였다. 인터넷으로 FM 방송을 듣게 되면서 안테나를 아예 철거해 버릴 생각을 한 적도 있었다. 하지만 튜너를 수리했으니 이에 맞추어 안테나도 보수를 하는 것이 옳지 않겠는가.

안테나를 끌어내려서 구부러진 곳을 폈다. 급전부가 있는 플라스틱 케이스을 열어보니 벌레가 고치를 지은 흔적도 있어서 깨끗이 닦아냈다. 고정 볼트에는 녹이 많이 슬었고 플라스틱 부품류도 부식이 일어나고 있다. 햇볕과 비바람에 노출된 동축 케이블의 외피 역시 변색이 되고 딱딱해졌다. 몇 년이 더 지나면 전체를 비슷한 제품으로 바꾸는 것이 나을 것이다. 이런 스타일의 옥외용 FM 수신 안테나는 현재 2만원 정도에 팔린다.

이런 스타일의 안테나를 실내에 두어도 깨끗한 소리가 나는 포인트를 찾을 수는 있다. 그러나 고정할 방법이 문제이다. 또한 콘크리트 벽에 기대어 놓으면 수신 상태는 나빠진다. 발코니라고 해도 마찬가지다.
내 블로그에는 이 FM 수신용 안테나의 설치 방법을 조금씩 바꾸었던 기록이 남아 있다. 2014년 처음 구입하여(제품 링크) 사용한 것을 시작으로 하여 마지막 글은 2018년에 작성하였다(FM 수신용 안테나 보수하기). 전부 수평 설치를 기본으로 하였고, 붐대가 처지는 것을 막기 위해 발코니 난간에 설치된 화분 받침대에 걸치는 방식을 사용했었다.

이번에는 수평으로 설치를 하였다. 또한 거실쪽이 아니라 침실쪽에 면한 난간을 이용하였다. 전과 비교한다면 동쪽으로 수 미터를 이동한 셈인데, 이렇게 함으로써 남동쪽의 열린 하늘을 바라볼 수 있는 효과를 거두었다고 믿는다. 목표는 식장산 중계소(102.1 MHz, KBS Classic FM 청주). 계룡산 중계소에서 송출되는 98.5 MHz도 잘 잡힌다.




좀 더 긴 붐대를 이용하여 안테나를 창틀에서 1.5 미터 정도 떨어뜨리는 것이 바람직하겠지만 갖고 있는 재료로는 견고하게 고정할 방법이 없다. 또 그렇게까지 하지 않아도 수신 상태는 충분히 양호하다.
동축 케이블 연결 작업까지 마무리를 한 뒤 음악을 듣는다.
누가 뭐래도 나에게 가장 중요한 오디오 소스는 튜너라는 사실은 변함이 없을 것이다.

2021년 7월 23일 금요일

인켈 튜너 TX-5400 수리

2년 동안의 파견 생활을 마치고 돌아와서 인켈 TX-5400 튜너에 외부 안테나를 연결하고 전원을 넣었더니 모든 FM 방송이 모노로만 잡혔다. 전에는 KBS 1 FM의 스테레오 수신만 불량한 상태였었다.

라즈베리 파이를 이용하여 국내외의 다양한 인터넷 라디오를 듣는 것도 즐거운 일이다. 그러나 전원을 넣고 부팅이 될 때까지 결코 짧지 않은 기다려야 한다는 점이 불편하였다. '전원을 켜면 즉각 소리가 난다'는 것은 매우 강력한 장점이다. 솔직히 말해서 나에게도 라즈베리 파이로 음악을 듣는 과정이 성가시게 느껴지는데, 음악을 좋아하는 아내에게 휴대폰으로 볼류미오를 조작하라고 알려주기에는 미안하다. 비록 최근에 새로 들인 인터엠 R150PLUS 레퍼런스 파워 앰플리파이어는 보호 메커니즘 작동 때문에 전원을 넣은 뒤 몇 초를 기다려야 릴레이가 붙고 소리가 나기 시작하지만... 

음질 면에서도 특히 KBS 1 FM은 튜너로 들을 때 더 박력이 있게 느껴졌던 것으로 기억이 난다. 

모처럼 하루 휴가를 낸 금요일, 튜너를 들고 인켈·바텔 대전서비스센터를 찾아 수리를 의뢰하였다. 이곳은 단순히 소비자용 인켈 앰프를 수리하는 곳이 아니라 방송장비 대리점을 겸하고 있었다(웹사이트 링크; 인켈 공식 웹사이트의 서비스센터 정보를 찾으면 이 링크는 보이지 않음). 코일을 교체하여 정상 기능을 되찾았다. 스테레오 수신 표시를 얼마 만에 보는 것인가? 수리 비용은 생각한 것보다는 조금 비쌌지만, 아깝단 생각은 들지 않는다. 그 돈이면 TX-5400과 비슷한 등급의 중고 튜너를 다시 살 수도 있을 것이다. 그러나 작동 상태는 보장하기 어렵다. 

'앞으로 얼마나 더 쓸 수 있을까요?' 수리 기사에게 물어 보았다.
'7년쯤 지나면 앰프나 튜너의 부품이 삭기 시작할 겁니다'. 

내가 집에서 인터엠 R150PLUS 앰프를 최근에 구입하여 쓰고 있다고 했더니 매우 의외라는 듯한 표정이었다. '방송용 앰프를요?' 뭐 어떠랴.

내가 이 튜너를 중고로 구입한 것이 언제였을까? 아마도 2014년 무렵이 아니었을까? 공교롭게도 7년의 시간이 지났다. 수리 기사의 말이 맞다면, 그때 신품으로 튜너를 샀다 하더라도 지금쯤 스테레오 수신 불량 상태가 되었을지도 모른다.

신품으로 구입했던 오디오 시스템이 몇 년이 지나면서 튜너의 수신이 불량해지는 현상을 최소한 두 차례 경험했었다. 비교적 짧은 시간(내 생각일 뿐이다)이 흐르는 동안 이렇게 빨리 열화되는 부품은 도대체 어떤 녀석인가? 손가락 한 마디도 안되는 코일이 바로 문제이다.

그러면 반도체 칩 몇 개로 구현한 라디오 수신 모듈은 어떻게 하여 코일 같은 것이 없이 작동하는 것일까? '전통적'인 튜너보다 수명이 더 길까? 나도 DSP PLL stereo FM receiver module을 하나 구입하여 테스트해 본 일이 있는데, 음질은 영 꽝이다. 이런 라디오 수신 모듈과 컴포넌트 오디오를 구성하는 단품 튜너의 음질이 비슷하다면 불공평하지 않은가? 물론 이런 식의 비교 자체는 공정하지 못하다. 90년대 초반의 데스크탑 컴퓨터보다 현재의 휴대폰을 비교해 보라. 크다고 더 좋은 것이 아님은 삼척동자도 다 안다.
DSP PLL stereo FM receiver module. 사진 출처: AliExpress
내가 실제로 구입하여 갖고 있는 FM 수신 모듈.

이 FM 수신 모듈과 관련하여 블로그에 작성한 글은 다음과 같다. 둘 다 2016년에 쓴 글이다.

처남에게서 얻은 B&W DH10 스피커(관련 글 링크)를 거실에 두게 되면서 인터엠 R150PLUS 파워 앰프를 사게 되고(관련 글 링크), 거실에 늘 두고 쓸 소스 기기로서 튜너를 수리하게 되었으니 우연히 벌어진 일의 나비 효과가 이런 결과를 초래하게 될 줄은 정말 몰랐다. 인생은 예측할 수 없는 것으로 가득하다는 것이 매력 아닌가? 올해 내가 만든 두 대의 진공관 앰프가 현재 제작 중인 드라마 촬영 현장에 놓이게 될 것을 누가 상상이나 했겠는가?

2021년 7월 18일 일요일

[독서 기록] 문명의 역습

책을 도서관에 반납해 버린 후라서 정확한 기록을 남기기가 어렵다. 독서를 하면서 메모를 하는 스타일은 아니라서, 독서 기록을 쓰려면 다시 책을 손에 들고 뒤적거려야만 한다.
  • 제목: 문명의 역습('우리는 문명을 얻은 대신 무엇을 잃었는가')
  • 원제: Civilized to Death
  • 저자: 크리스토퍼 라이언
  • 역자: 한진영
지속 가능한 생태계를 위하여 인류가 언젠가는 스스로 일구어 온 문명을 버려야 할 수도 있다고 나는 믿는다. 아니, 그럴 생각은 추호도 없지만 거듭된 재앙이 인류를 반 강제적으로 저(低)기술 사회로 몰고 갈 수도 있다고 본다.

인공지능이 고도로 발달하고 - 그 과정에서 인류가 인공지능에 의해 도태되지 않는다면 - 생각만으로도 사물을 제어할 수 있는 수준으로 과학기술이 발달하여 특이점까지 도달했다가 전쟁이나 환경오염, 기후변화 등으로 인류가 멸망했다고 가정하자.

또 다른 시나리오에서는 원하든 원치 않든 지금까지의 과학기술을 버리고 듬성듬성 소규모 집단을 이루면서 수렵과 채집을 살아가는 방식으로 회귀했다고 치자. 과연 나라면 어떤 미래를 꿈꿀 것인가? 생태계의 다른 구성원과 더불어 지속 가능한 삶을 살고자 한다면 당연히 후자가 더 바람직한 모습일 것이다. 그러나 손가락 조작만으로 요즘같이 뜨거운 여름날에 시원한 에어콘 바람을 맞으며 쾌적하게 사는 모습에 더 가치를 둔다면, 수렵 채집인의 삶은 따분하고도 발전이 없는 것으로 여길 것이다.

맨 마지막 장은 무척 의외로 여겨진다. 전통 사회에서부터 쓰이던 향정신성약물의 긍정적인 면을 다루고 있기 때문이다. 우리가 흔히 마약이나 약물이라고 한데 묶어서 생각하는 것들을 진지하게 나누어 다루어야 하고, 그 중에는 쓸만한 것이 있다는 이야기인데, 아직 우리 한국 사회에서는 받아들이기 어렵다.

[독서 기록] 유닉스의 탄생 - bioneer 서버를 추억하며

1990년대 초반, 내가 다니던 대학원의 몇몇 연구실에서 조금씩 돈을 모아서 당시로서는 꽤 좋은 리눅스 서버를 조립한 일이 있다. 그 서버의 이름은 'bioneer'. 이를 한글로 표기하는 문제에 대해서는 다들 고민을 별로 하지 않았다. 월드와이드웹은 고사하고 학교에서 이메일 주소를 공식적으로 발급해 주지도 않던 시절, bioneer는 생명정보학 도구의 산실이자 학과의 모든 구성원들에게 이메일 계정을 하나씩 안겨준 귀한 자원이었다. 지금은 중앙대학교 교수로 재직 중인 한윤수 교수가 직접 코딩하여 만든 텍스트 터미널 방식의 bbs 프로그램은 학생들의 일상과 실험 노하우를 공유하는 매우 중요한 정보 교류의 장이었다. bioneer라는 이름은 우리 학과의 당시 영문 명칭인 Department of Biological Science & Engineering에서 딴 것으로 기억한다. 이 bioneer라는 이름이 우리나라 생명공학계의 최초 벤처기업인 (주)한국생공이 1996년 (주)바이오니아로 상호를 변경하는데 어느 정도는 영감을 제공하였을 것으로 믿는다.

당시 바이오니어 서버를 만드는데 주도 역할을 했던 사람은 누구였던가? 안타깝게도 정확하게 기억나지는 않는다. 아마도 홍석진, 한윤수, 홍승범 동문 등이었던 것 같다. 혹시 정확한 정보를 알고 계신 동문이 있다면 연락 주시기를! 이러한 일을 학생들의 열의만으로는 할 수 없는 노릇이었고, 박찬규 교수님이 분위기 조성에 도움을 주셨던 것으로 기억한다. 학과 선배 중에서도 기여를 한 사람이 있었을 것이다. 이 작은 역사가 나로 하여금 리눅스에 관한 관심을 갖게 만드는 계기가 되었고, 1994년 드디어 내 생애 최초로 개인 PC를 갖게 되었을 때 리눅스를 설치하여 간단하게 bbs도 운영해 보고 학위 논문 원고도 LaTex으로 쓰게 된 계기가 되었다. 컴퓨터는 계속 바뀌었지만 이때 지은 eos라는 서버명은 그 이후로도 꽤 오랫동안 사용하였다. 사실은 1993년 여름 어렵게 장만한 캐논 SLR 카메라 EOS 5에서 딴 이름이지만... 다음 주에 컴퓨터를 하나 발주할 일이 있는데 생각이 난 김에 eos라는 이름을 다시 사용해야 되겠다. AMD CPU를 쓰는 컴퓨터로는 첫 경험이 될 것이다.

학부생 때에 SSM-16에 접속하여 포트란 실습을 한 일이 있어서 리눅스의 텍스트 터미널 환경을 별로 낯설게 여길 필요가 없었던 것도 큰 도움이 되었다. 1984년에 개발된 국내 최초의 상용 컴퓨터인 SSM-16에 대해서는 ETRI 40주년 자료를 참고하기 바란다. 아, SSM은 '삼성 수퍼마이크로'의 약자였구나!(1996년 전자신문 기사) 예전보다는 SSM-16에 대한 정보를 찾기가 수월해져서 다행이라고 생각한다.

서론이 지나치게 길었다.

나의 업무에서 여전히 중요하게 쓰이는 자료 처리용 스크립트 언어 AWK의 저자 중 한 사람인 브라이언 커니핸이 쓰고 하성창이 번역한 책 『유닉스의 탄생』(한빛미디어 2020년)을 재미있게 읽었다. 훗날 누군가 짧았던, 그러나 굵게 흔적을 남긴 bioneer 서버의 역사에 대한 글을 쓰게 될지 누가 알겠는가?

UNIX와 C 언어는 미국 AT&T의 연구 개발 자회사인 벨 전화 연구소(Bell Telephone Laboratories, 혹은 단순히 '벨 연구소')에서 태어났다. UNIX가 탄생되는 순간은 이 책의 80쪽부터 나온다. MIT와 공동 작업으로 진행되었던 멀틱스(초기 시분할 운영체제의 하나, 1964~2000) 개발에서 손을 뗀 사람들이 거의 놀고 있었던 DEC PDP-7을 활용하기 위해 창의력을 발휘한 것이다. 멀틱스의 복잡성에 대한 반작용으로 탄생한 것이 유닉스라니! 켄 톰프슨은 PDP-7에 달린 특이한 디스크 드라이브의 작동 효율을 높이기 위해 새로운 디스크 스케쥴링 알고리즘을 작성했고, 이를 시험하기 위해 그의 아내가 한 살짜리 아들을 데리고 부모님을 뵈러 간 3주 동안 유닉스의 프로토타입을 만든 것이다.

당시 벨 연구소는 연구자들이 최대한 자율적으로 일할 수 있게 배려하는 분위기였고, 대학을 찾아다니며 좋은 인재를 영입하는데 많은 노력을 기울이고 있었다. 요즘 우리나라와 같이 '블라인드 채용'만이 공정한 인재 등용 방법이라면서 이를 강하게 추진하는 것과는 크게 대조가 된다. 유닉스는 벨 연구소의 모기업에 결코 재정적인 성공을 가져다주지 못했다. 주변 대학에 영업 비밀 보호 협약만 맺는 조건으로 싼 가격(명목상의 매체 수수료)에 배포를 하여 인기를 누리기 시작했다. 요즘 말하는 오픈 소스 방식은 분명히 아니었고 라이선스를 취득한 사람끼리만 유닉스와 관련된 경험을 공유할 수 있었다. 그러나 커뮤니티가 확산되고 점차 다른 종류의 하드웨어로 이식되는 것도 가능해졌다. 무엇보다도 중요한 것은 그 과정에서 호환성이 중요한 전통으로 자리잡게 되었다고 한다. 유닉스에서 직접적으로 파생되었거나 영향을 받은 후손이 지금은 시장에서 큰 비중을 차지하게 되었고, 그 한가운데에 리눅스가 있다.

벨 연구소는 소속 연구원들이 책을 발간하는 것을 장려하였다고 한다(201쪽부터). 초창기 유닉스에서는 문서 생성용 도구가 큰 비중을 차지하였고, 이로 말미암아 각종 매뉴얼이나 기술 논문 및 책이 만들어질 수 있었다. 특히 벨 연구소의 컴퓨팅 과학 연구 센터에서는 책을 집필하기 위해 별도의 개인 시간을 쓸 필요가 없었다. 덕분에 벨 연구소는 컴퓨팅과 컴퓨터 과학에 대한 권위 있는 책을 쓰는 곳으로 유명해졌다. 

비교적 규모가 작은 기업의 연구소에서 이렇게 좋은 책을 많이 낼 수 있었던 원인을 저자는 이렇게 파악하고 있다. 이를 원문에서 그대로 인용해 본다(203쪽~). 기술적인 글쓰기를 즐기는 나에게 매우 깊은 인상을 준 대목이다. 
  • 글쓰기를 진지하게 대했고, 스스로 공을 들여 썼으며, 다른 사람들이 쓴 글을 읽고 훌륭한 비평을 제시했다.
  • 연구소 경영진이 책 쓰기를 지지해 주었다... 6개월 동안 책을 몰두하여 쓸 수 있었고, 저작권은 벨 연구소가 보유하지만 저자가 인세를 받았다.
  • 프로그래밍 환경으로서 C와 유닉스, 연구 분야로서의 문서 생성, 컴퓨터 기술을 주제로 한 글쓰기를 주요 활동으로 삼은 것 간의 공생 관계다.

유닉스 개발에 가장 크게 기여한 소수의 천재를 고르라면 케네스 톰프슨과 데니스 리치로 대상을 좁히지 않을 수 없지만, 저자는 당시 벨 연구소 컴퓨팅 과학 연구센터의 분위기는 열정으로 뭉치고 우애 넘치며 자유로운 환경임을 강조하고 있다. 자유로운 연구를 지속적으로 지원하였던 부서장이라든가, 인턴 연구원으로 잠시 근무하면서 머물면서 유닉스 시스템의 성장과 발전에 기여한 사람들(예: 훗날 구글의 CEO가 된 에릭 슈미트) 등등.. 이 책을 읽으면서 그 어디에서도 치열한 경쟁이나 성과를 둘러싼 싸움 같은 것은 찾아볼 수 없었다. 오히려 관리자로 승진하기 싫어서 애쓰는 모습이 애교스럽게 묘사되기도 하였다. 혹시 일부러 저자가 낭만적으로 책을 쓴 것은 아니었을까? 

'하고 싶은 일을 열심히 했을 뿐인데, 시간이 지나고 보니 역사가 되어 있더라구요.'

언젠가 이런 말을 할 수 있는 날이 온다면 얼마나 영광일까?

2021년 7월 15일 목요일

인터엠 '레퍼런스 앰프' R150 PLUS 파워앰프(중고) 구입

인터M R150PLUS. 상세 자료는 인터엠 영문 사이트의 제품소개 페이지에 있다.

라즈베리 파이 -> USB DAC(Behringer UCA200)를 거쳐 인터넷 라디오를 재생하는 모습. DAC의 RCA 출력을 앰프의 balanced input에 연결하는 데에는 RCA to 55(TS) 케이블을 이용하였다.

'Bridged mono' 모드로 설정한 다음 빨간색 단자 두개에 8옴 스피커를 하나만 연결하면 150와트(TDH 0.05%)의 파워가 나온다. R150이라는 모델명은 파워 수치에서 딴 것으로 보인다.

볼륨 노브를 돌려보면 각 단계마다 걸리는 느낌이 난다. 좌우 채널을 별도로 조정하게 되어 있으므로 바람직한 설계이다.
인터엠(Inter-M)은 가정용 오디오로 유명한 인켈에서 오래전에 독립한 프로페셔널 오디오 전문 기업으로, 구내방송(전관방송이라고도 함)이나 공연장용 오디오 시스템을 제조하여 공급하는 회사이다. 두 분야를 통틀어서 PA(public address)라 부르기도 하고, 혹은 이를 세분하여 전자를 좁은 의미의 PA, 후자를 sound reinforcement(SR)라 부르기도 한다. 하지만 서양에서는 후자를 professional audio라고 부르는 것이 일반적이라고 한다. 한국식 의미의 PA와 SR은 용도가 다른만큼 쓰이는 장비도 크게 다르다. 요즘 가정용 오디오 시스템은 더 이상 90년대 수준의 인기를 누리지도 못하지만, PA+SR 오디오 시스템 시장은 절대 그렇지 않고 시장 규모도 훨씬 큰 것으로 알고 있다.

그러면 내가 오늘 중고로 구입한 인터엠 R150PLUS는 무슨 앰프인가? SR용 파워 앰프에 가깝지만 요즘 널리 쓰이는 것들에 비하면 비교적 출력이 작다. 작은 규모의 공연장이나 교회에서 음악과 스피치용 파워앰프로 쓰면 적당한 모델이다. 8옴 스피커에 대하여 50W+50W 파워를 내므로, 어설프게 만들어 1와트도 내지 못하는 잡음 투성이 진공관 싱글 앰프를 갖고서 능률이 떨어지는 스피커 시스템을 잘 울리지 못하여 겪었던 고생을 저 멀리 날려 버릴 수 있다.

인터엠 영문 페이지에서 R-PLUS 시리즈 'Reference Amplifier'의 소개 글을 가져다가 인용해 본다.
  • The R-PLUS Series are a dual-channel, high-performance amplifiers. Their clear, open sound and quiet operation make them ideal for reference systems and church sound applications. Inputs are via balanced XLR or 1/4” connectors, outputs are via rugged five-way binding post connectors. 
  • All units have soft-start protection circuitry and feature signal, protection and clip indicators on the front panel.  For added versatility, they may be operated in stereo, dual mono or bridged mono mode. 
  • They have front panel mounted mains switch, level controls and indicators for power, protection, clip and signal present. Convection-cooling provides noise-free ventilation for critical applications. Mains inlet is via an iec connector. The R-PLUS Series amplifiers are powered by 100-120VAC or 220-240VAC 50/60Hz(depending on country requirements) and are packaged in a 3.5” (2RU) rack mount enclosures.
이런 타입의 앰프는 가정용 하이파이 앰프와 비교하여 음질이 더 나쁠까? 그렇다고 생각하지는 않는다. 일단 SR 앰프는 밸런스 입력을 지원하고, 튼튼하며, 각종 보호 기구가 존재한다. 그만큼 가혹한 조건에서도 안정적으로 구동되도록 만든 것이다. 출력이 300~500와트를 넘어가면 일반적으로 모터로 돌리는 냉각용 팬이 장착되기 때문에 소음이 발생하여 가정에서 음악감상용으로 쓰기에는 불편함이 있을 것만 같다. 하지만 이 모델은 방열판만으로 냉각을 하기에 팬 소음이 없다.

왜 이런 앰프를 살 생각을 했을까? 가장 큰 이유는 내가 최근 몇 년 동안 직접 만든 진공관 앰프에서 만족을 하지 못했던 것에 있다. 그리고 요즘 나오는 가정용 오디오 앰프에 대해서 별로 매력을 느끼지 못했다. 가정용 오디오 전성기에 나오던 앰프 중고품은 상태가 좋은 것으로 고르기가 점점 어렵다. 반면 SR 앰프는 중고 시장이 잘 형성되어 있어서 적절한 가격의 것을 선택할 수 있다. 출력이 그렇게 높지 않은 제품이라면 새것도 그렇게 비싸지는 않다.

랙에 고정하는 앰프라서 다리는 달려있지 않다. 적당한 고무발 같은 것을 달아 주어야 되겠다. 가구 위 유리판에 얹어 놓았더니 생각보다 가벼워서 자꾸 미끄러진다. 언밸런스 오디오 기기를 입력에 연결해도 별다른 문제는 없다. 소스 자체가 언밸런스이므로 콘솔 믹서 같은 것을 중간에 일부러 삽입하여 밸런스 출력을 만들 필요가 없다. 어차피 가정에서 쓸 것이라 신호선이 길지 않아서 밸런스 연결의 장점을 누릴 일이 별로 없기 때문이다. 입력 단자는 TRS(55 type)과 XLR 두 가지가 준비된 상태인데, 갖고 있는 커넥터가 하도 많아서 문제가 없다. 과거에 믹서, 전기기타, 신시사이저 등을 조금씩 다룬 일이 있어서 온갖 타입의 커넥터를 이미 구비해 놓은 상태이기 때문이다.

자작 진공관 앰프에 대한 환상을 가지고 있었던 것은 맞다. 이제는 만든 앰프를 더 이상 둘 곳도 없다. 적은 비용으로 실패 없이 만들기 위해 소출력 싱글 앰프에만 집착을 했고(그나마 6LQ8 푸시풀 앰프를 경험한 것은 다햄임), 운명적으로 자작 싱글 앰프의 출력이 낮아서 이미 갖고 있는 스피커를 충분히 울리지 못하니 덩달아 고능률의 풀레인지 스피커 유닛을 구하여 직접 스피커 시스템을 만들어야 하나 고민하고... 이런 악순환의 고리를 과감히 끊고자 기성 반도체 앰프로 과감히 전환하기로 결심한 것이다. 그동안 고만고만한 진공관 앰프를 여럿 만드는데 들어간 노력과 비용을 제대로 된 앰프 하나에 쏟아 부었다면, 지금과 같이 실망감과 함께 더 이상의 자작을 하지 않겠다고 마음을 돌리는 일도 없었을 것이다. 최소한 소리전자의 6V6 싱글인 '돌쇠' 시리즈로 시작을 했어야 한다. 

음악적 완성도가 떨어지는 진공관 앰프는 과감히 정리하자. 43과 PCL86 앰프가 그러하다. 6LQ8 푸시풀 앰프는 그런대로 만족할 수준이니 잘 보수하면서 활용할 생각이다. 아마도 6LQ8과 6P1만이 살아남게 될 것이다. 진공관 오디오의 진정한 가치를 미처 경험하지도 못하고 어설프게 그만 두는 것 아니냐고 비판할 사람이 있을 수도 있다. 나는 이미 7년 이상 충분히 노력했고, 그만하면 되었다고 본다. 만드는 재미에서 오는 보람을 느끼는 것과 완성도 높은 앰프를 만드는 것은 완전히 별개의 목표이다.

2021년 7월 14일 수요일

NGS 시대에도 Sanger sequencing 결과물의 처리는 필요하다 - Tracy

미생물 시료의 16S rRNA sequence를 알아내기 위해 표적을 몇 개의 겹치는 PCR product 형태로 들어내어 염기서열을 판독한 경우, 또는 재조합 벡터를 새로 만든 다음 확인을 하고자 할 때 Sanger sequencing 기법은 여전히 필요하다. 단일 크로마토그램에서 염기서열을 추출하는 것이 전부가 아니다. 몇 개 되지 않는 크로마토그램을 조립할 일도 종종 겪을 것이다.

생명정보학에 대한 전문적인 기법을 아직 습득하지 못한 사람이 이러한 상황에서 비용을 들이지 않고 편리하게 쓸 수 있는 도구가 그렇게 많지는 않다. 서너 개의 크로마토그램을 조립하기 위해 2021년에 Phrap 소스를 다시 꺼내어 설치하는 것은 가혹한 면이 없지 않다. 아니, 내 컴퓨터에 phrap이 깔려 있기는 한가?

$ phrap

phrap phrap 
phrap version 1.080812

phrap version 1.080812
Reading parameters ... 1.008 Mbytes allocated -- total 1.008 Mbytes

Run date:time  210714:081805
Run date:time  210714:081805
FATAL ERROR: Sequence files must be specified on command line. See documentation.

아직도 굳건하게 남아 있다. 그러고 보니 Staden package도 여전히 배포 중이다. 1996년에 나왔던 Staden sequence analysis package에 관한 논문은 여기에서 볼 수 있으며 최신 업데이트는 20년이 지난 2016년(v2.0.0b11)까지 이루어진 상태이다. 언제 쓸 일이 있을지 모르겠지만 윈도우용 버전을 설치해 보았다. Staden package와 관련하여 기억해 둘 것은 "contig"라는 용어가 원래 어디에서 유래했는지를 잘 설명해 주기 때문이다(링크). 참고로 Staden이 근무했던 영국의 MRC Laboratory of Molecular Biology는 일종의 출연연 또는 국가연구소로서 현대 분자생물학 분야에서 너무나 많은 성과를 남겼다. Staden의 사진을 한번 찾아 보았다.

Roger Staden (LMB). "Staden devised the first DNA sequencing software." 출처: What is biotechnology? Computers, Databases and Automation

Staden package 설치 화면.
원래 오늘은 생명정보학 프로그램 박물관과 관련한 글을 쓰려는 것은 아니었다. 동료로부터 PCR로 증폭하여 판독한 16S rRNA 염기서열 유래 크로마토그램을 조립하는 방법에 관하여 이야기를 나누다가 현 시점에 쓰기 적당한 도구는 무엇이 있을지 웹을 뒤지는 과정에서 Tracy라는 도구를 접하게 되었다. 2021년에 이런 소프트웨어를 접하게 되다니 반갑기 그지없다. 특히 공공성이 강한 기관(EMBL)에서 개발하였으므로 비교적 오랜 기간 동안 업데이트가 및 서비스가 이루어질 것이라는 막연한 기대도 갖게 된다.

Tracy: basecalling, alignment, assembly and deconvolution of Sanger chromatogram trace files. BMC Genonmics 21, article no. 230 (2020) https://github.com/gear-genomics/tracy

Tracy 자체는 명령행에서 돌아가는 backend이고 별도의 웹사이트인 GEAR Genome Analysis Server(https://www.gear-genomics.com/)에서 서비스가 이루어진다. 논문에 소개된 web application은 다음의 6개이지만, 실제로 방문을 하면 훨씬 더 많은 서비스가 있다. 오늘 확인한 바에 따르면 무려 16개의 application이 있으며, 앞으로 더욱 늘어날 것이라고 한다. 마치 세련되게 다시 꾸민 EMBOSS explorer를 보는 느낌이다.

  • Teal: Viewing a trace file
  • Sage: Aligning a trace to a reference sequence
  • Indigo: Decomposing a trace, variant calling and annotation
  • Pearl: Patching FASTA sequences based on a local trace assembly that optionally uses a reference sequence
  • (Auxiliary) Sabre: a MSA viewer
  • (Auxiliary) Wily-DNA-Editor
논문의 그림 1 일부(Pearl)를 아래에 소개하였다. Reference 서열에 대하여 조립된 크로마토그램으로부터 mismatch를 잘 보이고 있다.
Full size image 원본 링크.
고전적인 DNA sequencing 이론은 이제 교과서 속으로 들어가 버리고 젊은 연구자들은 그 실체를 접할 기회가 많지 않은 것 같다. 

2021년 7월 12일 월요일

FASTA 파일 자르기 - Jim Kent의 faSplit

FASTX 파일을 조작하는 유틸리티는 그 종류가 하도 많아서 가끔씩은 내가 원하는 기능을 수행하는 명령어가 뭔지 찾는 것보다 차라리 새로 짜는 것이 더 편하다고 느낄 때가 있다. 이번에는 6G(gigabasepair가 아니라 gigabyte)가 넘는 FASTA file을 nucmer가 잘 다루지 못하는 현상을 발견하여 이를 수십 조각으로 적당히 분할하는 '남이 이미 만들어 놓은 유틸리티'가 뭔지 찾아 보았다. 다음의 글에서 저명한 전산생물학자 Jim Kent가 만들었다는 faSplit라는 것을 알게되어 설치 후 활용해 보았다.



faSplit - Split an fa file into several files.
usage:
   faSplit how input.fa count outRoot
where how is either 'about' 'byname' 'base' 'gap' 'sequence' or 'size'.  
Files split by sequence will be broken at the nearest fa record boundary. 
Files split by base will be broken at any base.  
Files broken by size will be broken every count bases.

Examples:
   faSplit sequence estAll.fa 100 est
This will break up estAll.fa into 100 files
(numbered est001.fa est002.fa, ... est100.fa
Files will only be broken at fa record boundaries

   faSplit base chr1.fa 10 1_
This will break up chr1.fa into 10 files

   faSplit size input.fa 2000 outRoot
This breaks up input.fa into 2000 base chunks

   faSplit about est.fa 20000 outRoot
This will break up est.fa into files of about 20000 bytes each by record.

   faSplit byname scaffolds.fa outRoot/ 
This breaks up scaffolds.fa using sequence names as file names.
       Use the terminating / on the outRoot to get it to work correctly.

   faSplit gap chrN.fa 20000 outRoot
This breaks up chrN.fa into files of at most 20000 bases each, 
at gap boundaries if possible.  If the sequence ends in N's, the last
piece, if larger than 20000, will be all one piece.12

faSplit는 multi-FASTA file을 각 서열 단위로 분할하는 것은물론 큰 서열을 임의의 길이(bp 혹은 바이트 단위)로 잘라준다. 리눅스에 포함된 일반 유틸리티인 cut도 이와 유사한 일을 할 수 있으나 서열 경계 부분을 지혜롭게 처리해 주지는 못한다. cut의 유용성은 다른 곳에 있다. 예를 들어서 컬럼 단위로 텍스트 파일을 분할하는 능력 말이다.

만약 fasta 파일을 조작하여 염기서열이 한 줄에 표시되게 만들면 cut과 같은 일반 유틸리티를 이용한 복잡한 작업도 가능하다. 그러려면 awk나 sed를 동원해야 될 것이다.

이렇게 블로그에 기록을 남겨놓지 않으면 내가 faSplit라는 유용한 도구를 설치하여 사용했었다는 사실 자체를 기억조차 하지 못할 것이다!

2021년 7월 9일 금요일

NCBI 신종코로나바이러스(SARS-Cov-2) 데이터 허브에 올해 등록된 유전체 염기서열에는 한국 유래 바이러스 자료가 없다

신종코로나바이러스 국내 확진자가 최근 들어서 급증하는 추세이다. 하루에 1200명이 넘는 확진자는 전혀 예상하지 못했던 수치이다. 주말에 세웠던 계획을 어떻게 하는 것이 좋을지 심히 고민이 된다.

NCBI에서는 신종코로나바이러스를 위한 SARS-CoV-2 Data Hub를 별도로 운영하고 있다. 오늘 기준으로 등록된 바이러스의 유전체 염기서열은 896,485건이고, completeness로 필터링하면 374,386건이나 된다. GISAID의 EpiCoV 데이터베이스에 비교하면 등록된 데이터는 약 절반 수준이지만 데이터 사용에 따른 제한이 적어서 좋다. GISAID는 데이터를 등록한 사람의 권한을 더 중시하는 정책을 유지하고 있어서 사용자 등록도 까다롭고, 자료를 가져다가 활용하려면 등록자를 밝히는 '감사의 글' PDF 파일을 받아야 한다. 시험삼아서 1만 건(검색 페이지에서 한번에 다운로드할 수 있는 자료의 수 - 이것마저 상한선이 있다니...)의 염기서열을 다운로드하면서 감사의 글 파일을 같이 받았더니 A4 용지 포맷으로 무려 68쪽이나 된다. 만약 논문을 쓰면 이것을 supplementary file로 붙여야 한다. 20만건 정도의 데이터를 받아서 분석한다면 어떻게 될까?

돈을 들여서 바이러스 변이체의 유전체를 연구하고 임상 데이터를 얻은 사람의 소중한 정보를 함부로 가져다 쓰지 말라는 정책인데, 백신 및 치료제 개발이라는 공익적인 목적이라면 이를 좀 더 개방해야 하지 않을까? 이를 촉구하는 공개 서한(Open letter: Support data sharing for COVID-19)에 연구자들이 서명을 하고 있지만 GISAID의 정책이 아직 변한 것 같지는 않다. BioIN 포털에서도 코로나19 바이러스 유전체 데이터 공유 이슈라는 글을 통해 이 문제를 소개하였다.

활용에 별다른 조건이 없는 NCBI의 데이터 허브에서 올해부터 지금까지 수집된 바이러스에 대한 유전체 데이터(complete)를 다운로드하였다. 바이러스 샘플을 수집한 날, 염기서열 정보를 등록한 날, 공개일(NCBI)에 차이가 있으니 주의해야 한다. 아마도 샘플 수집일이 가중 중요한 기준일이 될 것이다.

오늘 받은 것은 약 22만 건에 이르는 자료로서 FASTA file의 크기는 6.1 G에 육박한다. 그런데 한국에서 등록한 것은 하나도 없다. 어라? 수집 기간에 대한 필터를 해제하니 30개 조금 넘는 자료가 존재할 뿐이다. 왜 이렇지? 이번에는 GISAID에 가 보았다. 기간을 불문하고 검색을 한 결과 대한민국에서 유래한 것이 8,579건이고 3종 필터 세트(complete, high coverage, low coverage excl)을 적용하니 4,931개가 되었다. 일단 후자에 해당하는 세트를 전부 다운로드하였다.

왜 거의 전부의 자료를 NCBI가 아니라 GISAID에만 등록을 했을까? 위험을 무릅쓰고 바이러스 샘플을 채취하고, 유전체 데이터를 해독하고, 환자의 임상 데이터를 수집하는 등의 노고는 누구나 다 들여다볼 수 있는 NCBI에 등록하기에는 아까웠던 것일까? 데이터를 가져다가 쓰기만 하는 사람으로서 데이터 제공자의 입장을 완벽하게 이해하기는 어렵다. 나름대로의 합리적인 이유가 있겠지만 아쉬움을 금할 수가 없다.

NCBI Data Hub에서 적당한 조건으로 검색을 한 뒤 table view를 CSV 파일로 받은 후 서열 ID와 PANGO lineage를 awk로 뽑으려고 했더니 2번째 컬럼(authors)가 아주 고약하게 되어 있는 것을 발견했다. 저자가 여러명이므로 콤마를 넣어서 구분을 한 뒤 전체를 큰따옴표로 둘러싼 것이 아닌가. 이를 "awk -F,"로 조작하면 인용기호 안의 콤마를 그대로 구분자로 취급해 버리니 문제가 된다. 방법은 찾으면 나온다! 아래에 소개된 솔루션 중에서 가장 마지막에 소개된 것을 사용하였다.


다음의 코드는 1번과 4번 컬럼을 추출하게 만들어 준다.

$ awk '{while(match($0,/("[^"]+",|[^,]*,|([^,]+$))/,a)){
     $0=substr($0,RSTART+RLENGTH);b[++x]=a[0]}
     print b[1] b[4];x=0}' sequences.csv

2021년 7월 5일 월요일

TDA7265 앰프의 잡음 정복 - 끝날 때까지 끝난 것이 아니다!

NE5532 버퍼 프리앰프 보드의 전해 캐패시터에 금속판 실드를 씌운 것으로도 기분 나쁜 잡음이 약간 남아서 나의 귀를 거슬리게 하였다. 도대체 어디까지 해야 하는가?

양 끝에 악어클립을 단 전선을 가져다가 모든 부품이 올라가 있는 알루미늄판(앰프 회로의 그라운드에 연결된 상태)와 멀티탭의 접지핀을 직접 연결해 보았다. 잡음이 완벽한 수준으로 줄어들었다.

허! 정녕 이 앰프에 접지가 달린 3구 케이블을 써야 한단 말인가? 겉으로 금속 부분이 노출되지 않은 플라스틱 케이스에 담긴 반도체 앰프이니 안전 접지는 필요하지 않을 것으로 생각했다. 콘센트의 안전접지를 끌어다가 앰프 내부의 그라운드에 함부로 연결하면 잡음이 오히려 더 커질 수도 있다고 들었다. 그러나 실험 결과가 이렇게 나오는 것을 부정할 수가 없다.

5년 전에 서울 종로구 장사동에서 구입하였던 나무 손잡이의 저가형 납땜인두(관련 글 링크)가 단선이 되어서 파워 케이블만 분리해 둔 것을 쓰기로 하였다. 

작업을 마친 모습. 전원 케이블이 바뀌었다.


전원의 접지선을 이것을 앰프 내부의 그라운드에 그냥 연결하기는 좀 마땅치 않아서 1/4와트 220옴 저항을 중간에 삽입하였다. 아래 사진에서 3핀 러그터미널에서 모든 접지가 모이는 것을 볼 수 있다. 가운데 핀을 통해서 바닥의 알루미늄판과도 접속이 된다. 앰프 내부의 그라운드선은 어디에서 취했는가? 노란색으로 1, 2, 3이라는 숫자가 적힌 것이 버퍼 프리앰프의 전원 입력용 커넥터이다. 원래는 전원 트랜스포머의 2차에서 나오는 +15/0/-15V선을 연결해야 한다. 그러나 재활용을 위해 망가진 인켈 튜너에서 적출한 기판용 파워 트랜스포머의 2차 핀은 그 수가 많지만 0V과 30V 사이에 중간 탭 역할을 할 것이 없다. 그래서 여기에서 나오는 노란색 전선 두 가닥을 아래 사진의 1번과 3번 단자에 연결한 것이다.

이렇게 해도 op-amp가 필요로 하는 양전원은 생긴다. 물론 최적의 상황은 아닐 것이다. 그러나 버퍼 프리앰프가 끌어다 쓰는 수준의 전류라면 큰 문제는 없을 것이라고 생각한다. 간단한 CMoy 앰프에서는 9V 전지를 저항으로 분할하여 양전원을 만들지 않던가.

볼륨 포트 케이스에 납땜한 전선과 캐패시터를 차폐한 알루미늄판에 연결한 전선은 위 사진에서 전부 2번 커넥터에 연결되었다. 원래는 전원 트랜스포머의 센터탭과 연결했어야 하는 곳이다. 이것이 회로 전체의 그라운드와도 연결이 되어 있다.

코어에 차폐를 위한 밴드가 전혀 둘러지지 않은 전원 트랜스포머가 잡음의 원흉일지도 모른다는 생각이 자꾸 든다. 

만약 다음에 또 이런 구성의 반도체 앰프를 만든다면, 반드시 토로이덜 트랜스포머를 쓰리라. 0-18/0-18V의 출력을 갖는 100VA급의 토로이덜 트랜스포머는 산켄 SI-1525HD 하이브리드 IC를 이용한 앰프를 위해 봉사하는 중인데(관련 글 링크) 활용도는 현저히 낮다. 가장 큰 이유는 케이스가 부실하다는 것이다. 리모델링이 절실한 상태이지만 팝업 노이즈를 피하기 위한 스피커 작동 지연회로를 마련하는 것이 귀찮아서 아직 시도를 하지 못하고 있다.


2021년 7월 4일 일요일

TDA7265 앰프의 잡음 개선에 한번 더 도전하다

지난달, 앰프의 기판 전체를 얇은 알루미늄판으로 덮어 씌우고 접지에 연결하는 것으로 잡음을 대폭 줄일 수 있었다(관련 글 링크). 

금속 실드를 기판에 씌우는 것보다는 전원 트랜스포머에 씌우는 것이 훨씬 나았을 것이다. 네이버 블로그 '족장' 님의 글(링크)에서 트랜스(실제로는 초크 코일) 차폐에 대한 새로운 아이디어를 얻게 되었다. 언젠가는 시도해 보리라.

볼륨용 가변저항의 본체에는 전선을 납땜하여 접지에 연결을 하였다. 그럼에도 불구하고 볼륨 노브에 손을 가까이 가져가면 잡음이 커진다. 왜 그럴까? 다시 앰프 뚜껑을 열고 잡음의 원인을 찾아 보았다. 볼륨 가변저항 자체에는 손을 대도 잡음이 더 커지는 것이 아니었다. 바로 곁에 있는 전해 캐패시터가 문제였다. 바로 여기에 손을 가까이 가져가면 엄청난 수준의 잡음이 유도되었다.

알루미늄판 조각을 잘라서 'ㄷ'자 형태로 접어서 지붕을 씌우듯이 전해 캐패시터에 씌웠다. 알루미늄판이 이탈하지 않도록 실리콘으로 접착을 하였고, 전선을 이용하여 그라운드로 연결하였다.

모든 부품이 올려진 알루미늄 바닥판과 지난 6월에 씌운 실드판을 연결하는 볼트에 전선을 연결하여 이것 역시 접지에 연결하였다. 이렇게 하니 잡음이 대부분 사라졌다.

볼륨 조절용 포트 바로 곁의 알루미늄 구조물이 오늘의 작업물이다.
입력 RCA 단자에 아무것도 연결하지 않고 볼륨 노브를 올려 보았다. 각도를 올림에 따라서 증가하는 미세한 잡음이 있다. 이것은 아마도 차폐하지 않은 전원 트랜스포머에서 유입되는 것일지도 모른다.누설 자속이 적은 토로이덜 트랜스포모를 오디오 기기에서 이용하는 이유를 알 것 같다. 만약 염가형 EI 코어 트랜스포머를 써야 한다면, 기왕이면 자속 차단도 가능한 함석판을 잘라서 차폐를 하는 것이 더 나을지도 모른다.

자작 오디오 앰프를 만들면서 가장 이해하기 힘든 것은 볼륨 놉을 중간 위치에 두었을 때 가장 큰 잡음이 나는 현상이었다. 볼륨 위치에 관계없이 동일한 레벨의 잡음이라면 전원에 남은 리플 때문일 것이고, 볼륨 놉을 올리면서 증가하는 잡음이라면 신호선을 통해 타고 들어오는 것이라고 이해할 수 있을 것이다. 그런데 볼륨 노브가 정가운데 있을 때 가장 큰 잡음은 이유가 무엇일까? A형 가변저항을 이용하므로 이 위치는 저항 값의 1/2인 위치도 아니다. 어쩌면 전원트랜스에서 방사하는 전기장 잡음을 가장 잘 수신(?)하는 조건이 볼륨 포트의 위치가 12시 방향일 때인가? 슬라이더의 위치에 의해 저항이 어떻게 분할되는가의 여부에는 상관이 없이?

자작 오디오의 성패를 가르는 것은 바로 케이스 가공과 튜닝이 아닐까 한다. 왜 내가 이 고생을 하고 있지? 끊임이 없는 회의외 도전, 그리고 반 발자국의 진전이 뒤섞인 상태로 몇 년을 보냈다. 자작에서 가장 희열을 느끼는 순간은 완성도가 높은 작품이 처음으로 소리는 내는 순간(즉 최종 결과물)이 아니라, 연기와 함께 납이 녹는 그 순간을 눈으로 보며 몸으로 느끼는 과정이 아닐까 싶다. 왼손으로 받치고 있던 실납이 갑자기 녹으면서 손에 느껴지던 저항감이 사라지며 연기와 함께 녹은 납은 광택을 낸다. 바로 이 순간을 중독성과 함께 즐기는 것이 아닐까?


X8SAX 데스크탑 컴퓨터가 MinION 구동용으로 거듭나다

러닝할 샘플은 많고, MinION Mk1C는 네트워크에 연결하지 않은 상태로 쓰려니 좀 불안한 구석이 있어서 기존의 컴퓨터에 다시 MinKNOW 소프트웨어를 설치해 보기로 하였다. 예전에 잠시 쓰던 맥북, 최근 구입한 Dell XPS 13 등. 최종적으로 선택한 것은 Ubuntu Studio를 설치하여 업무 보조 및 음악 작업용으로 쓰던 X8SAX 데스크탑이었다.

최신 Dell 노트북은 윈도우에 MinKNOW를 설치하려니 흔히 보던 메시지 - 재부팅이 필요하다는 - 의 무한 반복이었고, 우분투 쪽에서는 프로그램 패키지가 꼬여서 잘 되지 않았다. 나노포어 커뮤니티에서는 우분투 16과 18에 대한 설명까지만 존재한다. 이 노트북에는 우분투 20.04가 설치되어서 조금 까다로운가? 그렇다면 우분투 '스튜디오' 20.04가 깔린 X8SAX 데스크탑에 MinKNOW와 Guppy(CPU version)이 잘 설치된 것은 어떻게 이해해야 될까? GUI 데스크탑 환경이 Xfce인 것과 관련이 있을까?

2년 동안 파견 근무를 했던 기업에서는 우분투에서 MinKNOW를 설치하고 돌리는데 네트워크 보안을 해제하느라 애를 먹었던 기억이 난다. 이번에는 이와 관련한 문제가 발생하지는 않았다. 문제가 생겼던 원인을 이제는 더 많이 이해하고 있다고 생각하지만 완벽한 상태는 아니다. SSL 가시화 장비가 제공하는 SSL 인증서를 system-wide하게 설치하는 것이 해결책인 것으로 안다.

주말을 기하여 48시간 러닝으로 세팅하였으므로 월요일이면 시퀀싱 결과를 알 수 있을 것이다.