많은 사람들이 새 스마트폰을 구입할 때 카메라 사양, 화면 크기, 저장 용량에 대해 걱정합니다. 이러한 매력적인 소비재의 가장 필수적인 요소 중 하나는 간과하기 쉬운 운영 체제입니다.
Google의 Android는 세계에서 가장 널리 사용되는 모바일 운영 체제입니다. 전 세계 스마트폰의 86% 이상에서 발견됩니다. 더 놀라운 것은 안드로이드가 오픈소스 리눅스 운영체제를 기반으로 한다는 점이다. 이는 누구나 대부분의 스마트폰의 핵심에서 코드를 읽고, 변경하고, 가장 중요하게는 공유할 수 있음을 의미합니다. 이러한 개방성을 통해 협업이 가능합니다.
예를 들어 단일 회사에서 만들고 유지 관리하는 Microsoft Windows와 달리. 전 세계에서 온 15000명 이상의 프로그래머가 Linux 개발 및 유지 관리에 기여하고 있습니다. 이 프로그래머들은 자유롭게 배포되는 새로운 것을 만들 것을 제안할 수 있습니다.
오픈 소스란 무엇입니까?
원본 소스 코드가 공개적으로 제공되고 사용자가 필요에 따라 공유 및 업데이트할 수 있는 소프트웨어입니다. 오픈 소스 소프트웨어는 일반적으로 누구나 소스 코드 또는 기본 코드에 액세스하여 재사용성과 접근성을 위해 수정하거나 개선할 수 있는 소프트웨어입니다.
소프트웨어의 일부는 프로그램이나 응용 프로그램이 제대로 작동하도록 누구나 조작하고 변경할 수 있습니다. 컴퓨터 프로그램의 소스 코드에 접근할 수 있는 프로그래머는 기능을 추가하거나 항상 제대로 작동하지 않는 부분을 수정하여 이를 향상시킬 수 있습니다.
오픈 소스 소프트웨어는 동료 검토 및 커뮤니티 출력에 의존하는 분산 및 협업 방식으로 생성됩니다. 오픈 소스 소프트웨어는 단일 작성자나 기업이 아닌 커뮤니티에서 제작하기 때문에 일반적으로 독점 소프트웨어보다 저렴하고 적응력이 높으며 수명이 더 깁니다.
매년 오픈 소스가 널리 보급되어 정부 기관에서 기관에 이르기까지 모든 곳에서 나타납니다. 또한 모든 규모의 기업에서 더욱 인기를 얻고 있습니다. 실제로 일부 기업은 재정적으로 프로젝트에 자금을 지원하거나 개발자와 협력하여 오픈 소스를 한 단계 더 발전시키고 있습니다.
협업은 무료 및 오픈 소스를 통해 혁신을 촉진합니다. 오늘날 우리가 당연하게 여기는 많은 기술은 진화하지 않았거나 특허법이 없었다면 특허법의 보호를 받았을 것입니다.
역사
초기 인터넷 기술과 통신 네트워크 프로토콜을 연구하는 연구원들은 1950년대와 1960년대에 개방적이고 협력적인 연구 환경의 혜택을 받았습니다. 동료 검토 및 공개 논평은 ARPANET(Advanced Research Projects Agency Network)에 의해 촉진되었으며, 이는 궁극적으로 현대 인터넷의 초석이 되었습니다.
각 사용자 그룹의 소스 코드를 공유하고 개선했습니다. 포럼은 토론의 촉진과 열린 의사소통 및 협업 규범의 개발을 도왔습니다. 협업, 동료 평가, 커뮤니케이션 및 개방성은 1990년대 초에 인터넷이 출시되었을 때 인터넷의 뿌리에 녹아들었습니다.
소스 코드를 공개적으로 사용 가능하게 한다는 개념은 1983년 MIT의 프로그래머 Richard Stallman이 비공식적으로 시작한 지적 캠페인에서 비롯되었습니다. Stallman은 소프트웨어를 프로그래머가 사용할 수 있어야 더 나은 성능을 위해 적합하다고 생각하는 대로 변경할 수 있다고 생각했습니다. 이해하고, 배우고, 개선합니다.
Stallman은 자신의 라이선스인 GNU Public License에 따라 자유 소프트웨어를 배포하기 시작했습니다. 소프트웨어 개발에 대한 이 새로운 기술과 태도는 주목을 받아 결국 1998년 오픈 소스 이니셔티브의 기초로 이어졌습니다.
오픈 소스 대 폐쇄 소스 소프트웨어
오픈 소스 소프트웨어
- 접근 가능한 소스 소프트웨어는 소스 코드가 공개되어 누구나 볼 수 있고 사용할 수 있는 컴퓨터 소프트웨어입니다.
- 코드는 다른 개인 및 조직에 의해 변경될 수 있으며 소스 코드는 누구나 액세스할 수 있습니다.
- 오픈 소스 소프트웨어의 비용은 상당히 낮습니다.
- 프로그램이 대중적이라면 상당한 수의 프로그래머가 프로젝트에 할당될 수 있습니다.
- 소프트웨어 사용 및 사용자 정의 측면에서 사용자에 대한 제한이 적습니다.
- 모든 기계는 개방형 소프트웨어를 실행하도록 구성할 수 있습니다.
- 파이어 폭스, 구글의 안드로이드, Linux 운영 체제, Android, Thunderbird, MySQL, Mailman, Moodle, Perl, PHP 및 Python이 몇 가지 예입니다.
폐쇄 소스 소프트웨어
- 폐쇄형 소스 소프트웨어는 소스 코드가 폐쇄된 컴퓨터 소프트웨어로, 이는 대중이 소스 코드에 액세스할 수 없음을 의미합니다.
- 소프트웨어를 만든 사람이나 그룹만이 코드를 변경할 수 있습니다.
- 비공개 소스 소프트웨어의 소스 코드는 보호됩니다.
- 소프트웨어 사용성 및 사용자 정의에 따라 사용자에게 몇 가지 제한이 있습니다.
- 소프트웨어 회사/조직은 소프트웨어를 개선하기 위해 프로그래머를 고용합니다.
- 폐쇄형 소스 소프트웨어는 비용이 많이 듭니다.
- 폐쇄형 소프트웨어는 컴퓨터에 설치하기 전에 유효한 라이선스가 있어야 합니다.
- 폐쇄 소스 소프트웨어에는 오류의 여지가 없습니다.
- Skype, Google Earth, Java, Adobe Flash, Virtual Box, Adobe Reader, Microsoft Office, Microsoft Windows, WinRAR, mac OS, Adobe Flash Player가 몇 가지 예입니다.
혜택
오픈 소스 코드는 기술 전문성에서 야심 찬 개발자와 대기업 모두를 도왔습니다. 특히 코딩의 증가하는 결과를 고려할 때 끝없는 교육입니다. 계속 확장되는 이 아이디어 네트워크는 그러한 소프트웨어가 귀사에 도움이 될 수 있는 방법의 시작일 뿐입니다.
예산을 늘리는 것은 스타트업에게 매일의 전쟁이 될 수 있습니다. 오픈 소스 프로젝트의 가용성으로 인해 소비자는 회비를 지불하거나 장기 계약을 체결하지 않고도 새로운 기술을 수용할 수 있습니다. 낮은(또는 존재하지 않는) 비용 외에도 오픈 소스 라이브러리를 사용하면 팀이 IT 인프라를 구축하거나 새로운 애플리케이션을 개발하는 데 앞서 나갈 수 있습니다.
이 작업의 대부분은 오픈 소스 덕분에 이미 완료되었습니다. 이를 통해 개발자는 최적화 및 사용자 지정을 위한 시간을 확보할 수 있습니다. 조직에서 처음부터 개발을 시작하려는 상황은 항상 있지만 세계 최고의 브랜드조차도 오픈 소스 기술을 사용하여 절약한 시간과 비용을 인식합니다. 복잡한 앱의 시작 키트로 활용하든 프로젝트를 완료하는 데 도움이 되는 작은 퍼즐 조각으로 활용하든 오픈 소스 구성 요소는 개별 개발자와 기업 팀 모두에게 유용한 대안이 될 수 있습니다.
GitHub와 같은 온라인 커뮤니티는 수백만 개발자와 회사가 오픈 소스 플랫폼을 호스팅, 평가 및 활용할 수 있는 홈을 제공하는 오픈 소스 소프트웨어의 협업 잠재력을 보여줍니다. Microsoft는 7.5년에 플랫폼에 2018억 달러를 지불했습니다. 이것은 오픈 소스 기술이 얼마나 인기를 얻었는지, 그리고 기존 IT 거물들이 이 커뮤니티의 미래에 투자하고 있음을 보여주는 가장 가시적인 예일 것입니다.
다양한 이유로 오픈 소스 소프트웨어 전략을 개발하고 실행하는 것이 중요해졌습니다. 오픈 소스 소프트웨어 개발자는 개별적으로 또는 함께 기술적인 문제에 대한 최선의 답을 찾아 신뢰할 수 있고 안전하며 무료인 소프트웨어를 만듭니다. 프로그램은 지칠 줄 모르는 작업의 결과로 시간이 지남에 따라 향상됩니다.
이 프로세스는 여러 기술 영역에서 오픈 소스를 지원하는 Linux Foundation, Apache Software Foundation 및 Eclipse Foundation을 비롯한 수많은 재단의 지원을 받습니다.
AWS, Facebook, Google, IBM, Microsoft, Netflix, SAP와 같은 디지털 거대 기업과 Cisco, Intel 및 테슬라. 그들은 또한 프로젝트를 위한 공급업체 독립적인 주택을 짓고, 인프라에 대한 재정 지원을 제공하고, 마케팅을 지원하고, 현명한 프로젝트 선택을 위한 위원회를 선택합니다.
요약하자면 오픈 소스의 주요 이점 중 일부는 다음과 같습니다.
- 하드웨어 비용이 저렴합니다.
- 뛰어난 품질의 소프트웨어.
- 개발자의 전 세계 지원.
- 유연성과 자유.
- 라이선스 관리는 간단합니다.
- 프로젝트의 집중 및 확장.
위험
이전 섹션에서 언급했듯이 오픈 소스는 몇 가지 이점을 제공할 수 있습니다. 이제 다음과 같이 세 가지 범주로 분류되는 이와 관련된 잠재적인 단점이나 위험을 살펴보겠습니다.
- 보안 위험
- 품질 리스크
- 규정 준수 위험
오픈 소스 구성 요소는 다양한 인터넷 저장소에서 찾을 수 있으며 개발자는 해당 구성 요소가 얼마나 좋은지 또는 안전한지 알 수 없습니다. 사용을 통제하는 데 투자하지 않는 조직은 위험에 처하게 되며 나중에 실수를 수정하는 데 비용이 훨씬 더 많이 들게 되면 대가를 치르게 될 수도 있습니다.
보안 위험
해커는 오픈 소스 보안 결함을 악용하여 많은 돈을 벌 수 있습니다. 이것은 해커에게 공격을 시작하는 데 필요한 모든 정보를 제공합니다. 설상가상으로 널리 사용되기 때문에 인기 있는 구성 요소의 취약점은 해커에게 많은 잠재적 피해자를 제공합니다. 이는 해커가 커뮤니티를 면밀히 주시하고 인기 있는 오픈 소스 구성 요소의 알려진 보안 결함을 빠르게 악용한다는 것을 의미합니다.
소프트웨어 비즈니스는 오픈 소스 사용을 모니터링하지 않고 코드의 취약한 라이브러리를 무시하는 경우 악의적인 공격에 취약합니다.
품질 리스크
기업은 이를 보장하기 위해 많은 시간과 비용을 투자하지만 독점 코드의 품질, 많은 개발 팀이 오픈 소스 구성 요소의 품질을 과소 평가하거나 무시하는 것으로 보입니다. 물론 우리 모두는 최종 제품이 압력 하에서 일관되고 안정적이기를 원합니다.
오픈 소스 소프트웨어 구성 요소가 제품의 상태를 손상시키지 않는지 확인하기 어려운 이유 중 하나는 품질 평가에 대해 합의된 기준이 없고 오픈 소스의 협력적 특성으로 인해 제품 상태가 저하될 수 있기 때문입니다. 측정하다.
규정 준수 위험
모든 오픈 소스 소프트웨어 구성 요소와 해당 종속 항목에는 라이선스가 부여됩니다. 프로젝트에서 이를 사용할 때 우리는 준수해야 하는 일련의 이용 약관을 약속합니다. 오픈 소스 라이선스의 복잡성에 익숙하지 않은 사람들에게는 악몽이 될 수 있습니다.
일부 오픈 소스 프로젝트에는 기본적으로 저작권 규칙이 적용됨을 의미하는 모든 종류의 소스 라이선스가 없습니다. 라이센스가 너무 많기 때문에 모든 법적 요구 사항을 충족하는 것은 매우 어렵습니다. 200가지가 넘는 고유한 유형의 오픈 소스 라이선스가 있다는 것을 알고 계셨습니까?
오픈 소스의 미래
새로운 혁신의 물결은 하나의 비즈니스뿐만 아니라 전체 환경 개선에 전념하는 커뮤니티의 공동 노력의 결과인 소프트웨어에 의해 촉진될 것입니다.
기업들은 기술 산업이 기업들 사이에 지속적으로 노출됨에 따라 기술 산업에서 지속적으로 증가하는 혁신을 창출하는 최초가 되는 것을 목표로 개발자들이 디지털 분야에서 경쟁할 수 있도록 하고 있습니다.
개발자는 오픈 소스 커뮤니티를 사용하고 특히 AI, 기계 학습, 로봇 공학 발전.
직원들이 역동적이고 솔루션 지향적인 커뮤니티를 활용할 때 우리는 기업이 이득을 봅니다. 자율 주행 차량에서 의료 로봇, 스마트 도시, 데이터 센터에 이르기까지 우리는 이러한 문제에 대한 답을 소수의 기업에 맡기고 싶지 않습니다. 대신 우리는 최고의 결과를 얻기 위해 오픈 소스와 수많은 뛰어난 발명가에 의존해야 합니다.
결론
오픈 소스 운동은 지난 수십 년 동안 기술의 급속한 발전을 책임지고 있습니다. 오픈 소스는 몇 가지 위험을 내포하고 있지만 앞으로 많은 이점과 유망한 방법이 있습니다. 많은 기여자 커뮤니티, 시작하기 위한 방법 지침, 다른 사람의 코드 연구를 통한 학습, 다른 엔지니어와의 커뮤니케이션 경험은 오픈 소스 소프트웨어에서 얻을 수 있는 몇 가지 탁월한 이점입니다.
오픈 소스 프로젝트에 기여하고 싶다면 먼저 관심을 끄는 프로젝트를 찾은 다음 GitHub에서 "좋은 첫 번째 이슈" 또는 이와 유사한 레이블을 검색하세요. 좋은 첫 번째 문제 는 이전에 기여한 적이 없는 개발자를 위해 인기 있는 프로젝트에서 쉬운 선택을 큐레이팅하는 프로젝트입니다.
댓글을 남겨주세요.