WordPress Core Fields API 프로젝트는 새로운 리더십을 찾고 있습니다

게시 됨: 2018-07-26

2014년에는 Pods 수석 개발자인 Scott Kingsley Clark이 Metadata UI 프로젝트의 주요 주도 역할을 맡았습니다. 2015년 메타데이터 UI 프로젝트가 Fields API로 다시 태어났습니다.

Fields API는 단일 API를 통해 관리 영역의 다른 화면에 필드를 등록할 수 있도록 개발되었습니다. 새 메타 상자와 그 안의 필드는 게시물에 추가할 수 있고 새 섹션과 필드는 프로필 화면에 추가할 수 있습니다.

API의 목표는 게시물, 약관, 사용자, 미디어, 댓글 등 다양한 관리 화면을 모두 통합하여 표준화하는 것입니다.

Clark은 3년 동안 프로젝트를 주도해 왔으며 작년에 새로운 관심을 보았음에도 불구하고 프로젝트의 Slack 채널에서 자신이 사임한다고 발표했습니다.

나는 이 프로젝트에서 성화를 통과시켜야 하는 무거운 마음입니다. 수백 시간의 시간이 지나면 WordPress 코어 내에서 더 이상 변경 사항에 영향을 줄 수 있다고 생각하지 않습니다.

Fields API 비전은 너무 커서 한 사람이 감당하기에는 너무 많은 작업이었습니다. 나는 WordPress에 Fields API가 필요하다고 깊이 생각하지만 Fields API를 사용하여 우리가 있는 곳까지 가는 여정은 길고 험난했습니다.

사실 저는 몇 년 전에 첫 번째와 두 번째 프로토타입을 만들면서 불타 버렸습니다. 모든 사람이 코드를 설계하는 방법에 동의한 것은 아니며 핵심 기여자 피드백을 기반으로 많은 수정을 거쳤습니다. 나는 그것에 대해 충분히 사람들을 흥분시킬 수 없었고, 그것을 지원하는 데 관심이 있는 충분한 회사와 사람들을 얻을 수 없었습니다.

다른 사람에게 기회를 주어야 합니다. 나는 그것을 끌어내리고 있습니다. 누군가가 앞으로 나서서 앞장서면 내가 할 수 있는 곳에서 기꺼이 돕겠습니다. 하지만 Fields API 제안/프로젝트를 계속 이끌 수는 없습니다. 죄송합니다. 제 사과를 받아 주시고 이 프로젝트를 결승선을 넘지 못한 점을 용서해 주시기 바랍니다. 나는 여전히 WordPress의 미래 성공의 중요한 부분이라고 믿습니다.

스콧 킹슬리 클라크

오픈소스 프로젝트를 이끄는 시련과 고난

다음 인터뷰에서 Clark은 프로젝트의 진행 부족에 대해 개인적으로 책임을 느끼는 이유와 WordPress의 미래에 API가 중요한 이유를 설명하고 그가 다르게 할 수 있었던 것에 대해 반성했습니다.

당신은 특히 누군가에게 성화를 전달하려고 합니까?

아니요, 누가 프로젝트를 끝까지 볼 수 있는 추진력과 영향력을 가질지 잘 모르겠습니다. 장기적 비전으로 접근해야 하지만 WordPress 코어로 만들기에 충분히 작은 증분으로 접근해야 하는 대규모 프로젝트입니다. 누군가에게 요구하는 것은 많고, 가까운 장래에 구텐베르그가 석방될 예정이어서 사람들이 우선순위에 두지 않는 것이기도 합니다.

Fields API가 WordPress의 미래에 중요한 부분인 이유는 무엇입니까?

사람들은 오늘날 WordPress를 보고 REST API 없이 어떻게 살아남았는지 궁금해합니다. 글쎄, 적어도 나는 알고있다! Fields API는 아직 없지만 동일한 내용을 말할 수 있습니다. 다양한 후크에 걸쳐 WordPress용 솔루션을 구축하는 것이 답답한 경우가 너무 많습니다.

일관성을 위해 그곳은 황량한 서부입니다. 메타 상자를 등록하고 원하는 대로 채웁니다. 양식 필드의 스타일을 지정하려면 고유한 CSS가 필요하며 모든 사람은 이 인터페이스가 어떻게 표시되어야 하는지에 대한 고유한 아이디어가 있습니다. 모바일 친화적인 반응형 레이아웃을 담당하고 있습니다. 혼자서 처리해야 할 일이 너무 많습니다. 모양을 사용자 정의할 수 있어야 하지만 필드나 양식을 추가하려는 모든 위치에는 실제로 적절한 API가 있어야 합니다.

장기적으로 게시물 유형을 등록하는 것처럼 WordPress에 필드를 등록하는 것을 상상해 보세요. REST API에서 사용할 수 있고 WordPress 앱 또는 기타 사용자 지정 앱을 통해 액세스할 수 있는 필드와 해당 구성을 상상해 보십시오.

일관된 API가 있기 때문에 전 세계가 열리고 다양한 편집 화면에서 해당 필드에 대한 일관된 인터페이스가 있기 때문에 전 세계가 의미가 있습니다. 게시물, 용어, 댓글, 사용자, 미디어, 심지어 사용자 지정 프로그램은 모두 화면에 그룹, 패널 및 필드를 추가하는 동일한 기본 API를 갖습니다.

Fields API가 들어간 후에 Gutenberg가 완료되었다면 사람들을 위한 마이그레이션이 그렇게 어렵지 않았을 것입니다. Gutenberg는 메타 박스 이전 버전과의 호환성을 위해 자동으로 모든 Fields API 인터페이스를 표시할 수 있었습니다. 훨씬 멋있어 보이기도 했을 것입니다.

잠시 시간을 내서 생각해보면, 더 많은 핵심 기여자가 프로젝트에 참여하고 더 높은 우선 순위로 전환하기 위해 다르게 할 수 있었던 것은 무엇입니까?

잘 모르겠습니다. 입력을 받는 것과 최종 결과에 대한 확신 사이의 섬세한 균형입니다. 처음에 피드백은 API가 WordPress에 대해 어떻게 외국인지에 대한 것이었습니다. 그들은 Customizer와 같은 다른 API와 구조가 유사할 수 있는지 묻습니다.

우리는 코드를 스크랩하고 사용자 정의 프로그램의 포크로 처음부터 다시 작성했으며 Fields API를 사용하는 사용자 정의 프로그램도 지원했습니다. 개발이 한창일 때 Fields API의 모든 영역을 구현했습니다.

핵심 릴리스는 매우 빠르게 이동하고 있었고 WordPress 릴리스에서 릴리스로 많은 코드 변경이 있었습니다.

우리가 해야 할 일을 하기에 충분한 후크가 없었고, 스스로를 '최종'으로 표시한 코드 결정으로 인해 많은 섹션을 확장할 수 없었습니다. 즉, 특정 클래스를 확장하여 작동 방식을 사용자 지정할 수 없습니다.

나는 미국과 유럽의 모든 큰 WordCamp에서 본질적으로 이 기능을 위한 로비 활동을 할 수 있기를 바랍니다. 서포터즈 등을 모으는 것은 어떤 면에서는 정치처럼 느껴진다. 저는 Core dev 회의에 참석하여 이를 제기하려고 했습니다. 공식 WordPress Slack에 전용 채널을 두고 https://make.wordpress.org/core/에 업데이트를 게시하고 주간 회의를 개최하여 기능을 합법화하려고 했습니다.

결국 병력을 모으기 위해 시간보다 개발 시간을 우선시했다. 그것이 몰락이었습니다. Fields API 위에 다른 많은 다른 책임이 있었기 때문에 처음 몇 번을 다시 작성한 후 빠르게 지치기 시작했습니다.

WebDevStudios와 10up 모두 나에게 그것을 추진할 시간을 줬음에도 불구하고 회사가 이와 같은 프로젝트에 대해 당신에게 무기한으로 돈을 지불하기를 쉽게 원하는 것은 아닙니다. 백지 수표가 아니었고 언젠가는 청구 가능한 작업으로 돌아가야 했습니다. 그 이후로 모든 것이 자유 시간이었고 재정적 스트레스와 집 매매 / 구매 시기에 관리하기 어려웠습니다.

핵심에는 Fields API에 대한 수요가 있지만 이를 구축할 수 있는 인력이 충분하지 않습니다. 왜 그렇다고 생각하세요?

모두가 다른 곳에 집중하고 있습니다. 사람들의 관심이 필요한 WordPress 영역이 많이 있습니다. 접근성과 같은 것은 얻는 것보다 훨씬 더 많은 관심을 받을 가치가 있습니다. 그러나 나에게 초점은 Gutenberg와 REST API에 있는 것 같습니다.

구텐베르크는 특히 기여하는 사람들과 구현하는 사람들에게 엄청난 시간을 낭비했습니다. 정말 큰 기능입니다. 확실히 Fields API보다 규모가 크며 WordPress에 있는 완전히 새로운 앱과 같습니다. 그것과의 통합에는 많은 교육과 시행착오가 필요했습니다. 사람들의 초점은 바로 지금 필요한 곳에 있습니다. 우선 순위와 관심 수준 면에서 구텐베르크가 Fields API보다 먼저 나온 것이 유감입니다.

다음 Fields API 프로젝트 리더에게 어떤 조언을 하시겠습니까?

이것은 큰 프로젝트이며 모든 사람들은 그것이 특정한 방식이어야 한다고 말하고 싶어할 것입니다. 옵션을 평가하고 코어가 시작할 수 있는 한입 크기의 것을 제시해야 합니다. 이를 기반으로 구축하되 모든 WordPress 화면에서 통합이라는 장기적인 목표를 절대 놓치지 마십시오. Fields API를 사용하면 프런트 엔드 주석 양식도 번창할 수 있습니다.

프로젝트가 핵심 우선 순위가 아닌 것에 대해 개인적으로 책임감을 느끼는 이유는 무엇입니까?

어느 순간 우리는 추진력을 얻었습니다. 우리는 적어도 3-4명의 활동적인 사람들이 있었습니다. 시간이 부족해서 무너졌습니다. 내 근시안, 내 잘못입니다. 나는 몇 년 동안 프로젝트를 개발하는 데 수백 시간을 보냈습니다. 기능 제안 텍스트를 구성하고 기여자들의 마음에 불을 지피는 데 훨씬 더 많은 시간을 할애했어야 했습니다.

지난 몇 년 동안 프로젝트에 들인 시간과 노력을 고려할 때 성화를 전달하는 데 안도감을 느끼십니까?

횃불을 넘기거나 집어들면 기분이 한결 나아질 것입니다. 가장 큰 안도는 공식적으로 더 이상 혼자 짊어져야 하는 무게가 아니라는 것입니다. 시도하고 실패해도 괜찮지만 여전히 아쉽습니다.

누군가 또는 일부 회사가 나서서 시간을 투자하기를 바랍니다. 그들은 스스로 타버린 내 마음의 불을 다시 붙일 수도 있습니다. 지금은 중요한 할 일을 하나 덜 가지고 있습니다. 나는 여전히 무거운 접시를 가지고 있지만 더 이상 짐이 무겁지 않습니다.


프로젝트의 즉각적인 미래는 불확실하지만 인수에 관심이 있는 사람들은 Make.WordPress.Core에서 Fields API 태그가 표시된 게시물을 읽고 역사에 대해 알아보는 것이 좋습니다. 프로젝트의 Github 페이지를 확인할 수도 있습니다.

프로젝트를 인수하는 데 관심이 있다면 Twitter, Slack 또는 그의 웹사이트를 통해 Clark에게 연락할 수 있습니다.