좋은 생각들을 써주셨네요. ^^
C++빌더를 사용해본 개발자들이 많이들 갖는 의문이, 왜 이렇게 뛰어난 개발툴이 VC보다 시장 점유율에서 밀리고 있느냐
하는 겁니다. VC에서 할 수 있는 일이라면 C++빌더에서도 똑같이 할 수 있으면서도, RAD 기반의 빠른 개발까지 가능한
뛰어난 툴이 왜 시장에서는 밀리고 있을까...
사실 기술적인 부분.. 툴 자체에 있어서 C++빌더의 약점은 별로 많지 않죠.
VC를 쓰셨던 경험이 있는 분들은 많은 분들이 에디터가 상대적으로 VC보다 약하다는 점을 지적하시는데, 거의 모든
작업을 코딩만으로 노가다하다시피 해야 하는 VC가 C++빌더보다 에디팅 기능에서 더 발전하는 것은 당연한 거겠죠.
물론 이런 부분들도 수개월 내로 나올 덱스터에서는 획기적으로 개선될 겁니다.
말씀하신 대로 MSDN의 문서와 소스들은 절대로 VC만의 전유물이 아닙니다. C++빌더와 거의 모든 면에서 지존을 겨루는
유일한 툴인 델파이가 C++빌더보다 뒤지는 부분이 바로 그런 부분이기도 하구요. 비단 MSDN뿐만 아니라, 델파이에서는
언어라는 단 한가지 측면 때문에 대부분 C/C++로 공개되는 각종 여러 벤더들에서 나오는 API들을 그대로 쓸 수 없습니다.
일단 헤더를 델파이 소스로 컨버팅해야 하는데.. 필요한 회사, 개발자마다 개별적으로 작업하다보니 잘못된 부분이 있는지
검증되지 않은 채로 그냥 사용하기도 하고 또 중복되는 노력이 상당합니다. 거꾸로 C++빌더에서는 델파이 소스를 그대로
쓸 수 있으니 정말 대단한거죠.
그러면 이제 왜 C++빌더가 점유율면에서 VC를 앞서지 못하고 있느냐... 면에서요.
물론 MS에 있어서 비주얼스튜디오 전략은 개발툴 자체의 전략이 아니라 플랫폼 전략의 일환으로 막강한 자금력으로
홍보를 밀어붙이고 있다는 점은 너무나 잘 알려진 이유이고 또 근본적인 원인이기도 합니다. 학교나 교육기관에서 MS툴만
가르치고 있다든지 하는 부분들은 모두 2차적인 문제이겠지요.
그런데 여기서 제가 추가로 지적하고 싶은 것은 볼랜드 자신의 실책.. 그러니까 'C++빌더'라는 이름 자체, 그러니까
개발툴의 브랜드의 문제입니다. C++빌더가 나오기 직전까지의 상황을 돌아보지요.
다들 아시겠지만 C/C++ 시대를 먼저 개척하고 선점했던 것은 마이크로소프트가 아니라 볼랜드였습니다.
터보C와 볼랜드C++의 초기 버전까지, 마이크로소프트는 전혀 볼랜드의 적수가 되지 못했었죠.
그랬던 것이 윈도우 시대로 넘어오면서, 프레임워크의 문제가 C++ 툴 선택의 우선순위가 되면서 많은 C++개발자들이
비주얼C++로 넘어갔습니다. 불행히도 이 시기가 여러가지 부분에서 볼랜드의 최대의 위기였기 때문에 볼랜드는 마이크로
소프트의 공세에 충분히 맞서지 못했고, 96년에 출시된 볼랜드 C++ 5.0을 끝으로 사실상 C++ 툴 시장을 접었습니다.
모든 소프트웨어 제품들에 있어서 점유율에서의 우세를 유지하게 해주는 것은 강력한 기능의 추가보다는 인터페이스의
유지입니다. 한마디로 하위호환성이죠. 리눅스가 윈도우를, 스타오피스가 MS 오피스를 뒤집지 못하는 이유가 그겁니다.
개발툴에 있어서는 유저인터페이스보다는 프로그래밍 인터페이스가 관건이 되는데, 여기서 프로그래밍 인터페이스는
풀어서 말하자면 라이브러리/프레임워크입니다. 이런 프로그래밍 인터페이스 면에서 볼랜드가 C++ 툴에서 가지고 있었던
우위는 절대적이었습니다.
볼랜드 계열과 MS 계열의 도스 시절에 C/C++ 프로그래밍 인터페이스는 ANSI/ISO로 표준화된 일부 서브셋을 제외하면
호환되는 부분보다 호환되지 않는 부분이 훨씬 많았으니까요. 윈도우 시대로 넘어면서 완전히 새로 공부해야 한다는
개발자들의 공감대가 없었다면, C++ 시장의 주도권이 마이크로소프트로 넘어가는 것은 불가능에 가까웠거나 적어도 훨씬
긴 시간이 걸렸을 것입니다. '어차피 새로 공부해야 하는데'라는 인식에, 'OS를 개발한 업체의 프레임워크가 더 낫지
않겠느냐'라는 선입견까지 작용했습니다.
게다가 볼랜드 C++ 5.0이 출시된 시기가 96년이라는 점도 영향이 큽니다. 아시다시피 IT 시장에서 도스를 완전히 걷어내고
윈도우 세상으로 만들어버린 결정타는 윈도우95였습니다. 윈도우95 출시 이전까지만 해도 윈도우3.1보다는 도스 기반의
프로그램이 압도적으로 더 많았죠. MS는 코드명 시카고였던 윈도우95가 출시되기 전부터 대단한 공을 들였고, 공을 들인
이상의 선풍적인 인기를 끌었을 뿐만 아니라 소프트웨어 시장 전반의 동향을 바꿔버렸습니다. 사실 개발자들에게도 뿌리
깊은 MS불패 신화를 뇌리에 심어준 것도 윈도우95였죠. 사실 이후로 98이나 2000, XP 등 다른 OS들은 모조리 조연에
불과합니다. UI, 성능, 안정성 등에서 조금씩의 개선은 있었지만 95처럼 세상을 바꾸는 제품은 95 이후로는 없었습니다.
(열렬한 MS 옹호론자들은 롱혼이 95와 같은 엄청난 혁신을 일으킬 거라고 믿고 있는 거 같지만, 제 생각은 다릅니다)
그런데 볼랜드 C++ 시리즈에 있어 윈도우95 지원이 시작된 버전이 96년에 출시된 마지막 버전이었던 5.0이었습니다.
MS가 윈도우95 출시 이전부터 오랫동안 공을 들여온 것에 비하면 늦어도 너무 늦었죠. 볼랜드 C++ 4.0 시절만 해도
볼랜드 C++과 비주얼 C++은 팽팽한 경쟁을 하고 있었는데, 윈도우95가 출시되고 불과 1년밖에 안되는 사이에 대세는
완전히 비주얼 C++로 넘어가버린 겁니다. 그 1년이 소프트웨어 업계에 있어 전무후무한, 가장 숨가쁘게 세상이 바뀌었던
시기였기 때문입니다.
개발자들은 그 1년을 기다려주지 않았습니다. 비주얼 C++로 넘어간 개발자들도 많았고, 또 많은 개발자들은 델파이로
넘어갔습니다. 델파이 초기의 기록적인 히트는 델파이 자체가 뛰어난 작품이었던 탓도 있지만 볼랜드 C++ 개발자들이
델파이로 많이 넘어갔던 탓도 있습니다. (물론 터보파스칼/볼랜드파스칼 개발자들은 당근이지요)
지금 생각해보면, 볼랜드가 윈도우95 지원에 늦었던 것은, 다른 이유도 있었겠지만 델파이의 등장과도 무관하지 않을 듯
합니다. 제 기억으로 델파이가 처음 출시된 것이 95년 11월이었는데, 출시 1년 가까이 전부터 나돌던 베타 등을 통해
이미 많은 기대를 받고 있었습니다. 아마도 94년 하반기 정도부터 95년에 볼랜드는 델파이의 출시를 위해 모든 전사적인
개발 여력을 다 동원했던 것이 아닌가 싶습니다. 다른 이유가 있었다고 하더라도 볼랜드가 윈도우95 지원에 있어 1년이나
늦어진 이유를 다르게는 설명하기가 힘들지요. 델파이1 조차도 윈도우3.1용이었죠. 윈95 지원은 2.0부터 시작되었고요.
지금 다시 돌아보면서 생각해보면, 그 몇년 동안 볼랜드가 델파이에 치중하면서 C++에 소홀했던 것은 전략적으로 큰
실수였습니다. 델파이는 정말 뛰어난 툴이고 또 볼랜드를 회생시킨 1등공신이기도 한데다, C++빌더의 모태이기도 하지만
다른 업체에서는 전혀 다루지 않는 파스칼 언어를 내세운 델파이가 볼랜드의 대표 상품이 되면서 볼랜드라는 브랜드의
이미지는 '개발툴 시장의 선두주자'에서 '마이너 개발툴 업체' 정도로 바뀌어갔습니다.
저는 C++빌더 개발자이면서 동시에 델파이 개발자이기도 하기 때문에 C++빌더에 대한 애정만큼 똑같이 델파이도 사랑
하지만, 이 점은 분명히 짚고 넘어가겠습니다. 90년대중반까지 '볼랜드'라는 브랜드의 이미지는 분명히 마이크로소프트와
동격이거나 그를 뛰어넘는 명실상부한 개발툴 시장의 메이저였습니다. 그리고 이 강력한 이미지는 터보파스칼로부터
볼랜드 파스칼, 그리고 델파이로 이어지는 파스칼 제품군으로부터 나온 것이 아니라, 터보C/볼랜드C++ 등 C/C++ 제품군
으로부터 나온 것입니다. 1년만 지나면 강산이 변한다는 IT 업계에서, 단종된지 10년째가 된 지금도 터보C와 볼랜드 C++을
분명하게 기억하는 개발자들이 대부분이라는 점이 그것을 반증하는 것입니다.
C++빌더가 처음 출시된 것은 97년이었습니다. 여러가지 상황상 그보다 빨리 출시하기는 어려웠을 겁니다.
하지만 새로운 브랜드로 경쟁하기에, 97년이라는 시기는 정말 늦은 시기였습니다. 윈도우95가 출시된 후 그 2년간이
소프트웨어 업계가 가장 눈부시게 성장하고 또 변화한 중요한 시기였는데, 볼랜드는 사실상 그 2년을 잃어버린 거죠.
그렇게 늦게 출시한 점을 감안하면, C++빌더는 이름을 'C++빌더'라는 전혀 새로운 이름이 아니라 이전의 브랜드인
볼랜드 C++을 그대로 갖고 가는 편이 나았습니다.
왜 새삼스럽게 이름가지고 시비냐구요. 먼저, 시기적으로 너무 늦었기 때문에 새로운 제품명을 붙임으로써 메이저를 쫓아
가기가 어렵습니다. 차라리 볼랜드 C++ 6.0이라는 이름을 사용함으로써 잘 알려진 '볼랜드C++' 브랜드를 이어가는 것이
나았을 겁니다. 그랬다면 적어도 지금까지도 툴 이름을 한번도 들어보지 못한 C++ 개발자들은 없었을 것이고, 전혀 새로운
툴이 아닌 과거의 왕자였다는 점을 금방 이해시킬 수 있었을 겁니다.
또 한가지, C++ 개발자들에게 '빌더'라는 이름의 이미지가 나빴습니다. 이미 시장에서 인지도가 꽤 있었던 파워빌더를
연상시켰습니다. 아시다시피 파워빌더는 디비 전용 개발툴로는 대단히 편리한 툴이지만 범용 개발툴로서는 모자란 부분이
한두가지가 아닙니다. '빌더'라는 이름을 붙임으로써 순수 C++이 아니라 C++의 흉내만 낸 RAD툴이라는 현실과는 동떨어진
이미지를 심어준 겁니다. 물론 볼랜드는 MS의 '비주얼'이라는 이미지에 대적할 브랜드를 필요로 했다고 짐작할 수 있지만,
어쨌든 결과적으로는 C++빌더라는 생뚱맞은 브랜드는 얻은 것보다는 잃은 것이 더 많았습니다. 그렇다고 볼랜드 C++의
후속버전이라고 소개하기 위해 정식으로 '볼랜드 C++빌더'라는 이름으로 부르면 기억하기에 너무 길기도 하고 BCB라는,
브랜드 면에서 별로 좋지 못한 황당한 약자가 나오기도 합니다. (한국어로 부를 때 C++빌더가 욕을 연상시키는 점도 언급
하고 싶군요)
요약해보자면, 시기적으로도 늦게 출시된 데다가 적절하지 못한 브랜딩을 하면서 그 출발부터 C++빌더는 첫발을 잘못
디뎠습니다. 역시 볼랜드 C++이라는 브랜드를 그대로 쓰는 편이 나았습니다. 물론 마이크로소프트는 마이크로스프트 C++
에서 비주얼 C++로 브랜드를 바꾸면서 성공적인 결과를 얻었지만, MS C++이 볼랜드 C++보다 평판이 좋지 않았기 때문에
MS로서는 '높은 생산성'을 상징하는 '비주얼'이라는 브랜드로 바꾸면서 엄청난 성공을 거둔 겁니다. 반면에 볼랜드는
'볼랜드 C++'이라는 브랜드가 '메이저'라는 좋은 이미지를 유지하고 있는데다가 출시 시기면에서 늦은 점까지 고려한다면
'C++빌더 1.0'라는 전혀 새로운 브랜드가 아니라 '볼랜드 C++ 6.0'를 쓰는 편이 훨씬 나았던 것입니다.
아, VC에 대한 개발자들의 막무가내식 선호 추세에 대해 한가지 더 지적하자면, VC의 '비주얼'이라는 이름이 준 사기성
이미지도 짚고 넘어가야겠습니다. '비주얼'이라는 이름은 MS가 비주얼베이직에서 써먹어보고 특효를 경험하고 나서 92년
마이크로소프트 C++의 이름을 바꾼 것입니다. 저도 92년에 비주얼C++이 나왔을 때, 바로 그 1년쯤 전에 출시되었던
비주얼베이직의 RAD를 상상하고 잔뜩 기대를 품고 처음 접했다가 황당함을 금치 못했었습니다. 한마디로 이름에 속은
거죠. 마이크로소프트 C/C++과 비주얼 C++의 역사를 한줄기로 엮어놓고 보면, 제 기억으로는 비주얼 C++ 1.0이 MFC을
처음 소개한 버전도 아니었고 윈도우 프로그래밍이 처음 가능했던 것도 아니었습니다. MS C++을 비주얼C++이라고
이름을 바꿀 이유가 아무것도 없었다는 겁니다.
뭐... 지나간 일은 지나간 일일 뿐입니다. 바꿀 수 있는 것도 아니고, 지금 아쉬워 해봤자 도움될 것이 없겠죠.
중요한 것은 앞으로이니까요.
저번에도 한번 쓴 적이 있지만, 저는 곧 출시될 덱스터의 이름에 주목하고 있습니다.
작년 11월에 출시된 델파이2005부터 이미 델파이 뿐만 아니라 C#을 포함한 통합 언어 개발툴이 되어있는 상태이고,
이번에 출시될 덱스터에서는 C++빌더까지 포함하게 되기 때문에 델파이라는 이름으로 계속 부른다는 자체가 어페가
있습니다. 무장(?) 면에서 비주얼스튜디오와 완전히 동등한 위치가 된 덱스터는 볼랜드 스튜디오라고 이름을 바꾸는
것이 적절합니다. 이것도 역시 브랜딩의 문제인데... 계속 전체 툴 이름에서 델파이라는 이름을 고집한다는 것은 부적절할
뿐만 아니라 스스로 갖춘 능력을 감추는 결과가 됩니다.
실제로도 덱스터의 정식 이름을 델파이로 가지 않을 가능성이 적지 않아 보입니다. 수개월 이내에 덱스터가 출시될 텐데,
아직도 볼랜드에서는 공식적으로 델파이2006이라는 이름을 쓰지 않고 계속 덱스터로만 부르고 있습니다. 또 전에도 알려
드렸던 것처럼 덱스터의 프로그램 그룹에서는 전체 IDE 구동 모드 외에도 C++ 전용 모드, 델파이 Win32 모드, 델파이 닷넷
모드, C# 모드 등 총 다섯개의 모드별로 프로그램 아이콘을 생성해주는데요. 만약 스튜디오로 이름을 바꾸지 않고 전체
툴 이름을 델파이2006으로 그대로 간다면 어색한 구성이 됩니다.
브랜드에 대한 이런 생각은 저 혼자만 하고 있는 건 물론 아닙니다.
http://blogs.borland.com/abauer/archive/2004/12/15/2172.aspx
http://mywebpages.comcast.net/daorriss/archives/2005_01_09_index.html#110538535253875985
저는 덱스터가 볼랜드의 파워를 다시 보여줄 획기적인 개발툴이 될 거라고 생각하고 있습니다.
불과 수개월이면 덱스터가 출시될 것입니다. 조금만 기다려봅시다.
좋은 툴이 역사의 뒤안길로 사라져간다는 것은 안타까운 일 입니다.