본문/내용
1. 저는 하드웨어를 어떻게 정의해 왔는가
저에게 하드웨어는 납땜과 회로도의 합이 아니라, 불확실성을 물리적으로 줄이는 설계의 언어였습니다. 기능이 구현되는 순간은 소프트웨어가 화면에 표시될 때가 아니라, 신호가 정해진 시간에 정확한 전압 레벨로 도착하고, 전원이 요구 전류를 흔들림 없이 제공하며, 온도가 허용 범위를 벗어나지 않는 조건이 확보되는 순간이라고 믿습니다. 그래서 저는 하드웨어를 배울수록 손재주보다 습관이 더 중요하다는 것을 깨달았습니다. 측정 결과를 있는 그대로 기록하는 습관, 원인을 추정할 때 가설을 분리하는 습관, 회로도 한 줄을 바꿀 때 제조와 검증까지 영향을 계산하는 습관, 그리고 실패한 결과도 재현 가능하게 남겨 다음 사람이 같은 구덩이에 빠지지 않게 하는 습관이 결국 성능을 만든다고 생각합니다.
대학에서 처음 보드가 동작하지 않았던 날을 아직도 기억합니다. 전원은 들어오는데 MCU가 부팅되지 않았고, 저는 코드만 붙잡았습니다. 하지만 문제는 코드가 아니라 전원의 기동 시퀀스와 리셋 타이밍에 있었습니다. 오실로스코프를 제대로 읽는 법을 배우고, 리셋 라인의 풀업 저항 하나가 시스템 전체의…