CS 전공/생각?2011. 3. 25. 15:52
예전에 애리조나대 문 교수님께서, 컴퓨터공학은 응용학문이다 보니 실제로 중요한 법칙 같은 것은 몇 개가 안되는 것 같다.
라는 말씀을 하셨는데, 문득 옳은 지적이신 것 같다는 생각이 요새 많이 든다.
대부분의 SW 개발 업무라는 것이 어떤 문제가 주어졌을 때 그 문제를 푸는 방법(알고리즘)과 그의 구현(프로그램)이라고 한다면, 대부분의 개발 업무라는게 이런 식인 것 같다.

1) 문제가 주어진다.
2) 한 문제를 여러 작은 문제들로 나눈다.
3) 각 문제에 대한 기존 해결책이 있는지 조사한다.
4) 있으면, 가장 낫다는 놈을 가져다 쓰고 없으면 만든다.
5) 합쳐보고 테스트하고, 추가로 최적화시켜 본다.

그리고 이렇게 해서 잘 쓰다가 요구하는 성능치가 더 높아지면, HW를 추가로 공급하거나, 또는 알고리즘을 개선하는 방법을 써야 한다. 많은 경우 기존 알고리즘을 개선하는 방법은 크게 다음과 같은 것같다.

1) 입력 데이터 크기 줄이기
 - 같은 알고리즘이라도 처리에 필요하지 않는 데이터는 읽지 않음으로써 성능 향상을 꾀할 수 있다.
 - 사실 불필요한 데이터 읽기를 피하기 위한 가장 잘 알려진 데이터 구조는 인덱스이다.
 - 최근의 컬럼-기반 DBMS도 요구되는 데이터만 읽기 위해 데이터를 행-기반에서 열-기반으로 옮긴걸로 간소화할 수 있겠다.

2) 알고리즘 자체의 성능 개선
  - 대개는 최악 복잡도를 개선하는 것을 목적으로 하는데, 실제로는  최악 복잡도는 낮아도 평균 복잡도가 우수한 알고리즘들도 많이 선택되는 듯.

3) 시스템 구조에 좀더 적합한 알고리즘
  - 같은 복잡도라도 시스템 구조를 좀더 잘 활용하는 알고리즘들이 효과적이다. 대표적인 것이 메모리 계층에서 데이터 이동이 많지 않도록 cache-aware한 알고리즘들이다. 복잡도는 더 높은 cuckoo hash가 실제로는 더 빠른 것을 보면 메모리 계층에 대한 고려는 매우 중요.

4) 분산/병렬 처리
  - 알고리즘을 병렬화해서 shared-nothing 또는 shared-memory 구조에서 분산 병렬처리하는 방식으로변경(scale-out)
 
5) 추가 자원 투입
  - 더나은 컴퓨팅 성능을 갖는 HW를 투입(scale-up)

대충 이게 다일 듯.
쓰고나면 별로 하는 일 없어보이는데 왜 이쪽 일이라는 것은 언제나 복잡해 보이는지 모르겠다.
Posted by Bart

댓글을 달아 주세요

CS 전공/생각?2010. 11. 17. 15:26

많은 사람들이나 언론에서 Steve Jobs를 '프리젠테이션의 귀재', '발표를 하려면 잡스처럼 해야 한다' 고 한다. 그래서 Steve Jobs의 제품 설명회(iPad와 iPhone4)의 발표 자료를 직접 보았다. 2시간은 족히 걸리더라.
Jobs가 개인적으로 좋은 목소리를 가졌다고 생각되지는 않았다. 오히려 약간 카랑카랑하니 거칠기까지 했다. 그렇다고 잘생긴 것도 아니다. 머리는 벗겨졌고, 중동계(잡스의 친아버지는 시리아 사람)인 그의 얼굴 또한 WASP와는 구별된다.

하지만 그의 발표에서 보면 확실히 배울 점이 몇 가지 있다.

첫 째는 숫자로 자신이 하는 말을 뒷받침하는 것이다.
가령 이런 식이다. 보통 연사들은 '오늘 발표에 많은 분들이 참석해 주셨다.' 보통 사람들은 이렇게 말을 하는데 잡스는 오늘 30개국에서 1500명이 넘는 사람이 참석을 해주었다. 이런 식이다. 제품의 특징을 말할 때도 마찬가지이다. 배터리 수명이 좋다. 속도 빠르다. 이런 식이 아니다. 배터리 수명은 최대 10시간이고, 속도는 1GHz이다. 제품 출시는 몇월 몇일까지 어느어느 나라에 될것인지 일일이 나라까지  나열한다. 사람은 수치에 약하다.

둘 째는 간단하고 쉬운 말로 천천하고 분명하게 말한다.
잡스가 하는 영어는 내가 경험한 어느 미국 사람들보다도 느리게 말하는 거다. 가끔은 외국인인 나조차 답답하게 여겨질 정도로 천천히 말한다. 대신에 하고 싶은말은 간결하고 분명하게 말한다.

셋 째는 철저하게 준비를 하고 오는 것이다.
발표에 있어서는 현재 슬라이드에서 할 이야기를 끊기지 않고 다음 슬라이드에서 이어서 계속 설명해 나가는 것, 즉 적당한 때에 슬라이드 전환을 해줘야 한다. 그래서 언제 슬라이드를 전환할 것인지를 알고 다음 슬라이드의 내용들이 뭔지 기억해 두어야 한다. 잡스는 다음 슬라이드가 뭔지 보지 않고  슬라이드를  계속 자기 발표를 한다. 철저히 자기의 발언과 슬라이드 간의 싱크를 맞춰놓고 들어온다. 보다보니 잡스가 손에 든 리모트를 잘못 조작해서 다음 슬라이드로 넘어가는 경우가 있었는데, 자신이 정해둔 타이밍에 슬라이드 전환이 안된 것조차 실수로 생각하더라.

넷 째는 슬라이드를 간단하면서 명료하게 쓴다는 것이다.
사실 기술 소개 자료들은 쓸 내용이 많아서 간단하고 명료하게 작성하는게 더 어렵다. 
간단하게 몇자로 슬라이드를 만들면, 전달할 내용이 빠지게되고, 반대로 슬라이드에 많은 내용을 집어넣으면 청중이 보고 이해하기가 어렵다. 
또한 사람은 눈과 귀로 동시에 다른 정보를 습득할 수 있다. 때문에 슬라이드에 쓰여진 글들을 그대로 읽는 발표자를 만나면 청중은 무지하게 괴롭게 된다.

잡스는 그런면에서 슬라이드로 전달할 내용과 말로서 전달할 내용들을 정확히 나눠서 구분하고, 슬라이드의 내용을 간단명료하게 하는데 일가견이 있는 것 같다. 자신의 회사를 기술과 인문학의 갈림길에서 고민하는 회사다라는 멘트를 하면서 슬라이드에는 인문학과 기술의 이정표 사진을 보이고 있다.
복잡한 생각을 하나의 그림으로 투영시켜 설명하는 정말 멋진 사례라고 보여진다. 



언제나 그렇듯 프리젠테이션의 의도는 상대방을 설득하는 것. 상대방을 설득하기 위해서는 이해하기 쉽고 직관적인 예들을 가지고 설명하는 것이 좋겠다. 여기 교수님도 비슷한 말씀을 하시더라.
프리젠테이션은 자기가 아는 것을 발표하는 것이 아니고 자기가 아는 것을 남이 알아듣도록 하는 거라고... 옳은 말이다. 

Jobs의 최근의 presentation들은 http://www.apple.com/apple-events에서 볼 수 있다.




Posted by Bart

댓글을 달아 주세요

CS 전공/생각?2010. 10. 4. 22:53

옛날의 나도 그랬고, 지금도 많은 사람들이 그렇다. 학회는 그냥 논문된거 정해진 시간에 딱 발표하고, 나머지 시간은 그 주변의 관광지를 놀러다니기 위함이다~! 더군다나 그 학회가 외국의 유명한 관광지에서 열리는 곳이라면 더더욱 그렇게 된다. 사실 이 분야 사람들 만나고 동향 파악하려면 학회만한 것이 없다. 물론 비행기 타야하고, 시간/돈 들기는 하지만..  그런면에서 BLOG@ACM에 올라온 IBM Almaden center의 연구원인 Tessa Lau 박사가 쓴 글은 간단하게 어떤 자세로 학회에 참석해야 하는지를 짧고 굵게 설명해 주어 좋다.

1. Read the conference program ahead of time
2. Make a list of who you want to meet
3. Who should you meet?
4. Ask questions at the conference
5. Memorize your elevator pitch*
(*주: elevator pitch 또는 elevator speech는 자신과 자신의 연구에 대한 아주 짧은 소개)
6. Have social lunches
7. Don't clump (아는 사람끼리 무리지어 다니지 말고 학회말고는 볼 수 없는 사람을 만나라)
8. Enjoy!

원문: http://cacm.acm.org/blogs/blog-cacm/97527-how-to-attend-an-academic-conference/fulltext

Posted by Bart

댓글을 달아 주세요

CS 전공/생각?2010. 2. 12. 00:55
엊그제 문 교수님과의  미팅 중에 "UA 학생 계정들은 작년부터 Google Apps로 아웃소싱 중"이란 말씀을 하시더라.  이를 위해 생각보다는 굉장히 많은 돈이(몇백만 달러) 지불되는 것으로 안다고 하시더라.
구글은 참 비즈니스를 잘하는 것 같다. 적어도 클라우드 컴퓨팅으로 이윤을 얻는 대표적인 기업이다. 이미 여러 대학과 기업들이, 심지어 캘리포니아 주정부도 구글 앱스를 이용하고 있다더라. 분명 기업이나 학교 입장에서는 이메일 계정 유지를 위한 서버나 네트워크 같은 HW 와 기술팀들의 인건비 등의 절감 때문에 아웃소싱을 하는 것이겠다. 문제는 민감한 정보들이 한 기업에 의해서 다루어질 수 있고, 절감된 비용 중에는 HW 비용 뿐만 아니라 기술팀들이라는 사람이 들어갈 수 있다는 거다. 결국엔 아웃소싱하면서  불필요한 인력은 잘리게 되지 않을까. 더이상 운용할 서버도 SW도 없어지는데 이들을 계속 고용할 필요가 없을 것이다. 그리고 구글은 인터넷 상에 공개된 데이터 뿐만 아니라 기업내 내부 데이터까지 관리할 수 있게 된다.

문득 SSM(Super Super Market; 기업형 슈퍼마켓) 진출로 동네 슈퍼들을 위협하는 대형 유통업체들이 생각난다. 유통망의 이점을 통해 동네 슈퍼들을 고사시키는 대형 유통업체들과 검색엔진의 이점을 통해 기존 여러 영세(?) 업체들이 새로이 개척하거나 진출한 분야로 비즈니스를 확장하는 구글. 
어제 퇴근길 라디오에는 구글이 이제 고속 인터넷 액세스 서비스에도 진출한다고 하더라. 엊그제에는 Buzz라 명명된 SNS 서비스를 새로이 시작해다. 
사실상 구글은 이제 안하는게 없다고 봐도 무방할 지경이다. 검색 기술을 기반으로 해서 이제는 Google Apps를 필두로 한 클라우드 컴퓨팅, OS, 모바일 플랫폼, 스마트 폰, SNS, 인터넷 액세스 서비스까지. 
이용하기 편리하고 한 곳에서 모든 서비스를 이용할 수 있다는 것은 큰 장점이 된다. 구글 계정을 가지고 있으면, 구글이 제공하는 많은 서비스들을 이용할 수 있다. 때문에 많은 유저들이 구글을 이용하고 있다. 마치 허름한 동네 슈퍼보다는 깨끗하고, 상품 진열이 잘된 SSM으로 사람이 더 몰리는 것처럼. 사람들은 분명 저러한 유통업체의 횡포를 걱정하고 욕을 해대도, 결국엔 좀더 가격싸고 깔끔한 분위기의 SSM으로 발길을 돌리게 된다. 그 덕분에 우리나라 유통망은 그만큼 단순해져서 물건의 가격 결정은 몇 개 기업에 따라 결정될 수 밖에 없다.
인터넷 또한 구글에의 의존성이 커짐에 따라 영세 IT 업체들은 겹치는 사업 영역에서 구글에 패배할 수 밖에 없다. 새 비즈니스 영역을 개척하면 구글이 곧바로 구글 계정에 새 서비스를 추가한다. 

그간 Google의 장점은 개방과 공유였다. 개발자와의 연대를 굉장히 중요시하였다. 자신의 서비스들을 모두 OpenAPI로 개방해 놓았고, code.google.com 같이 여러 방법으로 오픈 소스의 개발과 공유를 지원하였고, 자신들의 TechTalk들도 Youtube를 통해 공개해 왔다. 그에 따라 오픈 소스 진영에서의 구글에 대한 평판은 과거 API도 제대로 공개 안하던 MS에 비하면 굉장히 우호적이다. 하지만, 지금 불현듯 보니 인터넷과 오픈소스 생태계는 분명 커졌지만, 그만큼 더더욱 구글에 의존적이 되어가는 듯 하다. 2000년대 초에 MS가 OS에서의 독점적 지위를 남용한다고 그렇게 욕을 해댔지만, 그때 당시 MS의 사업 영역도 구글보다는 크지 않았던 듯 하다. 지금의 구글은 독점적 지위를 남용하지 않고 있을지는 몰라도 이미 독점 기업이 되어버린 것은 아닌지.

'CS 전공 > 생각?' 카테고리의 다른 글

Steve Jobs의 발표를 보고.  (0) 2010.11.17
학회에는 어떻게 참석하는가?  (0) 2010.10.04
구글은 지금도 "Don't be evil"일까.  (2) 2010.02.12
꽉 막힌 한국의 웹 접근성  (0) 2010.01.03
개발 프로젝트의 실패 요인의 분석.  (1) 2009.12.15
논문 심사  (0) 2009.10.05
Posted by Bart

댓글을 달아 주세요

  1. webtk

    주제와는 좀 다른 얘기지만, '민감한 정보'의 관리를 외부에 위탁(아웃소싱) 하는 것의 위험성을 다들 알텐데, 왜 그렇게 할까요? 위탁 관리로 인한 이익이 위탁 업체에 의한 정보 누출의 리스크 비용 보다 클수가 있는 건지. 어떻게 그렇게 설득이 가능한지 궁금하네요.

    2010.02.15 00:31 [ ADDR : EDIT/ DEL : REPLY ]
    • 기밀성 vs. 비용과 관리의 전문성 중에서 후자를 택한 경우이겠지. 여기도 faculty 계정은 계속 그대로 따로 유지하는 듯.

      2010.02.17 11:33 신고 [ ADDR : EDIT/ DEL ]

CS 전공/생각?2010. 1. 3. 17:44

얼마 전 결정 난 사항 중에 우리나라 모바일 뱅킹에서도 PC 인터넷 뱅킹과 동일한 수준의 보안체계를 마련한다는 얘기가 있다.(인증서, 키보드 보안, 방화벽, 바이러스 백신 등등등)
현재까지 알려진 플랫폼만 해도,  iPhone, Google Android, MS Windows Mobile, Symbian, Blackberry OS, WIPI, BADA 등 정말 많은 모바일 플랫폼들이 있는데, 이들 모두에 어떻게 모바일 뱅킹을 위한 SW들을 다 지원하겠다는 건지 모르겠다.

작년 9월의 오픈웹 상고심 판결에서도 웹브라우저의 점유비율은 변동성이 있고 수많은 운영체제와 웹브라우저에 호환되는 가입자설비를 제작, 운영, 업그레이드하는 데는 많은 비용이 소요된다"며 "어떤 웹브라우저 환경에 최적화된 가입자설비를 제공할지는 금융결제원 및 금융기관 등 등록대행기관 스스로의 사업적 판단에 맡겨둘 수밖에 없다"라고 했다. 
이 판결의 의미는 법적으로 어떤 브라우저를 지원하는지를 강제할 수는 없다는 의미이겠다.
결국엔 업자들 스스로 알아서 결정해야 한다는 취지로 법원은 판단한 것으로 생각된다.

현재 대표적인 PC 기반 웹 브라우저는 MS IE 7,8, Firefox, Google Chrome, Opera 등 그 수가 모바일 플랫폼에 비해 절대 많은 게 아니다.  
모바일 뱅킹을 위해서 저 위에 있는 모든 플랫폼을 위한  보안 SW를 만들어야 한다면, 모바일 뱅킹 사용자 수보다 훨씬 많은 PC 인터넷 뱅킹 사용자부터 먼저 배려해야 할 일이다. 오히려 역차별인 셈이다. 당장 전세계적인 FIrefox의 점유율은 30%를 넘는다. 기업 입장에서는 이들에 대한 접근성부터 먼저 보장해야 할 일이다. 
설마 모바일 뱅킹에서도  MS 윈도우즈 모바일 하나만 지원할 셈인가? 만약 그렇다면 정말 어처구는 없는 일이다. 
웹 표준 기술로만 인터넷 뱅킹이나 모바일 뱅킹을 지원하게 하면 모든 문제가 다 해결된다. 우리만 그렇게 하자는 것도 아니고 ,다른 나라들은  다 그렇게 하는데 왜 우리나라만 이렇게 하는지 도통 모르겠다. 왜 키보드도 없는 스마트 폰 사용자가 키보드 보안 프로그램을 설치해야 하고, 방화벽 기능이 내장된 Windows vista나 Wiindows 7 사용자가 따로 방화벽을 설치해야 하고, 백신 프로그램 설치되어 있는 PC에 악성 소프트웨어 설치를 또 해야 하는지 모르겠다. 한마디로 보안 과잉이다. 

한쪽 브라우저나 한쪽 플랫폼만 지원할 수 있게 하는건 공정거래에도 위배되는 거 아닌가? 암만 생각해도, 우리나라 웹 보안을 결정하는 사람들은 모두가 "이해당사자"들인 듯 싶다. 

'CS 전공 > 생각?' 카테고리의 다른 글

학회에는 어떻게 참석하는가?  (0) 2010.10.04
구글은 지금도 "Don't be evil"일까.  (2) 2010.02.12
꽉 막힌 한국의 웹 접근성  (0) 2010.01.03
개발 프로젝트의 실패 요인의 분석.  (1) 2009.12.15
논문 심사  (0) 2009.10.05
한국이 노벨상 없는 이유  (0) 2009.07.31
Posted by Bart

댓글을 달아 주세요

CS 전공/생각?2009. 12. 15. 02:27
 CACM Dec 2009을 보니 개발 프로젝트의 실패 요인에 대한 조사/분석 글이 실렸다.
(Why Did Your Project Fail by Narciso Cerpa and June M. Verner, DOI: 10.1145/1610252.1610286)
저자들은 설문 조사 방식을 통해 미국, 호주, 칠레 IT 업체의 235 개의 개발 프로젝트 중 70개의 실패한 프로젝트를 분석해서 과제의 실패 요인들을 분석했다. (이중 21개는 아웃소싱으로 수행된  프로젝트이다.)

재미있는 것은 PM들은 프로젝트가 실패해도 실패라 인정하지 않고, 과제에 찹여했던 개발자들이 주로 참여 프로젝트의 실패를 잘 얘기한다는 것. 프로젝트 종료 후 프로젝트에 대한 평가가 제대로 이뤄지지 않고 있다라는 것 그리고 프로젝트의 실패는 보통 하나의 문제가 아닌 아래와 같은 여러 요인들이 겹쳐서 발생한다 한다.

여러 요인중 실패한 개발 프로젝트에서 가장 빈번하게 발생하는 요인들은:

1. 개발 과정에 영향을 미치는 납기일
2. 개발 과정을 초기 쉽게 생각했던가
3. 위험요인들의 산정과 관리가 제대로 이루어지지 않았던가
4. 작업 시간에 대한 적절한 보상이 주어지지 않는 경우

이랜다. 요는 프로젝트 초기에 얼마나 요구사항들이 충분히 잘 정의되어지고, 충분한 개발 기간이 주어지느냐인 듯 싶다.  이런 문제는 비단 한국만의 문제는 아닌 듯...
여튼 프로젝트 개발 초기에 요구사항들이 잘 정의가 되고 고객과 잘 합의된 개발 기간을 가져야만 성공적인 프로젝트를 수행할 수 있겠다는 얘기인데, 아마도 이것이 PM이 가장 신경을 써야 하는 부분인 듯. 
  



'CS 전공 > 생각?' 카테고리의 다른 글

구글은 지금도 "Don't be evil"일까.  (2) 2010.02.12
꽉 막힌 한국의 웹 접근성  (0) 2010.01.03
개발 프로젝트의 실패 요인의 분석.  (1) 2009.12.15
논문 심사  (0) 2009.10.05
한국이 노벨상 없는 이유  (0) 2009.07.31
DB쪽 논문 인용 수 TOP5?  (2) 2009.07.29
Posted by Bart

댓글을 달아 주세요

  1. webtk

    저 "잘 정의"가 참 어려운 일인 것 같습니다.
    '잘됨'이란 상태에 대한 합의된 평가가 어렵다고들 느끼니까요.
    '애자일 선언'을 한번 보심은 어떠신가요.

    2009.12.15 20:59 [ ADDR : EDIT/ DEL : REPLY ]

CS 전공/생각?2009. 10. 5. 18:19
과거에 비해 논문 심사 의뢰가 많이 들어오는 편이다.
논문 심사가 들어오는 건 참 고마운 일이다. 그만큼 사람들이 내 손(?)을 필요로 한다는 얘기일 수도 있고, 아니면 이 바닥에서 내 이름이 잊혀지지 않고 있다는 얘기도 되니까 말이다. 
하지만, 아직 갈길이 먼 나인데 내 무엇을 보고 이리 논문 심사를 의뢰들 하시나 하는 생각에 부끄러움이 들 때가 많다.

어쨌든 심사가 들어오면, 열심히 심사를 하려고 한다. 누군가 그랬다. reviewer들은 너의 적이 아니라 너의 논문을 보다 견고하게 하기 위한 조언자들이라고. 비판을 칭찬으로 받아들이라고. 옳은 말이다. 

리뷰어 중에 성실한 분들은 정말 바쁜 와중에 몇 장씩 자세하게 comment를 달아주는 경우도 있다. 또한, 이런 이런 페이퍼들도 있는데 네가 안 읽어본 것 같다. 이 내용들을 검토해서 추가하면 논문의 질이 더 높아지겠다. 이런 식으로 마치 자신들이 어드바이저 마냥 대해주는 분들도 있다.

하지만 간혹 논문 심사를 받다보면, 말도 안되게 간단하게 몇 줄 적고, 가부 판정하는 reviewer들을 만나기도 한다. 그런 경우에는 논문 작성자 입장에서는 정말 분기 탱천이다.  가타부타 자세하게 설명을 해줘야 논문을 가다듬는데 도움이 되는데, 그냥 "이래서 뭐, 저래서 뭐 그래서 게재가 가/부이다". 이렇게 쓰면, 작성자 입장에서는 이 리뷰어가 논문을 제대로 읽고서 심사했나 하는 의심까지 들 정도다. 모 학회는 Accept/Reject 판별을 하는데 아무런 comment도 주지 않는 황당+무례함를 보이기도 했다.(추후에 그 학회에서 오는 모든 메일은 싸그리 무시하고 있다. 지금은 어떤지 모르지..) 

Jiaheng Lu 교수의 홈페이지에서 논문 리뷰에 관한 자신의 다짐 정도 되는 글을 봤는데, 리뷰어 입장에서 마음에 와 닿아 글을 옮겨본다.

    My pledges as a reviewer:

    * I will treat your work with respect and write reviews in a courteous manner. 
    * I will spend enough time with your paper. I will not make any decision without a good understanding.
    * In case I decide to recommend rejection, I will do so on solid grounds. 

'CS 전공 > 생각?' 카테고리의 다른 글

꽉 막힌 한국의 웹 접근성  (0) 2010.01.03
개발 프로젝트의 실패 요인의 분석.  (1) 2009.12.15
논문 심사  (0) 2009.10.05
한국이 노벨상 없는 이유  (0) 2009.07.31
DB쪽 논문 인용 수 TOP5?  (2) 2009.07.29
엔지니어는 왜 논문을 읽지 않는가?  (1) 2008.09.04
Posted by Bart
TAG REVIEW

댓글을 달아 주세요

CS 전공/생각?2009. 7. 31. 00:55

한국이 과학 노벨상 못받는 이유
한국에서 과학분야 노벨상 수상자 등 세계 수준의 과학자가 나오지 않는 것은 눈에 보이는 성과를 위해 양적 성장에 치우쳐 왔기 때문이라는 분석이 나왔다. 또 우수 인력이 극소수 대학에 편중돼 대학간 공동연구가 없는 것도 큰 문제점으로 지적됐다.

19일 교육과학기술부가 공개한 정책연구보고서 ‘세계수준 과학자 배출과 창의형 과학기술 환경 조성’에 따르면 국내에서 과학기술에 대한 투자는 증가하고 있으나, 연구원 수, 논문의 질적 수준은 선진국 수준에 크게 못 미치는 것으로 드러났다.

국내 연구원 수는 경제활동인구 10 00명당 8.3명으로 미국(9.3명)과 일본(10.6명)에 못 미쳤다. 과학기술논문색인(SCI) 논문 수는 2007년 2만 5494건으로 세계 12위를 기록해 양적 성장은 어느 정도 달성했다고 평가받지만, 질적 수준의 잣대인 논문 1건 당 피인용 건수는 3.44건으로 세계 30위에 불과했다.

전문가들은 우리나라에서 과학 노벨상 수상자가 배출되지 않는 가장 큰 이유로 국내 과학의 창의성 부족을 꼽았다. 과학자들이 짧은 시간내에 눈에 보이는 성과를 얻겠다는 양적 성장에만 치우쳤다는 지적이다. 또 이미 존재하는 기술을 모방·개선하는 방식으로 선진국을 추격해 왔기 때문에 창의성과 원천기술 개발능력이 부족한 데다, 암기위주인 국내 교육이 창의성 발현의 가장 큰 걸림돌이 됐다고 분석했다.

 

대학간의 경쟁력 격차도 문제점으로 제시됐다. 우수 과학 인재들이 포항공대나 카이스트 같은 몇몇 대학에 편중돼 연구인력 쏠림현상이 일어나 대학간 교류나 협력이 제한된다는 것. 그 결과 공동연구보다는 개인 연구성과가 많았다. 하지만 2000년 이후 과학 노벨상은 공동수상 비율이 90.5%에 달한다.

젊은 우수인재들의 해외 유출도 주요 원인으로 지적됐다. 연구자에게 지원되는 연구비가 5년 정도의 단기간 논문 수에 따라 평가돼 지원금이 들쑥날쑥하다 보니 안정적인 연구비가 지원되는 해외 연구소로 진출하는 경향이 크다는 것이다.

과학 노벨상을 받은 연구 성과 대부분이 수상자가 20~30대 때 연구한 결과임을 감안하면 젊은 인재들의 해외유출은 수상에 치명적이라는 분석이다.

연구책임자인 포항공대 김승환 연구처장은 “응용 과학보다 기초 과학에 대한 투자를 높여야 하며, 창의적인 연구 환경을 조성해야 한다.”고 말했다.

*출처: 서울 신문 http://www.seoul.co.kr/news/newsView.php?id=20090520001011

* 1년에 한두편의 논문을 써도 파급력이 큰 논문을 쓰도록 해주어야 하는데, 단순히 SCIE나 학진 등재 논문 편수로만 논문을 평가를 하니 이런 문제가 나오는 듯 싶다. A. Einstein이 뭐 논문 많이 써서 우수한 학자였던가..
* 단순히 외국 기술 대체를 위해 제안되는 기술 따라잡기 과제보다는 독창적인 연구를 할 수 있게 해주면 좋겠다.
* 이런 면에서 보면, 우리나라 실정에서 논문 편수에 매달리지 않고, 매년 SIGMOD, VLDB 논문을 내시는 교수님 몇 분은 정말 존경스럽다.(더욱이 그러면서도 교수직을 유지할 수 있는 실적을 매년 충분히 뽑아낼 수 있는 능력이 있으신 것도..) 

'CS 전공 > 생각?' 카테고리의 다른 글

개발 프로젝트의 실패 요인의 분석.  (1) 2009.12.15
논문 심사  (0) 2009.10.05
한국이 노벨상 없는 이유  (0) 2009.07.31
DB쪽 논문 인용 수 TOP5?  (2) 2009.07.29
엔지니어는 왜 논문을 읽지 않는가?  (1) 2008.09.04
불태웠어 새하얗게...  (4) 2008.08.29
Posted by Bart

댓글을 달아 주세요

CS 전공/생각?2009. 7. 29. 00:59

A relational model of data for large shared data banks- EF Codd - 1970 - portal.acm.org
 
Cited by 4805


R-trees: A dynamic index structure for spatial searching- A Guttman - ACM Sigmod Record, 1984 - portal.acm.org
Cited by 4124

[BOOK]
 Transaction processing: concepts and techniques
J Gray, A Reuter - 1993 - books.google.com
Cited by 3111

Data cube: A relational aggregation operator generalizing group-by, cross-tab, and sub- …
J Gray, S Chaudhuri, A Bosworth, A Layman, D … - Data Mining and Knowledge Discovery, 1997 - Springer
Cited by 1524


An overview of data warehousing and OLAP technology
S Chaudhuri, U Dayal - ACM Sigmod Record, 1997 - portal.acm.org
Cited by 1516

The ubiquitous B-tree- D Comer - portal.acm.org
Cited by 1197



내가 여태까지 보았던 내 분야 논문들 중 인용 수가 가장 높은 논문들..
이보다 인용 수 더 높은 논문들이 있을런지 모르겠지만... 여튼 이런 순위가 매겨지더라...
인용 횟수가 100만 넘어도 대단하다고 여겨지는데, 보라 저 엄청난 인용 횟수를....
(OALP과 B-tree 논문은 survey paper라 빛이 좀 바래지기는 하다.)

저들과 같은 논문을 쓰고 싶다.

한 분야를 새로이 열거나 또는 그 분야를 완전히 정리하여 끝내버릴 수 있는 그런 논문을..

PS. 역시 Jim Gray는 대가였다. 
      그간  DB계의 Turing Award Winner는 총 3명: Charles W. Bachman, E.F. Codd, Jim Gray.

'CS 전공 > 생각?' 카테고리의 다른 글

논문 심사  (0) 2009.10.05
한국이 노벨상 없는 이유  (0) 2009.07.31
DB쪽 논문 인용 수 TOP5?  (2) 2009.07.29
엔지니어는 왜 논문을 읽지 않는가?  (1) 2008.09.04
불태웠어 새하얗게...  (4) 2008.08.29
이 학회는 대체...  (2) 2008.06.26
Posted by Bart

댓글을 달아 주세요

  1. webtk

    코드와 그레이는 정말 후덜덜이군요.
    두 분 자서전 같은 건 없을까요?
    공부 방법이나 모티브 같은 것이 있으면 좋은 자극이 될 수 있을 것 같은데...

    2009.07.29 11:07 [ ADDR : EDIT/ DEL : REPLY ]
    • 1. Tribute to Honor Jim Gray, SIGMOD Record, Jun 2008,
      http://www.sigmod.org/record/jimgray/

      2. Remembering Jim Gray, Communications of the ACM, Nov 2008,
      http://cacm.acm.org/magazines/2008/11

      2009.07.29 15:07 신고 [ ADDR : EDIT/ DEL ]

CS 전공/생각?2008. 9. 4. 18:28
요사이 들어 궁금해지는 질문이 하나 있다.

왜 엔지니어(여기에서 엔지니어란 실제 필드에 나가서 일하고 있는 practitioner를 일컬음)는 졸업 후 일을 하는데 있어 논문을 읽지 않는가?
  - 부분문자열 검색에 있어 Boyer-Moore 알고리즘이 최대 N/M 여기에서 N은 스트링 길이, M은 검색 문자열의 성능을 제공해 주는 것을 안다면 char by char로 하나씩 비교하는 것이 얼마나 무식한 짓인지 알텐데... 아니면, 단순히 라이브러리에서 제공하는 substr()함수라는 것이 어떻게 구현되어 있는지는 알고 사용하는 건가?

왜 엔지니어는 시스템의 scalability는 고려하지 않고, 그냥 돌아가게만 짤까?
  - 포인터로 넘기라고 해도 구현이 복잡하다고 value copy를 해버리고. 크기가 큰 struct를 value copy하는 것이 잘못되었다는 것을 굳이 pointer address의 길이와 struct의 크기만 비교를 해도 알 수 있을텐데...

왜 엔지니어는  scalability는 무조건 서버 담당이라고 생각을 할까?
 
세상에 쏟아지는 알량한 개발 기술들 익히기 전에 기본부터 잡아 놓고 있어야 하는 것이 아닌가. 프로그램 짜면서 간단하게나마 알고리즘의 복잡도는 지속적으로 신경써야 하는 것 아닌가..
지금 잘나간다는 개발 기술이 몇년, 몇십년 지나고나서도 계속 쓰일 것도 아닐 것이고... 변화하는 개발환경에 맞춰가는 것도 중요하지만 어떤 경우에 있어서도 비범하게 사용될 기본은 있어야 하는 것이 아닌지..
왜 우리나라엔 남의 나라 회사 기술들의 전도사들이 이렇게 많은지...

결국엔 그 기술로 비즈니스 솔루션 만들고 보면 scalability 면에서 도저히 외산을 못 따라가 종국엔 외산 비즈니스 솔루션 통채로 사 버리고, 나중에 하는 것이라곤 외산 서버 위에서 애플리케이션의 개발 밖에 되지 않는다.  

그럼 다시 처음으로 돌아가서 왜 자료구조, 알고리즘 과정을 배우고 졸업한 엔지니어들이 최소한의 scalability도 고려하지 않는 것일까? 왜 그들에게 논문이란 읽고 이해하기가 그토록 어려운 것일까? Practitioner와 theorist 간의 장벽은 그리도 두꺼운가?

이런 문제에 대해서 대학에서 신경써줘야 하는 거 아닌가..?
근데 이런 주제는 CS의 어느 분야에 속하지? SE인가 아니면 전산교육인가.



 

'CS 전공 > 생각?' 카테고리의 다른 글

한국이 노벨상 없는 이유  (0) 2009.07.31
DB쪽 논문 인용 수 TOP5?  (2) 2009.07.29
엔지니어는 왜 논문을 읽지 않는가?  (1) 2008.09.04
불태웠어 새하얗게...  (4) 2008.08.29
이 학회는 대체...  (2) 2008.06.26
IEEE TKDE 리뷰  (3) 2008.06.23
Posted by Bart

댓글을 달아 주세요

  1. webtk

    백배 공감입니다. 그래도 요즘엔 공부하는 분들이 많이 계신거 같던데...
    여튼 저도 열공해야겠습니다.

    2008.09.08 09:22 [ ADDR : EDIT/ DEL : REPLY ]