2023년 2월 6일 월요일

한컴독스 문서의 링크를 외부에 1개월 이상 공개하려면 돈을 내야 하는구나!

접근성이 좋아서 한컴독스 무료버전을 쓰기 시작하였다. 구글 드라이브가 열리지 않는 환경에서도 접속이 잘 되어서 매우 만족하고 있었다. 그런데 여기에 올린 기술 문서 하나를 전체 공개를 하려고 메뉴를 들어가 보았더니... 문서 공유 링크를 1개월 이상 공개하려면 유료로 업그레이드하란다.


세상에 공짜는 없구나! 야금야금 지갑을 갉아먹는 구독 서비스가 나를 괴롭힌다. 도메인 유지 수수료, 웹호스팅 서비스 요금, OneDrive, Google 저장소, Mendeley, 유튜브 프리미엄에 이어서 한컴독스도 유료 서비스로 전환해야 할까? iTOL(interactive tree of life)도 구독 기간이 이미 만료되었다.

Mendeley와 마이크로소프트 웹오피스는 현 파견 근무지에서 웹사이트 자체에 접속이 되지 않는다. 구글 드라이브는 원 근무지, 파견 근무지 전부 접속이 되지 않는다. 외부 기업과 함께 일을 하는 과정에서 구글 드라이브에 있는 문서의 링크를 받았을 때 참으로 난감했었다. 

워드 문서를 도쿠위키 형태로 전환하는 컨버터(Word2Wiki Converter)를 사용한 뒤 아예 나의 위키 사이트에 올려 버릴까? 문서 파일의 수정본을 그때마다 위키 사이트에 첨부해 올리는 것은 상당히 번거롭다. Mendeley 서비스 해지와 더불어 심각하게 고민해 보도록 하자.


2023년 2월 4일 토요일

기타 스탠드를 구입하다

좁은 방구석에 두 대의 일렉트릭 기타를 이런 모습으로 계속 둘 수는 없다. 소프트 케이스의 손잡이를 책상 기둥에 묶어 놓았으니 쓰러질 염려는 없지만, 기타를 꺼내기가 불편하면 그만큼 연습 기회는 줄어든다는 것이 불변의 진리이다.


대전 사무실에 있는 스콰이어 텔레캐스터까지 세워 둘 것을 감안하면 3대를 세울 수 있는 스탠드가 필요하다. 허큘리스라는 브랜드의 제품(GS432B PLUS)의 명성이 자자하지만 가격이 생각보다 매우 높다. 쿠팡을 들여다보면서 추가 배송비 없이 하루만에 올 수 있는 것을 눈이 빠지게 찾아 보다가 '와이든'이라는 브랜드의 것을 주문하였다. 실제로 배달된 상자에는 HEBIKUO J-33C라는 모델명이 인쇄되어 있었다. 알리바바에서 팔리는 가격을 찾아보니 후~ 한숨만 나온다. 이럴 줄 알았으면 원래 마음에 두었던 NOMAD NGS-2213을 살 것을! 이것은 허큘리스 스탠드에서 몇 가지 기능을 제거한 ECO 브랜드라나 뭐라나... 가격은 큐팡에서 팔리는 와이든의 것보다 훨씬 싸다.

가격은 3대 거치용 스탠드를 기준으로 Hercules > IMI > 와이든(HEBIKUO) > NOMAD의 순이다.

쿠팡에서 제시한 제원은 다음과 같다.



삼각 다리를 벌리는 정도는 NOMAD의 것과는 달리 약간의 조절이 가능한데, 위 그림에 나온대로 40cm로 고정한 뒤 기타를 두 대 걸어두면 약간 불안하였다. 특히 Flying V형 기타는 워낙 길어서 기둥을 좀 더 뽑아야 하니 기타를 하나만 거치한 상태에서 툭 건드리면 넘어질 가능성이 있었다.


 

다리를 권장치보다 약간 더 벌려야 안정적인 거치가 가능할 것 같았다. 약간의 시행착오를 거쳐서 45~46cm 정도로 타협을 보았다. 세 번째 자리는 그냥 비워 두니 안정성이 떨어지는 것 같아서 가방에 책을 넣어서 걸어두었다.

Flying V형 기타는 헤드만 걸어 두어도 되고...
 

또는 몸체 받침대에 걸쳐도 된다.

기둥을 최대 높이인 101cm까지 내라면 무게중심이 내려가서 더욱 안정하게 유지되겠지만, Flying V형 기타를 수직으로 세우면 몸체가 바닥에 닿는다. 지금 세팅 상태에서는 1~2cm 정도 떠 있다.

싸고 좋은 것은 존재하지 않는다는 것을 새삼스럽게 깨달았다. 헤드가 좁은 스콰이어 텔레캐스터는 거는 부분에 붕대 같은 것을 감아야 수직으로 잘 걸릴 것이다.

다음 사진은 일산 주엽역 근처의 네오뮤직에서 찍은 것. 원래는 여기에서 NOMAD 스탠드를 사려고 어제 처가에 들른 김에 방문하였으나 허큘리스 제품 말고는 전부 물류창고에 있다고 해서 기타 스트랩만 하나 구입하였다. 악기점의 장기 재고 기타 중 상태가 좋은 것을 언젠가 살 수 있을 것이라는 생각을 잠시 해 보았다.


하루 종일 기타 스탠드와 씨름을 하던 내 모습을 보던 아내가 가방이 걸린 모습이 흉하다면서 '관상용' 기타를 하나 더 사서 채워 놓으라고 당근마켓을 뒤지고 있다. 허허...

2023년 2월 1일 수요일

보건의료 데이터의 비식별화 방법 마련에 애쓰지 말자?

내가 썼던 관련 글(2023년 1월 17일): 유전체 데이터의 익명화(anonymization)는 과연 가능한가?

안전한 유전체 데이터 가명처리 방법이 등장할 때까지 유전체 데이터의 활용을 보류할 수는 없고, 현 수준에서 안전 장치를 마련한 다음 활용을 허용해야 한다는 것이 나의 입장이었다. 여기서 안전 장치라 함은 현란한 IT 기술만을 의미하는 것이 아니다. 정보를 제공받은 자가 이것을 부주의하게 취급하여 유출하거나, 또는 좋지 않은 의도를 가지고 사용하지 않겠다는 확약을 받는 것도 포함하고 있고, 어떻게 보면 이게 더 낫다고 생각하게 되었다.

결과적으로 신수용 소장의 주장과 비슷해졌다. 

"그래서 최근의 내 주장은 차라리 동의를 제대로 받자는 것이다." 출처: 가명화 vs. 동의서: 이젠 동의에 대해서 이야기하자(링크)

그러면 동의서를 제대로 받지 못한 상태에서 생산된 데이터는 어떻게 하나? 글쎄, 경과조치라도 만들지 않고서는 딱히 해결 방안이 떠오르지 않는다.

유전체 데이터에 대해서라면, raw data는 그냥 자유롭게 연구에 쓰도록 하면 되지 않느냐는 의견을 최근에 들은 바 있다. 여기에 연결된 식별정보는 가리고, 다른 자료와의 결합에만 주의한다는 전제 하에서 말이다. 

스탠포드 대학의 Institute for Human-Centered AI(HAI) 웹사이트에서 2021년에 이런 글을 공개하였기에 소개하고자 한다.

De-identifying medical patient data doen't protect out privacy 링크

제아무리 노력해도 비식별 처리는 완벽할 수 없다. 그리고 비식별 처리의 끝판왕, 즉 진정한 익명화 단계에 도달하면 데이터로서의 가치가 사라진다. 프라이버시 보호에 관심이 있다면 불완전한 기술적 버팀목에 기대지 말고, 법적 해결책(legal solution)을 찾아야 한다고 주장하고 있다. Technical solution이 아니라 legal solution이라... 이 글에서는 구체적인 방법을 제시하지는 않았다. 부주의한 취급에 의한 유출이 일어나지 않게 모든 방안을 강구하고, 의도적인 재식별을 하지 않겠다는 합의서(예: data use agreement, DUA)를 체결하는 것으로 충분할까? 사고가 났을 경우 어떤 벌이든 달게 받겠다는 조항을 넣어서?

이 글에서 다음과 같이 비식별화의 문제점을 나열하였다.

  1. 프라이버시 보장을 할 수 없다.
  2. 규제되지 않는 데이터 시장을 허용한다.
  3. Learning healthcare system이 환자에게 도움을 주기 위해 보건의료 데이터를 사용하는 것을 방해한다.

2번은 어려운 고민을 낳는다. 산업 진흥과 규제 중 어느 것에 초점을 맞추어야 하는지? 데이터 3법의 개정(2020년) 취지는 정보 주체의 동의 없이 가명화된 데이터를 활용할 수 있게 물꼬를 트는 것이었다. 여기에 규제를 가하자는 것은 개인정보 자기결정권 보장 및 재식별화를 통한 사생활 침해 또는 차별을 막자는 고결한 정신을 바탕으로 하고 있다고 누구나 믿는다. 그러나 데이터 활용을 통해 얻어지는 이익을 나누자고 한다면 그 누구도 규제를 빨리 걷어내기를 원할 것이다.

참 어려운 일이다.

동의(同意, agreement or consent)의 정확한 의미를 찾아서

개인정보 보호법에 따라서 '동의서'를 작성할 일이 매우 많아졌다. 서면 동의서에 체크를 하고 서명을 하는 일도 있고, 휴대폰 앱에서 손가락을 놀려서 동의를 하기도 한다. 연 단위로 자동차 보험을 계약하려면 전화기를 붙들고 담당 직원이 줄줄 읊는 내용을 거의 10분이 넘게 듣고나서(말하는 사람도, 듣는 사람도 어차피 영혼은 약간 가출한 상태...) 동의함을 구두로 표현할 때도 있다. 병원에서 진단 또는 치료에 필요한 검사를 할 때에도 이 검사의 필요성과 발생할 수 있는 위험에 대해서 설명을 듣고 동의하는 절차가 많아졌다고 한다. 그냥 서면 동의서를 내밀면 내용을 제대로 읽지 않고 기계적으로 확인 서명을 하는 경우가 많으니, 요즘은 이를 일일이 읽어주어야 한다고 들었다.

'동의하다'라는 낱말을 중학교 1학년 필수 영단어 수준으로 생각하면 'agree'로 번역할 수 있다. 어떤 책임과 의무가 수반되는 계약행위가 자연스럽게 떠오른다. 그런데 개인정보 수집·이용·제공 동의서는 '계약서'는 아니다. 바로 위에서 기술한 행위(행위인가 의사표시인가? 아, 어렵다...)를 영어로 정확히 옮기면 'consent'가 된다.

Agree와 consent는 무엇이 다른가? 구글을 찾아 보았다. Agree는 일반적으로 어떤 의무가 수반되는 반면, consent는 찬성을 표시하는 의사 표현이라는 점이 다르다.

Agree to do something is a legal or constractual context is generally used to assume an obligation. Consent, on the other hand, is an acknowledgement that the other person will do something and the subject will tolerate it. 출처

'동의란 어떤 자의 행위를 제3자가 찬성하는 표시 또는 그 표시를 요소로 하는 단독행위이다.' 강태성, 민법에서의 「승인·승낙·동의·허락·추인」에 대한 검토 및 개정안」, 민사법의 이론과 실무 (2016) 제19권 제3호 1-56쪽 링크.

강태성 교수의 논문은 매우 신선한 충격으로 다가왔다. 1960년부터 시행되고 있는 현행민법이 적지 않은 수준에서 만주국민법(만주국은 너무나 유명한 괴뢰국 아니었던가!)과 일본민법을 거의 그대로 이어받았다고 한다. 이것이 우리나라의 현실과 너무나 동떨어져 있음은 당연하지 않은가? 정부에서는 2015년에 민법 개정안을 국회에 제출하였지만 일부만 통과되었고 나머지는 국회 종료에 따라 자동 폐기되었다고 한다. 그 과정에서 승인·승낙·동의·허락·추인은 전혀 개정되지 않았고, 현행 민법에서 이들 용어가 적확한지에 대해서도 거의 논의가 되고 있지 않다고 한다. 

이 논문은 민법에 관한 것이다. 동의라는 낱말이 의료법에는 21회, 개인정보 보호법에는 79회, 생명윤리법에는 80회 나온다. 그만큼 중요하고, 그 의미를 정확히 알고 있어야 한다. 헌법에 근거를 두고 있다는 자기결정권이 중요한 이슈로 떠오르고, 이로부터 파생된 '무슨무슨 자기결정권'을 지키기 위해 수많은 동의서에 파묻혀야 하는 것이 현실이다. 오늘 다루는 동의는 찬성 또는 허락에 가깝다고 이해하면 쉽다. 그러나 '개인정보 수집·이용·제공 동의서'를 '개인정보 수집·이용·제공 허락서'라고 바꾸자고 주장하는 것은 아니며, 다만 그 의미를 정확히 알자는 것이다. 강태성 교수의 논문에서도 민법 내에서 쓰이는 승인, 허락 등의 용어를 구체적인 사례를 들어서 동의로 바꾸자고 하였다.

오늘 곁다리로 알게 된 지식: 청약(offer)과 승낙(acceptance)이 합치할 때 계약이 성립한다. 

하나 더: 헌법재판소는 자기결정권의 근거를 헌법 제10조('모든 국민은 인간으로서 존엄과 가치를 가지며, 행복을 추구할 권리를 가진다. 국가는 개인이 가지는 불가침의 기본적 인권을 확인하고 이를 보장할 의무를 진다.')에 두고 있다고 보았다. 자기결정권이라는 낱말이 처음 등장한 헌법재판소의 결정은 1990.9.10. 89헌마82(링크)인데... 

인간은 누구나 자기 운명을 스스로 결정할 수 있는 자기결정권을 가지고 있고 자기결정권에는 성적행동에 대한 것도 포함되어 있는데 간통죄라는 협박적 법률을 두어 애정이 없는 경우에도 혼인관계의 지속을 강제하는 것은 성적자기결정권에 대하여 국가가 부당하게 간섭하는 것으로서 인간으로서 존엄과 가치 및 행복을 추구할 권리를 보장한 헌법 제10조와 신체의 자유를 보장한 헌법 제12조에 위반되고...

어이쿠, 이건 형법 제241조의 위헌 여부를 다루었던 사건(들)의 시발점이 아닌가? 이제는 삭제된 형법 제241조는 배우자 있는 간통행위 및 그와의 상간행위를 한 자를 2년 이하의 징역에 처하도록 규정하였었다. 무슨 고결한 사건을 다룬 판례에서 자기결정권이라는 개념이 구체화된 것이 아니었다. 물론 시각에 따라서는 대단히 중요한 사건일 수도 있겠지만. '○○○ 자기결정권'이라는 낱말을 처음으로 선언한 헌법재판소 선고문에서 ○○○ = '성적(性的)'이었다니... 그러나 정작 1990.9.10. 89헌마82의 주문은 '형법 제241조는 헌법에 위반되지 아니한다'였다. 이 법률이 헌법에 위반된다는 결론을 내린 위헌소원은 내가 찾아본 바에 의하면 훨씬 나중에 나왔다.  지금 해당 조를 찾아보면 '2016.1.6. 법률 제13719호에 의하여 2015.2.26. 헌법재판소에서 위헌 결정이 된 이 조를 삭제함'이라고만 나온다.

헌법재판소가 헌법에 근거하여 자기결정권이라는 개념을 도출한 것이 적절치 않다는 주장도 있다(링크).

하나 더: '...필자는 구체적인 조문의 예시를 통해 우리 민법이 만주민법에 거의 전적으로 의존하여 입법되었음을 논증하고 결론적으로 만주민법을 우리의 계수사(繼受史; 계수는 '전해 받음' 또는 '외국의 법을 채용함'의 뜻을 갖는다)에 정식으로 자리매김하는 것이 옳다는 생각을 밝히고자 한다' 이철송, 「만주국민법의 우리 법제사적 의의 - 만주민법의 자리매김에 관한 의문 -」 민사법학(2017) 제78권, 3-41쪽. 

2023년 1월 29일 일요일

녹음 모니터링을 위한 보조 케이블 만들기(일종의 패시브 믹서)

이번 주말의 DIY 결과물은 일종의 passive mixer이다. 믹서라는 표현을 하였지만 각 신호의 레벨을 조절하는 포텐셔미터와 같은 것은 없으므로 외형은 Y-cable을 닮았다. 

●와 ●●로 들어오는 신호가 1:1로 섞여서 맨 위의 RCA 플러그로 나간다.

두 입력을 섞는 회로는 스테레오 신호를 모노로 만드는 다음의 것을 참조하였다. 실제 제작에서는 475R 대신 470R 저항을 사용하였다.

그림 출처: Stack Exchange "Multiple options for passive audio mixer". 20K pulldown resistor는 플러그를 꽂거나 뺄 때 발생하는 팝 노이즈를 줄이기 위한 것으로, 기타용 페달에서 매우 널리 쓰이는 기법이라고 한다.

왜 이런 물건을 만들었는가? 나는 음악 작업을 위해 Behringer X802 믹서(구입 당시 작성한 글 링크, 매뉴얼)와 같은 회사의 UCA200 USB 오디오 인터페이스(UCA202가 아니고...)를 사용한다. 두 기기는 믹서의 RCA 단자("2-TRACK")를 통하여 INPUT⇿OUTPUT을 서로 반대로 연결한다. 녹음을 위한 신호는 MAIN OUT이 아니라 2-TRACK으로 보내는 것이 정석이다.


Xenyx 802. 보통 믹서 모델명의 숫자는 채널의 수(모노는 1, 스테레오는 2)를 의미한다. 마이크 입력 2, 스테레오 입력 2인데 왜 6이 아니라 8로 시작하는가? STEREO AUX RETURN 단자를 통해 두 채널을 추가로 쓸 수 있기 때문에 그럴 것이다. 물론 이렇게 들어오는 신호는 본체에서 EQ나 레벨, 밸런스 등을 조절할 수 없다.

2-TRACK 단자는 이렇게 생겼다. 이 단자를 다른 이름으로 부르기도 한다. 예를 들어 다른 회사의 믹서 제품에서는 'CD/TAPE INPUT OUTPUT'이라고 표시하기도 한다.


 

컴퓨터에서 재생되는 음악(유튜브 등)을 들으려면 2-TRACK 스위치 중 위의 것("2-TR TO CTRL ROOM")을 눌러 놓는다. 이렇게 하면 믹서의 각 채널에 입력되는 신호는 헤드폰으로는 들리지 않는다. 물론 채널로 입력되는 신호는 항상 메인 아웃으로 흘러 나간다.

 

 

 

그러면 컴퓨터로 녹음을 하는 상황을 가정해 보자. 믹서로 입력되는 음성(마이크)이나 악기 연주 신호를 컴퓨터로 일방향 전송을 하고 끝내는 아주 간단한 경우라면 2-TRACK 스위치 두 개를 전부 오픈한 상태로 녹음을 하면 된다. 이 상태에서는 입력 신호가 항상 헤드폰/콘트롤 룸 아웃으로 흘러 나가므로 헤드폰으로 모니터링을 하면서 녹음을 할 수 있다. 내 오디오 인터페이스에는 모니터를 위한 출력 단자가 없으니 이렇게 하지 않고 다른 방법은 없다. 최소한 UCA202 정도를 구입했더라면 오늘과 같은 보조 케이블 제작은 필요가 없었을 것이다. 2-TRACK 스위치를 둘 다 누르면 피드백 루프가 생겨서 매우 곤란하다.

다음은 약간 복잡한 상황을 떠올려 보도록 하자. 드럼 트랙을 미리 녹음해 놓고, 이 소리를 들으면서 일렉트릭 기타를 별도의 트랙에 녹음하고 싶다. DAW 소프트웨어에서 입력되는 것을 출력하게 설정하는 것이 가능하지만, 레이턴시 때문에 실용적이지 못하다.

DAW에서는 녹음을 진행하는 동시에 드럼 트랙 재생이 이루어진다. 이를 믹서의 헤드폰 출력을 통해 들으려면 2-TR TO CTRL ROOM 스위치를 눌러 놓아야 한다. 그런데 이런 상황에서는 정작 믹서로 들어오는 기타 연주 신호가 헤드폰 단자로 들어오질 못한다.

그러면 2-TR TO CTRL ROOM 스위치는 열어 놓고, 그 아래에 있는 2-TR TO MIX 스위치를 눌러 놓으면? 헤드폰으로는 드럼 소리와 기타 소리가 같이 들릴 것이다. 그러나 믹서의 녹음용 출력에는 드럼+기타 소리가 같이 섞여서 나가게 된다. 우리가 원하는 것은 이게 아니다. 드럼 소리는 연주자의 귀에만 들리면 충분하고, 단지 기타 소리만 순수한 녹음 출력으로 나가야 하기 때문이다.

어떻게 하면 좋을까? 믹서의 FX SEND 출력과 오디오 인터페이스의 출력을 섞어서 이를 2-TRACK으로 입력한 다음, 2-TR TO CTRL ROOM을 누른 상태로 녹음을 하면 될 것이라는 생각이 들었다. FX SEND는 믹서의 입력을 외장 이펙터로 보내는 단자이다. 리턴을 시키지 않으면 입출력 신호에는 아무런 영향을 미치지 않는다. 더군다나 각 채널 스트립에는 FX 레벨을 조정하는 노브가 있다. 이는 FX SEND로 나오는 신호의 세기를 조절할 수 있다는 뜻이다. 따라서 믹싱 회로를 만든다 해도 음량 조절을 위한 별도의 포텐셔미터를 달 필요가 없다. 전원조차 필요하지 않은 패시브 믹싱 회로를 만들자! 이것이 이번 주말의 작업 목표였다.

혼자 궁리하다가 생각해 낸 방법이지만 아마 나와 같은 아이디어를 떠올리고 실행에 옮긴 사람은 많이 있을 것이다. 작업 후 검색을 해 보니 FX SEND를 보조 출력 또는 모니터 목적으로 쓰는 사례가 있었다.

작업 전에는 FX SEND 단자가 스테레오일 것으로 생각을 했다. 그래서 55 플러그(6.35mm)도 스테레오형을 구입하여 납땜을 하였다. 그런데 보조 케이블을 만들어서 테스트를 해 본 결과 컴퓨터에서 흘러나오는 드럼 소리는 제대로 들리지만 기타 소리는 왼쪽만 들리는 것이 아닌가? Xenyx 802 매뉴얼을 찾아보니 다음과 같이 FX SEND는 MONO임을 분명히 해 두었다.

하, 그렇구나! FX SEND는 모노인데 'STEREO' AUX RETURN이라... 플러그를 다시 연 다음 좌우 케이블을 팁에 한꺼번에 납땜하였다.

FX SEND는 모든 채널의 것이 섞여서 흘러나온다. SEND 레벨을 각 채널에서 개별적으로 조절할 수 있으니 전혀 문제가 되지 않는다. 또한 이 보조 케이블을 상시 꽂아 두어도 헤드폰으로 재생되는 컴퓨터 소리가 특별히 더 작아지지도 않는다. 기껏해야 470R 저항을 직렬로 연결한 상태이니 말이다.

한 십 년쯤 전에 TAPCO MIX60 믹서를 잠깐 썼을 때에는 조작이 익숙하지 않아서 늘 애를 먹고는 했었다. 자주 써서 몸에 배도록 익히는 것이 정말 중요하다.