세상을 몰래 지탱하는 5개의 오픈 소스 프로젝트
우리의 디지털 세계가 소수의 기술 대기업에 의해 지배되고 있는 것처럼 느껴지며, 그것은 어느 정도 사실입니다. 그러나 그들조차 우리가 알고 있는 인터넷을 가능하게 하는 수많은 무료 오픈소스 프로젝트에 의존하고 있습니다. 여기 가장 중요한 네 가지 프로젝트가 있습니다.
FFmpeg
모든 것을 지배하는 하나의 도구
FFmpeg는 비디오, 오디오, 이미지 등 여러 종류의 파일을 인코딩, 디코딩, 트랜스코딩, 필터링할 수 있는 오픈 소스 도구입니다.
비디오 파일, 예를 들어 MP4에서 오디오만 분리하여 MP3 파일로 저장해야 한다면, FFmpeg이 할 수 있습니다. WAV를 MP4로 변환해야 한다면, FFmpeg도 할 수 있습니다. 이것은 멀티미디어 스위스 아미 나이프입니다.
명령줄 응용 프로그램을 많이 사용하지 않는 한, 아마도 직접 FFmpeg를 사용하지는 않겠지만, 다음을 포함한 엄청난 수의 인기 있는 서비스와 앱에서 사용됩니다:
- 다빈치 리졸브
- VLC
- YouTube
- 비메오
- TikTok
무료 온라인 미디어 변환기를 사용한다면, 아마 실제로는 백그라운드에서 FFmpeg를 실행하고 있을 것입니다.
인터넷은 기능하기 위해 FFmpeg을 필요로 하지는 않지만, 그것이 인기 있는 서비스와 앱에 얼마나 깊이 통합되어 있는지를 고려하면, FFmpeg 없이는 우리의 디지털 세계가 꽤 달라졌을 것입니다.
NGINX
모두를 위한 오픈 소스 웹 서버
웹사이트를 방문할 때마다 실제로 데이터를 보내고 받는 역할을 하는 웹 서버가 있습니다. 몇 가지 인기 있는 웹 서버가 있지만, 가장 인기 있고 좋은 것 중 하나는 NGINX입니다.
NGINX나 다른 웹 서버가 없다면, 서버에서 원하는 파일을 수동으로 요청하는 방법을 알아야 할 것이며, 이는 인터넷을 사용 불가능한 혼란으로 만들 것입니다. 웹 서버는 모든 것을 배경에서 처리합니다.
그냥 웹 서버일 뿐만 아니라, NGINX는 리버스 프록시로도 사용할 수 있습니다. 리버스 프록시는 인터넷과 여러 서버 사이에 위치하여 요청이 올바른 위치로 전달되도록 합니다. 그 위치에서 NGINX는 또한 '로드 밸런싱'을 수행할 수 있는데, 이는 트래픽이 급증할 때 한 서버가 과부하되지 않도록 요청을 여러 서버에 고르게 분배하는 것을 보장합니다.
NGINX에는 다른 여러 추가 기능들도 있어, 집에서 자체 호스팅하는 서비스를 더 쉽게 접근할 수 있게 하든 매일 수백만 명이 방문하는 웹사이트를 호스팅하든 상관없이 매우 유용한 도구로 만들어줍니다.
오픈SSL
OpenSSL이 없었다면 인터넷은 더 위험한 곳이었을 것이다
보안, 특히 암호화는 인터넷 통신이 지배하는 세상에서 매우 중요하다.
가장 중요한 현대 암호화 방법 중 하나는 TLS/SSL이며, 이는 사용자가 접속한 웹사이트와 브라우저 간에 전송되는 정보가 안전하게 보호되도록 합니다. 주소 표시 줄에 있는 작은 자물쇠 아이콘을 클릭하면 이에 대한 일부 세부 정보를 확인할 수 있습니다.
잠금 아이콘이 보이지 않거나 잠금 아이콘에 슬래시나 X 표시가 있는 경우, 통신이 암호화되지 않았다고 가정해야 합니다.
OpenSSL은 TLS/SSL 암호화의 오픈 소스 구현입니다. 이것이 유일한 버전은 아니지만, Cisco, Cloudflare 등과 같은 주요 기업에서 사용됩니다. HTTPS를 사용하는 웹사이트에 연결되어 있다면, 상대방에서 OpenSSL이 실행되고 있을 가능성이 매우 높습니다.
OpenSSL을 직접 사용하지 않는 기업들조차도 종종 자체적인 특수 버전을 만들기 위한 출발점으로 OpenSSL을 사용합니다. 예를 들어, 구글은 원래 OpenSSL에서 파생된 BoringSSL을 유지 관리합니다.
현대 인터넷에서 이것은 믿을 수 없을 정도로 중요한 보안 기능입니다.
리눅스
세상은 리눅스로 운영된다
사람들은 종종 Linux, Windows, macOS 중 어느 것이 가정용으로 가장 좋은 운영체제인지에 대해 논쟁하지만, 웹 서버의 세계에서는 Linux가 결정적인 승자입니다.
전 세계의 거의 모든 웹 서버는 어떤 종류의 리눅스 서버에서 실행되며, 많은 리눅스 배포판이 독점 소프트웨어를 포함하고 있기는 하지만, 리눅스 커널 자체는 완전히 오픈 소스입니다.
리눅스는 또한 수많은 텔레비전과 휴대용 게임 콘솔(Steam Deck의 Steam OS)을 구동하며, 안드로이드 운영 체제의 원래 기반을 형성합니다.
대부분 보이지 않을 수 있지만, 리눅스는 세계에서 가장 중요한 운영 체제입니다.
깃
전 세계 소프트웨어 개발자들의 숨은 영웅
컴퓨터 프로그램은 매우 복잡하며, 개발 과정에서 발생하는 변경 사항을 수동으로 추적하는 것은 악몽과 같습니다. 바로 그럴 때 Git이 등장합니다.
Git은 개발자가 코드의 변경 사항을 관리하고 추적할 수 있게 해주는 버전 관리 소프트웨어입니다.
예를 들어, 개발자가 버그를 수정하기 위해 코드를 다시 작업하면, 자신의 작업을 로컬 저장소에 저장하기 위해 git commit을 실행할 수 있습니다. 작업을 더 큰 프로젝트에 제출할 준비가 되면, git push를 사용하여 클라우드의 저장소로 전송할 수 있으며, 여기서 개발 팀의 다른 사람들이나 설정이 허용된다면 인터넷상의 다른 사람들이 사용할 수 있습니다.
Git은 그들이 코드를 저장하고, 실행 취소하며, 다운로드하고 업로드할 수 있게 해주며, 그들이 한 일을 설명하는 댓글을 삽입할 수 있도록 해줍니다. 다른 많은 오픈 소스 프로젝트들처럼, 화려하지는 않지만 오늘날의 인터넷은 Git 없이는 같지 않을 것입니다.
GitHub 자체가 git은 아니다. GitHub는 Sourceforge와 몇몇 다른 서비스들처럼 기본적으로 온라인 Git 저장소(레포)를 저장하도록 설계된 특화된 클라우드 저장소 솔루션이다.
오픈 소스가 디지털 세상을 움직이게 한다
오픈 소스에 의해 추진되는 것은 단순히 비공개 프로젝트만이 아닙니다. 점점 더 많은 경우, 리눅스와 윈도우에서 사용할 수 있는 최고의 앱들 중 일부도 완전히 오픈 소스로 제공됩니다.








