주요 웹 개발자 고충사항 심층 탐구

여러 건의 대화를 통해 수집한 주요 개발자 고충에 관한 통계 모음입니다.

몇 달 전 폴 킨란2021년의 주요 개발자 고충에 관한 게시물을 올렸으므로 지난 2개 분기에 대한 업데이트로 이 도움말을 시작해 보는 것이 적절합니다. 수치가 약간 변동되었지만 순위는 변경되지 않았습니다.

도전과제 2021년 1분기 2021년 2분기 2021년 3분기 2021년 4분기
웹 플랫폼 또는 웹 표준의 변화를 따라잡기 27% 26% 27% 22%
수많은 신규 및 기존 도구 또는 프레임워크를 지속적으로 유지 26% 26% 25% 21%
디자인이나 환경이 여러 브라우저에서 동일하게 작동하도록 만들기 26% 28% 24% 21%
여러 브라우저에서 테스트 23% 24% 20% 20%
보안 조치 이해 및 구현. 23% 25% 20% 19%

Paul의 블로그 게시물에서 언급한 것처럼, 우리는 이러한 고충을 해결해야 합니다. 더 큰 노력의 일환으로 제 동료인 카디르 토팔과 저는 18명이 넘는 개발자를 인터뷰했습니다. Google의 목표는 개발자의 주요 고충을 해결하기 위한 방법을 조사하고 이해하는 것입니다.

개발자 토론

면책 조항: 이러한 정보는 개발자와의 소수의 대화를 기반으로 합니다. 'all'을 사용하는 경우 '일부'와 같이 전체 커뮤니티가 아니라 인터뷰에 응한 개발자를 의미합니다. 이러한 유용한 정보를 보다 광범위하게 추론하려면 더 많은 연구가 필요합니다.

이 대화는 웹 개발자 커뮤니티가 얼마나 놀랍고 다양한지를 일깨워 주는 좋은 시간이었습니다. 우리와 대화해 주신 모든 개발자 여러분께 감사의 말씀을 드리고 싶습니다. 25년 이상의 경력을 가진 개발자도 있고, 최근 2020년에 시작한 개발자도 있습니다. 정식 컴퓨터 공학 학위를 통해 경력을 시작한 개발자도 있고 독립적으로 경력을 시작한 개발자도 있습니다. 어떤 개발자는 적극적으로 새로운 기능을 찾고 브라우저 출시 노트를 확인하며, 다른 개발자는 동료나 친구를 통해 새로운 것을 배우기도 합니다. 어떤 사람들은 복잡성이 업무의 일부라고 생각하고 도전받는 것을 즐기는 반면, 다른 사람들은 그저 일을 하고 싶어 합니다. 이러한 고충을 해결하기 위해 고민할 때는 이러한 다양성을 염두에 두어야 합니다.

개발자들 사이에서 가장 공통적인 점 중 하나는 바로 CMS나 프레임워크를 사용해 작업을 한다는 것입니다. Wordpress, React, 부트스트랩, Angular, Tailwind가 모두 언급되었지만, 프로덕션에서 바닐라 웹 플랫폼을 사용하는 개발자는 없었습니다. 프로젝트를 시작할 때 프레임워크를 선택하는 것은 쉽지 않으며 개발자들은 종종 비기술적 요구사항을 고려합니다. 예를 들어, 해당 프레임워크 작업을 위해 개발자를 고용하기가 쉬운지 등입니다. 프레임워크와 CMS가 솔루션에 포함되지 않으면 개발자의 고충을 개선할 수 없습니다.

웹 플랫폼에 관해 말하자면, 대부분의 개발자는 이 플랫폼을 그 위에 개발 중인 플랫폼으로 이해하고 있습니다. 여기에는 웹 플랫폼의 고전적 정의뿐만 아니라 CMS, 프레임워크, 도구, polyfill도 포함됩니다. 대부분의 경우 이러한 정보를 최신 상태로 유지하는 것이 가장 큰 어려움이라 할 수 있습니다. 이로 인해 해당 질문에 대한 Google의 해석이 바뀌었습니다. 이제 설문조사를 덜 모호하지 않은 부분으로 세분화하여 업데이트해야 한다는 것을 알게 되었습니다.

또 다른 모호한 영역은 웹 표준의 정의입니다. 표준 준수와 관련된 예를 묻는 질문에, 많은 개발자들이 권장사항을 따르는 것이 아니라는 문제를 지적했습니다. 이는 설문조사에서 명확히 해야 할 또 다른 부분입니다.

개발자는 특정 사용 사례와 패턴을 구현할 때 권장사항을 찾습니다. 블로그 게시물과 StackOverflow가 권장사항의 출처로 언급되지만 개발자들은 읽고 있는 정보가 실제로 권장사항인지, 최신 기능 및 API가 포함된 최신 상태인지 궁금해하는 경우가 많습니다. 그들은 보다 공식적인 출처에서 이러한 내용을 읽길 원합니다.

새로운 사용 사례를 지원하는 기능과 API를 따라잡는 것은 비교적 간단한 문제입니다. 개발자는 기능, API, 플랫폼 변경으로 인해 권장사항이 변경되는 데 더 많은 노력을 기울입니다.

대부분의 개발자는 호환성이 가장 큰 문제 중 하나라는 데 동의합니다. Compat 2021Interop 2022와 같은 작업을 통해 상황이 개선되고 있지만 개발자들은 이를 아직 해결된 문제로 여기지 않습니다.

대부분의 개발자는 어떤 방식으로든 폴리필을 사용합니다. 그러나 Babel이나 프레임워크와 같은 도구를 통해 폴리필을 자동으로 추가할 수 있기 때문에 대부분의 경우 사용법이 개발자에게 투명하게 공개됩니다. 폴리필을 직접 관리하는 사용자의 경우 폴리필이 '양호'한지 파악 문제가 될 수 있습니다 개발자는 NPM의 설치 수와 폴리필 제작자를 신호로 사용한다고 언급했습니다. 몇몇 개발자는 IE 11 지원 중단으로 인해 불필요해진 폴리필을 삭제하는 작업을 하고 있다고 언급했습니다.

프레임워크는 단편화 문제를 야기합니다. 개발자가 '중단'되었다는 신고가 접수되었습니다. 이전 버전의 프레임워크로 통합하고 이로 인해 사용할 수 있는 기능이 제한되었지만 동일한 프레임워크의 최신 버전으로 마이그레이션하는 것은 비용이 많이 들고 정당화하기 어려울 수 있습니다.

결론

최신 웹 개발에는 표준, 브라우저, 라이브러리, 폴리필, CMS, 프레임워크, 권장사항, 도구를 비롯하여 움직이는 요소가 많이 있습니다. 이러한 다양성은 웹의 좋은 점 중 하나이지만, 지금은 각 조각을 이해하고 서로 어떻게 호환되는지를 각자의 몫입니다.

다양성을 해치지 않으면서도 모든 것이 어떻게 연결되어 있는지 더 명확하게 설명하고 모든 부분 간에 더 잘 조율할 수 있는 방법이 있는지 궁금합니다. 이는 크고 복잡하며 한 번에 처리하기 어려운 문제입니다. 그렇다면 어디서부터 시작해야 할까요?

공유하고 싶은 견해와 의견이 있다면 저도 이야기를 나누고 싶습니다. 직접 대화를 예약하는 방법을 설정하겠습니다. 그동안은 채팅 메시지를 트위터에서 열 수 있습니다. 문의해 주시면 상담 시간을 잡아드리겠습니다.