ENIAC 을 기억하는가? computer의 역사를 보면 항상 등장하는 computer이며 그만큼 친숙한 기계이기도 하다. 진공관으로 만들어져 있으며 Bug 라는 용어가 만들어지게 한 장본인 이기도 하다. 이 컴퓨터는 제 2차대전 때 암호문을 해독하는데 사용되었다는 얘기로 유명하며 크기 역시 유명하다. 이렇게 사용된 진공관은 이후 트랜지스터와 IC로 발전되어 소형화되었고, 보다 고성능을 가지게 되었다. 지금 우리가 사용하는 computer의 원형이 되는 셈이다. 이렇게 초기의 진공관 컴퓨터들이 현재 사용하는 computer의 원형이 되었다면 분명 사용을 위해 programming을 했을텐데, 어떤 방법으로 프로그래밍을 했을까?
천공카드 – 또는 punch Card- 라는 조금 굵은 용지에 구멍을 뚫어서 그걸 ENIAC에 입력하는 방식을 사용했다.
그 당시는 지금처럼 I/O device (키보드나 모니터) 가 발달하지 않았던 시점이기 때문에 그나마 생각할 수 있었던 방식이 천공카드였다. 구멍을 실수로 잘못 뚫는다면 당연히 프로그래밍은 처음부터 다시 진행되어야만 했다. 물론 프로그램 뿐만이 아니라 프로그램에서 처리하게 될 data도 천공카드로 입력했다. 당연히 지금의 방식에 비해 비효율적이던 방법이지만 역사의 초창기는 늘 이렇기 때문이니 그 사람들을 탓하지는 마시기를.
이후 TR(트랜지스터)과 IC(집적회로)의 발달에 힘입어 전자제품업계는 눈부시게 발전했고 그것은 computer업계에도 영향을 미치기 시작했다. 키보드와 모니터가 만들어졌고 이는 computer에서 중요한 장치가 되었다. 그리고 대부분의 분야가 그렇듯이 초기의 컴퓨터는 대학에서 연구용으로 도입되었다.지금처럼 PC의 형태가 아닌 Host-Torminal 의 형태였다. 중앙 전산실에서 Host 서버가 관리되며 접근이 가능한 곳에 Serial 또는 interface를 사용한 Terminal 단말기들이 설치되는 형태였다. 지금은 없어진 “Digital” 이라는 회사의 “PDP”시리즈는 단연 중심이 있었다.
처음의 Programing은 어셈블러였다. 기계어와 거의 1:1의 대응이 되는 어셈블러는 제대로 된 프로그래밍의 초기격이라 할 수 있었다. 이후 Dennis MacAlistair Ritchie 와 Ken Thompson 에 의해 C언어가 만들어졌다. 해커들은 열광했다. C 언어는 강력하며 기계어보다 사용하기에 훨씬 쉬웠다. Berkely 에서는 UNIX를 C를 이용해서 만들기 시작했다. Generc OS 의 시대가 오기 시작했고 C언어의 시대가 오기 시작했다. 효율성을 보다 중시한 프로그래밍이 요구되었으며 당시 컴퓨터의 성능을 생각하면 이는 당연한 상황이었다. 구동에 시간이 오래 걸리는 프로그램을 좋아하는 사람은 없었기 때문이다.
이렇게 Enterprise 환경이 발달하는 동안…(진행중)