책 소개: 마크 비트먼의 『How to Cook Everything』

20세기 후반부터 21세기 초반에 이르는 요리 문헌의 역사는 단순한 레시피의 나열을 넘어선, 가정 요리(home cooking)의 패러다임 전환을 목격했다. 줄리아 차일드(Julia Child)가 프랑스 요리의 엄격한 기술을 미국 가정에 도입하며 ‘미식(gourmet)‘의 시대를 열었다면, 마크 비트먼(Mark Bittman)은 그 엄격함을 해체하고 요리의 본질적 즐거움과 접근성을 회복시키는 데 주력했다. 그의 저서 『How to Cook Everything』(1998)은 단순한 요리책이 아닌, 현대 미국 가정 요리의 지형을 바꾼 ‘주방의 바이블’로 자리 잡았다.

[Read more]

Java to Go: #4. 동시성: Goroutine과 Channel

Go의 동시성 모델은 Java와 근본적으로 다르다. Thread, synchronized, ExecutorService에 익숙한 개발자라면 처음엔 낯설겠지만, Go의 방식이 얼마나 우아한지 금방 알게 될 것이다. “공유 메모리로 통신하지 말고, 통신으로 메모리를 공유하라"는 Go의 철학을 이해해보자.

[Read more]

Java to Go: #3. 에러 처리와 Null 안전성

Java 개발자가 Go를 배울 때 가장 큰 패러다임 전환이 필요한 부분이 에러 처리다. try-catch에 익숙한 우리에게 if err != nil의 반복은 처음엔 원시적으로 느껴진다. 하지만 이 방식에는 명확한 철학이 있다. 이번 편에서 그 철학을 이해하고, Go 방식의 에러 처리에 익숙해져 보자.

[Read more]

Go to Rust: #9. 비동기 프로그래밍

Rust의 async/await 는 Go의 goroutine과 근본적으로 다른 접근 방식입니다. Go는 런타임이 모든 것을 관리하지만, Rust는 명시적인 비동기 모델을 사용합니다. 이 섹션에서는 Rust의 비동기 생태계와 Tokio 런타임을 학습합니다.

[Read more]

Go to Rust: #6. 에러 처리

Rust의 에러 처리는 Go와 철학적으로 유사합니다. 두 언어 모두 예외(exception)를 사용하지 않고 명시적인 에러 반환을 선호합니다. 하지만 Rust는 타입 시스템을 통해 에러 처리를 강제하여, Go에서 흔히 발생하는 “에러 무시” 문제를 원천 차단합니다.

[Read more]