개인정보, 데이터, 정보화

C# 창시자 앤더스 헤즐스버그(Anders Hejlsberg )

0 6,042

Microsoft에는 개발자들에게 존경받는 몇 명의 인물 중에 C# 이라는 언어를 만든 Anders Hejlsberg가 있다. 그는 C# 외에도 Borland 시절에  Turbo Pascal을 상업적으로 성공하게 했으며, 나중에 Delphi를 디자인한 인물이다.

응용프로그램을 개발하는데 필요한 프로그래밍 언어를 하나도 아니고 세 개씩이나 성공적으로 만들어내고 발전시켰으니 정말 대단한 엔지니어이다.

그는 이러한 업적으로 2001년에 Dr. Dobb에서 수여하는 “Excellence in programming”상을 받았으며, Microsoft에서는 최고의 업적을 만들어내는 사람이나 팀에게 주는 “Outstanding TechnicalAchievement” 상을 C# 팀과 함께 받았다. 그에 대한 더 자세한 내용은 Wikipedia에서 만나보세요.

그가 얼마 전 자신의 삶을 되돌아보는 Talk를 했던 비디오를 소개하고자 한다.

Life and Time of AndersHejlsberg

그의 이야기를 요약하면

  • Chief Designer of C# and Key participant of .Net framework
  • Architect of Visual J++ and WFC (Windows Foundation Classes)
  • 최근에 가족에 충실한 아버지가 되기 위해 스프츠카을 미니밴으로 바꾸었다.
  • Best Billg Meeting(MS의 중요한 소프트웨어 디자인은 모두 빌 게이츠와의 미팅에서 의논되는데, 이 미팅을 Billg Meeting이라고 함) Experience: C# 3.0 Design (LinQ)
  • Worst Billg Meeting: Borland에서 있을 때 MS로부터 스카우트가 들어왔는데, 빌 게이츠에 전화로 스카우트를 제의를 거절한다는 이야기를 했을 때.
  • 현재 하는 일: Chief architect of C#. .Net Framework/CLR/Base Class Library. Avalon.
  • 가장 Exciting 한 부분: C# 3.0, 현재 팀과 일하는 것 자체.
  • 가장 당황스러운 부분: 너무 똑똑한 사람이 많아 각자 의견이 모두 다른 부분. (좋은 부분이면서 나쁜 부분)
  • Bob Muglia (Senior VP of windows server, Anders의 데려온 사람): 세상에서 프로그래밍 언어 발전에 정말로 공헌할 수 있는 사람들이 몇 안 되는데, Anders가 그중에 한 명이다. Turbo Pascal & Delphi에 대한 극찬.
  • 프로그래밍은 덴마크에서 고등학교에서부터 시작. Danish Technical 대학에서 전기 공학을 입학했지만 졸업하지 않음. 졸업하지 않은 것에 대해 후회는 없다.
  • 컴퓨터를 파는 PolyData를 친구와 창업. 여기에서 Compiler를 처음으로 만듦. Pascal을 처음 접하고 작은 사이즈의 컴파일러를 만들어 봄. 이 제품이 나중에 Borland Turbo Pascal이 됨.
  • Borland는 원래 덴마크에서 시작한 회사. Borland는 원래 DEC에서 만든 파스칼 컴파일러를 사용하다가, Anders가 만든 컴파일러는 소개받고 마음에 들어 곧바로 계약을 맺어 Borland 이름으로 팔기로 함.
  • Turbo Pascal: 가격($50)도 싸면서 컴파일 속도가 상당히 빠른 당시에 엄청나게 한 히트 제품.
  • 원래 혼자 일하는 스타일이었으나, Borland에서 Team play를 배울 수 있었다.
  • Delphi: 텍스트 기반에서 Visual 기반 개발 도구로 바뀌면서 만들어진 제품. Client/Server Enterprise 제품, 데이터베이스 연동.
  • Delphi 1.0 출시 이후로 Anders의 결혼식이 연기되었음.
  • Microsoft에서 첫 번째 프로젝트: Visual J++ 6.0, Sun과 소승 등으로 결국에는 실패로 끝남.
  • C#의 시작: 그 당시 Microsoft의 개발 도구에 문제가 많아 많은 개발자가 자바로 옮겨가고 있었다. 윈도 개발에 COM, OLE, ActiveX, DNA 등 너무 복잡한 것들이 산재. 그래서 뭔가 새로운 개발 환경이 필요하다고 생각했음.
  • 그전에 가졌던 모든 경험들 – Pascal, Java, Visual C++, OOP 등 – 로부터 새로운 언어 설계를 시작.
  • Best Feature of C#: Unified Type System.
  • 그의 동료가 증언하는 C# Architect가 된 이유: 프로그래밍 언어에 대해 매우 잘 알고, 우선순위를 잘 정하며, 유럽적인 감각과 미국적인 감각의 조화가 있었다.
  • C#의 Simplicity: 모든 좋은 아이디어는 Simple 한 것에서 온다.
  • 고객 중심의 제품: C#의 주요 고객은 프로그래머. 그 자신 역시 많은 코드를 작성하는데 시간을 보내려고 한다. 코드를 작성을 멈추는 순간, 현실성이 없는 Architect로 전락하고 만다.
  • C# 디자인팀: 99년부터 같은 회의실에서 매주 월수금 pm 1-3 미팅, 정해진 회의 목차 없이 주어진 문제를 토론. 5~6명이 서로 오랜 기간 토론을 하였기 때문에, 어떠한 아이디어나 문제 제기에 대해 2~3분 안에 깊은 대화를 시작할 수 있다.
  • C#의 미래: 프로그래밍 언어와 데이터베이스와의 연결(Linq, 이미 발표됨)
  • 가족: 아들과 딸, 그리고 아내가 임신 중.
  • 조언: 네가 원하는 일을 해라. 열정을 가지고 해라. 그래야 위대한 일이 만들어진다.
  • And Q&A… 가장 좋아하는 데이터 구조: Circular Linked List.
  • 자신이 생각하는 약점: One man player. 혼자 일하고 다른 사람이 코드에 손대는 것을 싫어함. 이러한 방식은 수준 높은 코드를 만들 수는 있지만, 그 이상 커지는 것은 안된다. 이제는 team player로 바뀌고 있으며 동료로부터 많은 것을 배우고 있다.

C Sharp(C#) 이름의 유래

“C Sharp” 이름은 원래 음표에서 유래되었는데 음표에서 Sharp(#)은 반음을 높여야 한다는 의미서,  C++의 언어 이름에서 ++ 기호는 값을 1만큼 증가시킨다는 것과 유사하다. 글자체 또는 브라우저와 같은 곳에서 “Sharp”을 표기하는 기술적인 제약 때문에 이것은 표준 키보드 상에서 표현될 수 없었고 대신 숫자 기호인 “#”이 프로그래밍 언어의 이름을 제정하는 곳에서 “Sharp” 기호를 표현하기 위해 선택되었다.

이 결정은 ECMA-334 C# Language 명세에 반영 되었으나 이것이 실제로 광고 또는 제품 박스에 사용될 때 MS는 음표 기호인 “Sharp”을 사용할 작정이었다. 그러나 “Sharp”을 접미사로  .Net  플랫폼에서 다른 언어명에서 다채롭게 적용되고 있다.

. Net을 위한 최초의 Eiffel은 Eiffel#으로 불렸으나 full Eiffel 언어가 지원된 후에는 그 이름은 사용되지 않는다. “Sharp” 접미사는 때때로 Gtk#(GTK+를 위한 .Net 랩퍼와 다른 GNOME 라이브러리들), Cocoa#(Cocoa를 위한 랩퍼)와 Qt#(Qt toolkit에 접목된 .Net 언어)와 같은 라이브러리를 위해서도 사용되었다.

C++은 C의 발전적인 의미로 C++이라는 의미로 지어졌으며 현재 사용되는 C#또한 C의 발전된 형태의 의미로 지어졌다고도 할 수 있다. #이라는 것은 반올림이라는 뜻이 기도하고 음표에서 나왔다는 점에서 딱딱한 여겨지는 C++과는 다른 느낌을 들게 한다. 또한 흰 건반만으로는 좀 더 풍부한 음색을 구성해 내기 어렵기 때문에 검은 건반의 역할로 인해 음악적인 완성도와 확장된 풍부한 음악을 완성할 수 있다는 의미로 말하기도 한다.

C#은 C++의 객체지향개념을 수용하면서 복잡한 하고 접근하기 어려운 부분을 프로그래머가 직관적으로 코드를 작성하고 이해할 수 있도록 설계하여 프로그래머들이 쉽게 사용 할 수 있도록 구현된 언어이다. MS는 C#을기반으로 닷넷 개발환경을 통하여 윈도우 생태계의  전환점을 만들었다.

이 웹 사이트에서는 사용자 환경을 개선하기 위해 쿠키를 사용합니다. 우리는 당신이 괜찮다고 생각하겠지만, 당신이 원한다면 거절할 수 있습니다. 동의 더 읽기