CouchDB

|
작년말 쯤 위키의 심플함이 마음에 들어서 이리저리 사용을 해보다가 생각난 것이 페이지 자체를 하나의 데이터베이스 처럼 활용해서 페이지의 컨텐츠를  XML 또는  CSV와 같이 넣어놓고 빼서쓰면 나름 심플한 위키페이지 기반의 데이터베이스로 활용할 수 있지 않을까 하는 생각을 해보았다. 물론 기본적인 아이디어면서 이것을  RESTful 한 인터페이스를 이용해서 활용하면 나름 웹에 적합한 WebDB 의 전형적인 케이스가 될거라고 생각한 것이다. 물론 국내에는 deepblue 님이 slugger 라고 하는 것이 스프링노트을 이용해서 만든 것이 유사한 것이라고도 생각이 들었다.

그런데, Erlang 이라는 언어를 기반으로 만들어진 아파치 인큐베이팅 프로젝트중에 CouchDB 라는 것을 알게 되었는데 바로 작년에 나 혼자 생각했던 개념을 잘 구현해놓은 놈 같다. Erlang 이라는 언어자체가 나 같은 구닥다리에게는 좀 이해하기 힘든 구석이 있지만 구현이 이 언어로 되어 있어서 운영이나 분산처리가 좋은 것이지 실제 프론트엔드에서 사용하기 위해서는 JSON, Javascript 을 이용해서 사용할 수 있기 때문에 사실상 별 문제가 없어 보인다.

문득 사람 생각은 다 비슷하다는 거, 그리고 나보다 똑똑한 사람들은 훨씬 많다는 거, 그리고 진즉에 이러한 것을 열심히 개발하는 사람도 제법 된다는 거... 머 이런 생각이 들었다. 하지만 나도 머... 아직은 그리 감각이 많이 떨어져 있지는 않다는 자존감 ;-)

새로운 언어 배우는 것도 좋아하고 요즘 웹기반의 서비스를 생각하시는 분들은 한번 공부해보면 좋을 것 같다. 더 이상 코딩을 하지 않는 나로써는 이런 걸 가지고 노는(?) 분들이 부럽기만 하다.

이러한 것을 볼때마다 나는 여전히 희열을 느낀다. 

그러고보니 나에게 이런 희열을 느끼게 해주는 소프트웨어 기술들이 머가 있었더라.. 생각해보니

1990년 AutoCAD 위에서 구현한 AutoLisp 프로그래밍
1992년 Byte 지에서 본 OOP 그리고 C++
1995년 사용해본 리눅스 1.0
1996년 집에 처음 설치해본 넥스트스텝 그때 처음 본  인터페이스 빌더, Objective-C
1996년 Java
1997년 처음으로 해본 CGI 기반의 간단한 웹 어플리케이션
1999년 Microsoft COM
2001년 리눅스 커널 소스
2002년 톰캣 3.0 의 소스 코드,
2004년 Aspect Oriented Programming
2006년 Ruby on Rails

머 이런 것들이 생각나네요. 그밖에 처음 사용해본 Oracle 6.0,  X-Windows/Motif  등도 있지만 그건 먹구살려고 한거라 쪼금은 정이 안간다는 ...
And