Tag: software

  • 보고 잘 하는 법

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

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

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

  • 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년이 충분히 넘어간 경력을 쌓은 시점에서 되돌아보건데 경험이 많은 엔지어는 이런 점이 달랐다. 디버깅 메시지를 볼 줄 알았다. 내가 작업하던 서버들은 덩치가 컸다. 컴파일만해도 수십분이 걸리고 실행하는데도 그만큼의…

  • 트위터

    어느덧 이제 블로그를 한지 굉장히 오랜 시간이지나 얼마나 했는지도 모를만큼 시간이 지났습니다. 다른 모든 개발자 하늘처럼 나는 이제 글도 별로 쓰지 않는데 뭔가 배우는 것이 없어서가 아니라 그냥 글을 쓰지 않기 때문에 글을 쓰지 않고 있네요. 트위터에는 종종 글을 쓰는데 와서 봐 줬으면 좋겠습니다. @Minkoo 입니디.

  • typing.NamedTuple

    파이썬의 typing, types를 보면 신기한 것들이 많이 추가되고 있다. 최근 @golbin 님으로부터 배운 것중 하나는 NamedTuple. 파이썬 3.7부터는 @dataclass라는 annotation으로 가능해진다. 혹시 -> float 부분이 뭐지 싶으신 분은 Type Hints를 참고하시길.