Passion is like genius; a miracle.

Blog on Software, Statistics, and Quant

Tag: software

  • Google Cloud Workstation vs Codespace

    https://cloud.google.com/workstations?hl=ko#section-7 구글 클라우드 워크스테이션이란 서비스가 ec2 보다 ide 연결해서 쓰기는 훨씬 좋아보입니다. 유휴 시간이 길어지면 자동 종료로 비용 절약하고, 종료뒤 재시작시에는 보안 패치등이 잘 적용된 최신 이미지로 실행됩니다. 홈 디렉토리는 종료와 상관없이 유지됩니다. 다만 gcp 를 직접 사용하는 경우 대비 비용은 높고 (e2 기준 약 2배?) 현재까진 gpu 인스턴스는 없습니다. 비슷한 서비스로 github codespace가 있습니다. […]

  • 간단한 파일 암호화

    개인 파일을 클라우드 등에 저장할때 보안이 걱정된다면 – 예를들어 동기화시킨 윈도우가 해킹 된다거나 – ccrypt가 정말 간편한 툴입니다. 이렇게 간단하게 암호화하고 풀때는 ccrypt -d 파일명으로 합니다.

  • 보고 잘 하는 법

    주니어에서 시니어 엔지니어로 넘어가는 단계에 반드시 익혀야 하는 기술이 보고하는 방법입니다. 그게 잘 안되서 정체가 되는 사람도 있고 하루가 다르게 달라지는 사람도 있습니다. 자리에 앉혀졌기에 크게 달라지는 사람도 있고, 앉혀져도 끝까지 하던데로만 하는 사람도 있습니다. 저는 심지어 주간 회의에 자기가 한일을 “메일을 보냈는데 답이 안와서 다시 메일을 보냈습니다” 라고만 딱 말하는 박사 학위 팀원도 봤습니다. […]

  • 개발자로서 읽어볼 만한 책

    개발자로서 메니저로서 도움이 되었던 책들 적어봅니다. 새로운 프로젝트를 시작할 때, 일이 잘 안풀린다 싶을 때 이런책들을 보다보면 새로운 시각으로 문제를 접근할 수 있었습니다. 서로 다른 시각이 담겨 있기도 해서 다양한 시각을 익히는데도 도움이 되고요.

  • How to cache function output to the disk given pandas obj params

    joblib.Memory doesn’t seem to be performing correct hash computation, so I wrote a ‘cache’ decorator. It considers parameters and the argument values to determine if cached value can be used. As a bonus, this even can consider functions as the arguments. You need to write your own save(), load(), and should_use_cache(). The purpose of should_use_cache() […]

  • 파이썬 positional only, keyword only argument

    https://peps.python.org/pep-3102/ 에 나온 내용입니다. 함수의 parameter 가 길어지다보면 foo(1, 2, ‘bar’, 4) 처럼 position으로 인자를 모두 넘기기보다 keyword argument로 foo(param1=1, param2=2) 형태의 코딩을 사용해야 실수를 줄일 수 있을때가 있습니다. 또는 매개변수가 필수는 아닌 옵션의 성격일 때도 있습니다. 앞서의 PEP는 keyword 형태로 인자를 지정하도록 강제하는 방법으로 문법은 다음과 같습니다. 본래 * 는 개수가 정해지지 않은 가변길이 […]

  • 모바일 크롬 다크모드와 글자 크기 조절

    모바일 크롬과 삼성 브라우저 (삼브)가 웹 페이지를 보여줄 때 큰 차이점은 다크모드가 컨텐츠 영역에도 제공되는지, 그리고 웹 사이트의 설정과 무관하게 글자 크기를 변경할 수 있는지이다. 그 두가지 설정을 크롬에서도 동일하게 하려면 다음과 같이 설정한다 이렇게 두가지를 enable 해주면 된다. 웹 보기가 불편해서 삼브를 써야했던 분들에게 도움이 되기를..

  • ssh-add 를 자동실행하는 방법

    https://unix.stackexchange.com/questions/90853/how-can-i-run-ssh-add-automatically-without-a-password-prompt 에서 다양한 방법을 본 결과 저는 그냥 keychain 쓰기로 했습니다. 맥에서는 ssh config 안에 키체인을 사용하게 자동으로 되서 신경을 안썼는데 chrome os 안의 리눅스는 설정을 해야하는군요. sudo apt-get install keychain 으로 설치한다음 ~/.bash_profile에 다음을 추가합니다. 그러면 재부팅때 마다 실행되면서 패스워드를 단 한번 요청하게 됩니다. 아래는 이미 패스워드가 입력된 상황입니다. 이외에도 ssh-ident 를 쓰는 방법도 […]

  • VSCode 에서 내가 작성한 모듈을 찾지 못해 ModuleNotFound가 나올 때

    여러가지 방법이 있지만 가장 간단한 방법은 내 프로젝트의 루트디렉토리 또는 소스 코드가 있는 디렉토리를 PYTHONPATH에 지정하는 것입니다. settings.json에 다음 라인을 추가합니다. 만약 windows라면 terminal.integrated.env.windows로 지정하면 됩니다. settings.json은 ctrl+p 를 눌러 command palette를 연다음 open user settings 를 검색하면 됩니다. 해당 필드를 업데이트 한 뒤에는 반드시 vscode를 재시작합니다. 이후에는 어떻게 실행해도 내가 작성한 모듈이 잘 보이게 […]

  • 시니어 엔지니어로 넘어가기 위한 기술: 코드 읽기

    쥬니어 시절, 나를 도와주는 시니어 엔지니어들로부터 도움을 받은 일이 많았다. 그 때 어깨너머로 배운 점 중 하나는 그들은 정말 빠르게 문제를 파악하고 해결한다는 것이었다. 이제 나 역시 10년이 충분히 넘어간 경력을 쌓은 시점에서 되돌아보건데 경험이 많은 엔지어는 이런 점이 달랐다. 디버깅 메시지를 볼 줄 알았다. 내가 작업하던 서버들은 덩치가 컸다. 컴파일만해도 수십분이 걸리고 실행하는데도 그만큼의 […]