자신만의 개인 라이브러리 또는 프레임웤이 필요할까

2012-09-26

Brigham Young University faculty survey seeks to advance open education through academic libraries

프로그래머는 자신만의 라이브러리 또는 프레임웤(이하 라이브러리만 표기)를 갖춰야 한다는 이야기가 있다. 경력이 쌓인 개발자라면 효율을 높이고 자신만의 무기(?)를 갖추기 위해서 필요하다는 것이다.

그럴 필요가 있을까라는 의문이 든다. 과거에는 그럴 필요가 있었다. 그러나 지금은 달라졌다는 생각이다.

필요한 라이브러리는 오픈소스로 이미 존재하고 있다고 말 할 수 있을만큼 오픈소스의 양이 방대해졌다. 오픈소스는 많은 사람들이 사용하면서 검증되고 개선된다. 과연 개인이 만든 것이 세계의 뛰어난 개발자들이 협력해서 만든 것 보다 더 나은 품질을 가질 가능성이 얼마나 될까? 가능성이 높아 보이지 않는다.

업무에 개인 라이브러리를 사용한다면 문제는 더 심각 해진다. 코드에 문제가 생긴다면 다른 개발자들이 개인이 만든 라이브러리를 확인 해 봐야 할 수도 있다. 널리 쓰이는 라이브러리나 프레임웤을 사용한다면 다른 개발자들도 그것에 대해 잘 알고 있을 수 있다. 더구나 오픈소스는 문서화도 개인 라이브러리 보다 더 잘 되어 있다. 유명한 라이브러리는 책까지 나와 있다. 라이브러리를 만든 개발자는 좀 더 편하고 빠르게 개발 할 수 있을지 몰라도 팀과 프로젝트를 생각하면 오히려 손해다.

오픈소스 라이브러리가 원하는 기능을 충분히 제공하지 않기 때문에 개인적으로 라이브러리를 만든다고 할 수도 있다. 그러나 그 경우도 차라리 패치를 해서 사용하고, 패치를 메인 스트림에 반영 해 달라고 요청하는 편이 더 낫다.

만약 자신이 정말 대단한 라이브러리를 만들어서 다른 오픈소스가 따라 오지 못 할 정도라면, 개인 라이브러리로 만들 것이 아니라 오픈소스로 공개를 하는 것이 맞다. 그렇게 함으로서 많은 개발자들에게 도움을 주고, 많은 피드백을 통해 더 훌륭한 라이브러리가 될 수 있다.

자신만의 코드로 밥그릇을 지켜야 한다고 생각하는 프로그래머가 존재하지 않으리라 생각한다. 왜냐하면 그런 프로그래머는 인터넷과 오픈소스의 물결에 휩쓸려 다 소멸한 것으로 알기 때문이다.

4 Comments
엑스터
2012-10-04 @ 9:27 오전

절실히 동감합니다.
현재 회사 내부의 특정 개인이 만든 라이브러리로 작업을 하고 있는데,
1년이 넘은 지금까지도 제대로 업데이트는 커녕, 현재 구현 내용 조차 문서화가 안 되어있어서 주먹 구구로 사용하고 있습니다.
공공 작업에, 많은 사람들이 참여하는 작업에 이런 것을 추가하는 것은 망조라고 생각되네요.

응답
    2012-10-05 @ 10:09 오전

    어려운 상황에 놓이셨군요. 그 라이브러리를 빼내는 작업도 만만치 않을테고, 경영진부터 다른 개발자들까지 모두 다 움직이게 하려면 이만저만 수고가 아닐까 싶네요.

    나중을 생각해서 처음부터 이런 부분에 신경을 쓰는 것은 참 중요한 것 같습니다. 나중에 커지면 그 때는 어떻게 하기도 참 어렵더군요.

    응답
2016-02-02 @ 1:37 오후

잘 보고 갑니다.

응답

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다


*