컴퓨터 코딩의 문제를 버그(bug)라고 부르게 된 두 가지 유래
코딩도 테스팅과 디버깅이라는 퇴고의 과정이 있다. 테스팅과 디버깅 모두 프로그램 개발 시 가장 중요한 과정이다. 코딩을 하면서 프로그램을 수시로 돌려보고 내가 의도한 대로 프로그램이 돌아가는지 면밀히 확인해야 한다. 개발자라면 반드시 수행해야 하는 과정이다.
디버깅을 통해 고쳐야 하는 결함이 버그라고 불리게 된 몇 가지 유래가 있다. 과거에는 진공관을 컴퓨터 회로에 사용했다. 그래서 진공관의 불빛을 보고 컴퓨터 안으로 들어와 죽은 벌레(bug)가 자주 생겨났고, 이로 인해 컴퓨터가 오작동하는 경우가 발생했다고 한다. 컴퓨터 관리자들은 해당 벌레를 제거하는 방식으로 문제를 해결했다. 그래서 이 해결 과정을 디버깅(debugging)이라고 표현하게 됐다는 것이다.
또 다른 유래는 최근에 CACM이라는 컴퓨터 잡지에 실린 이야기다. 이 잡지에서는 전화기를 발명한 벨이 자기 회사의 전화기 시스템을 홍보하면서 발생한 문제를 버그(bug)라고 표현한 것에서부터 시작이 됐다고 한다. 전화기 시스템이 가지고 있는 문제를 결함(defect)이라고 표현하면, 고객들에게 좋지 않은 인상을 줄 수 있다. 그래서 벨은, 버그라는 친숙한 단어를 통해 발견한 문제를 사소한 것으로 표현하는 방법을 선택했다. 벌레를 발견하면 언제든지 쉽게 잡을 수 있듯이, 벨이 만든 전화기 시스템의 문제도 벌레를 잡는 것과 같은 가벼운 것이며 쉽게 고칠 수 있다는 것을 표현하려고 했던 마케팅적인 이유가 있었던 게 아닐까 싶다. 이런 식으로 본인 회사의 전화기 시스템 문제를 가볍게 만들어서 고객이 구매 결정을 빨리 내릴 수 있도록 유도할 수 있었다. 하지만 벨은 말년에 과거를 회상하면서, 시스템의 문제를 사소한 것으로 표현하기 위해 버그라고 불렀지만, 실제로는 간단한 문제가 아니어서 매우 괴로워했다고 한다. - 258p. ~ 260p.
성공하는 프로그래밍 공부법 / 박재성, 고종범. 남재창, 박지현 /로드북
'책' 카테고리의 다른 글
장애와 맞바꿔 능력을 얻었다는 데서 ‘익스체드’ - 마녀와의 7일 (1) | 2024.11.02 |
---|---|
인생의 터닝 포인트가 되는 것. 여행과 정리 (2) | 2024.10.24 |
회복 탄력성은 긍정적인 마인드에서 나온다. (2) | 2024.10.13 |
완벽함을 버리고 작은 것부터 시작해서 성공하라 (1) | 2024.10.12 |
황금 티켓 증후군, 스스로 무너지는 대한민국 (1) | 2024.09.19 |
댓글