https://github.com/readme/featured/laravel-community 에 대한 번역글입니다.
Laravel은 지구상에서 가장 행복한 개발자 커뮤니티인가?
PHP 프레임워크가 어떻게 끊임없는 허니문 기간을 유지하는지.
Fathom Analytics의 CTO Jack Ellis는 2019년에 회사의 코드베이스를 완전히 다시 작성하기로 결정했습니다. 이전에는 Go로 작성되었지만, 이제는 PHP로 작성되었습니다.
Go가 점점 인기 있는 언어가 되고 있음을 감안할 때 이것은 놀라운 일일 수 있습니다. Rust, Swift, Kotlin과 같은 상대적으로 새로운 프로그래밍 언어의 선봉장입니다. 이 언어들은 최근 몇 년 동안 엄청난 성장을 보였습니다. 반면 PHP는 종종 구식으로 여겨지지만, 수년 동안 상당히 발전했으며 w3tech가 확인할 수 있는 모든 백엔드 언어를 사용하는 웹사이트의 77.5%에 사용되고 있습니다. 이에는 위키백과와 수많은 워드프레스 사이트가 포함됩니다. StackOverflow의 2023 개발자 설문조사에서는 62.45%의 응답자가 Go를 "좋아한다"고 표현했지만, PHP를 좋아하는 사람은 41.83%뿐이었습니다.
그러나 Ellis는 PHP에 더 익숙했습니다. 게다가 그는 PHP를 사용하면 비밀 무기인 Laravel에 접근할 수 있다고 말했습니다.
Laravel은 인증, 큐, 이메일 전송, 기능 플래그 관리, 청구/결제 처리를 포함한 다양한 기능에 대한 1차 지원을 제공하는 강력한 의견을 가진 PHP 프레임워크입니다. Ellis는 인프라를 구축해야 할 경우 여전히 Go나 Rust를 사용할 것이라고 말했지만, PHP는 Fathom이 매일 수천만 개의 웹사이트에서 사용하는 회사의 서비스를 위해 처리하는 20억 개의 서버리스 함수를 처리하기에 충분히 높은 성능을 발휘합니다.
자주 인용되는 연구에서 프로그래밍 언어의 성능과 에너지 효율성을 조사한 결과, PHP는 JavaScript에 뒤처지지만 Python, Ruby, Lua, Perl과 같은 다른 스크립트 언어들을 손쉽게 능가했습니다. "Go 개발자를 찾기보다는 PHP 개발자를 찾는 것이 더 쉽다"고 Ellis는 말했습니다. "Laravel은 소프트웨어를 구축하는 가장 쉬운 방법입니다. 우리는 것들을 함부로 조합할 필요가 없으며, 이것은 우리에게 수백 시간의 시간을 절약해줍니다."
Laravel은 소프트웨어를 구축하는 가장 쉬운 방법입니다. 우리는 것들을 함부로 조합할 필요가 없으며, 이것은 우리에게 수백 시간의 시간을 절약해줍니다.
PlanetScale의 개발자 교육자이자 Laravel 모듈 Sidecar의 관리자인 Aaron Francis는 Ellis의 의견을 공유합니다. "Laravel은 나에게 놀랄만한 생산성을 제공하며 사용하는 것이 즐겁다"고 그는 말했습니다. "문서화부터 코드 주석에 이르기까지 모든 것에 놀라운 정성이 들어간다."
개발자들은 자주 사용하는 도구에 대해 열정적일 수 있지만, 시간이 지남에 따라 그 빛남이 사라질 수 있습니다. Laravel은 2011년부터 있었지만, 커뮤니티는 계속해서 허니문 기간에 있는 것처럼 보입니다. "그들은 그냥 행복해 보인다"라고 JavaScript 개발자 Adam Elmore는 말했습니다. 그는 최근에만 Laravel 분야에 발을 들여 놓았습니다. "다른 커뮤니티는 종종 독성을 가지고 있지만, Laravel 개발자들은 그냥 만족하며 무언가를 만들어간다."
그렇다면 Laravel 커뮤니티는 어떻게 이렇게 사랑받는 플랫폼을 구축했을까? 트렌드를 무시하고 세부 사항에 집중함으로써 그렇게 했습니다.
트렌드 밖에서
Laravel의 창시자 Taylor Otwell은 2008년에 PHP를 배웠습니다. 그때는 Ruby on Rails의 피크 시기였습니다. "Ruby on Rails는 맥에 매우 중점을 둔 것이었고, 나는 저렴한 윈도우 컴퓨터만 있었다"고 Otwell은 설명했습니다. "윈도우에서 루비 코드를 작성할 수 있었지만, 생태계와 싸우는 것처럼 느껴졌다. PHP는 더 자연스러웠다." 더불어 PHP 애플리케이션을 배포하는 것은 모든 웹 호스트에서 지원되는 언어였기 때문에 쉬웠습니다. PHP용 모델-뷰-컨트롤러 프레임워크가 몇 개 있었으며, 그 중 일부는 "Rails와 유사한" 경험을 제공하려고 했습니다. 그러나 Otwell이 원하는 것만큼 포괄적인 것은 없었습니다. 그래서 그는 자신만의 것을 만들어 2011년에 첫 버전을 출시했습니다.
Laravel은 하룻밤에 성공한 것은 아니었지만, Otwell은 계속해서 그것을 개발했습니다. 2011년 Laravel의 첫 릴리즈 몇 달 후에 큰 돌파구가 왔는데, 헬프데스크 소프트웨어 회사 Userscape가 그를 고용하여 Laravel에 전임으로 일하게 했습니다. "그들은 PHP를 사용하고 몇 가지를 현대화하고 싶어했고, Laravel을 그 방법으로 보았다"라고 Otwell은 말했습니다. "그것은 그들에게 큰 위험이었다. Laravel은 새로웠고 아직 많은 것을 추가해야 했다."
Laravel에 전임으로 집중할 수 있게 되면서 Otwell은 프로젝트를 다른 커뮤니티와 차별화할 수 있었습니다. 그는 기능을 더 많이 구축하고 문서를 작성하고 개발자 경험을 정제하는 데 더 많은 시간을 할애할 수 있었을뿐만 아니라 커뮤니티와의 교류에도 많은 시간을 보냈고, 그들의 신뢰를 얻었으며 그들이 필요한 것을 알게 되었습니다. 그는 2014년에 자신의 회사인 Laravel을 설립했으며, 이 회사는 프레임워크를 위한 클라우드 호스팅 서비스를 제공합니다. Otwell은 여전히 오픈 소스 Laravel 프레임워크에 전임으로 일하면서 다른 개발자들에게 유료 서비스를 위한 작업을 지불하고 있습니다. 이것은 상호 유익한 관계입니다: Laravel이 더 좋아지면 그것을 사용할 사람들이 더 많아질 가능성이 높아지므로, 회사의 클라우드 플랫폼을 사용하는 데 관심이 있는 사람들이 더 많아집니다.
Otwell은 트렌드를 무시하려고 노력하면서 Laravel을 최대한 좋게 만드는 데 집중한다고 말했습니다. 예를 들어, Laravel 회사와 프레임워크는 Otwell이 Laravel 개발자 경험을 더 나아지게 할 방법을 찾지 못했기 때문에 암호화 트렌드를 피했습니다. 반면에 그는 명확한 이익이 있을 때 새로운 기술과 트렌드를 받아들입니다. 서버리스 솔루션 Laravel Vapor의 출시가 그 예입니다.
오늘날, Laravel 커뮤니티는 개발자 경험을 향상시키기 위해 인공 지능이 어떻게 활용될 수 있는지를 조사하고 있습니다. 수년 동안 Laravel은 개발자들이 가능한 한 명확하게 어디에서 잘못되었는지를 이해하는 데 도움을 주는 벨기에 소프트웨어 개발 에이전시 Spatie가 개발한 오류 처리 기능을 가지고 있었습니다. 이것은 오늘날의 어떤 언어나 프레임워크에도 기본 사항입니다. 그러나 지금 Spatie는 오류를 수정하기 위한 제안도 제공하는 OpenAI 기반의 오류 처리 기능을 개발하였습니다.
Laravel 방식
Laravel의 "배터리 포함" 성격은 많은 개발자들이 프레임워크를 좋아하는 가장 주요한 이유 중 하나입니다. 그것은 특히 포괄적인 접근법을 취하고 있습니다. 처음에는 Rails에 따라잡으려고 노력했을 수 있지만, 팬들은 이제 일부 방면에서 Rails를 능가했다고 말합니다. "모든 웹 애플리케이션은 큐를 필요로 하며, Laravel을 사용하면 박스에서 바로 무료로 얻을 수 있습니다."라고 Francis는 말했습니다. "다른 생태계에서는 큐 지원이 유료 추가 항목이 될 것입니다."
"JavaScript의 모든 것이 분리되어 있다."라고 JavaScript 개발자인 Elmore는 말했습니다. "우리는 Laravel만큼 포괄적인 것을 실제로 가지고 있지 않다." 실제로, 많은 개발자들에게 JavaScript의 매력 중 하나는 다양한 JavaScript 라이브러리를 사용자 정의 솔루션에 통합하는 것입니다. 모두가 Laravel만큼의 강력한 의견을 원하는 것은 아닙니다. 그러나 Laravel 개발자들은 제3자 모듈을 찾아보고, 평가하고, 통합하는 데 드는 엄청난 시간을 절약할 수 있다고 지적합니다. 제3자 모듈이 필요한 경우에도 지원이 잘되는 제3자 옵션이 많이 있습니다. 예를 들어, Livewire는 JavaScript의 한 줄도 작성하지 않고도 Laravel을 전체 스택 프레임워크로 바꾸는 기능을 추가합니다. Spatie만 해도 수백 개의 Laravel 모듈을 오픈 소스로 제공하고 있습니다.
그 다음에는 문서화가 있습니다. Otwell은 코드 주석에 투입하는 노력으로 특히 유명하며, 각 주석을 정확히 세 줄로 만들려고 노력하며, 각 줄은 이전 줄보다 조금 더 짧게 만듭니다. 이것은 사소하게 들릴 수 있지만, 프레임워크의 모든 부분에 얼마나 많은 생각과 정성이 들어갔는지를 나타냅니다.
그러나 프레임워크 자체를 넘어서는 커뮤니티가 있습니다. "나는 Laravel을 발견했을 때 그것이 기술적으로 얼마나 좋은지 몰랐지만, 커뮤니티는 정말 좋았고 나는 그 일부가 되고 싶었다"라고 개발자 Zuzana Kunckova가 말했습니다. Kunckova는 Otwell과 다른 커뮤니티 리더들이 매우 접근하기 쉽다고 말하며, 이로 인해 전체 커뮤니티가 더 환영받는다고 말했습니다.
나는 Laravel을 발견했을 때 그것이 기술적으로 얼마나 좋은지 몰랐지만, 커뮤니티는 정말 좋았고 나는 그 일부가 되고 싶었다.
그녀가 시작했을 때 커뮤니티에는 여성이 거의 보이지 않았습니다. "남성들은 친절했지만, 자신과 닮은 사람을 보지 못하면 어색하고 자신이 속해 있는지 의심하게 됩니다." 그녀는 말했습니다. PyLadies와 React Girls에 영감을 받아 그녀는 성별 때문에 대표되지 않는 PHP 및 Laravel 개발자를 위한 Larabelles라는 커뮤니티를 설립했습니다. "나는 편견이 있을 수 있지만, 커뮤니티가 더 좋아졌다고 생각한다." 그녀는 말했습니다. "예를 들어, Laracon에서 이제 더 많은 여성들이 연설하고 있다."
커뮤니티가 독특한 점 중 하나는 Laravel의 내부 작동보다 결과에 얼마나 집중되어 있는지입니다. Elmore의 말로는 커뮤니티는 Laravel로 무언가를 만드는 데 만족하며, Otwell과 Laravel 팀이 어떻게 해야 하는지에 대한 미세한 부분을 논의하는 대신입니다.
"특정한 것들을 좋아하지 않는 사람들이 있지만, 일반적으로 내가 상호 작용했던 가장 만족스러운 커뮤니티입니다."라고 Dubai의 클라우드 기반 레스토랑 소프트웨어 회사 Foodics의 인프라 VP인 Mohamed Said는 말했습니다.
그것을 보는 한 가지 방법은 Laravel이 이러한 종류의 실행 세부 사항에 대해 너무 많은 시간을 생각하고 싸우는 것을 선호하지 않는 개발자들을 끌어들인다는 것입니다. 거의 정의상, 커뮤니티는 Otwell의 소프트웨어 구축 접근법을 받아들인 사람들로 구성됩니다. Laravel에 포함된 의견을 좋아하지 않는 사람은 화재를 시작하는 데 시간을 보내기보다는 그것을 튕겨낼 가능성이 높습니다. 모든 Laravel 사용자가 프레임워크의 모든 면을 좋아한다는 것을 의미하는 것은 아니며, Otwell이 커뮤니티의 입력을 듣지 않는다는 것도 아닙니다. 그러나 이것은 더 적은 논쟁을 초래합니다. "우리는 이미 포함되어 있기 때문에 인증의 최선의 방법에 대해 논쟁하지 않습니다." Ellis는 말했습니다. "인증을 하는 최선의 방법일 수도 있고 아닐 수도 있지만, 그것에 대해 논쟁하는 데 시간을 보낼 필요가 없습니다."
이것은 개발자 행복을 위한 Laravel의 공식을 재현하기 어렵게 만들 수 있습니다. 그러나 우리가 대화한 모든 사람들은 Otwell의 개발자 경험에 대한 레이저 포커스가 모든 관리자가 배울 수 있는 것이라고 동의합니다. 그의 세부 사항에 대한 주의는 코드에서 문서화까지 다른 사람들이 따를 강력한 예제를 제공합니다. “Taylor는 지속적으로 ‘종이컷’을 찾고 있습니다, 그것은 그리 나쁘지 않지만 조금 흡입합니다.” Francis는 말했습니다. “그가 그런 사소한 것들을 충분히 고칠 수 있다면, 사용하는 것이 좋게 느껴지는 것으로 더해집니다.”
"다른 도구들은 정확성과 명확성에 너무 많은 초점을 맞추고 개발자 경험에는 충분히 초점을 맞추지 않습니다." Said는 관찰했습니다. "Laravel은 가능한 한 가장 적은 양의 코드로 최대한 많은 것을 제공하는 데 도움이 됩니다. 얼마나 많은 가치를 제공하는지 보면, 당신은 계속 제공하는 것에 대한 만족감을 얻게 됩니다."
한편 Kunckova는 Laravel이 성공하는 데 있어 친절함을 핵심 요소로 지적합니다. “커뮤니티는 사람들이 그것을 좋게 만들려고 노력하기 때문에 그것입니다, 그것은 우연히 일어나지 않았습니다.” 그녀는 말했습니다. “사람들 사이에는 서로에게 친절하게 대하려는 운전력이 있습니다, 동정심과 친절을 격려합니다. 나는 더 많은 커뮤니티가 이 접근법을 채택하면 인터넷이 전체적으로 훨씬 더 좋은 장소가 될 것이라고 생각합니다.”
왜 모두가 그것을 사용하지 않는가?
Laravel을 둘러싼 열정은 질문을 제기합니다: Laravel이 그렇게 훌륭하다면 왜 모든 사람이 그것을 사용하지 않는가? 한 마디로: PHP. "회사들로부터 보이는 주저함은 Laravel과는 관련이 없고 PHP의 평판과 관련이 있다."라고 Said는 지적했습니다. "사람들은 15년 전처럼 PHP에 대한 오래된 생각을 가지고 있습니다."
이것은 Laravel 개발자들이 동의하는 대로 언어가 대부분의 사람들이 깨닫는 것보다 훨씬 나은 것이기 때문에 아쉽습니다. Said는 언어가 기능과 개발자 인체공학 측면에서 동료들과 뒤처진다는 것을 인정합니다. 그러나 PHP는 수년 동안 크게 변화하였으며, Ruby나 Python과 같은 경험을 제공한다고 Francis가 설명하는 경험을 제공합니다. 언어는 강력한 유형에 대한 지원이 있습니다. 기업 개발에 도움이 되는 것과 더불어 일급 함수, 동시성, 웹소켓 등을 지원합니다. "우리의 패키지 관리자인 Composer는 게임에서 최고입니다."라고 Francis는 말했습니다.
회사들로부터 보이는 주저함은 Laravel과는 관련이 없고 PHP의 평판과 관련이 있습니다.
Laravel의 인기는 다운로드 수와 컨퍼런스 참석자 수를 기준으로 삼으면 여전히 성장하고 있습니다. 이것은 주로 기존의 PHP 개발자들이 Laravel을 채택하고 있기 때문일 수 있습니다. 그러나 Kunckova의 경험은 Laravel이 단순히 일을 처리하고 싶은 새로운 개발자들에게도 매력적일 수 있음을 보여줍니다. Elmore는 아직 Laravel을 위해 JavaScript를 포기하긴 일러하지만, 그의 동영상들이 더 많은 사람들로 하여금 Laravel과, 연장선상으로는 PHP를 살펴보게 만들었다고 말합니다.
Otwell은 PHP가 다시 "멋진 것"이 될 것이라고 생각하지 않으며, PHP를 전도하는 것보다는 Laravel을 최대한 좋게 만드는 데 시간을 보내기를 선호합니다. 그러나 두바이에 거주하는 Said는 다른 관점을 가지고 있습니다. "PHP는 실리콘 밸리에서는 멋진 것이 아닙니다, 그러나 여기서는 완전히 반대입니다." 그는 말했습니다. "회사가 Laravel을 사용한다고 듣게 되면 사람들은 흥분합니다. 여기서는 멋진 것입니다."
'실무 경험 > 기술 트렌드 & 리뷰' 카테고리의 다른 글
번역: 모든 DB는 머지않아 벡터 데이터베이스가 될 것이다 (0) | 2023.10.11 |
---|