✍️ 글

MVC 창시자가 말하는, MVC의 본질

아마도 소프트웨어 개발에서 가장 유명한 패턴 중 하나일 MVC(Model-View-Controller) 패턴에 대해서 초기에 어떤 아이디어로 해당 패턴이 만들어졌는지를 설명한 글.

유저의 멘탈 모델과 컴퓨터가 데이터를 가공하고 처리하는 방법이 매우 다르기 때문에 이를 모델과 뷰로 분리하고, 이를 연결하는 장치로서 컨트롤러를 설계했다는 사실을 알 수 있습니다.

구글 WASM 팀을 그만 둔 이유

구글에서 WebAssembly 스펙을 작성하는 팀에서 일하던 저자가 어떻게 일을 그만두게 되었는지에 대한 글

WebAssembly 프로젝트가 너무 복잡하고 여러 이해관계자(Mozilla, Google, …)가 얽혀있다보니 의견 조율이 매우 어려웠는데, 이를 해결해줄 매니저가 없이 엔지니어가 일을 떠맞게 되면서 지속적인 스트레스를 받았다고 합니다.

자바스크립트의 역사를 다룬 책 을 보면 다양한 관계자가 얽힌 언어의 스펙을 만들어간다는 것이 정말 어려운 일이라는 것을 알 수 있는데요. 거기가 빅테크의 복잡한 체계까지 얽혀 한 명의 엔지니어에게는 굉장히 힘든 일이었지 않나 싶습니다.

📌 북마크

Annotated PyTorch Paper Implementations

머신러닝 논문의 파이토치 구현체를 코드 단위에서 한 줄 한 줄 논문의 어떤 부분에 해당하는지 어노테이션을 달아놓은 사이트. 당연하지만 논문의 수가 아주 많지는 않은데, 유명한 논문의 구현체를 뜯어볼 일이 있다면 유용하게 사용할 수 있을 듯 합니다.

📰 기술 뉴스

Github: Math support in Markdown

깃헙에서 마크다운 파일을 작성할 때 이제 MathJax 라이브러리를 사용하여 수식을 나타낼 수 있습니다.

사실 “왜 안 되지?” 싶은 기능이었는데, 드디어 깃헙에서 공식적으로 지원하게 되었네요.

⚙️ 소프트웨어 / 프로젝트

PyScript

PyConUS 2022에서 Anaconda가 공개한 HTML에 파이썬을 임베딩할 수 있는 라이브러리.

CPython을 WebAssembly로 컴파일해서 브라우저 환경에서 실행하는 것 자체는 Pyodide와 CPython 3.11 (알파) 에서 지원하고 있는데 PyScript는 좀 더 하이레벨에서 쉽게 프로그램을 작성할 수 있게 돕는 라이브러리입니다.

image

공식 소개글에서 설명하는 위 이미지가 이해하는 데에 도움이 될 듯 합니다.

Memray

블룸버그에서 공개한 파이썬 메모리 프로파일러.회사 내부적으로 사용하고 있던 도구를 오픈소스로 공개했습니다. 긴 시간 동안 실행되는 파이썬 애플리케이션에 대해서 코드의 어느 영역에서 메모리를 많이 할당하고 사용하고 있는지 알 수 있습니다.

한 가지 흥미로운 사실로는 메인테이너 중에 cpython 코어 개발자와 pip 메인테니어가 모두 있네요. 전문성은 확실할 듯합니다.