Fail on certain Moon Phases
- 달의 위상에 따라서 동작이 변하는 프로그램들에 대한 짧은 이야기
- MIT의 사례: 서브루틴의 아웃풋이 80-width 텍스트인데, 달의 위상에 따라 80자보다 길어질 때가 있어서, 이 경우엔 두번째 줄까지 overflow 되는데 이로 인해서 프로그램이 장애를 겪음
- CERN의 사례: 달의 위상에 의해 만유인력에 따라 지구의 모양이 변하면서, 입자가속기(LHC)가 물리적으로 살짝 변경되고, 이로 인해 측정치가 다르게 나오는 문제를 겪음
Down by Tubes
한 회사에서 티켓 발권 시스템을 개발함. 이후 윈도우 95가 출시되고, 여기에 그 소프트웨어를 설치해서 판매했음. 그런데 이 시스템을 사용하는 로컬 가게에서 자꾸 서버가 꺼진다는 제보를 받고 James 가 출동함. "시스템이 이제 정상작동합니다". 10분 뒤 "시스템이 고장났어요", 그리고 잠시 후 "이제 다시 잘 작동해요". James 는 아무것도 하지 않았기 때문에 당황했음. 알고보니, 10분만에 등장하는 3D 화면 보호기 (튜브들이 이리저리 이어지는... 여러분이 기억하는 그것) 가 CPU 를 100% 먹고 있던 것. 이걸 disable 해서 문제 해결.
Crash Bandicoot
- PS1 용 게임인 Crash Bandicoot 을 개발하던 중, 어쩌다 한 번씩 메모리카드에 save & load 할 때 데이터가 모두 깨지는 문제가 발생했음. 오만가지 게임 요소를 stub 으로 대체하고도 동일 현상이 일어나서 좌절하다가, 결국 하드웨어 이슈임을 알게 됨. 이 게임에선 클락을 임의로 1KHz 로 조절해두었는데, 이 세팅이 데이터 전송량 컨트롤러 (baud rate controller) 에 간섭을 일으키고, 이 때 PS1 컨트롤러를 사용하면서 메모리카드에 읽고 쓰는 데이터가 꼬이게 된 것.
Car Allergic to Vanilla Ice Cream
- 바닐라 아이스크림을 살 때만 자동차 시동이 안걸리는 현상을 목격. 알고보니 바닐라 아이스크림은 인기 상품이라 다른 아이스크림과 달리 카운터 앞쪽에 배치되어 있었고, 그로인해 다른 아이스크림보다 훨씬 일찍 자동차로 돌아왔고, 엔진 과열 (Vapor Lock) 을 겪은 차를 보게 된 것. 다른 아이스크림은 늦게 받았기 때문에 엔진이 충분히 냉각될 수 있었음
시간 날 때마다 몇 개 씩 요약해 보려고 합니다.