구글이 며칠전에 Code Search라는 새로운 서비스의 베타 버젼을 릴리즈 하였습니다.
Code Search는 인터넷 상에 널려있는 여러 프로그램들의 소스 코드를 Crawling해서 얻은 DB를 검색할 수 있게 해주는 서비스입니다. 주소는 http://google.com/codesearch 입니다.

어떻게 보면 Source Insight에서 제공하는 변수나 함수의 선언 검색을 인터넷 단위로 확장 시킨 것이라는 생각이 들지만 문제가 이렇게 맹목적으로 엄청난 양의 소스코드들을 대상으로 찾은 결과가 얼마나 유의미할까라는 것입니다.
예컨데 Google Scholar 같은 경우는 아무리 전문 용어의 나열이라 하더라도 자연어 또는 공통으로 사용이 약속된 텀(term)에 기반을 두고 있는 문서들을 대상으로 합니다. 제가 DVS라고 적는다면 Dynamic Voltage Scaling이라는 단어 외에 다른 뜻으로 쓰이는 경우는 거의 없고 한정하는 의미가 명확합니다. 의미가 있는 결과를 얻을 수 있지요. 또한, 많은 결과를 얻을 수록 DVS에 대한 다양한 지식과 견해를 얻을 수 있게 됩니다.
소스 코드의 경우를 생각해보자면 우선 소스 코드의 대부분의 내용들은 해당 소스코드의 컨텍스트를 이해하고 있지않는한 의미가 없는 경우가 대부분입니다. 제가 slab allocator라는 키워드로 소스코드를 검색한 결과는 대부분 slab와 관련된 변수나 파일의 선언 또는 include였습니다. 과연 이 결과로 제가 slab allocator가 어떻게 쓰이는지 알 수 있을까요? 오히려 이런저런 키워드를 사용해본 결과 주석에서 더 의미있는 정보를 얻은 경우가 많았습니다.
결국 소스코드의 대부분의 내용은 여러가지 의미로 사용될 수 있는 모호한 코드의 나열이기 때문에 이러한 서치엔진이 과연 어디에 쓰여야 할지 감이 잡히지 않는군요.
다만 Advanced Search에서 License 또는 언어에 따른 소스 코드 검색은 때로 약간의 도움이 될 것이라 생각도 됩니다. 하지만 저로서는 아직 딱히 이 서비스를 어디에 써야할지 잘 모르겠으니 상상력의 부족인가요?



댓글을 달아 주세요
구글.. 리쿠르트 왔을 때 갔으면 좋았을텐데.. 아쉽당.