Offcanvas

개발자 / 애플리케이션 / 인문학|교양

'아폴로 11호 vs. 모바일 앱' 옛날처럼 코딩할 수 없는 이유 5가지

2020.02.21 Peter Wayner  |  InfoWorld

함수가 핵심이다

당시에는 버튼을 한두 픽셀 위로 옮겨야 할지 고민하는 디자인 위원회가 없었다. 앱 로딩 화면, 이동하는 아이콘, 배경 명암, 수백만 개의 글꼴이 없었다. IBM은 1961년이 되어서야 글꼴을 변경할 수 있는 셀렉트릭을 출시했다. 

현재 프로그래머는 HTML, CSS, SVG 등의 훌륭한 표준과 React나 Vue 같은 수백만 줄의 라이브러리를 활용할 수 있지만 자체적인 표준도 준수해야 한다. 아폴로 11호의 우주비행사들은 우주선이 여전히 빛나고 있다는 사실에 만족할 뿐이었다. 녹색의 명암과 같은 세부 디자인에 신경 쓰지 않았다.     
 

움직이는 부품이 적었다

기계 엔지니어는 움직이는 부품(가동부)이 많을수록 복잡하다고 본다. 달 착륙선의 운항 컴퓨터는 한 가지 매우 중요한 기능을 담당했다. ‘위치 추적’이었고, 그게 전부였다. 반면 스마트폰은 동시에 수많은 작업을 수행하는데도, 경솔하고 무심한 대중은 이를 당연하게 생각하고 ms 안에 응답이 없으면 앱을 삭제해 버린다. 

이 모든 복잡성이 가중된다. 그렇다. 자동화된 코드, 잘 정의된 API, 끝없는 라이브러리 덕분에 프로그래머는 CI/CD 파이프라인에 있는 마법의 요정이 대부분 작업을 하도록 할 수 있지만, 복잡성은 여전하다. “Hello World”만 출력하는 고(Go) 앱이 1.7 버전으로 컴파일되자 바이너리 크기가 1.6MB였는데, 이 소식에 Go 세상은 전율했다. 이전의 2.3MB보다 바이너리 크기가 30% 줄어들었기 때문이다.

아아작 뉴턴이 남긴 명언 “거인의 어깨 위에서”를 생각해 보자. 현재 프로그래밍은 가장 불안한 정신 상태의 치어리더팀이 쌓은 인간 피라미드 꼭대기에 아슬아슬 서 있는 느낌이다. 물론 아래로 갈수록 더 무겁게 지탱하고 있지만, 무너질 듯한 꼭대기에서 균형을 잡는 것만으로도 인정받을 만한 기술이다.
 

변호사로부터의 자유

필자의 계산에 따르면, 아마존 클라우드에서 가상 컴퓨터를 대여하기 위한 기본 서비스 조건을 설명하는 단어는 2만 2,000개이다. 또한 웹사이트를 사용해 가상 컴퓨터를 임대 받는 서비스 조건은 완전히 다르다. 그 외, 각 상품의 고유 서비스 조건이 있는 경우가 많다. 스타트업 비즈니스를 지원하는 액티베이트(AWS Activate) 프로그램을 예로 들 수 있다. 이들을 모두 합쳐보니 달 착륙선 컴퓨터의 ROM에 있는 3만 6,000개의 명령어보다 훨씬 길다. 

아폴로의 프로그래머는 “우주에서는, 아무도 나의 비명을 들을 수 없다”는 유명한 어록을 탄생시킨 우주 배경의 영화 ‘에일리언’이 나올 줄 몰랐지만, 우주에서는 교통사고를 낼 염려가 없으니 구급차를 쫓는 변호사를 걱정할 필요가 없다는 사실을 잘 알고 있었다. 만일 변호사가 개입했다면, 현대 프로그래머를 당황케 하는 모든 법적 문제를 털어낼 수 있는 재량 면책의 법리라는 아름다운 도구가 있다.  editor@itworld.co.kr
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
Sponsored
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.