C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[10125] 보여드린 것을 보지 못하셨나봅니다.
박지훈.임프 [cbuilder] 2273 읽음    2004-11-24 15:00
김대우님께서는 아무래도 제 글을 보시는 마음과 자신의 글을 보시는 마음의 자세가 일치하지 않으신 것 같습니다. 제 용어선택을 언급하시고 과격하다는 표현까지 쓰셨는데, 저는 감정에 받쳐서 글을 쓰고 있는 것도 아니고 김대우님을 격퇴할 적으로 생각하고 김대우님의 틈새를 찾고 있는 것도 아닙니다. 그런 생각을 가지고 제 글을 보셨다면, 적어도 바로 이전의 글과 지금 이 글은 차분하게 다시 봐주시길 부탁드립니다. 그리고 혹이라도 제가 어떤 생각을 가지고 있는지에 대해 다시 오해를 하실지 몰라서, 이제부터는 조금이라도 오해의 여지가 있을 것 같은 부분이 있으면 괄호로 주석을 달겠습니다. 별도로 주석을 달지 않은 부분은 쓴 그대로가 진심이니 오해하시지 말아주시기 바랍니다.

자신이 다른 사람에게 어떻게 비추어지는지 모르거나 혹은 알더라도 혼자서만 아니라고 우기는 상황은 좀 슬프죠.
물론 저 혼자만의 생각일 수도 있습니다만, 적어도 김대우님이 가장 최근에 쓰신 두 글은 스스로 친 MS라고 말하고 있는 것처럼 생각이 되는데, 김대우님 스스로는 아니라고 생각하신다는 말이군요. 특히 오늘 새벽인가에 쓰신 글은 마치 마이크로소프트의 기업용 브로셔를 보는 듯 합니다. 자연스럽게 쓰신 글에서 브로셔와 같은 표현들이 서슴없이 나오는데 스스로 친MS가 아니라고 말씀하시니 재미있습니다. 하지만 아니라고 하시니 아니라고 믿어드리겠습니다.
(이부분은 좀 비꼬는 느낌이 있습니다만 믿겠다는 결론은 진심입니다)

제가 친MS나 반MS라는 말들을 거론했다고 해서, 제가 의도적으로 개발자들을 분열시키고 MS로부터 등을 돌리게 만들려는 의도를 가지고 있다고 생각하시는지요. 저는 모든 개발자들이 그렇다는 말은 한적이 없습니다. 그런 느낌을 가지게 하려는 의도도 없었다고 생각되는데요. 그렇게까지나 확대해석을 하시니 어안이 벙벙할 뿐입니다. 저는 제가 반MS라고 했고 친MS적인 분들도 있다고 말씀드렸을 뿐입니다. 저희 오프모임에 와보셨습니까? 아마도 김대우님은 제가 했던 말을 대폭 확대해서 이런 모습을 상상하신 듯 합니다. 술잔을 마주보고 개발자들이 양 진영으로 갈려서 N:N 설전을 벌이는 모습이라든지요. 확실히 말씀드리건대, 전혀 비슷하지도 않습니다. 즐겁게 토론한다는 말씀까지 드렸는데도 말이죠..


말씀하신 대로 "최소의 비용, 최소한의 시간, 최고의 솔루션으로 손쉽게, 최고의 프로젝트를 성공적으로 완수하는 사람"이 최선의 개발자입니다. 당연한 상식을 굳이 거론하시는 이유를 모르겠습니다. 그게 반MS적인 개발자인 저에게는 해당되지 않는 거라고 말씀하시는 건지....? 아하! 반MS적인 저라는 사람은 MS의 제품은 선택하지도 사용하지도 않을 것이라는 생각을 하신 듯 하군요. 정말 엄청난 오해를 하고 계신데요.

국산품을 애용하자는 사람들은 모두 중국산 볼펜이나 미국산 고기 안먹습니까.
김대우님의 안티 개념은 좀 저급한 극단적 경우들만을 생각하시는 듯 합니다. (비꼬는 것처럼 들리시겠지만 진심입니다)

이런 사례를 말씀드리죠. 말씀하신 것과 비슷하게 예를 들어보지요. A와 B라는 개발툴이 있습니다. A라는 개발툴은 시장에서 점유율이 대단히 높습니다. B 개발툴을 개발하던 사람이 스카웃되어 전체를 싹 뒤엎어준 덕분에 이전에 단점으로 지적되던 성능의 문제도 꽤 개선되고 해서 A 개발툴의 사용자는 날로 늘어가고 있었습니다. 다만, 그 싹 뒤엎는 과정에서 이전 버전과의 호환성은 조금 무시되었습니다. 하지만 그래도 A 개발툴의 개선점을 높이 평가하는 사람이 더 많아서 A 개발툴의 점유율은 날로 높아만 갑니다.

반면에 B 개발툴의 장점은 강력한 기능과 확장성입니다. 과거에 한때는 A 개발툴을 압도하기도 했습니다만 주인공격인 개발자가 스카웃되고 나간 직후에 혼란을 겪기도 하고 버그가 많은 버전을 내놓기도 하면서, A 개발툴이 인기를 얻는 사이 적지 않은 개발자들이 B 개발툴을 떠나갔습니다. 그중 많은 사람들은 A 개발툴로 옮기기도 하고 또 일부는 플랫폼간 호환성이라는 새로운 강점을 내세운 제3의 언어로 옮겨가기도 했습니다.

그런데 아쉽게도 A 개발툴을 판매하는 회사는 개발툴을 전문으로 하는 회사가 아닙니다. 플랫폼과 기타 제품들이 주력이지요. 그래서 A 개발툴 회사에 있어 개발툴이란 플랫폼 전략에 따라 얼마든지 뜯어고칠 수 있는 것이지 그 자체만을 위해 시장에 내놓는 것이 아닙니다. 이 회사가 마침 기존의 플랫폼의 컨셉을 버리고 새로운 플랫폼 전략을 세우게 되었습니다. 이 회사에 있어 주력은 개발툴이 아니라 플랫폼이기 때문에 엄청나게 많은 개발자들이 사용하던 A 개발툴은 플랫폼 전략이 바뀜에 따라 하루아침에 다시 뒤엎어지게 되었습니다. 새로 만들어진 A' 개발툴은 그전의 A 개발툴과 비슷한 점은 많지만 일단 A 개발툴의 소스도 제대로 호환이 되지 않고 공부도 처음부터 다시 해야 합니다. 게다가 A' 개발툴은 이전 플랫폼은 아예 지원을 안한다고 선언해버립니다. 아직도 필드에서 뛰는 개발자들은 이전 플랫폼 작업을 많이 하는데도 말입니다.

반면 B 개발툴의 상황은 거꾸로 가고 있습니다. 적지 않은 시간이 지나면서 지금까지 잘 알려지지 않았던 B 개발툴의 새로운 장점이 조금씩 부각됩니다. 그것은 호환성입니다. 이전 소스가 컴파일이 되지 않는 상황은 거의 발생하지 않습니다. B 개발툴을 만든 회사는 개발툴이 주력인 개발툴 전문회사이기 때문에 개발자만을 위한 개발툴을 만들어왔습니다. 최근 들어 B 개발툴도 A 회사의 새로운 플랫폼을 지원하는 제품을 내놓기 시작했습니다. 한번의 실수를 거쳐, 이 회사에서는 기존의 B 개발툴을 완전히 리뉴얼한 B' 개발툴을 출시합니다. 놀랍게도 B' 개발툴에서는 새 플랫폼 뿐만 아니라 기존의 플랫폼을 위한 개발도 할 수 있습니다. 게다가 기존 소스들에 대한 호환성을 최대한 보장해준 덕분에, 새 플랫폼으로도 소스를 일부만 수정하고도 그대로 돌릴 수 있게 되었습니다. 매번 개발자에게 새로 공부할 것을 강요하는 A 개발툴과는 전혀 정반대의 행보인 것입니다. 아직 전투는 끝나지 않았습니다.

김대우님께서는 시장 점유율만이 모든 것을 보여준다는 듯이 말씀하십니다. 그 어렵다는 마이그레이션을 마다않고 마이그레이션을 했다면 당연히 그만한 가치가 있다는 판단이 있었을 것은 분명합니다. 그런데, 그래서 어떻다는 것인지? 점유율이 높으니까 다른 모든 것을 대변한다는 말씀이신지요? 점유율이 높으면 당연히 문제가 전혀 없고 표준도 다 지킨다는 말씀이십니까? 말씀하시는 논리가 좀 심하게 점프를 하는군요.

제가 SQL 서버이기 때문에 그런 문제가 생긴다, SQL 서버만이 문제덩어리라고 한 적 있습니까? 반MS적인 저를 더욱 반MS라고 몰아붙이시는군요. 그것도 제 입장에서는 꽤 부당한 논리로요. SQL 서버를 사용하지 말자는 의도로 글을 쓰고 그렇게 선동한 것처럼 느끼시나보지요? 전혀 사실과 다를 뿐더러 억울해 미치겠습니다. (홱 돌아버리겠군요) 몇번을 반복해서 써야 알아들으실런지요.

제가 반MS이기는 하지만 제가 MS에 반대하는 이유는 SQL 서버나 윈도우 때문이 아니라 거의 개발툴 정책 때문입니다. 그러니까 괜히 엄한 사람 누명 씌우지 말아주세요. 제가 SQL 서버를 쓰지 말자고 선동할 일이 있다면(그럴 일이 실제로 있을 지도 모르겠습니다만) 비겁하게 그런 뒤통수 때리기식 선동은 안합니다. 목에 칼이 들어오고 등짝에 파이프가 떨어져도 비겁한 짓은 못하는 사람이 접니다.


다음으로, 저희 튜닝 사례에 대해 말씀하신 내용.
먼저 논지가 약해진 것이 아니라 김대우님이 너무 전투적으로 나오셔서(지난 주말 사이에 쓰셨던 글의 원문을 말하는 겁니다), 논쟁을 난투극으로 만들지 않고자 최대한 자극적이지 않게 쓰려고 노력한 겁니다. (기분이 나빠지려고 합니다만 노력중입니다)

해당 소스를 올려서 내기를 해보자는 식으로 쓰하셨는데, 아주 잘못 짚고 계십니다. 제가 ACID 위반이라고 한 건과, 트랜잭션이 많아서 100%를 쳤다는 건은 완전히 별개의 건입니다. 같은 시스템 안이기는 하지만 전혀 연관성이 없습니다. 지금 다시 제가 썼던 글들을 찬찬이 다시 봐도 그렇게 오해할 건덕지가 없는데 도대체 어떻게 그렇게 생각하고 계신지 이해가 안되네요. 또 제가 말을 바꾼다 어쩐다 그런 말부터 하시지 마시고 제가 썼던 글을 다시 읽어보세요. ACID 위반이라고 했던 건에 대해서 그 트랜잭션이 대단히 자주/많이 발생한다는 말 한적 없습니다. 오히려 그 인서트 작업은 하루에 아무리 많아봤자 100건도 발생하지 않습니다.

그리고, 제안하신 테스트 방법도 DBA 답지 않으시게 엉뚱하십니다. (약간 비꼬는 기분으로 쓴 말입니다) 테스트를 하면서 그게 부하문제다 싶으면 테스트 서버에서 그 해당작업만 뚝 떼어서 부하를 10배 정도로 더 올려서 돌려보면 재현이 되던가요? DBA가 아닌 개발자인 저도 DB가 전체가 하나의 시스템이지 결코 개별적으로 떼어서 성능 테스트 등을 할 수 있는 것이 아니라는 정도는 압니다. 만약 이런 황당한 테스트 방법을 제안하신 목적이 이런 걸 당연히 아시면서도 의도적으로 절 놀리기 위해 써보신 거라면, 전 아주 기분이 나빠질 것 같은데요. (진심입니다)


다음으로, C++ 관련에 대해 더 말해보겠습니다.

악성루머의 출처가 어디냐고 물으셨었죠? 그래서 오늘 아침에 제가 답변글을 쓰기를 그 근거는 사실이라고 말씀드렸습니다. 그런데도 사실의 근거가 뭐냐고 되물으시는데, '사실'이란 것을 어떤 것으로 생각하시는지 제가 보여드린 것을 보지 못하신 듯 합니다(약간 비꼬는 투). VC 6가 사실상의 표준이 정해진 이후에도, 복잡한 것도 아닌 상식적인 표준을 지키지 못하는 두가지 예를 보여드렸습니다. 그리고 두가지 모두 당시의 대부분의 다른 컴파일러에서 이상없이 동작했다고 말씀드렸습니다. 사실 자체를 보여드렸는데 사실의 근거를 내놓으라니 난감하네요. (비꼬는 투입니다)

두번째로, 제가 표준이라고 한 것은 98년에 확정된 ISO C++ 스펙만을 말씀드린 것이 아니라고 말씀을 이미 드렸습니다. 그게 저만의 생각이 아니라 일반적인 공감대였다는 점도 말씀드렸습니다. 그런데 그게 그걸 출처불분명이니 믿지 못하겠다고 나오시면 저도 대략 난감하네요. 94년에 출간된 입문서에조차 템플릿이 설명되어 있고 for문에서 루프 변수의 스코프에 대해 언급이 되어 있습니다.

물론 제가 ISO C++ 98과 현실상의 표준을 섞어서 언급한 부분이 좀 있어서 혼란이 될 수 있는 부분도 있습니다. 그런데 아주 복잡한 용어와 표현을 동원한 어려운 글도 아니고, 게다가 길이도 길지도 않고, 무슨 뜻인지 충분히 이해가 되실만하다고 생각되는데 여지없이 오해를 해버리시는군요. (상당히 비꼬는 투입니다)


이번 글을 맺으면서.
각 글마다 말로는 자제를 하신다고 하십니다만 김대우님은 너무 전투적이십니다. 보고 있기가 심하게 불편했던 저번 글은 논외로 치더라도, SQLER에 와서 정식으로 사과하라... 설혹 제가 100% 잘못 알았다고 하더라도 기술 논쟁의 결과로는 너무 가혹하시군요. 혹 저와 비슷한 위치에 계신 김대우님께서는 그렇게 다른 사이트에 가서 그런 방식으로 사과를 해보신 적 있으십니까? 아무리 봐도 저를 꺾고야 말겠다는 의지로밖에는 생각되지 않습니다.



김대우 님이 쓰신 글 :
: 안녕하세요. SQLER의 코난 김대우 입니다.
:
: 오늘 아침은 정말 상쾌하네요. 오늘은 그동안 미뤘던 어떤 책을 한권 아침 지하철에서 마무리 했기
:
: 때문에 그런지도 모르겠습니다.
:
: "연금술사"라는 책이였는데요. 구도를 향한 한 사람의 여행을 그린 많은 것을 생각하게 하는
:
: 그런 책이였습니다. 혹시 못 보셨다면 꼭 봐 보십시요. 지훈님이 잃어버린 것을 찾으실 지도 모르겠습니다.
:
: --------------------------------------------------------------------------------------------
:
: 제가 지훈님께 그렇게 저는 C++를 모르니 배려를 해 주십사 부탁을 드렸습니다만...
:
: 지훈님의 용어 선택과 과격한 글을 보니 제가 혹시 실수를 했나 긴장도 됩니다. ㅎㅎㅎ
:
: 그럼 시작해 볼까요?
:
:
: 흠... 우선 제가 질문 드린 내용이 뭐였는지도 까먹었습니다. 장황하네요. 에고공...
:
: 지훈님 글이 제 질문의 요지와는 틀려지게 길어지고 논지에 벗어나니 저까지 뭐가 뭔지 정신 없네요.
:
: 제가 지훈님을 위해 일부러 질문 에는 << >> 까지 쳐 두었는데요...
:
: 저는 C++을 잘 모릅니다라고... 말씀을 드렸는데 아주 재미있는 글을 적어 주셨네요. ㅎㅎㅎ
:
:
: 아마도 지훈님의 시각처럼 "반MS", "친MS"를 나누는 분에게는 다르게 보였는지 모르겠습니다.
:
: 제 홈페이지에 봐 보시면 MS SQL 서버 강좌가 있고 그 아래에 오라클 강좌도 있습니다.
:
: 분명히 DBMS업계의 상당부분을 점유하는 대형 업체입니다. 이 두가지를 모두 저는 강좌로 제공합니다.
:
: 자, 제가 반MS, 또는 친MS 처럼 느껴 지십니까? 그럼 지훈님의 논리대로라면
:
: 저는 반MS입니까? 친MS입니까? 앞에서 그렇게 제가 길게 말씀 드리면서
:
:
: 제발 우리 개발자들 만이라도 서로를 나누거나 편가르지 맙시다.라고 그리 말씀 드렸건만...
:
:
: 그렇게 우리를 반MS, 친MS라는 이름 하에 둘로, 셋으로 나누고 싶으십니까?
:
:
:
: 1. 태어나지도 않은 뱃속의 아이 욕하기.
:
: 지훈님의 말씀대로 지훈님의 "말씀"이라고 하셔도 좋습니다.
:
: 저의 "악성루머"는 저같은 반MS도, 친MS도 아닌 사람의 시각입니다.
:
: 이미 앞에 글에서 부탁 드린다고 말씀 드렸네요.
:
: 지훈님처럼 반MS인 사람의 시각에서는 "사실"이라는 단어로 표현 되는군요.
:
: 좋습니다. "사실"이 출처입니까?
:
:
: 지훈님처럼 말장난 하시는 분을 위해 다시 여쭙니다.
:
:
: 지훈님이 말씀하시는 그 반MS 사람들의 "사실"의 근거가 어디, 또는 누구입니까?
:
: 제가 어렵게 예를 들었는데 생각과 상식이 있는 볼랜드사가 그런 일을 할리가 없지요.
:
: 자 이제 질문 성립 합니까?
:
: <<<지훈님과 같은 우리를 반으로 나눠버린 반MS사람들이 생각하는 "사실"의 근거가 어디, 또는 누구입니까?>>>
:
:
: 2. 두번째 질문의 답은 이미 은연중 내포하셨네요.
:
: 지훈님이 쓰신 글 :
:
: "그런데, 물론 지금까지도 100% 표준을 준수하는 C++ 컴파일러는 없는 것처럼 ... "
:
: 이상합니다... 즉, 지훈님이 말씀 주신 대로라면... 모든 C++ 컴파일러는 ANSI/ISO표준을 완벽히
:
: 따르지 않는다?
:
: 50여줄 정도 되는 글을 쓰시면서 "표준"이란 단어를 20번 가까이 입에 달고서 표준을 안지키면 그건 X도 아니다라고 말씀 하신게
:
: 지훈님이였습니다. 항상 표준속에서 사시는 분이라고 생각 했습니다. 그런데 이상하네요...
:
: 그럼 세상 모든 C++ 컴파일러는 지훈님의 말씀대로 <<<<태어나지도 않은 뱃속의 아이 욕하기>>>>
:
: 입니까? 혹시 태어나지도 않은 뱃속의 아이 욕하기에 Borland C++ Builder도 포함됩니까?
:
: 볼랜드 C++ Builder를 대변하시는 분이고 볼랜드 C++ Builder의 사용자를 대변하는 분이라고 들었습니다.
:
: 지훈님이 직접 자신을 표현할때 위의구문을 쓰시네요.
:
: - 저는 정확한 출처를 지훈님께 제공해 드리겠습니다. 지훈님이 쓰신 글의 URL을 보내 드릴 수 있습니다.
:
:   지훈님처럼 능숙하게 출처 분분명으로 넘어가지 못하겠네요. 전 반MS,친MS가 아니라 개발자의 시각이니까요.
:
: 그런데 왜 제가 드린 내용중 Borland C++ Builder가 지원 한다 안한다가 아니라..
:
: "그런데, 물론 지금까지도 100% 표준을 준수하는 C++ 컴파일러는 없는 것처럼 ... "
:
: 라는 애매한 말씀을 주십니까? 말장난이 좀 지나치시네요.
:
: Borland를 대변하는 분이 Borland이야기가 나오니 슬그머니 넘어 가십니까?
:
: 그런 식으로 볼랜드 사용자를 "대변"해 오셨습니까?
:
: 볼랜드사의 BC++ builder 차기 버젼이 없는게 이해가 갑니다.
:
:
: 잘 들어 주십시요. 몇번이고 반복해 질문 드릴 수 있습니다.
:
: 반MS, 친MS도 아닌 사람이 다시 한번 여쭤 봅니다.
:
: 쓰기 힘들어서 제가 앞에서 쓴글을 복사해 왔습니다.
:
:
: : 그렇다면 지훈님께 여쭤 봅니다.
: :
: : 1. 이전 글에서 지훈님이 "표준" 이라는 단어를 무척이나 많이 사용 하셨습니다.
: :
: : 정말 엄청나게 많죠? 대충 눈짐작으로 열댓번 이상 언급한것 까지 세고 힘들어서 포기 했습니다.
: :
: : 표준을 항상 염두에 두시는 듯 합니다.
: :
: : 그렇다면 여쭤 봅니다. Borland C++ Builder는 100% ANSI/ISO C++표준을 지원 합니까?
: :
: : 단 하나의 ANSI/ISO C++ 표준을 어기지 않고 모든 표준을 다 그대로 지원 합니까?
: :
: : 전 Visual C++ 잘 모릅니다. Borland C++ 빌더는 더더욱 모릅니다.
: :
: : 제 질문은
: :
: : <<<<Borland C++ Builder는 단 하나의 ANSI/ISO C++ 표준을 어기지 않고 모든 표준을 다 그대로 지원 합니까?>>>
: :
: : 입니다. 간단히 대답 주십시요. 어디와 비교 하는것 조금도 신경 안씁니다.
: :
: : 그냥 예 / 아니오만 해 주세요. 길게 글 써봐야 지훈님도 힘드시지 않습니까?
:
: 자, 위의 두가지 답변 부탁 드립니다. 전 C++잘 모른다는 것을 이해해 주시길 바라며...
:
: 저를 조금이라도 생각하신다면 저같은 일반인을 위해 간단히 "예 / 아니오"로 적어 주십시요.
:
:
: PS. 제 주변 분들은 모두 반MS, 친MS를 떠나 최소한 상대방의 말을 경청 할 줄 아는 사람 뿐입니다.
:
: 누군가 어떤걸 묻는다면 최대한 상대를 배려하지
:
: 곡해하거나 각종 수치자료와 테크니컬한 자료로 상대방을 흔들지 않습니다.
:
: 사실 흔들어도 가끔 보면 안흔들리는 사람 있습니다.
:
:
: 제가 쓴 SQL서버 관련 글은 최대한 지훈님과 일반인을 배려 했습니다. 이정도로 풀어 적었으니
:
: 지훈님도 이해 하신거고 많은 분들이 SQL서버의 문제가 아니라 지훈님의 문제였다는 것을 공감 하시는 거겠죠.
:
: 제가 논지를 자꾸 흐린다고 이야기 하셨는데 이 논의의 글들중 맨 처음 글 제목이 뭡니까? C++ ~~ 입니까?
:
: 제목 한번 다시 봐 보세요. 지훈님이 SQL서버의 버그라고 말씀 주신게 이 글의 시작입니다.
:
: 논지에 벗어나지 않는 지훈님의 성실한, 말장난 아닌 답변을 기다립니다.
:
:
: 박지훈.임프 님이 쓰신 글 :
: : 출근 전에 담배 한대 피우면서 정신이나 차리려고 앉았는데...
: : 너무 길기도 하고 해서 출근해서 시간봐서 답변을 쓰려고 했습니다만, 보다보니 최대한 빠른 시일 내에 답변을 달라는
: : 요구가 있으시니 얼른 그 부분만 쓰고 나머지는 출근 후로 미루겠습니다. 그부분은 비교적 답변이 간단할 것도 같고요.
: : (그 앞 부분들도 참 할 말이 많습니다만 지금은 언급하지 않으려 노력할 생각입니다)
: :
: : "비주얼 C++이 6.0 버전에 이르기까지  표준을 따르지 않았다는 것은 주지의 사실입니다."
: :
: : 제가 한 이 말을 김대우님의 판단만으로 '악성루머'라고 기정사실화하셨네요. 그리고 그 '악성루머'의 출처를 밝혀달라고 하셨는데요. (완전히 피의자 붙잡아놓고 윽박지르는 경찰같으시군요.)
: :
: : 볼랜드를 의심하시기도 하셨는데, 재밌게도.. 제가 아는 한에는 볼랜드는 VC가 표준을 지키는지 마는지에 대해 알지조차 못합니다. 그걸 악성루머라고 부를 수 있다면, 악성루머의 출처는 사실입니다. 겪어본 사람들은 잘 알지요. 오히려 김대우님 주변에 더 많으실텐데요.
: :
: : 앞서도 말했다시피, VC 6는 ISO C++ 공식 발표 직전에 출시된 것은 맞습니다. 하지만 98년 ISO C++ 규정이 처음 발표되기 전에도 C++ 개발자들은 현실에 존재하는 것으로서의 '표준'을 자주 언급했었습니다. 그렇다면 98년 표준이 공식 발표되기 전에 표준을 언급한 모든 C++ 개발자들도 역시 악성루머 유포자입니까?
: :
: : 비교적 후반에 추가된 몇가지를 제외하면 C++ 문법의 대부분은 1989년 C++의 창시자인 스트로스트럽이 발표했던 내용과 똑같습니다. 표준이 없는 십수년동안 수많은 변종 컴파일러들이 출현해서 표준화에 애를 먹었던 C와는 달리, C++의 경우엔 스트로스트럽의 최초안이 사실상 표준안으로 자리잡고 있었기 때문에 템플릿 등 후반에 추가된 문법들 외엔 표준화가 되어 있었다는 말입니다. 그렇기 때문에 C++이 처음 발표된 이후 표준화에 10년 가까이 걸리기는 했지만 그 시기에 C++에 표준이 없다고는 누구도 생각하지 않았습니다.
: :
: : 또 템플릿이 추가되는 과정에서도 ISO 표준화 기구를 통해 정식으로 상정되고 심의되는 과정이 오픈되어있었기 때문에 그것이 표준에 추가될 것이라는 점도 다들 의심치 않았습니다. 그래서 98년 이전에 출간된 C++ 입문서들에도 이미 템플릿 문법을 C++의 일부로 소개하고 있었던 겁니다.
: :
: : 뱃속의 아기를 존재하지 않는다고 무시할 수 없는 것처럼, 태어나지 않았다고 존재하지 않거나 영향력이 없거나 하지는 않다는 말입니다. 오히려 C++ 표준안은 뱃속에 있는 상태에서도 현실적으로는 확정되어 발표된 것과 차이가 없었습니다. C언어의 경우 무수한 변종 컴파일러들로 인해 공식적인 표준안 발표가 엄청난 파장을 일으켰지만, C++의 경우에는 처음부터 스트로스트럽이 업계의 관행을 단속하는 역할을 했고, 따라서 진행중인 표준안을 벗어나는 컴파일러가 출시되는 일도 거의 없었습니다. 그 표준안대로 승인될 걸 다들 알았기 때문에요.
: :
: : 김대우님이 제게 혐의를 두고 있는 것과 같은 '악성루머'를 퍼뜨리기로 유명한 마이크로소프트의 홍모씨가 몇년전에 김대우님과 비슷한 주장을 하셨었는데요. (악성루머의 전형을 거론하고 싶으시다면 홍모씨가 그간 한 언행을 살펴보시죠)
: : VC 6가 표준을 지키지 못한 것은 ISO C++ 표준의 공식 발표가 VC 6 출시보다 이후였기 때문에 당연한 거다, 그런 논리였던 걸로 기억합니다. 만약 김대우님이나 홍모씨의 주장이 맞다면, VC 6가 출시되던 전후의 다른 C++ 컴파일러들도 대동소이하게 표준을 지키지 않았겠군요? 어차피 당시에는 김대우님의 표현처럼 '뱃속의 아기'와 마찬가지로 출생 이전이었다고 주장해버린다면 말이죠.
: :
: : 그런데, 물론 지금까지도 100% 표준을 준수하는 C++ 컴파일러는 없는 것처럼 당시의 C++ 컴파일러들도 제정될 표준안을 다 준수하지는 않았지만, 다른 C++ 벤더들의 경우 표준화가 진행되고 있는 수준을 맞추어나갔고, 최소한 스트로스트럽이 처음 발표한 C++은 다 지켰습니다. 그런데 VC6의 경우 그 정도조차도 아니었다는 말입니다.
: :
: : VC6가 있으시다면 다음의 예를 한번 컴파일해서 실행시켜보시죠. 기본적인 거니까 실행해보시면 뭐가 문제인지 아실 겁니다.
: :
: : #include <stdio.h>
: : int main(int argc, char* argv[])
: : {
: :     for (int i=0; i<10; i++)
: :         printf("%d\n", i);
: :     printf("%d\n", i);
: : }
: :
: : 이 예제에서는 물론 말 그대로 예제이기 때문에 이 문제로 인해 2, 3차적인 복잡한 프로그램 버그가 발생할 수 있는 상황은 넣지 않은 건데.. 실제로 실무 코드를 작성하다보면 이 버그로 인해서 황당한 경험을 겪게 되는 경우가 있습니다. 게다가 이 문제의 경우 이게 VC의 탓이라는 것을 알지 못하면 문제의 원인을 찾기가 정말 어렵습니다. 아주 고약한 경우죠.
: :
: : 또 한가지 유명한 예는 STL 지원입니다. VC 6 버전은 STL 지원에 있어서 타의 추종을 불허하는 최악의 악평을 받는데요. 패치를 않으면 사실상 STL을 쓸 수가 없습니다. 게다가 MS에서 내놓은 패치만으로는 다 해결도 안됩니다.
: : 이건 당연히 VC를 사용하는 개발자분들은 대부분 아는 건데... VC 6에서 STL 한번 써보려다 고생하신 분들이 많다죠.
: : http://www.dinkumware.com/vc_fixes.html
: :
: : 사실 전 VC는 테스트용도 정도로만 사용하기 때문에 이런 문제들에 대해 가장 잘 아는 사람은 제가 아닙니다. C++빌더에서는 존재하지 않는 문제들이기 때문에요. VC를 사용하시는 분들로부터 들은 겁니다. 그것도 아주 많은 분들로부터요. 그 외에도 몇가지 더 있었던 것 같은데.. 주변에 VC6를 사용하셨던 분들이 있으면 더 물어보시면 다들 친절하게 알려주실 듯.
: :
: : 이미 출근시간이 늦었네요. 여기까지만 하고 나중에 더 쓰겠습니다.
: : 시장의 법칙에 대해서 쓰신 것 같은데, 바로 그 시장의 법칙 때문에 제가 반MS인 겁니다.
: : 그렇다고 제가 반 시장주의자이냐하면 그건 아니고, 어쨌든 좀 있다 쓰겠습니다.
: :
: :
: :
: : 김대우 님이 쓰신 글 :
: : : 안녕하세요. SQLER의 코난 김대우 입니다.
: : :
: : : 지난 주 일요일에는 저희 집에서 20분 정도 거리에 있는 백운 호수라는 곳을 와이프와 함께
: : :
: : : 다녀 왔습니다. 아담한 크기의 자연 호수 주변에 드라이브 코스가 있고 주변에 음식점들이 많이
: : :
: : : 몰려 있지요. 와이프와 여유 있게 잠깐 주변을 걷다가 출출해서 약간 허름한 일층으로 된 고추장 화로구이 삽겹살 집에
: : :
: : : 들어가 식사를 하는데 맛있더군요. 고추장 삽겹살이 맛날까 했는데 괜찮은 맛이였습니다.
: : :
: : : 그리고 개인적으로 좋았던건 겨우 삽겹살 7,000원짜리 2인분 시키고 밥한공기 달라고 시키면 보통 가게는 된장찌개
: : :
: : : 안주거나 공기밥을 최소 두개 시켜야 된장찌개 준다고 하는데 밥한공기 시켜도 빈 밥공기 하나 그냥 주시면서
: : :
: : : 여기에 밥 나눠서 맛나게 드시라고 하네요. ^_^
: : :
: : : 이런 분들이 운영하시는 곳이라서 일요일 이른 저녁에도 그렇게 사람이 붐볐나 봅니다.
: : :
: : : 저녁을 머고 이종환의 "쉘부르"라는 카페에선 남궁옥분씨로 보이는 분이 일요일 저녁 게스트였나 본데요...
: : :
: : : (대형 광고판이 카페 밖에...)
: : :
: : : 우리 와이프 말씀이 "저런데는 커피 하나만 시켜도 일인당 만원 넘을껄... 그냥 가자... "
: : :
: : : 와이프 표정에 아쉬워 하는 표정이 역력하네요...
: : :
: : : 다음에 돈을 많이는 아니더라도 조금 여유있게 벌면 꼭 데려가서 라이브 음악 들으며 스테이크까지 먹으렵니다. ^_^;;;
: : :
: : : 그날은 반드시 꼭 오리라 믿습니다.
: : :
: : : -------------------------------------------------------------------------------------------------
: : :
: : : 우선 먼저 답변 주셔서 감사합니다. 먼저 말씀 드리고 싶은 것은 제가 처음 답변글을 쓴 곳에도 맨 아래에
: : :
: : : 적었습니다만...
: : :
: : : 다시 말씀 드리면 기회가 되면 지훈님과 같은 분 뵙고 삼겹살에 참이슬 한잔 따라 드리고 싶습니다. ^_^
: : :
: : : 술, 헤구구, 저 요즘 일주일에 5타 입니다. 와이프가 그러다가 위에 구멍 뚫린다고 아침마다 저에게 이야기 합니다.
: : :
: : : 그래도 지훈님을 위해서라면 언제라도 일주 6타를 뛸 마음의 준비가 되어 있으니 언제라도 말씀 주십시요.
: : :
: : : 그럼 지훈님의 이야기에 대해서 제 이야기를 드리겠습니다.
: : :
: : :
: : : 이번엔 기술 반론 보다 먼저 안타까운 글을 보아서 먼저 안타까움을 풀기 위해
: : :
: : : 지훈님에게 아래 내용에 대한 제 소견을 밝히겠습니다.
: : :
: : : -------------------------------------------------------------------------------------------------물론 저는 반MS적입니다. 하지만 그렇다고 무조건 뭐든지 다 나쁘다라고 몰아붙이거나, MS 망해라 하고 저주를 퍼붓는 막가파식 안티는 아닙니다. 저희 포럼 내에도 상당한 친MS적인 분들이 있는데, 오프모임에서나 온라인상에서나 자주 논쟁을 하기는 하지만 그 논쟁이 감정으로 치달은 적은 단 한번도 없었던 것으로 기억합니다. 오히려 얘기를 주고받을 수록 더욱 더 재밌게 전개되죠. 저는 MS가 보여주는 나쁜 점들에 대해 객관적인 사실과 논거를 제시하고, 또 다른 몇분들은 그에 대해 역시 객관적인 사실과 논거로 반박하고, 그런 식입니다. MS를 두고 서로 반대쪽에 앉아서 몇시간씩 술잔을 부딛히면서 즐겁게 논쟁하는 기분을 이해하실지요. 혹 전혀 이해가 안되신다면 돌파리 정치꾼들이 판치는 100분토론을 너무 많이 본 후유증이라 생각됩니다. ^^ 저는 아마도 영원히 반MS일 겁니다.
: : : -------------------------------------------------------------------------------------------------
: : : 지훈님의 글 대로라면 개발자 분들은 모두 반 Microsoft와 친 Microsoft,
: : :
: : : 또는 양쪽 모두도 아닌 아무 생각없는, 그외의 사람들이라고 생각 하시는 군요.
: : :
: : : 흠...
: : :
: : : 으음...
: : :
: : : 흐으으음...
: : :
: : :
: : : 저의 생각은 그렇지 않습니다.
: : :
: : : 먼저 지훈님께 묻습니다.
: : :
: : :
: : : * 회사의 존재 목적은 무엇입니까? *
: : :
: : : - 모든 회사의 존재 목적은 최소의 비용, 최소의 인력으로 최대의 이윤 창출이 존재 목적입니다.
: : :
: : : 동의 하십니까? 이 목적은 지훈님 회사도 마찬가지일겁니다.
: : :
: : :
: : : 저의 생각은 <<이 세상의 모든 우리 개발자들은 한 종류의 사람들>>이라고 생각 합니다.
: : :
: : :
: : : 최소의 비용, 최소한의 시간, 최고의 솔루션으로 손쉽게, 최고의 프로젝트를 성공적으로 완수하는것이 바로 개발자.
: : :
: : :
: : : 자 어떻습니까? 우리는 모두 한종류의 개발자들 입니다. 여기가 우리의 논의의 시작점입니다. 최소한
: : :
: : : 전 그렇게 생각 했습니다.
: : :
: : : 그럼 여기서 지훈님이 이글 맨 처음에 뉴스라고 적어주신 LGT의 전체 Oracle 시스템
: : :
: : : Microsoft SQL Server로 마이그레이션의 의미를 이 개발자란 무엇인가라는 전제 하에
: : :
: : : 제가 행간을 읽으면서 말씀 드리겠습니다.
: : :
: : :
: : : 자아~ DB를 이전합니다. "그냥 이전 합시다. 그냥 밀고 다시 깔고 연결하면 되지!~~~ 뭐 문제 있습니까?"
: : :
: : : 이런 개발자분 없을겁니다. 말그대로 허벌나게 문제 많습니다.
: : :
: : : DBMS만 바꾸면 모든 기존 프로그램들 다 돌아갑니까? 서버측에 전달되는 쿼리는 기본으로 다 바꿔야 합니다.
: : :
: : : 생각나는 것만, LG Telecom의 고객 DB... 고객과 엮인 서비스 좀 많습니까? 벨소리 서비스, 지원업체,
: : :
: : : AS업체 지원, 고객 빌링, 고객 지원 서비스, 고객 관리... 걸린게 좀 많습니까?
: : :
: : : 각각 모두 어플리케이션으로 만들어져 있는데 이것들 다는 아니더라도 손 봐 줘야 합니다.
: : :
: : : 최소한 미들단에서 컴퍼넌트로 구현 되었다면 이 컴퍼넌트에서 만이라도 최소한 변경해 줘야 합니다.
: : :
: : : 하나라도 잘 안되서 삐끗하면 난리도 아니죠. AS센터에서 고객 DB에 접속이 안된다고 생각해 보십시요.
: : :
: : : 줄서서 기다리던 사람들 쿠테타 날겁니다. 대응 빨리 못하면 정말 회사 망하겠죠.
: : :
: : :
: : : LG Telecom이 어떤 회사 입니까? 그동안 019로 업계에서 뒤지고 있던 회사였으나 010과 번호 이동성제로
: : :
: : : 저렴한 가격을 내세워 폭발적으로 사람들을 끌어 들이고 있습니다. LG텔레콤 전용 전화기 성공도 한 몫하죠.
: : :
: : : 당연히 LGT도 지금이 다시 없는 아주 중요한 발판의 기회라고 느꼈을 겁니다.
: : :
: : :
: : : 폭발적으로 증가하는 사용자와 데이터를 완벽하게 처리하라!!!
: : :
: : :
: : : 이게 LG Telecom의 프로젝트겠지요. 여기서 질문합니다.
: : :
: : : 왜 오라클을 쓰레기통에 쳐박고 Microsoft SQL Server를 선택 했습니까?
: : :
: : : 세상에는 많은 사용 DBMS가 있습니다.
: : :
: : : Microsoft SQL Server, DB2 UDB, Sybase, Oracle, 지훈님이 좋아한다는 파이어버드도 있네요.
: : :
: : : 그 많은 DBMS중에 왜 LG Telecom은 Microsoft SQL Server를 선택한 겁니까?
: : :
: : : 왜 오라클은 쓰레기통에 버리는 겁니까?
: : :
: : :
: : : 지훈님 맨 첫글에 쓰신 것 처럼 LG Telecom이 바봅니까?
: : :
: : : LG 계열사에 LG CNS 있습니다. 여기 국내 최대의 솔루션 통합 업체로 둘째가라면 서럽습니다. 직접 아는 분도
: : :
: : : 계십니다. 한분 한분 모두가 내공이 엄청난 분들이지요. 고개가 절로 숙여지는 분들입니다.
: : :
: : : 진행한 국내 <초대형> 국책 프로젝트, 해외 <초대형> 프로젝트 들자면 끝도 없습니다. 결과적으로 100% 성공했습니다.
: : :
: : : 성공 못했으면 망했겠죠? ㅋㅋㅋ
: : :
: : :
: : : LG에 또 LG 엔시스 있습니다. 여기 대한민국 금융권에서 이름만으로 먹고 들어가 줍니다. 엄청납니다.
: : :
: : : LG 경제 연구소 있습니다. 이 사람들 우리 개발자 들과 정반대로 경제 박사, 전문가들 다 있습니다.
: : :
: : :     LG 경제 연구소 실화로 거기 연구원중 한명이 컴퓨터가 갑자기 안켜져서 IT직원이 부랴부랴 갔답니다.
: : :
: : :     막상 가보니 모니터를 안 키고서 컴퓨터가 안켜진다고 소리를 질러대고 있었다는...
: : :
: : :     우리랑은 정말 정 반대의 사람들입니다. -_-;;;
: : :
: : :     가끔 느끼지만 이런 일화를 들으면 세상은 어떤 면에선 참 공평합니다. 어떤 면에서는요... -_-;;;
: : :
: : :
: : : 자~ 다시 한번 상기하는 의미에서 * 회사의 존재 목적은 무엇입니까? *
: : :
: : : 최고의 성능과 최고의 비용 효과를 가진거 선택 하는 겁니다.
: : :
: : : LG Telecom 어땠을까요? 제 생각엔 대한민국에서 내놓으라 하는
: : :
: : : 자회사인 LG CNS 등등에서 최고의 컨설턴트들과 돈을 아는 경제학 박사, 연구원인 사람들이 대가리 싸매고
: : :
: : : 테스트 하고 비교하고 고민한 결과
: : :
: : : "제일 좋은건 Microsoft SQL Server이고 지금 있는 오라클을 쓰레기통에 버린 후
: : :
: : : 관련된 모든 서비스들을 다 바꿔도 그 전체 비용과 성능면에서는 Microsoft SQL Server가 가장 좋다."
: : :
: : : 라는 결론이 났기 때문일 겁니다.
: : :
: : :
: : : 아까도 말했지만 LG Telecom, 그동안 019로써 업계에서 뒤지고 있던 회사였으나 010과 번호 이동성제로
: : :
: : : 저렴한 가격을 내세워 폭발적으로 사람들을 끌어 들이고 있습니다.
: : :
: : : LG 경제연구소가 LG Telecom의 잠재 성장을 고려 안했겠습니까? 앞으로 얼마나 많은 사용자가 늘어날 것이며
: : :
: : : 향후 최소 10년 동안 얼마나 많은 폭발적인 데이터 증가가 있을 것인지 예측 안했겠습니까?
: : :
: : : 그결과 LG Telecom이 선택한 DBMS가 무엇입니까?
: : :
: : : LG Telecom은 Microsoft SQL Server을 선택 했습니다.
: : :
: : :
: : : 그럼 또하나 확인보지요.
: : :
: : : 이세상에 한종류 뿐인 개발자, 제가 생각하는 한종류 뿐인 개발자는
: : :
: : : 최소의 비용, 최소한의 시간, 최고의 솔루션으로 손쉽게, 최고의 프로젝트를 성공적으로 완수하는 사람입니다.
: : :
: : : DB를 바꾸면 관련된 데이터 처리 모듈 중 많은 부분에 대해서 변경이 필요합니다.
: : :
: : : 지훈님 말씀처럼 오라클을 내리고 파이어 버드로 바꿔도 많은 변경 필요할겁니다.
: : :
: : : 그럼 개발된 어플리케이션의 약간의 수정 작업이나 재개발이 필요 할 수도 있습니다.
: : :
: : : 그럼 우리 개발자 뭘로 개발합니까?
: : :
: : : 최소의 비용, 최소한의 시간, 최고의 솔루션 으로 개발합니다.
: : :
: : : 무슨 솔루션으로 개발합니까? 우리 최소한 툴에 대한 생각은 버립시다.
: : :
: : : 중요한건 비용, 시간, 솔루션 입니다. 예를 들어 봅시다.
: : :
: : :
: : : 제가 만약 지금 A 라는 툴을 씁니다. 이걸로 프로젝트를 진행 하려는데 B툴도 좋습니다.
: : :
: : : 하지만 A로 해왔던 지금까지의 작업을 B로 바꾸면서 하려면 시간과 새로이 B툴을 구매 해야하는
: : :
: : : 단점이 있습니다. 그러니 전 이번엔 시간이 부족해 기존까지 해왔던 A로 하려고 합니다.
: : :
: : : 하지만, 언제든지 B로만 가능한 작업이 있다면 저는 B로 할 준비가 되어 있습니다.
: : :
: : : 시간과 비용을 투자해도 A로는 해결할 수 없는 문제이기 때문입니다.
: : :
: : :
: : : 이런 경우도 있습니다.
: : :
: : : 많은 분들이 거의 동시에 A에서 B로 변경을 했습니다. 왭니까? A로 프로젝트를 완료 충분히 할 수 있으나
: : :
: : : A보다 B가 훨씬 성능과 안정성이 좋으며, A에서 B로 바꾸기 위한 Migration관련 자료를 완벽히 제공하며
: : :
: : : 결정적으로 A는 더이상 사용하는 사람들이 거의 없어서 발전과 A개발 툴에 대한 지원이 없습니다.
: : :
: : : 그럼 A를 쓰던 사용자의 선택은 무엇입니까? B로 가기위해 시간과 비용이 약간은 들어 가겠지만
: : :
: : : B로 갈겁니다.
: : :
: : :
: : : 나중에 A 개발툴과 B 개발툴에 대해서 찬찬히 "사실"에 기반해 말씀 드리죠.
: : :
: : :
: : : 자... 말이 길었습니다. 중요한건 비용, 시간, 솔루션 무슨 말씀인지 아실 겁니다.
: : :
: : : 이제 확실한건 우리 개발자들은 지훈님의 생각처럼 반MS, 친MS, 생각없는 떨거지가 아니라 한 종류입니다.
: : :
: : :
: : : 최소의 비용, 최소한의 시간, 최고의 솔루션으로 손쉽게, 최고의 프로젝트를 성공하는 개발자
: : :
: : :
: : : 여기서 다시 최초 이야기로 돌아 옵니다.
: : :
: : : LG Telecom은 오라클을 버리고 Microsoft SQL Server를 선택 했습니다.
: : :
: : : 잠시 후 말씀 드리겠지만 만약 지훈님의 생각처럼 CPU가 그냥 100%를 치거나
: : :
: : : 클러스터드 인덱스가 지훈님 생각처럼 디스크를 하루 종일 긁게 만들거나
: : :
: : : 트렌젝션의 ACID를 기본 지원 하지도 않고 문제가 있다면??? 그 제품 선택 하겠습니까?
: : :
: : :
: : : 자 그럼부터 이제 반론 들어갑니다.
: : :
: : : -------------------------------------------------------------------------------------------------고민하다가 다시 글을 씁니다. 사실 김대우님께서 글을 쓰신 얼마 후에 그 내용을 봤습니다. 저도 감정이 받쳐서 몇시
: : : 간동안 격한 반론을 쓰다가 이게 뭐하는 짓인가... 싶어서 덮어버렸었습니다. 처음 글을 썼을 때부터 지금까지, 제 목적은 김대우님과 싸우는 것이 아닙니다. 전 SQL 서버 전문가에게 짧은 SQL 서버 지식을 뽐내려고 할 만큼 어리지도 않고, 난투에서 희열을 느끼는 성격도 아닙니다. 감정은 정리하고, 논점이 궤도를 벗어난 것 같아 차근차근 다시 써보겠습니다.
: : : -------------------------------------------------------------------------------------------------
: : :
: : : 우선 전적으로 동감합니다. 저역시 감정적으로 쓰지 않도록 노력하겠습니다.
: : :
: : : 혹시나 감정적으로 적었다면 말씀 주십시요. 죄송하다고 말씀 드리고 감정적인 부분은 수정하겠습니다.
: : :
: : : 감사합니다.
: : :
: : : -------------------------------------------------------------------------------------------------김대우님께 답을 내놓으라고 강요하려고 쓰는 것은 아닙니다. 단지 제가 애초에 가졌던 불만의 내용이 크게 왜곡되고
: : : 있는 것 같아 정리를 해보고 싶은 것 뿐이랍니다. (어쩌면 제대로 이해하고 계시는데 제가 거꾸로 잘못 짐작하고 있는 걸 수도 있습
: : : 니다만...)
: : : -------------------------------------------------------------------------------------------------
: : :
: : : 네 잘 알겠습니다. 정리해 보겠습니다.
: : :
: : : 최초 질문은
: : :
: : : 1. 지훈님이 처음 쓰신글 "시스템을 싹 튜닝했는데 계속 100%를 치고 완전한 SQL서버의 버그."
: : :
: : : -> 그후 쓰신글 "그냥 달래 놓았은거다. 내가 만든게 아니라서 모르겠다. 곧 시스템 재개발 들어간다."
: : :
: : :
: : : 2. 지훈님 처음 쓰신글 "트랜젝션 처리에서 ACID를 안지켜 롤백이 안되는 버그가 있다."
: : :
: : :            "SQL서버는 표준을 안지키고 기초적인 ACID도 안 지킨다."
: : :
: : : -> 1) 지훈님 쓰신글 "기본적으로 SQL서버는 트랜젝션을 지원 안하고 표준도 안 지킨다."
: : :
: : : -> 2) 지훈님이 그 후 쓰신글 "ACID를 기본적으로 안 지키고 표준도 아닌 SET XACT_ABORT ON을 이용해야만 한다.
: : :
: : : SET XACT_ABORT 옵션을 만들어 줘서 황송하다. 표준도 안지키는 SQL서버는 뭐냐?"
: : :
: : : -> 3) 지훈님이 오늘 쓰신글 "SET XACT_ABORT ON 없어도 되는거 알겠다.
: : :          그런데 내가 작성한 소스 코드의 트렌젝션 처리 구문이 아니지만 롤백이 안된다. SQL서버의 버그다."
: : :
: : :
: : : 3. 지훈님이 처음 쓰신글 "클러스터드 인덱스는 앞쪽 페이지가 없어지면 나머지 뒤의 모든 페이지가 쉬프트 되서
: : :
: : : 엄청난 IO가 발생한다. 이런 말도 안되는 DBMS가 어딨냐?"
: : :
: : : -> 지훈님이 오늘 쓰신 말씀 "내가 잘못 이해했다. 쉬프트 발생 안한다. "
: : :
: : :
: : : ....
: : :
: : :
: : : 다시 말씀 드리지만 제가 쓴글중 왜곡된 부분 있으면 언제든지 반론 환영합니다.
: : :
: : : 단! 이번 만큼은 제가 드리는 간단한 하나의 질문에 답변을 안해주시면 저역시 나머지 지훈님의 글들은
: : :
: : : 그냥 무시하겠습니다.
: : :
: : : 지난번 글에도 질문을 드렸는데 답변을 안 해 주셨지요.
: : :
: : : 이번에는 꼭 현명하신 지훈님의 답변 기다리겠습니다. 아, 제 질문은 이글의 맨 마지막에 달겠습니다.
: : :
: : : -------------------------------------------------------------------------------------------------저는 지금도 SQL 서버가 ACID 원칙을 지키지 않는다고 생각합니다. 왜냐하면 적어도 제가 알기로는 트랜잭션에 있어서 ACID 원칙이란 어떠한 경우에도 반드시 지켜져야 하는 것이라고 배웠고, 다시 여기저기 검색이나 서적을 뒤져봐도 그렇게 나와있으니까요. '어떠한 경우에도'라는 것은 에러처리 코드가 있건 없건 디비 서버에 부하가 크건 적건 그런 모든 조건들을 막론하고 항상 지켜져야 하는 것이라는 뜻이 아닌가요. 스크립트 작성자가 에러처리를 제대로 하지 않았다고 해서 롤백이 되지 않는다면 하나의 최소 동작으로 돌아가야 할 트랜잭션이 일부는 적용되고 일부는 적용되지 않는, 데이터가 불일치하는 경우가 생기게 되지 않습니까. 물론 김대우님이 보여주신 스크립트의 의미는 압니다. 문제가 생겼던 저희 소스(제가 작성한 것은 아닙니다만)에도 보여주신 것과 거의 같은 에러처리 코드가 있었습니다. 그런데도 문제가 발생했습니다. 원인이 파악되지 않는 모종의 에러가 발생했는데, 에러처리 코드에서 Rollback을 명시했는데도 롤백되지 않았습니다. 한마디로 에러처리 코드를 뚫어버린 겁니다. 김대우님은 DBA이시기 때문에 이런 일은 있을 수 없다고 생각하시겠지만 저는 개발자이기 때문에 있을 수도 있다고 생각합니다. 적어도 현실에서 저희 회사의 사례에서는 분명히 에러처리코드를 타지 않았습니다. 그렇다고 에러처리 코드에 문제가 있었다고도 생각되지 않는 상황이었습니다. 에러처리 코드가 정상적이었다는 것은, 제가 썼던 최초의 글을 보시면 아실 겁니다. 그 에러를 발견하게 된 것이 연달아 계속
: : : 자료 입력이 안되는 것 때문이었는데, 자료 입력이 안되었던 이유가 바로 키 위반으로 에러처리 코드에서 롤백되었기
: : : 때문입니다. 적어도 최초의 에러가 발생한 이후, 그 다음에는 에러처리 코드가 정상적으로 동작했기 때문에 연이은 자료 입력들이 줄줄이 롤백되어버린 거죠. 그 에러 자체는 분명히 버그라고 생각되지만, 그 버그를 문제삼을 것은 아닙니다. 그리고 에러처리 코드를 타지 않은 것도 부차적인 문제이구요. 제가 당황한 것은 그 모든 에러가 발생한 후에 자동 롤백이 되지 않은 것입니다. (그러니까 여기서 김대우님과 저의 초점이 달라지게 되겠습니다) 제가 직면한 현실에 해당되지 않는, 제가 쉽게 알아보고 사용하는 수준보다 더 복잡한 레벨에서 문제가 생겼다면 그다지 문제삼을 이유가 없었을 것입니다. 그리고 어떻게 상황이 굴러가다보니 제가 튜닝을 하기도 했습니다만 원래 저는 DB 관리를 즐기지도 잘하는 편도 못됩니다. 그런데 저희 팀 전체가 매달려서 뒤져봐야 했던 문제였기에 원래는 DB 관리와는 업무 관련이 적은 저까지 매달려야 했고, 그 과정에서 에러처리가 되지 않은 부분과 그 이후 다시 롤백까지 되지 않은 부분을 발견한 겁니다. 처음 엔지니어 기질이 있다고 말씀하신 의미를 이제야 짐작하는지도 모르겠습니다만, 다른 SW도 아닌 데이터베이스 서버에서 트랜잭션이 완벽한 ACID를 지원하지 못한다면... 그것도 김대우님이 말씀하신 것과 같은 일반적인 방법인 에러처리 코드를 통한 롤백 처리까지도 했는데도 롤백이 이루어지지 못했다면 그건 마이크로소프트의 책임이라고 생각한 겁니다.여담입니다만, 관련 문서를 뒤져보다가 윈도우 서버에 포함된 트랜잭션 코디네이터에 대한 내용을 봤습니다. 자세히
: : : 살펴볼 시간은 없었지만 아마도 다른 일반적인 DTP 환경에서의 TP 모니터의 역할을 하는 듯 하더군요. 그 내용으로 때려짐작해보건대, 김대우님이 말씀하신 '분산 트랜잭션'에서 SQL 서버의 트랜잭션의 ACID 속성들을 보장해주는 역할을 하는 듯 한데요. 제 생각에는 이 트랜잭션 코디너이터가 SQL서버의 트랜잭션에서의 부족한 면을 채워주지 않나 싶습니다. 하지만 제가 생각하는 문제는.. DTP 에서야 여러 DB 서버들이 동시에 트랜잭션에 참여하게 되므로 단일 DB 서버의 트랜잭션 기능만으로 충분하지 않게 되지만, DTP가 아닌 단일 DB 서버 환경에서라면 TP 모니터나 트랜잭션 코디네이터 없이도 DB 서버 자체만의 기능으로도 최악의 경우를 가정한 트랜잭션 보장이 되어야 한다고 생각하는 겁니다. 그제가 아는 트랜잭션이니까요. 오라클에서 그렇게 동작하기는 하지만, 오라클과 SQL 서버를 비교한 것이 아닙니다. (저는 오히려 마이너 디비인 파이어버드를 더 선호합니다.) 제가 SQL 서버에 가진 불만의 핵심은 이것입니다. 트랜잭션에 대해서는 분명한 정의가 있고, 너무나 단순한 개념이라서 정규건 비정규건 전산 교육을 받은 사람이라면 누구나 아는 것인데 왜 그것이 지켜지지 않는가, 입니다. 물론 다른 DB 서버에서도 트랜잭션을 제대로 지원하지 않는 경우가 있습니다만 그 경우에는 트랜잭션의 이런 부분은 지원하지 않는다, 라고 공공연하게 알려져 있지 않습니까. 제가 먼저번에 썼던 글
: : : 의 마지막에서도, 김대우님의 설명이 제게 답이 되지 못한다고 썼던 것도 이것 때문입니다.
: : : -------------------------------------------------------------------------------------------------
: : : 처음 지훈님의 강한 어조로 버그라고 말씀 하시면서 상세한 설명을 드실때보다 논지가 많이 약해 지셨네요.
: : :
: : : 이래선 정말 이 토론이 끝이 없겠네요.
: : :
: : : 지훈님 개발자시고 저도 개발자이니 이렇게 하시죠.
: : :
: : : 문제가 발생하는 트렌젝션 처리 구문을 공개적으로 올려 보세요.
: : :
: : : 여기도 질답 게시판이 있는데 거기서 다들 문제 있으면 소스 올리죠? 아시는 것처럼 전체를 다 못올려도 됩니다.
: : :
: : : 흐름을 정확히 맞춰서 올려 주세요.
: : :
: : : 제가 봐 드리죠. 제가 지훈님이 말씀 하신 부하 보다 10배의 부하를 더 MSSQL서버에 걸겠습니다.
: : :
: : : 테스트 자료 공개적으로 제공 하겠습니다. 모든 여기 이글 보시는 분들이 공개적으로 테스트 가능하게 스크립트도
: : :
: : : 제공 하겠습니다.
: : :
: : : 그래도 트렌젝션이 지훈님 표현대로 "뚫린다"면
: : :
: : : 조용히 구석에 찌그러져서 SQLER라는 제가 6년간 운영해온 저를 대변해온 저의 웹사이트도 문 닫고 초야에 묻혀서
: : :
: : : 앞으로 제 닉네임 코난과 김대우라는 이름은 인터넷상에서 안 보실 수 있도록 하겠습니다.
: : :
: : : "금분세수가 아니라 똥분세수하고 그냥 도망치듯이 중원무림을 떠나겠습니다."
: : :
: : : 단, 지훈님의 소스를 제가 변경이 필요하다면 변경해서 정석대로 SQL Server의 온라인 도움말에 있는 방식으로
: : :
: : : 사용한 후에요.
: : :
: : : 어떠십니까? 이방법 성립 합니까? 제가 많이 밑지는 겁니다. 딱보기에도 제가 많이 밑지죠? ㅋㅋㅋ
: : :
: : : 하지만 전 이미 결과가 머리속에 그려지네요. 지훈님은 어떤 그림이 나오십니까?
: : :
: : : 둘중에 한명은 분명히 잘 못 알고 있기 때문에 저에겐 이러한 확신이 있는 거겠지요.
: : :
: : :
: : : 지훈님이 정말 개발자라면 우리 코드로 대화 합시다. 개발자들의 확인 정신 지훈님도 아시잖습니까?
: : :
: : : 단, 만약 10배의 로드를 정석대로 SQL서버에서 코딩 한 후 잘 된다면?
: : :
: : : 이런 것 어떻습니까? 아래의 단 두가지가 제가 지훈님께 바라는 것입니다. 간단하지요?
: : :
: : : 볼랜드 사이트의 공지사항에 정식으로 사과 하십시요.
: : :
: : : SQLER.PE.KR의 자유게시판에 사과 하십시요.
: : :
: : :
: : : 어떠십니까? 소스로 대화하자는 저의 제안.
: : :
: : : 보안 상의 이유로 안된다 말씀 안하시겠죠? 저역시 똑같이 달라는 말 안합니다.
: : :
: : : 질답게시판 운영 중이시니 무슨 말인지 아실 겁니다.
: : :
: : : 그럼 부탁 드립니다.
: : :
: : : -------------------------------------------------------------------------------------------------그 다음의 것들은 부차적인 문제가 되는데... 먼저 클러스터드 인덱스의 내부적인 동작 방식에 대해서는 제가 잘못 알
: : : 았던 것 같습니다. 클러스터드 인덱스가 가진 장단점을 알아보기 위해 여기저기 문서들을 뒤져보다가 잘못 이해한 부분이 있었던 것 같은데요. 적어도 하나의 레코드가 삽입된다고 해서 그 뒤의 모든 레코드가 시프트되지는 않는 것 같습니다. 하지만 제가 클러스터드 인덱스터드 인덱스에 대해 가졌던 의문점은 아직 거의 그대로 있습니다. 튜닝 과정에서 클러스터드 인덱스를 제거했던 이유는 클러스터드 인덱스가 항상 최적의 결과를 내지 못한다는 msdn의 공식 문서나 테크넷 강의 문서 등 여러 문서들 때문이었습니다. 제가 기억하기로 클러스터드 인덱스가 최고의 선택이 아닐 수 있는 몇몇 경우가 있는데, 제 판단으로는 저희 회사 서버가 그런 경우들과 공통점이 많다고 생각했던 겁니다. 물론 저도 다른 어떤 필드이든 클러스터드 인덱스를 새로 잡아주는 것이 좋다고는 생각했으나 현재 필드들 중 마땅히 클러스터드 인덱스로 잡을만한 것이 없었고, 또 의미없는 일련번호 등을 추가하기에는 껄끄러운 문제들도 있어 그냥 힙으로 두게 되었습니다. 결과적으로 PK 필드에서 클러스터드 인덱스만 넌클러스터드로 바꾸었는데, 실로 놀랄만한 성능 향상이 있었습니다. 수시로 CPU 점유율이 100%를 치는 상황이 뭐가 튜닝이 된 거냐고 말씀하셨지만, 그 전까지만 해도 하루에만도 두세차례씩 SQL 서버가 아예 먹통이 되어서 길게는 두세시간까지 아예 응답을 하지 않는 상황이 계속 반복되었었기 때문
: : : 에, CPU가 100%를 치건 말건 몇달이 되도록 단 한번도 멈추지 않는 지금 상황을 성공적인 튜닝이라고 부르는 것에는, 전문 DBA가 아닌 제 입장에서는 양심에 손을 얹고 전혀 거리낌이 없네요. 물론 그 이후에 수백개의 테이블들 중에서 자주 사용되는 몇개 테이블에 대해서는 필요없는 몇개의 인덱스를 삭제하고 스토어드 프로시저 몇개도 수정하기는 했지만, 1차로 했던 클러스터 인덱스 제거가 가장 큰 영향이 있었다고 판단하고 있습니다. 물론 이것으로 튜닝이 완벽하다고는 절대로 말할 수 없는 것이기는 하지만, 이전에 말씀드렸다시피 문제의 근본적인 원인은 총체적으로 엉망이 되어있는 구조 때문이기 때문에 현 상황에서 완벽에 가까운 튜닝은 완전한 재개발을 통해서만 가능한 상황입니다. 재개발을 계획중이기는 하지만 몇달 정도는 지체될 상황이기 때문에, 그 이상의 튜닝은 힘듭니다. 지금은 엉망이 되어있는 현 시스템의 자잘한 버그들을 잡고 재개발 계획을 잡는데만도 인력이 너무 부족한 상황이기 때문입니다. 어쨌든.. 제가 클러스터드 인덱스를 거론한 이유는, 이렇게 클러스터드 인덱스가 오히려 성능에 좋지 않은 결과를 내는 경우도 있는데도 굳이 비표준이라고 할 수 있는 클러스터드 인덱스를 PK 필드에 무조건 암시적으로 잡아버리는 것이 문제가 있지 않나 하는 것이었습니다. 물론 말씀하신 것처럼 SQL 서버의 인덱스 설계 자체가 클러스터드 인덱스가 존재하는 테이블(그러니까 힙이 아닌) 구조를 위주로 설계되어 있기 때문이라는 것은 이해를 합니다만, 결과적으로는 클러스터드 인덱스의 장단점을 잘 알지 못하는 경우에 기본설정 때문에 성능이 오히려 떨어질 수 있다는 거죠. 위의 두 예에서... 물론 대체적으로는 그렇지 않고 특이한 경우일 수도 있겠습니다만, 기본 설정이 어떻다는 것, SQL 서버의 설계 철학이 어떻다는 것을 알지 못하면 오히려 예상 밖의 에러가 발생하거나 성능이 저하되는 경우가 생길 수 있지 않습니까. 실제로 제가 겪었던 두가지 예에서처럼 말입니다.
: : : -------------------------------------------------------------------------------------------------
: : :
: : : 지훈님 말씀중에 전적으로 동의하는 말이 있습니다.
: : :
: : : -------------------------------------------------------------------------------------------------msdn의 공식 문서나 테크넷 강의 문서 등 여러 문서들 때문이었습니다. 제가 기억하기로 클러스터드 인덱스가 최고
: : : 의 선택이 아닐 수 있는 몇몇 경우가 있는데, 제 판단으로는 저희 회사 서버가 그런 경우들과 공통점이 많다고 생각했던 겁니다.
: : : -------------------------------------------------------------------------------------------------
: : :
: : : 100% 동의 합니다.
: : :
: : : 제가 Clustered Index가 최고의 선택이 아니라고 해서 앞글에 적었습니까? 앞글 천천히 봐 보십시요.
: : :
: : : 지훈님이 쓰신 글 "클러스터드 인덱스는 앞쪽 페이지가 없어지면 나머지 뒤의 모든 페이지가 쉬프트 되서
: : :
: : : 엄청난 IO가 발생한다. 이런 말도 안되는 DBMS가 어딨냐?" 라는 질문을 주셨습니다.
: : :
: : : 저는 이에 대한 대답으로 Clustered Index의 내부 구조를 설명 드렸습니다.
: : :
: : : 제글 어디에 Clustered Index를 테이블마다 반드시 쓰라고 되어 있습니까?
: : :
: : : MSDN은 읽고 아시면서 SQL서버의 온라인 도움말은 안보신다?
: : :
: : : 저 인덱스 항목 공부할때 너무 중요한 내용이라 종이로 프린트 해서
: : :
: : : 싸그리 다 외워 버리고 부족해서 씹어서 먹었습니다. 그날 저녁때 엄청 고생한걸로 기억합니다. ㅋㅋㅋ
: : :
: : : 지금 제 집의 노트북 시스템에 온라인 도움말도 없지만 Clustered Index사용에 대한 사항 천천히 봐 보세요.
: : :
: : : 대략적으로 범위 검색에 최적, Order by에도 확실한 성능, 일반 검색은 물론 지원.
: : :
: : : 이런 좋은 성능이 있지만 테이블당 1개만 생성 가능, 여러 주의사항이 있으니 주의해서 생성 할것.
: : :
: : : ...
: : : ...
: : :
: : : 이런 상세한 주의사항 내용 있지요? 제가 지금 시스템에 온라인 도움말이 없어서리...
: : :
: : : MSDN에도 SQL서버 풀 온라인 도움말 화일 올라가 있습니다.
: : :
: : : 거기 까지 가서 영어로 보지 마시고 지훈님 컴퓨터에서 봐 보세요. 독립 실행 화일로 다운로드해 SQL서버 없이도
: : :
: : : 그 방대한 자료를 보실 수 있습니다. 웹에서 MSDN보시는 노력의 100분의 1만 들여서 봐 보십시요.
: : :
: : : -------------------------------------------------------------------------------------------------
: : : 마지막 한가지, 비주얼 C++의 표준 준수에 대해서 말해보겠습니다. 말씀하신대로 ISO C++ 표준이 비주얼 C++ 6.0보
: : : 다 뒤에 제정되었습니다. 그런데 그 차이는 겨우 수개월로, 비주얼 C++ 6.0이 한참 개발중일 때 이미 ISO C++ 스펙은 거의 완전히 안정 상태였고 그 내용이 공개적으로 알려진 가운데 최종 인준만 기다리는 상태였습니다. 따라서 당시에 개발중이던 다른 대부분의 C++ 개발툴들은 많건 적건 그 표준안을 반영하면서 개발중이었습니다. 그런데 표준안 발표 직전에 출시된 비주얼 C++이 가장 표준안에서 거리가 멀었구요. 뭐 표준안까지 거론하지 않아도 저희 사이트에 뒤져보면 표준이 아니라 C++에 대한 일반 상식을 벗어나는 황당한 예들도 있습니다. 아마도 김대우님이나 김상욱님이 그렇게 격하게 반응하셨던 것은 제가 반MS 성향을 가지고 있기 때문이 아닌가 생각됩니다. 물론 저는 반MS적입니다. 하지만 그렇다고 무조건 뭐든지 다 나쁘다라고 몰아붙이거나, MS 망해라 하고 저주를 퍼붓는 막가파식 안티는 아닙니다. 저희 포럼 내에도 상당한 친MS적인 분들이 있는데, 오프모임에서나 온라인상에서나 자주 논쟁을 하기는 하지만 그 논쟁이 감정으로 치달은 적은 단 한번도 없었던 것으로 기억합니다. 오히려 얘기를 주고받을 수록 더욱 더 재밌게 전개되죠. 저는 MS가 보여주는 나쁜 점들에 대해 객관적인 사실과 논거를 제시하고, 또 다른 몇분들은 그에 대해 역시 객관적인 사실과 논거로 반박하고, 그런 식입니다. MS를 두고 서로 반대쪽에 앉아서 몇시간씩 술잔을 부딛히면서 즐겁게 논쟁하는 기분을
: : : 이해하실지요. 혹 전혀 이해가 안되신다면 돌파리 정치꾼들이 판치는 100분토론을 너무 많이 본 후유증이라 생각됩니다. ^^ 저는 아마도 영원히 반MS일 겁니다. 그렇다고 MS를 옹호하는 분들과 얘기가 안된다고는 전혀 생각하지 않습니다. 오히려, 생각이 다른 엔지니어들끼리 제대로 토론하면 같은 생각을 하는 사람들끼리는 가질 수 없는 재미가 장난 아니랍니다. 더욱이 김대우님과 같은 분과 함께라면 더욱 그렇지 않겠습니까.
: : : -------------------------------------------------------------------------------------------------
: : :
: : : 결론은 뱃속의 태어나지도 않은 아이 욕하기 였군요... 
: : :
: : : 흠.. 저는 사실 VC++이나 Borland C++은 잘 모릅니다.
: : :
: : : 지훈님과 볼랜드 포럼 분들 앞에서 C++ 안다고 하면 공자님 앞에서 글읽기겠죠.
: : :
: : : 저는 잘 모릅니다. 저는 모르는 것은 모른다고 말씀 드리고 모르니까 물어 봅니다.
: : :
: : : 제가 잘못 알고 있는 내용이라면 인정하고 사과를 드리며 알려 주셔서 감사하다고 말씀을 드립니다.
: : :
: : : 하지만 가끔 그렇지 않은 분도 계신듯 합니다.
: : :
: : :
: : : 그렇다면 지훈님께 여쭤 봅니다.
: : :
: : : 1. 이전 글에서 지훈님이 "표준" 이라는 단어를 무척이나 많이 사용 하셨습니다.
: : :
: : : 정말 엄청나게 많죠? 대충 눈짐작으로 열댓번 이상 언급한것 까지 세고 힘들어서 포기 했습니다.
: : :
: : : 표준을 항상 염두에 두시는 듯 합니다.
: : :
: : : 그렇다면 여쭤 봅니다. Borland C++ Builder는 100% ANSI/ISO C++표준을 지원 합니까?
: : :
: : : 단 하나의 ANSI/ISO C++ 표준을 어기지 않고 모든 표준을 다 그대로 지원 합니까?
: : :
: : : 전 Visual C++ 잘 모릅니다. Borland C++ 빌더는 더더욱 모릅니다.
: : :
: : : 제 질문은
: : :
: : : <<<<Borland C++ Builder는 단 하나의 ANSI/ISO C++ 표준을 어기지 않고 모든 표준을 다 그대로 지원 합니까?>>>
: : :
: : : 입니다. 간단히 대답 주십시요. 어디와 비교 하는것 조금도 신경 안씁니다.
: : :
: : : 그냥 예 / 아니오만 해 주세요. 길게 글 써봐야 지훈님도 힘드시지 않습니까?
: : :
: : :
: : : 2. 또한가지 여쭤 봅니다. 전 C++ 많이 모릅니다. 하지만 약간의 업계 뉴스와 상식은 있습니다.
: : :
: : : VC++ 6.0과 Borland C++ 빌더를 비교하셨습니다. 그렇다면... 그렇다면요...
: : :
: : : 차기 버젼이라면 Microsoft Visual C++ .NET 이지요? Borland C++ 빌더 에는 차기 버젼에 어떤 툴이 있습니까?
: : :
: : : 차기 버젼을 비교 하려고 찾아 봤는데 2002와 2003 버젼이 Microsoft Visual Studio .NET엔 있네요.
: : :
: : : 어떤 툴이랑 비교 해야 하는 겁니까? 혹시 제가 모르는 나온 툴이 없습니까?
: : :
: : :
: : : 제가 맨 처음 드린 말씀 기억 하십니까?
: : :
: : : 모든 회사의 존재 목적은 최소의 비용, 최소의 인력으로 최대의 이윤 창출이 존재 목적입니다.
: : :
: : : 지훈님의 생각처럼 반MS, 친MS, 생각 없는 개발자가 아닌
: : :
: : :
: : : 제가 생각의 우리들 개발자는 모두 같습니다. 네! 우리는 한종류 입니다.
: : :
: : :
: : : 최소의 비용, 최소한의 시간, 최고의 솔루션으로 손쉽게, 최고의 프로젝트를 성공적으로 완수하는 사람.
: : :
: : : 이게 우리 개발자들입니다.
: : :
: : :
: : : 어떤 제품은 1년이 멀다하고 사용자의 요구를 수용해 계속 발전하며 더 많은 기능과 편의성을 제공합니다.
: : :
: : : 어떤 제품은 아예 차기 버젼이 없군요. 좋은 툴인거 압니다. 왜 차기 버젼이 없습니까?
: : :
: : :
: : : 최고의 툴을 선택할 권리는 우리 개발자에게 있습니다.
: : :
: : : 성능, 비용, 속도, 편의성.
: : :
: : : 개발자의 선택에서 배제되었기 때문에 업계에서 도태 되는것 아닙니까?
: : :
: : : 도태가 안되고 다음에 나온다고 해도 다음 제품은 언제 나오게 됩니까?
: : :
: : : 확정된 차기버젼 제품 발표일이나 현재 베타가 진행 중이라거나 최소한 프리뷰 버젼이라도 나온게 있습니까?
: : :
: : : --------------------------------------------------------------------------------------------------
: : : 이번에는 개발툴인 비주얼 C++을 예로 듭시다.
: : : 비주얼 C++이 6.0 버전에 이르기까지  표준을 따르지 않았다는 것은 주지의 사실입니다.
: : : --------------------------------------------------------------------------------------------------
: : :
: : : 지훈님이 쓰신 글입니다.
: : :
: : : 뱃속의 태어나지도 않은 아이 욕하기.
: : :
: : : 이런 악성 루머와 말도 안되는 억측 속에서도 현명한 개발자 분들은 정확히 선택 했습니다.
: : :
: : : 정말 놀랍습니다. 저라면 이말만 믿고 VC++안썼을 겁니다.
: : :
: : : VC++은 이러한 악질 루머 속에서도 꾸준히 발전해 다음 제품인
: : :
: : : Microsoft Visual Studio .NET에 포함되어 Visual C++ .NET으로 릴리즈 되었습니다. 그것도 프레임웍과 함께...
: : :
: : : 2002년 후 사용자의 요구를 더더욱 수용하고 빠른 성능으로 2003 버젼까지 릴리즈 되었습니다.
: : :
: : : 2005년도를 목표로 또 다음 버젼을 하위 호환성과 향상된 새로운 기능, 빠른 성능까지 모두 가져 가면서 개발 중입니다.
: : :
: : : 이렇게 돌려 보면 정말 대단하다는 말만 나오네요.
: : :
: : : ...
: : : ...
: : :
: : : 이글은 제가 퇴근하고 집에와 글을 보고 두시간 정도 생각하면서 써 봤습니다.
: : :
: : : 대충 봐보니 지훈님은 나름대로 긴시간동안 쓰신듯 합니다. 그동안 많은 외부 리소스를 쓰신듯 하네요.
: : :
: : : 다음글이 언제 올라올지 또 기약 없지만
: : :
: : : 이 질문에는 최소한 가장 빠른 시일 내에 답해 주셔야만 받겠습니다.
: : : --------------------------------------------------------------------------------------------------
: : : 지훈님이 쓰신글 :
: : : 이번에는 개발툴인 비주얼 C++을 예로 듭시다.
: : : 비주얼 C++이 6.0 버전에 이르기까지  표준을 따르지 않았다는 것은 주지의 사실입니다.
: : : --------------------------------------------------------------------------------------------------
: : : 김대우가 쓴글 :
: : : 제 생각엔 악성 루머인듯 합니다.
: : : 만약 이 내용의 출처가 볼랜드사라면 한국 볼랜드는 믿을만한 답변을 해줘야 한다고 생각 합니다.
: : : 저 SQL서버 엔지니어입니다. C++은 소켓 프로그래밍 정도 까지만 대학때 해봤고 지금
: : : 머리속에 C관련해 담고 다니는건 DB-Lib 뿐입니다.
: : : 지훈님께 묻습니다.
: : : 1. ANSI/ISO C++ 표준안 나온게 언제입니까?
: : : 2. Microsoft Visual Studio 6.0 나온게 언제 입니까?
: : : 3. 저도 이제 곧 아이를 가지려고 하는데요 태어나지도 않은, 아니 생기지도 않은 아이에게 너 왜 아빠 안닮았어?
: : :     아빠는 장동건 얼굴인데 넌 왜 옥동자 얼굴이야? 이렇게 아이를 구박할 수 있습니까?(옥동자님께 죄송합니다.)
: : :
: : : 사실 : Microsoft Visual Studio 6.0 이 릴리즈 된 후 ANSI/ISO C++ 표준안이 나왔습니다.
: : :
: : : 6.0 버젼에 이르기까지 C++표준이 없었는데 어떻게 표준을 따를 수 있습니까?
: : : 말씀대로라면 6.0 버젼에서는 표준을 따랐다는 말인데 나오지도 않은걸로 어떻게 비교합니까?
: : : 제 생각엔 좀 심한 악성 루머라고 생각이 되네요.
: : : --------------------------------------------------------------------------------------------------
: : :
: : : 자, 기억 나십니까? 그럼 질문 들어 갑니다.
: : :
: : : *********************************************************************
: : : 질문 : 이 악성 루머의 출처가 어딥니까?
: : : *********************************************************************
: : :
: : : 지훈님 생각에 악성 루머가 아니라고 생각 하셔도 좋습니다. "이 글"의 출처가 어딥니까? 라고 바꿔도 좋습니다.
: : :
: : :
: : : 우리반에 착하고 남들에게 칭찬만 받는 제가 싫어하는 여자애가 있습니다.
: : :
: : : 혼자만 착한 척 하고 선생님들께 칭찬을 독차지해 이해가 너무 미워서 임신 했다고 사람들이게 속이고 다녔습니다.
: : :
: : : 이 여자애는 사람들의 손가락질에 힘들어하며 결국 오랜시간 고민하다가 자살 했습니다.
: : :
: : : 이 여자애를 죽인건 누구입니까? 사람들의 손가락질 입니까? 무엇이 이 여자애를 죽인 겁니까?
: : :
: : : 진정 사람들의 손가락이 이 불쌍한 여자애를 죽인 겁니까? 아니요.
: : :
: : : 미필적 고의 입니다. 만약 지훈님이 이 불쌍한 자살한 여자애라면 어떻게 행동 하겠습니까?
: : :
: : :
: : : 지난번에도 말씀 드렸지만
: : :
: : : 만약 이 악성 루머의 출처가 한국 볼랜드라면 볼랜드는 그에 따르는 책임을 반드시 져야 합니다.
: : :
: : : 설마 생각과 상식이 있는 한국 볼랜드가 이런 악성 루머의 출처라고는 생각하지 않습니다.
: : :
: : : 간단한 질문입니다. 1분도 생각 안해도 됩니다. "대략 언제쯤 어느 술자리의 누구였다." 정도도 충분합니다.
: : :
: : : 혹시나 "한국 볼랜드 직원 000에게 들었다" 라고 하셔도 좋습니다. 아니,
: : :
: : : "볼랜드의 공식 세미나 자리인 000 세미나 자리에서 000 강사에게 들었다"
: : :
: : : 라고 말씀 주셔도 좋습니다. 누구에게 들은 이야기가 아니라
: : :
: : : 지훈님이 직접 생각해낸 지훈님의 "말씀"이라면 "저의 생각 입니다." 라고 적어 주십시요.
: : :
: : : 단, 이글을 보시고 가능한 빨리...
: : :
: : : 저 두어간 반정도만에 제가 아는 지식만으로 이글을 썼습니다.
: : :
: : : 지훈님의 빠른 답변을 기다려 봅니다.

+ -

관련 글 리스트
10092 MS SQL서버 2000의 치명적 버그를 의심하다... 박지훈.임프 5554 2004/11/17
10102     Re:안녕하세요. SQLER의 코난 김대우라고 합니다. 지나가다가 몇자 적습니다. 김대우 12908 2004/11/19
10104         반론 드립니다. 박지훈.임프 3797 2004/11/19
10107             (지적해 주셔서 감사합니다. 수정했습니다.)결국 SQL서버의 문제/버그가 아니란거군요. 김대우 5558 2004/11/21
10114                 김대우님... 박지훈.임프 2601 2004/11/23
10117                     참 안타깝습니다... 반MS, 친MS라니요... 김대우 2314 2004/11/24
10119                         저도 안타깝습니다. 누구나 아는 엄연한 사실을 루머라니요. 박지훈.임프 2244 2004/11/24
10128                             주제넘게 두 분께 싫은 말씀 드립니다. 소프트진™ 2200 2004/11/24
10120                             Re:반MS님이 말씀 하시는 누구나 다 아는 "사실"이 참 궁금합니다. 김대우 2355 2004/11/24
10125                                 보여드린 것을 보지 못하셨나봅니다. 박지훈.임프 2273 2004/11/24
10137                                     점심때 너무 날씨 좋았죠? 그동안 토론을 진행해 주신 지훈님께 감사 드립니다. 김대우 2332 2004/11/25
10230                                         두분께서 직접 만나셔서 담판을 짓고 알려 주세요.- 공개 세미나 소리바람.OJ 2038 2004/11/26
10141                                         Re:점심때 너무 날씨 좋았죠? 그동안 토론을 진행해 주신 지훈님께 감사 드립니다. 이성호 2039 2004/11/26
10123                                 잠시 휴식시간을 가지세요. 소리바람.OJ 1649 2004/11/24
10108                 Re:결국 SQL서버의 문제/버그가 아니란거군요. civilian,안영제 2372 2004/11/21
10111                     Re:Re: 그냥...... 서주형.무소유 2112 2004/11/22
10098     MS SQL서버 2000 사용자는 아닙니다만... 바람 10689 2004/11/18
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.