우리는 모두 자유 소프트웨어 또는 오픈 소스 (오픈 소스)에 대해 들어 봤지만 많은 사람들이 이러한 용어의 차이를 이해하는 것의 중요성을 모릅니다. 비 컴퓨팅 환경에서 이러한 개념은 자주 듣지 않지만 컴퓨터, 태블릿 또는 스마트 폰과 같은 모든 전자 장치의 프로그램에 영향을 미치기 때문에 실제로 일상에 존재합니다.
독점 소프트웨어는 해당 소프트웨어를 판매하는 회사의 이익만을 보호하며, 외부인이 특정 요구 사항에 맞게 수정할 수 없습니다 . 반면, 자유 소프트웨어 또는 오픈 소스 소프트웨어는 누구나 접근할 수 있으며 각 개인의 요구 사항에 맞게 수정할 수 있습니다.
프로그램은 다음의 네 가지 필수 자유를 존중할 때 자유 소프트웨어로 간주 될 수 있습니다.
- 자유 0 : 원하는대로 프로그램을 실행할 수 있습니다.
- 자유 1 : 프로그램의 소스 코드를 연구 할 수 있으며 필요한 작업을 수행 할 수 있다는 생각으로 자유롭게 변경할 수 있습니다.
- 자유 2 : 원할 때마다 프로그램의 정확한 사본을 만들고 배포하여 다른 사람을 도울 수 있습니다.
- 자유 3 : 수정 된 버전의 프로그램을 사용하여 쉽게 사본을 만들거나 배포하여 커뮤니티에 기여할 수 있습니다.
자유 소프트웨어 운동의 창시자인 리처드 스톨먼에 따르면, " 이러한 자유는 사용자뿐만 아니라 사회 전체에 매우 중요하며, 연대감을 증진시킵니다 . 우리의 문화와 일상생활이 디지털 세계와 점점 더 밀접하게 연결됨에 따라 이러한 자유의 중요성은 더욱 커지고 있습니다."
학교 입장에서 무료 소프트웨어는 더할 나위 없이 큰 이점입니다. 독점 소프트웨어 사용 라이선스 비용을 지불할 필요가 없어 예산을 절약할 수 있기 때문입니다. 또한, 프로그래밍을 배우고자 하는 사람들에게는 다른 사람이 작성한 코드를 읽고 학습하거나 문제를 해결할 수 있다는 점이 매우 중요합니다.
"오픈 소스 " 라는 용어는 " 자유 소프트웨어 " 라는 개념과의 오해를 피하기 위해 생겨났습니다 . 영어에서 이 단어는 "무료"로 해석되지만, 이 경우에는 프로그램의 가격이 아니라 사용의 자유를 의미합니다.
모든 자유 소프트웨어는 오픈 소스이지만, 모든 오픈 소스 소프트웨어가 자유 소프트웨어는 아닙니다 . 차이점은 프로그램에 사용할 수 있는 라이선스에 있습니다. 일부 라이선스는 다른 라이선스보다 덜 관대하며 앞서 언급한 자유를 거의 존중하지 않습니다.