오픈 소스에 대한 여섯 가지 오해 > 시티즌 인사이트

본문 바로가기

IT&개발 정보 오픈 소스에 대한 여섯 가지 오해

페이지 정보

작성자 GrapeCity 작성일 22-03-08 16:36 조회 1,077회 댓글 0건

본문

0df7eac560081f9fb37c4e1477519ff2_1646721971_1649.jpg
 

오픈 소스 소프트웨어(OSS)는 소규모 개인 프로젝트부터 대규모 엔터프라이즈급 응용 프로그램에 이르기까지 현대적 소프트웨어 개발에 필수입니다. 그러나 OSS에는 한계점도 있습니다. 이 포스팅에서는 오픈 소스 프로젝트에 대한 몇 가지 오해에 대해 알아보고, 오픈 소스 컴포넌트를 사용하는 데 대해 개발자들이 확신을 갖는 동시에, 관련 위험성 및 우려 사항을 받아들이도록 하는 데 도움을 줄 것입니다.


오픈 소스의 역사

1960년대에는 메인프레임 컴퓨터가 대기업과 정부 기관에서 거의 독점적으로 사용되었으며 소프트웨어 시장을 지배했습니다. 당시 소프트웨어와 하드웨어를 별개의 개체로 인식하는 것은 드문 일이었습니다. 제조업체가 소프트웨어를 소스 코드와 함께(또는 소스 코드의 형태로) 제공하면 사용자가 이를 수정하여 버그를 수정하거나 기능을 추가하는 것이 일반적이었습니다. 사용자 그룹 역시 코드와 정보를 공유했습니다. 실제로 1967년에 IBM은 이미 메인프레임용 운영 체제를 오픈 소스와 유사한 형식으로 배포했습니다.

1960년대 중에 변화가 이루어졌습니다. 운영 체제와 프로그래밍 언어 컴파일러가 진화함에 따라 소프트웨어 제조 비용은 하드웨어에 비해 급격히 상승했습니다. 소규모이지만 성장을 지속하는 소프트웨어 산업이 경쟁에 진입하여 하드웨어 제조업체가 만든 패키지형 소프트웨어와 경쟁했습니다.

하드웨어 가격에는 이와 같은 패키지형 소프트웨어의 비용이 포함되어 있었다는 점을 언급해 둘 필요가 있습니다. 대여한 기기에는 소프트웨어 지원이 필요했지만 지원에 대한 재정적 대가는 제공하지 않았습니다. 또한 많은 고객이 자신들의 필요에 맞지 않는 임베디드 소프트웨어에 대해 지불하는 것을 원치 않았습니다.

1970년에 메인프레임 컴퓨터 업계의 마켓 리더였던 IBM은 프로그램의 부품을 하드웨어와 별도로 판매하겠다고 발표했습니다. 따라서 소프트웨어 산업은 시장 생산의 판도를 바꾸었고 개발자는 보다 효율적이고 원활하게 코드를 공유할 수 있게 되었습니다. 기업은 기성 제품과 유사한 방식으로 소프트웨어를 판매했습니다.

1970년대 후반에는 다양한 기획을 통해 SPICE, TeX, Unix 등의 무료 소프트웨어 시스템이 사용되었습니다. 1980년대에는 개발자들이 의식적으로 조직화된 최초의 무료 소프트웨어를 만들었습니다. 이러한 변화의 윤리적, 법적, 재정적 토대를 구축하는 과정이 이어졌습니다.

이것은 OSS 개념으로 이어진 혁신들 중 몇 가지에 불과합니다. 오늘날에는 모든 프로그래밍 언어에서 OSS를 발견할 수 있으며, 개발자는 오픈 소스 사용에 대해 부담을 느낄 필요가 없습니다. 그러나 이러한 믿음에는 OSS를 언제 사용하는 것이 적절한가에 대한 인식과 관련된 공동 책임이 수반됩니다. 개발자와 조직은 오픈 소스가 항상 올바른 해결책은 아니라는 점을 염두에 둔 채로 시간과 비용을 절감하기 위해 오픈 소스를 받아들입니다.

일반적으로 그러하듯, 이런 확신을 갖기 위한 최선의 방법은 지식을 이용하는 것입니다. 이제 오픈 소스 소프트웨어와 관련된 몇 가지 오해를 살펴보겠습니다.


오해 1 : 오픈 소스는 안전하지 않다

실제로 인기 있는 라이브러리가 OSS 사용으로 인해 위험에 처했던 분명한 사례들이 존재합니다. 그런 문제는 자주 발견되고 신속히 해결되지만, 이러한 정보 보안 위반은 엄청난 결과를 가져올 수 있습니다.

그러나 그것이 OSS를 신뢰할 수 없다는 뜻은 아닙니다. 한 가지 보안 솔루션은 취약성을 감지하고 업데이트하는 무료 도구인 GitHub의 Dependabot입니다. 믿을 만한 최신 코드 검토 도구가 노출 상황을 모니터링하는 경우에는 버그 또는 보안 취약성을 드러낼 위험성이 크게 줄어듭니다.

공개 코드이든 독점 코드이든 어느 정도의 보안 취약성은 갖고 있습니다. 그러나 OSS가 본질적으로 독점 소프트웨어보다 덜 안전한 것은 아닙니다. 모든 개발자는 실수할 수 있습니다. 개발자가 준수할 포괄적 표준이 있었다 하더라도, 사람의 본성 상 수정할 필요가 있는 흠은 항상 있기 마련입니다.

그래서 오픈 소스 코드의 투명성은 개발자에게 도움이 됩니다. 수많은 눈이 버그와 취약성을 감시할 것이기 때문입니다. 많은 오픈 소스 프로젝트가 수많은 기여자와 사용자를 갖고 있습니다. 코드가 오픈 소스가 되면 선량한 해커 집단은 보안 취약성을 더욱 효율적으로 식별하고 해결할 수 있습니다.


오해 2 : 오픈 소스는 더 안전하다

OSS의 잠재적 취약성에 대한 모든 의견에서 그 반대를 주장하는 의견을 찾아볼 수 있습니다. 그러나 인기 있는 오픈 소스 라이브러리의 오류 하나가 광범위한 문제를 야기하게 된 여러 상황이 있었습니다. 예를 들어, 2016년에 노드 패키지 관리자(npm) 기여자가 코드의 작은 부분을 삭제했는데, 그 삭제로 인해 여러 앱이 업데이트하지 못하게 되고 활성 웹 서비스를 중단시킨 일이 있었습니다. 따라서 패키지가 인기 있다고 해서 안전성이 보장되지는 않습니다.

그런 상황을 오픈 소스가 전반적으로 열등하다는 증거로 받아들이기 전에, 제품의 품질은 누가 만들었는지와 관계없이 다양하다는 사실을 염두에 두시기 바랍니다. 그리고 경험이 많은 아마추어가 고급 OSS 프로젝트를 작성하고 유지 관리하는가 하면, Linux나 Kubernetes와 같은 업계 최고의 개발자들이 내놓는 제품도 있는 것입니다.


오해 3 : 오픈 소스는 엔터프라이즈급이 아니다

많은 인기 프로젝트가 개인 개발자 및 기업에 의해 치열한 테스트를 거칩니다. Microsoft, Google, Facebook, Netflix 등의 거대 기술 회사가 오픈 소스 프로젝트를 후원합니다.

더구나 OSS는 더욱 뛰어난 유연성 및 사용자 환경을 제공할 잠재력을 갖고 있습니다. 전매 특허가 붙은 소프트웨어를 사용하는 고객은 배포 회사의 제품과 소프트웨어 업데이트 일정에 얽매이는 경우가 많습니다. 이러한 사용자에게 새로운 기능이 필요하게 되면 벤더가 그 기능을 만들기를 기다릴 수밖에 없을 것입니다. OSS의 경우에는 독립 개발자가 코드를 작성하여 신속히 커뮤니티에 소개할 수 있으므로 필요한 기능을 기다리는 시간이 크게 단축됩니다.


오해 4 : 오픈 소스에 대한 지원이 없다

사실 OSS 지원에 사용 가능한 커뮤니티 사이트, 포럼, 뉴스 그룹은 많습니다. 오픈 소스 도구를 선택하려면 몇 가지를 유념해야 합니다. 무엇보다 중요한 점은, 적절한 방법론을 다룰 엔지니어 담당 고문을 비롯하여 맡은 책임을 다할 수 있는 유능한 팀이 프로젝트에 배정되어 있는지 확인하는 것입니다.

지원 리소스가 풍부하다 하더라도 OSS 사용에 따른 위험 부담은 본인이 져야 한다는 사실을 명심하십시오. 오픈 소스 코드를 유지 관리하는 사람은 구성 오류에 대한 책임을 지지 않으며 서비스 수준 계약의 당사자도 아닙니다. 결과적으로 지원은 언제라도 사라질 가능성이 있습니다. 그러나 Linux, Git, Kubernetes, Apache, Docker, R, Vagrant를 비롯한 여러 프로젝트가 오랫동안 지원을 유지하고 있습니다.


오해 5 : 오픈 소스 소프트웨어 사용은 법률적 악몽과도 같다

다양한 제한 조건과 사용 권한이 포함된 1,400개 이상의 오픈 소스 라이선스가 있습니다. 이러한 라이선스 대부분은 다른 오픈 소스 또는 비영리 프로젝트에서만 소프트웨어를 포함할 수 있도록 규정하고 있습니다.

그러나 MIT, BSD, Apache와 같이 “상업적 사용을 허가하는” 라이선스도 많습니다.

물론 GPL이나 AGPL과 같은 바이러스성 라이선스를 포함한 코드가 코드베이스에 침투하지 않도록 조심해야 할 것입니다. 다행히 일부 도구는 이런 문제를 완화하는 데 적합한 라이선스를 자동으로 스캔합니다.

뿐만 아니라 대부분의 오픈 소스 컴포넌트가 다른 종속성을 이용합니다. 이 컴포넌트를 모두 추적해야 합니다. 프로젝트에 정책 및 가이드라인이 있는 경우에는 관리가 간단한 경향이 있으므로 아무 문제 없이 오픈 소스 컴포넌트를 포함할 수 있습니다. 자세히 알아보려면 이 오픈 소스 가이드라인을 읽어보십시오.


오해 6 : 오픈 소스 라이브러리를 사용하는 것이 항상 저렴하다.

오픈 소스 도구와 라이브러리는 상용화된 제품에 비해 비용이 덜 들 수 있지만 항상 그런 것은 아닙니다. 사용화된 옵션과 오픈 소스 옵션 중에서 결정할 때는 오픈 소스 라이브러리에 특정한 기능이 없는 경우에 필요한 추가 개발 시간지원 비용을 고려해야 합니다.

오픈 소스 소프트웨어는 대개 무료로 사용할 수 있습니다. 그러나 비용이 들지 않는 대신 오픈 소스 컴포넌트를 유지 관리하기 위한 시간과 노력이 필요합니다. OSS의 추가 지원 및 개발 비용으로 인해 시판되는 도구가 오히려 저렴해지는 경우도 많습니다.

완벽하고 안전한 앱을 신속히 출시해야 하는 엔터프라이즈 개발자에게는 상용화된 옵션과 오픈 소스 중에서 선택하는 것보다 상용화된 옵션과 오픈 소스 옵션을 가장 효과적으로 조합하는 방법을 결정하는 것이 중요합니다.


오픈 소스에 대한 GrapeCity의 대안

오픈 소스가 바람직한 선택인 경우도 있지만 상용화된 응용 프로그램이 고객의 요구에 더 적합한 경우도 있습니다. 상용화된 솔루션을 선택하면 시간을 절약할 수 있으므로 결과적으로 급여 비용과 생산성 측면에서 이익이 됩니다.


GrapeCity의 다양한 제품을 살펴보세요!

For Web Developers

  • SpreadJS - JavaScript 기반 Excel 스프레드시트 컴포넌트
  • Wijmo - JavaScript 기반 UI 컴포넌트
  • ActiveReportsJS - JavaScript 기반 비즈니스 리포팅 컴포넌트
For .NET Developers
Excel API

비즈니스 Web 개발 솔루션
  • Forguncy - 코딩없이 Excel로 만드는 비즈니스 웹 사이트
 

GrapeCity 고객이 상용화된 솔루션을 선택하는 이유


1. 업계에서 확립된 위상

GrapeCity는 개발 커뮤니티에서 40년 넘게 안정적인 위상을 갖고 있습니다. 소프트웨어 생성 및 확보부터 시작하여 개발자 도구를 공급하는 대표적인 소스로 성장했습니다.

2. 입증된 솔루션

고객은 엔터프라이즈 환경에서 이미 인정받은 상업용 솔루션을 좋아합니다. 수상 경력도 있는 이 솔루션은 다양한 플랫폼에서 빌드하는 데 적합한 견고한 토대를 제공합니다.

3. 궁극의 안정감 제공

고객은 제품이 앞으로도 계속 업데이트되고 사용 가능할지 알고 싶어합니다. GrapeCity는 매년 여러 번에 걸쳐 핫픽스 및 주요 업데이트를 제공하므로 고객은 최신 기술을 사용할 수 있습니다.

4. 한국 고객을 위한 기술 지원

그레이프시티 개발자 포럼을 통해 질문을 하고, 답변을 받아보실 수 있습니다.

결론

오픈 소스 소프트웨어와 엔터프라이즈 소프트웨어 중 선택하는 문제에 있어 “한 가지로 모든 요구를 해결하는” 솔루션은 없습니다. 오픈 소스 프로젝트는 도처에 있으며 개발자들이 일상적으로 맞닥뜨리는 다양한 문제를 해결합니다.

따라서 우리는 옵션을 정기적으로 평가하고 현명한 선택을 해야 합니다. 개발자는 오픈 소스 프로젝트의 사용이 어떤 의미를 갖는지에 포괄적으로 이해하고, 오픈 소스 사용 시점 및 상용화된 도구를 구매해야 할 시점에 대해 최선의 결정을 내려야 합니다.



  • 페이스북으로 공유
  • 트위터로  공유
  • 구글플러스로 공유
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.

그레이프시티 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기

인기글

더보기
  • 인기 게시물이 없습니다.
그레이프시티 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
이메일 : sales-kor@grapecity.com | 전화 : 1670-0583 | 경기도 안양시 동안구 시민대로 230, B-703(관양동, 아크로타워) 그레이프시티(주) 대표자 : 허경명 | 사업자등록번호 : 123-84-00981 | 통신판매업신고번호 : 2013-경기안양-00331 Copyright ⓒ 2022 GrapeCity inc.