Author: byun1114

  • devpi 설치하기

    파이썬에서 PIP로 설치할 때에도 역시 서버에서 패키지를 읽어온다. 어떤 이유던지 간에 반복적으로 설치를 해야할 경우 네트웍의 부하가 발생하므로 부하 감소 및 설치 시간 단축을 위하여 미러 서버를 알아 보았다. 많이 사용하는 것은 devpi 인 것 같다. PIP로 설치를 해야 하므로 Python과 PIP를 설치한다.

    # sudo apt install python3 python3-pip

    다음에는 devpi를 설치한다.

    # pip install devpi-server

    다음에는 devpi-init 로 초기 작업을 수행한다.

    root@316de82ccf07:/# devpi-init
    INFO  NOCTX Loading node info from /root/.devpi/server/.nodeinfo
    INFO  NOCTX generated uuid: 5554de437dc84dedbbe1979040af5047
    INFO  NOCTX wrote nodeinfo to: /root/.devpi/server/.nodeinfo
    INFO  NOCTX DB: Creating schema
    INFO  [Wtx-1] setting password for user 'root'
    INFO  [Wtx-1] created user 'root'
    INFO  [Wtx-1] created root user
    INFO  [Wtx-1] created root/pypi index
    INFO  [Wtx-1] fswriter0: commited at 0
    

    마지막으로 devpi-server를 실행한다. 모든 요청에 대하여 응답할 수 있도록 0.0.0.0 으로 설정하였다.

    root@316de82ccf07:/# devpi-server --host=0.0.0.0
    2021-11-01 17:11:09,293 INFO  NOCTX Loading node info from /root/.devpi/server/.nodeinfo
    2021-11-01 17:11:09,294 INFO  NOCTX wrote nodeinfo to: /root/.devpi/server/.nodeinfo
    2021-11-01 17:11:09,324 WARNI NOCTX No secret file provided, creating a new random secret. Login tokens issued beile option to provide a persistent secret. You can create a proper secret with the devpi-gen-secret command.
    2021-11-01 17:11:11,537 INFO  NOCTX devpi-server version: 6.2.0
    2021-11-01 17:11:11,537 INFO  NOCTX serverdir: /root/.devpi/server
    2021-11-01 17:11:11,537 INFO  NOCTX uuid: 5554de437dc84dedbbe1979040af5047
    2021-11-01 17:11:11,537 INFO  NOCTX serving at url: http://0.0.0.0:3141 (might be http://[0.0.0.0]:3141 for IPv6)
    2021-11-01 17:11:11,537 INFO  NOCTX using 50 threads
    2021-11-01 17:11:11,537 INFO  NOCTX bug tracker: https://github.com/devpi/devpi/issues
    2021-11-01 17:11:11,537 INFO  NOCTX IRC: #devpi on irc.freenode.net
    2021-11-01 17:11:11,537 INFO  NOCTX Hit Ctrl-C to quit.
    2021-11-01 17:11:11,541 INFO  Serving on http://0.0.0.0:3141
    

    이제 클라이언트에서 이 devpi 서버 쪽으로 패키지를 요청하도록 한다. HTTPS를 이용하지 않을 경우 –trusted-host 를 지정하지 않으면 설치가 되지 않는다.

    root@d7ec45a78430:/# pip3 install --trusted-host my.dongtan -i http://my.dongtan:3141/root/pypi/+simple/ pandas
    Looking in indexes: http://my.dongtan:3141/root/pypi/+simple/
    Collecting pandas
      Downloading http://my.dongtan:3141/root/pypi/%2Bf/10e/10a2527db79af/pandas-1.3.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.5 MB)
         |████████████████████████████████| 11.5 MB 2.0 MB/s
    Collecting pytz>=2017.3
      Downloading http://my.dongtan:3141/root/pypi/%2Bf/367/2058bc3453457/pytz-2021.3-py2.py3-none-any.whl (503 kB)
         |████████████████████████████████| 503 kB 11.5 MB/s
    Collecting python-dateutil>=2.7.3
      Downloading http://my.dongtan:3141/root/pypi/%2Bf/961/d03dc3453ebbc/python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
         |████████████████████████████████| 247 kB 7.6 MB/s
    Requirement already satisfied: numpy>=1.17.3 in /usr/local/lib/python3.9/dist-packages (from pandas) (1.21.3)
    Collecting six>=1.5
      Downloading http://my.dongtan:3141/root/pypi/%2Bf/8ab/b2f1d86890a2d/six-1.16.0-py2.py3-none-any.whl (11 kB)
    Installing collected packages: six, pytz, python-dateutil, pandas
    Successfully installed pandas-1.3.4 python-dateutil-2.8.2 pytz-2021.3 six-1.16.0
    
  • 까라마조프 씨네 형제들

    까라마조프 씨네 형제들

    도스토예프스키의 마지막 장편 소설인 ‘까라마조프 씨네 형제들’ 혹은 ‘까라마조프 가의 형제들’을 보았다. 무협지가 아닌 장편 소설이 그렇듯 앞 부분은 꽤 전개가 느린 부분이 있다. 분량상 보통 이 책은 3권으로 분할하여 되어 있다. 그리고 전재가 빨라지는 부분은 ‘하’편이다.

    유명한 대목인 ‘대심문관’에 대한 구절도 앞부분에 있다. 그리고 진리에 대한 1000조km 걷기에 대한 부분은 뒷편에 있다. 그리고 사실 앞부분 이야기가 요약되면서 검사와 변호사가 재판장에서 각자의 주장을 하는 부분이 있다. 분명히 대부분 앞에서 언급된 사실을 바탕으로 말하고 있다. 그럼에도 불구하고 상반된 둘의 입장에서 말이 맞는 소리를 하고 있다. 변호사에 휘둘리는 방청객들도 꽤 보인다. 당시 재판하는 모습을 반영하고 있을 것이라고 보면, 검사의 주장, 변호사의 주장을 듣고 배심원들이 판단하는 부분이 상당히 있는 것 같다. 배심원들이 유죄라고 판단하고, 형량에 대한 것을 언급하지 않는 것을 보면 그것은 판사의 역할인 것 같기도 하다. 읽다보면 첫째 형이 탈옥할 것처럼 전개가 되어서 진짜로 탈옥하는 부분이 언급되는 것으로 생각할 뻔 했다. 그런데, 실제로 탈옥 과정을 준비하고 설명하는 과정만이 언급될 뿐 실제로 탈옥하는 부분은 전혀 언급이 되지 않는다. 마지막 부분은 장례식으로 마무리되는데, 이것은 괜찮은 마무리가 아닌가 싶다.

    제대로 이 책을 이해하려면 관련 지식도 좀 있어야 할 것 같고, 이 책을 분석하는 글들도 좀 읽어봐야 할 것 같고, 여러번 읽어봐야 할 것 같다.

    한 사람이 이 책을 썼나 싶을 정도로 여러 사람의 이야기가 잘 녹아 있는 명작이라고 할 수 있을 것 같다.

  • 투자용 소액 환전

    해외 주식 투자를 할 때 환전하는 방법은 크게 2가지가 있다. 은행 창구에 가서 상담한 결과를 정리해 보면 다음과 같다.

    • 급하게 많이 필요하면 송금 보낼때가 가장 저렴하다. 쉽게 말하면 전신환이다.
    • 급하지 않고 많이 필요하면 90% 환전 수수료 우대를 받고 현찰 환전 후 1주일 이후에 투자 계좌로 이체하는 것이다. 하지만, 외화 이체 수수료가 발생한다.
    • 그러면 현찰 환전해서 증권회사 계좌에 직접 입금하면 안되냐고 물을 수 있는데, 신한금융투자 달러용 계좌는 온라인만 된다. 그렇지 않다고 하더라도 평일 업무 시간에 그 만큼의 시간을 비워야 하는데 그게 더 수수료가 나간다.

    그렇다면 급하지 않은 소액 투자용 외화를 환전하는 방법은 현찰 환전과 전신환 사이 어디쯤이 될 것이다. 그것을 계산해서 확인해 보도록 하자.

    우선 현찰로 환전할 때를 생각해보자.

    • 미국 달러의 경우 현금 스프레드(수수료)는 1.75%이다.
    • 우리은행에서 90% 수수료 우대를 받는다고 하면 1.75% * (1-0.9) = 0.175%의 스프레드 적용을 받는다.
    • 즉, 매매 기준 환율보다 0.175% 큰 환율로 환전을 한다는 뜻이다.
    • 외화 이체 수수료를 고려해야 하므로 환전금액에서 2500원을 미리 빼두고 환전한다.
    • 그러면 (한국돈 – 2500) / (1.00175*기준환율) 만큼 달러로 바꿀 수 있다.

    신한금융투자에서 환전할 경우는 다음과 같다.

    • 보통 전신환은 1%의 스프레드가 일반적이다.
    • 신한금융투자는 수수료 우대가 없는 것 같다. 그래서 1% * (1-0) = 1%의 스프레드 적용을 받는다.
    • 기준 환율보다 1.01% 큰 환율로 환전을 한다는 뜻이다.
    • 한국돈 / 1.01*기준환율 만큼 달러로 바꿀 수 있다.

    그러면 같은 달러로 바꾸게 되는 한국돈은 얼마인지는 일차 방정식으로 간단하게 풀 수 있다.

    (한국돈 – 2500) / (1.00175*기준환율) = 한국돈 / 1.01*기준환율

    이걸 계산하면 30만 6천 60원임을 알 수 있다. 이보다 작은 돈은 전신환 환전이 저렴하고, 큰 돈은 현찰 환전이 유리하다. 증권사마다 환율 수수료 우대를 해주는 경우가 있는데, 그거 따지다가는 끝도 없다.

  • RRSO

    RRSO

    10년쯤 전에 쓴 글이다. 다시 읽어보니 너무 철없이 쓴 부분들이 있어서 수정해 보기로 한다.

    주로 유방암 환자들에서 BRCA 유전자 검사가 급여가 되는 경우는 다음과 같다.

    가. 유방암이 진단되고 환자의 가족 및 친척(3차 관계 이내)*1)에서 1명 이상 유방암, 난소암*2), 남성유방암, 전이성 전립선암, 췌장암이 있는 경우
    나. 만 40세 이하에 진단된 유방암
    다. 만 60세 이하에 진단된 삼중음성 유방암
    라. 양측성 유방암
    마. 유방암과 함께 난소암*2) 또는 췌장암이 발생한 경우
    바. 남성 유방암
    사. 난소암*2)
    *1)「나580 유전성 유전자검사 일반원칙」참고
    *2) 상피성 난소암으로 난관암과 원발성 복막암이 포함됨. 단, 조직학적으로 순수 점액성 난소암은 제외.

    유방암에서 BRCA 돌연변이가 발견된 경우 다른 장기들 상태도 평가한다. 그리고 예방적 목적으로 양측 난소 난관 절제술을 시행받을 수 있다. 그래서 이 수술의 이름이 RRSO(Risk-reducing salpingo-oophrectomy)이다. RRSO를 시행할 경우 어떻게 육안 검사를 시행해야 하는지 제시한 논문이 있다.

    기본적인 Guideline은 1996년에 University of California San Francisco (UCSF) Comprehensive Cancer Center 에서 열린 Gynecologic Oncology Program 에서 나왔다고 하며, 그 내용을 인용한 논문이다.

    Rabban JT, Krasik E, Chen LM, Powell CB, Crawford B, Zaloudek CJ. Multistep level sections to detect occult fallopian tube carcinoma in risk-reducing salpingo-oophorectomies from women with BRCA mutations: implications for defining an optimal specimen dissection protocol. Am J Surg Pathol 2009; 33: 1878-85.

    어떻게 해야하는지에 대한 논문은 인용 논문을 찾아보면 사진으로 이해가 쉽도록 설명하고 있다.