엔진 방정식
열역학에서, 엔진은 하나 이상의 형태의 에너지를 기계적인 힘이나 운동으로 변환하는 기계이다. 소프트웨어에서 엔진의 정의는 더욱 모호해진다. 엔진은 복잡한 소프트웨어 시스템의 핵심 구성 요소이다. 예를 들어, 일부 요소가 두 개 이상의 프로그램에 사용되는 경우 해당 구성 요소를 재사용 가능한 라이브러리로 패키징하면 그게 엔진이다. 근데 엔진을 조금 더 잘 정의할 수 있을까?
나는 엔진을 자산과 시간을 들여 효용으로 바꾸는 수학 방정식으로 정의한다.
엔진은 자원과 시간을 소비하여 다른 유용한 자산으로 변환한다. 여기서 유용함이란, 마치 정보의 정의가 단순히 유용한 데이터이듯, 전적으로 인간의 관점에서 주관적이다. 몇 가지 예를 들어보자.
- 경제는 노동, 자본, 천연자원, 시간 등의 자산을 산출물과 서비스로 생산하는 엔진이다.
- 군사 조직은 인력, 장비, 자원, 시간 등의 자산을 보안과 안전의 효용으로 생산하는 엔진이다.
- 정부는 세금, 노동 및 천연 자원과 시간 등의 자산을, 교육, 의료 및 인프라와 같은 재화와 서비스로 생산하는 엔진이다.
- 기업은 자본, 노동, 천연자원과 시간 등의 자산을, 판매할 수 있는 상품이나 서비스로 생산하는 엔진이다.
- 대학은 교수진, 직원, 학생, 자원과 시간 등의 자산을, 교육 및 연구 성과물을 생산하고 직업 전망 개선, 높은 수준의 비판적 사고 및 문제 해결 능력의 효용으로 생산하는 엔진이다.
이 정의가 흥미로운 점은, 엔진은 서로의 내부에서 재귀될 수 있는 단순한 함수라는 것이다. 이것은 아이작 아시모프의 심리역사학(통계적 분석을 사용하여 많은 사람들의 행동을 예측하고 역사의 흐름을 예측하는 전략을 개발하는 가상의 과학)과 연결된다. 우주는 시간이 지남에 따라 큰 집단의 집단적 행동에 따라 작동하는 일종의 엔진의 엔진(메타-엔진)이다.
결국 우주는 연쇄-엔진-나무일 뿐이며, 여기서 최초 입력은 빅뱅이고, 최종 출력은 열이다. 궁극적으로, 물리적인 의미에서 엔진은 엔트로피가 흐르는 경로일 뿐이다.
신성한 엔진은 영원한 질서를 규정한다. 모 든 것은 신성한 엔진에서 흐르고, 모든 물건과 모든 승객은 제자리에서, 모든 것을 흘려보내는 것이 그 질서이다... 모든 이들은 이 위치를 지키는 신성한 엔진에 경의를 표하라...
— 설국열차 (2013)