루비 vs PL/I

Posted by 大山 Fri, 17 Nov 2006 17:53:00 GMT

최근에 한 시중 은행의 전산망을 총괄하시는 부장님을 만나뵐 기회가 있었다. 일반 엔터프라이즈 환경이야 특별히 궁금할 것도 없지만, 엔터프라이즈 중에서도 가장 보수적이라는 은행의 전산망 인프라는 예전부터 궁금해했던 참이라 신나게 이것저것을 여쭤볼 수가 있었다.

여기서 질문 하나. 은행의 전산실에서 주로 쓰이는 프로그래밍 언어는 무엇일까?

자바? 땡!

C++? 땡!

정답은 PL/I과 COBOL이다.

올해 초에 한 네덜란드 PL/I 개발자와 작업을 같이 한적이 있는데, 사실 그전까지는 나도 PL/I이라는 언어가 있는지도 몰랐었다. PL/I은 1960년대 초에 COBOL과 Fortran의 역할을 하나의 언어에서 해결하기 위해 IBM에서 만든 언어로, 은행의 전산실에서 PL/I이 많이 쓰이는 것은 아마도 IBM 메인프레임이 아직도 많이 사용되기 때문인 듯.

여기서 질문 하나 더. 왜 은행에서는 아직도 유닉스 서버 대신에 메인프레임이 사용되는 것일까?

답: 유닉스 서버는 다운이 잘되서.

윈도우에 비하면 철옹성같아 보이는 유닉스도 은행의 기준에서는 다운이 잘되는 편이라니, 할말을 잃었음. 최근에는 유닉스도 충분히 안정적이라는 판단이지만, 아직은 업체들의 지원 수준이 미덥지 못하다고 한다.

이번에는 다소 쉬운 질문. 은행에서 주로 사용되는 데이터베이스 서버는?

답: 오라클이 대세. Sybase도 가끔 눈에 띄는 정도. DB2는 찾아보기도 힘들다고.

1959년에 나온 COBOL과 1964년에 나온 PL/I이 아직도 지배하는 은행의 전산실, 과연 이곳에 변화의 기미는 없을까? 그렇지만은 않다고 한다. 요새는 PL/I 인력이 전혀 양성되지 않는 이유로 신규 인력은 모두 내부적으로 교육을 하는데, 요즘의 젊은 개발자들은 PL/I을 배우길 꺼려한다고.

Web 2.0이다 Ajax다 해서 나날이 변해가는 웹 개발에 비하면, 조선시대 만큼이나 먼 옛날의 기술이 아직도 점령하고 있는 은행의 전산실이지만, 시스템 안정성을 최우선하는 그곳의 보수적인 문화에서 배울 점도 적잖이 있었다. 데스크톱 애플리케이션이 다운되듯이 전산망이 다운된다면 큰일일테니 말이다. ;)

나의 루비 이야기에 아직도 프로그래밍 언어에 그만한 발전의 여지가 남아 있었냐고 놀라워 하시던 그분도 루비의 계보가 Lisp과 Smalltalk로 이어진다는 말에는 곧 고개를 끄덕이셨다. 언어는 달라도 SQL을 사용해서 데이터베이스 프로그래밍을 하는 것은 크게 다르지 않아, 레일스의 생산성이 어떻게 가능한지를 설명하는 것도 생각보다 어렵지는 않았다.

반세기에 가까운 기술의 간극에서 이런 대화가 가능하다는 것이 기술이 얼마나 빨리 변하는지를 웅변해 주는 듯한 느낌이다. 뭐 이미 루비로 구현된 신용카드 결제 모듈도 여럿 있는데, 언젠가는 은행의 전산실에서 루비가 쓰이는 것도 아주 꿈만은 아닐지도. :)

Posted in  | Tags , , ,  | 8 comments | no trackbacks