이것을 누르십시오: Jon Martin과 함께 WordPress 빌드에서 시간을 죽이는 기술 부채 피하기
게시 됨: 2022-02-25WMR의 WordPress 커뮤니티 팟캐스트 Press This에 오신 것을 환영합니다. 여기 호스트 David Vogelpohl이 커뮤니티 주변의 게스트와 함께 WordPress 개발자가 직면한 가장 큰 문제에 대해 이야기합니다. 다음은 원본 녹음의 필사본입니다.
Powered by RedCircle
David Vogelpohl: 안녕하세요. WMR의 WordPress 커뮤니티 팟캐스트 Press This에 오신 것을 환영합니다. 저는 귀하의 호스트인 David Vogelpohl입니다. 저는 WP Engine에서 제 역할을 통해 WordPress 커뮤니티를 지원합니다. 매주 언론에서 들을 수 있는 최고의 커뮤니티를 여러분에게 전하는 것을 좋아합니다. , 또는 iTunes, iHeartRadio, Spotify에서 이를 누르거나 wmr.fm에서 최신 에피소드를 다운로드하도록 구독할 수 있습니다. 이 에피소드에서 우리는 내가 가장 좋아하는 주제 중 하나에 대해 이야기할 것인데, 그것은 WordPress 빌드에서 기술 부채를 죽이는 시간을 피하는 것입니다. 그리고 이 대화에 참여하게 되어 Jon Martin을 환영합니다. Jon, Press This에 오신 것을 환영합니다.
Jon Martin: 정말 감사합니다. 여기까지 오게 되어 좋습니다.
DV: 공연 전에 한룸 발음 연습을 하는 건 알지만, 물론 초반에 잘못 발음해서 존이 미안해요. John's를 듣는 사람들에게는 기술 부채가 있다는 것이 무엇을 의미하고 그것이 당신에게 어떤 영향을 미치는지와 같은 기술 부채가 WordPress 개발 팀에 미치는 영향에 대한 그의 생각을 공유할 것입니다. 모든 프로젝트에서 기술 부채를 줄이는 방법에 대해 생각할 수 있습니다. 그리고 기술 부채 고려 사항을 고객과 공유해야 하는 책임이 있는 이유
JM: 프리랜서 에이전시 자격으로 일하고 있다면. 그래서 나는 기술 부채를 죽이는 것을 좋아합니다. 나는 그것을 제거하는 것을 좋아합니다. 그것은 내가 가장 좋아하는 주제 중 하나입니다.
DV: 우리는 주제에 대한 John의 생각을 살펴볼 것이지만 시작하기 전에 John, 모든 게스트에게 했던 것과 같은 질문을 할 것입니다. WordPress 기원 이야기에 대해 간단히 말해주세요. 워드프레스를 처음 사용한 시기
JM: 그래서 저는 2010년대 초에 그 기간에 대한 정확한 표현을 확신하지 못했을 것입니다. 그래서 저는 실제로 저 자신을 시작했고 2008년에 대행사를 어떻게 시작했는지에 대한 CEO였습니다. 그리고 당시 WordPress는 여전히 블로깅 플랫폼이었습니다. 풍부한 콘텐츠가 포함된 웹사이트를 구축하고 있었습니다. 그래서 약간 더러운 단어이지만 당시에는 Joomla를 사용했습니다. 하지만 그때보다는
DV: Joomla는 더러운 단어입니다. 저는 개인적으로 모든 오픈 소스 CMS를 좋아합니다.
JM: 예, 우리는 그것이 훌륭한 프로젝트라고 말하고 싶습니다. 우리에게 중요한 것은 시간이 지남에 따라 WordPress가 맞춤형 포스트 사이트 지원을 내놓았을 때 Joomla가 정말 강력했던 부분이라고 생각합니다. 그 때 WordPress에서 블로깅 플랫폼으로 알려진 것에서 모든 종류의 사이트를 수행할 수 있는 적절한 완전한 CMS로 끌어올린 워드프레스가 정말 많이 바뀌었습니다. 1인 비즈니스 또는 프리랜서 또는 대규모 엔터프라이즈급의 복잡한 웹사이트에 이르기까지 모든 것을 포함합니다. 그리고 제 생각에는 WordPress가 지금 인기 있는 이유 중 일부이기 때문에 그것은 정말 저에게 정말 치명적인 결정이었습니다. 그래서 그녀가 여기를 사용하기 시작한 때였습니다. 그 이전의 Sasha 이야기는 정말로 나와 지금 우리가 어떻게 함께 밴드에 있었는지의 CEO입니다. 그리고 우리는 생각하는 이 밝은 아이디어를 가지고 있습니다. 글쎄요, 도로에서 동일한 시간을 보내는 것이 더 굉장하고 현재 직장에서 시간을 내기란 정말 어렵습니다. 그래서 우리는 에이전시를 시작하고 웹 개발자가 되자고 생각했습니다. 그 당시에는 그 모든 시간을 얻는 데 정말 도움이 될 것이기 때문에 훌륭한 결정이었습니다. 나는 그것에 대해 정말 정말로 기쁩니다. 그러나 그는 또한 확실히 순진한 결정이기도 합니다. 왜냐하면 자신을 위해 일하는 것이 당신에게 더 많은 시간을 준다는 생각은 분명히 우리가 조금 후에 인식할 것이라고 생각하는 실수이기 때문입니다. 그리고 그 시점 이전에, 저는 SQL에 대해 약간 알고 있었고, 사실 그래픽 카드가 색상을 지원하기 시작한 이래로 컴퓨터를 잘 만들어 왔습니다. 따라서 CGA가 무엇인지 아는 다른 사람을 위해 내가 몇 살인지 아는 데 도움이 될 것입니다. 하지만 네, 정말, CPT가 나왔을 때였습니다. 그 지방이 우리의 모든 것을 바꾸어 놓았습니다. 그리고 우리는 거의 하룻밤 사이에 WordPress를 사용하기 시작했습니다. 사실 그것이 우리가 선택한 CMS가 되었고 그 이후로 뒤돌아보지 않았습니다.
DV: 내가 이 질문을 한 모든 사람들 중에서 실제로 사용자 정의 게시물 유형이 WordPress 원본 스토리와 어떻게 관련되어 있는지에 대해 단서가 없는 사람은 거의 없습니다. 그리고 재미있습니다. 나에게도 비슷한 이야기가 있다. 저는 2010년에 에이전시를 설립했습니다. 그래서 조금 후에 사용자 정의 게시물이 있을 때 이미 들어갔습니다. 우리는 Joomla로 빌드를 시작했고 비슷한 이유로 WordPress로 전환했지만 이 사용자 정의 게시물 유형과 사용자 정의 메타였습니다. 워드프레스가 정말 진정한 CMS가 된 순간이 바로 이런 식으로 다양한 형식으로 실제로 제시했다는 점에 동의합니다. WooCommerce가 존재하고 WP 엔진이 존재하고 WordPress 공간의 다른 많은 브랜드가 등장한 지 1년, 지금은 정말 변혁적인 시기입니다. 당신의 기원 이야기의 뿌리가 되는 일종의 참고 자료를 듣는 것은 흥미롭습니다. 그들은 저에게 어떻게 음, 그리고 당신이 원한다면 그곳의 창립 순간에 대해 이야기하고 있었는데, 어떻게 음, 그리고 당신이 하는 일에 대해 간단히 말해 주시겠습니까?
J M: 네, 물론입니다. 그래서 사실, 우리가 발견한 그 기관은 우리가 나중에 어떻게 운전했는지가 아닙니다. 알았어. 알았어. 글쎄요, 실제로 그 주된 이유는 그 옛날에 우리가 웹사이트를 만드는 것과 SEO를 하는 것 사이에 매우 뚜렷한 차이가 있었기 때문입니다. 그리고 전 세계적으로 통합된 접근 방식과 실제로 사용자 경험과 같은 것에 대해 생각하는 것은 많지 않았습니다. 그리고 그것이 SEO 및 개발과 어떻게 작동하는지, 그런 종류의 모든 것입니다. 그래서 그것이 실제로 우리가 나중에 합병하게 된 이유입니다. Allen Milan은 약 20년 동안 주변에 있었고 우리 설립자는 SEO가 하나가 되기 시작한 초기에 거의 설립했습니다. 네, 그래서 두 에이전시를 통합했습니다. 6, 7년 전, 어쩌면 조금 더. 데이터에 대한 나의 기억력은 좋지 않습니다. 인정해야 합니다. 그리고 나서 정말로, 예, 그것이 우리의 접근 방식이 되었습니다. 사람들이 선을 볼 수 있도록 돕기 위해 이 모든 다른 분야를 혼합하는 이 완전히 통합된 접근 방식인가요? 그래서 이제 우리는 PPC, SEO, 디지털 PR, 분명히 웹 디자인을 하고 있습니다. 브랜드 확장, 디지털 전략, 그리고 이런 모든 종류의 것들이 있습니다. 이 모든 분야는 오늘날 강력하고 강력한 디지털 존재감을 갖기 위해 필요합니다. 회사에서 당신의 역할은 무엇입니까? 그래서 제 직업은 기술 이사였습니다. 그래서 솔직히 말해서 제가 하는 모든 일을 다 다루지는 않습니다. 저는 개발팀을 오랫동안 운영합니다. 따라서 모든 WordPress는 내 감독하에 있었습니다. 우리 팀에 Julio와 내가 처음 시작할 때 일했던 것보다 훨씬 더 나은 개발자가 있다는 것을 기쁘게 생각합니다. 이것이 오늘날 우리가 훨씬 더 잘하고 있는 이유입니다. 그리고 우리는 상황을 조금 더 이해합니다. 그래서 최근에는 데이터팀도 비용으로 개발팀을 장기간 운영하고 있습니다. 즉, 내가 기계 학습을 하고 Python과 Bartek 및 다른 사람들이 게임을 하고 있다는 것을 의미하지만 이 모든 것을 상상해야 합니다.
DV: 멋진 개별 클라이언트를 수행하는 것은 그 과정에서 약간의 기술 부채를 초래할 것입니다. 기술 부채의 일반적인 유형은 무엇이며 WordPress에만 해당될 수 있는지에 대해 어떻게 생각하는지 궁금합니다. 잠시 동안입니다. 하지만 WordPress가 내장된 유형에 고정된 것처럼 기술 부채를 관리하는 방법과 방법에 대해 생각하면서 그것에 대해 어떻게 생각하시나요?
JM: 네, 그렇습니다. 내 말은, 아닙니다. 반드시는 아닙니다. 우리는 어떤 종류의 언어를 사용하고 있습니다. 우리가 반드시 사물을 분류하거나 분류를 위한 지구 프로세스를 거치지는 않지만 실제로는 세 가지 다른 버킷에 속합니다. 그 중 하나는 기존 코드 위에 잘못된 코드를 작성하는 것인데, 이는 아마도 당신이 과거에 실수를 저질렀기 때문에 Heritage 웹사이트와 다른 누군가의 문제일 수 있기 때문일 수 있습니다. 일종의 첫 번째 양동이. 두 번째는 필요하지 않은 코드를 작성하는 것입니다. 아마도 지금 당장은 필요하지 않을 수도 있습니다. 알다시피, 나는 우리 모두가 우리와 함께 작업하는 클라이언트 및 브랜드의 기능 요청을 끝내고 특정한 것에 열광하지만 실제로는 실제 가치를 얻는 측면에서 옳은 것이 아닐 수 있다고 확신합니다. 고객을 위해. 그리고 우리가 실제로 보는 가장 큰 세 번째 것은 실제로 다른 플랫폼에 있어야 하는 기능을 구축하는 것입니다. 그래서 그런 종류의 아키텍처 조각을 이해하면 여기에 우리가 연결하는 다양한 비트가 있습니다. 여기 CRM은 웹사이트이며 근본적으로 비즈니스 마케팅에 관한 것입니다. 여기 주문 처리 플랫폼이 있습니다. 모든 종류가 다릅니다.
D V: 묻겠습니다. 여기에 세 가지 유형의 소리를 나열한 것처럼 근본적인 질문을 드리겠습니다. 다음과 같은 세 가지 유형의 기술 부채를 없애고 싶은 것은 나쁜 코드에 나쁜 코드를 작성하는 것입니다. 다른 플랫폼에서 수행할 수 있는 필수 기능이 아닙니다. 당신이 원하는 기능과 같은 가치가 있고 따라서 그 경우에 좋은 기술인 네 번째 버킷이 있지 않습니까? 그게 말이 돼? 네 번째 양동이입니다.
JM: 네. 100% 내 말은, 모든 기술 부채가 나쁜 것은 아닙니다. 당신이 만들려는 거의 모든 기능이 일종의 기술적 부채를 발생시킨다는 사실을 받아들여야 하고 그 기술적 부채가 좋은지 아닌지에 대해 전화를 걸어야 합니다. 어떤 것은 좋고 어떤 것은 나쁘고 내가 전에 말한 키워드는 가치에 관한 것입니다. 당신은 그 일에 필요한 가치를 얻을 것입니까? 더 중요한 것은 고객이 궁극적인 고객이지 당신의 고객이 아니라 그들의 고객입니까? 그들은 그것에 대한 가치를 얻을 것인가? 그것은 일반적으로 그 기술적 부채를 받아들일지 여부에 관한 꽤 좋은 안내 표시등입니다.
DV: 예, 저는 당신이 그 인용문에 대해 어떻게 생각하는지, 받아들여도 좋은지 아닌지에 대한 공식 가치가 있다는 것을 알고 싶습니다. 기술 부채 유형의 다양한 버킷, 특히 제거하기 위해 최적화하려는 부채 유형. 그래도 다음에 하고 싶은 것은, 이 분야에 집중할 수 있도록 당신을 극도로 몰아넣은 일이 있었는지에 대한 이해를 얻는 것입니다. 그러나 우리는 첫 번째 휴식을 취하고 바로 돌아올 수 있습니다. 광고 시간에 연결할 시간입니다. 잠시만 더 눌러주세요. 여러분, 안녕하세요. W EMR에서 WordPress 커뮤니티 팟캐스트를 누르기 위해 다시 오신 것을 환영합니다. 호스트 David Vogel입니다. 폴. 나는 기술 죽음을 죽이는 시간을 무효화하는 것에 대해 John Martin을 인터뷰하고 있습니다. 휴식 시간 직전에 John은 제거하고 싶은 세 가지 유형의 기술 부채에 대해 생각하는 방식은 작업 중인 사이트의 성공에 필요하지 않은 코드를 생성하는 잘못된 코드에 잘못된 코드를 작성하는 것이라고 설명했습니다. 그런 다음 다른 플랫폼에서 더 잘 제공될 수 있는 기능에 대한 코드를 빌드할 수 있습니다. 하지만 우리가 가치 있는 인용문과 같은 방식으로 들어가기 전에. 나는 시간을 알지 못하는 특정한 것이 있었고 당신의 여정이 기술 부채의 특정한 사례로 당신을 위해 이것을 표면화하는 것이 어떻게에 대한 주요 초점 영역인지 궁금합니다.
JM: 네, 물론입니다. 4~5년 전쯤에 제가 이것에 대해 생각하게 된 진짜 획기적인 프로젝트가 하나 있습니다. 다른 경우도 많이 봤습니다. 기업은 모든 종류의 일을 통해 WordPress를 통해서만 시간을 축적하는 것이 아니라 실제로 기업이 운영 프로세스를 통해서도 시간을 축적합니다. 당신이 그 덱을 만드는 기술적인 일이어야 한다면. One, One 이야기는 그 어떤 것보다 내 마음을 진정으로 돋보이게 하는 고객입니다. 우리는 상대적으로 작은 회사와 함께 일하면서 많은 유료 미디어 작업을 했습니다. 본질적으로 온라인에서 물건을 판매하는 판매. 전자상거래 사업이었다. 그리고 그들은 전통적인 종류의 우편 주문을 하고 있었지만 많은 일을 하고 더 많은 트래픽을 온라인으로 유도하여 우편 주문을 거칠 필요가 없도록 하려고 노력했습니다. 우편 주문은 웹사이트를 통해 관리되고 그들이 그들을 위해 만들어진 사이트는 완전히 맞춤형입니다. 그리고 그들은 그 시점에서 약 10년 동안 주변에 있었습니다. 그래서 조금씩 조금씩 조금씩 늙어가기 시작했습니다. 표준을 따르고 계속 진행하십시오. 기술은 발전했습니다. 이제 조금은 재고해야 할 때입니다. 그래서 클라이언트는 우리와 함께 앉아서 웹사이트에서 수행한 모든 다양한 작업에 대한 브리핑을 시작했습니다. 그리고 웹사이트에 구축된 모든 종류의 비즈니스 로직과 비즈니스 운영 관련 항목이 있다는 것이 매우 빨리 명확해졌습니다. 그리고 그것은 주문으로 이어지는 논리였으며 공급자가 일하는 방식에 매우 구체적이었습니다. 그래서 세부 사항은 다루지 않겠지만 공급업체와 그들이 주문을 이행하는 방법, 이러한 모든 종류의 물건을 보내기 전에 상점에 배송되었는지 여부 사이에 상당히 복잡한 협정이 있습니다. 그래서 모든 것이 매우 복잡합니다. 이제 비즈니스 소유자와 작업 방식에 대한 이전 사용자는 결국 전체를 관리하는 시스템을 구축했으며 그 당시에는 정말 정말 좋은 시스템이었고 비즈니스가 크게 성장하는 데 진정으로 도움이 되었습니다. 이제 그들이 정말로 생각하지 않은 것은 모든 웹사이트가 결국에는 어떤 소프트웨어나 마케팅 세계와 마찬가지로 언젠가는 생명을 얻게 될 유통기한이 있다는 것입니다. 그 유효 기간은 예를 들어 CRM에 투자하는 비즈니스가 일반적으로 꽤 오랜 시간 동안 작동하게 된다면 웹사이트가 더는 아니더라도 약 10년이 되는 것과 비교할 때 정말 상대적으로 짧습니다. 일반적으로 2년에서 5년 사이에 우리는 대부분의 대형 브랜드가 3년마다 재건하는 경향이 있음을 알게 됩니다. 그래서 문제는 이 복잡한 로직을 기존 웹사이트에 모두 구축하고 전체 웹사이트를 다시 구축해야 한다는 것이었습니다. 그리고 갑자기 이 모든 비즈니스 로직도 재구축해야 합니다. 이제 우리는 프로젝트 비용을 올렸고 기본적으로 우리가 이미 가지고 있는 것을 재건하기 위해 기본적으로 연간 매출의 약 절반이 되었습니다. 그리고 그것은 제가 이 문제에 대해 생각하게 하기 시작했습니다. 예를 들어 그들이 원래 다른 방식으로 문제에 접근한다면, 우리가 웹사이트에서 달성하고자 하는 다른 것들에 대해 생각해 봅시다. 아시다시피, 이것은 마케팅에서 제품을 판매하기 위한 것이었습니다. 이것은 주문 이행을 위한 것입니다. 이것은 모든 것을 공급하는 내 비즈니스 프로세스를 관리하는 데 가장 적합합니다. 그리고 그것에 대해 조금 더 모듈식 방식으로 생각했다면 이 고객에게는 훨씬 다른 상황이 되었을 것입니다. . 본질적으로 돈을 버는 웹사이트가 있었기 때문에 그들에게는 정말 문제였습니다. 꽤 낡았기 때문에 꽤 많이 삐걱거렸다. 그러나 동시에 전체 웹사이트를 재구축하는 데 비용이 너무 많이 들고 프로젝트가 매우 복잡해졌습니다. 우리는 그들이 이미 가지고 있는 것을 사용하고 통합하기 위해 꽤 영리하지만 좋지 않은 작업을 끝까지 찾아낼 수 있었지만 인용할 수는 없지만 궁극적으로 훨씬 더 고통스럽고 훨씬 느리고 훨씬 더 많이 발생했습니다. 필요 이상으로 비쌌습니다. 원래 그 아키텍처를 생각했다면.

DV: 잊고 싶은 프로젝트가 너무 많습니다. 그때도 그랬고, 지금은 사진을 찍을 수 있습니다. 시간을 되돌리고 있습니다. 그래서 제 생각에는 계획하고 있는 리팩터링과 관련하여 비즈니스에 대한 비용의 종류에 대해 생각하는 것이 매우 중요한 교훈이라고 생각합니다. 그리고 저에게 분명한 대답은 그것을 다르게 설계해야 한다는 것이었습니다. 그리고 그것은 당신이 해야 하는 일을 좋아한다면 아마도 더 명확한 길일 것입니다. 하지만 많은 팀이 기술 부채에 대해 생각할 때 생각하는 것처럼 생각합니다. 좋아, 글쎄, 이 일을 하는 것이 좋겠지만 그만한 가치가 있을까?
JM: 시간이 지남에 따라 이것을 유지 관리할 가치가 있습니까? 그래서 나는 당신이 그 공식에 대해 어떻게 생각하는지 궁금합니다
D V: 언제 기술 부채를 도입해도 됩니까? 그리고 그 공식에 대해 얼마나 생각하시나요?
JM: 네, 거기에서 정말 중요한 점을 말씀하셨습니다. 알다시피, 개발자의 본성에 대해 생각해보면 개발자는 멋진 일을 하는 것을 좋아하기 때문에 여기에 참여합니다. 그리고 우리 동기의 큰 부분은 새로운 일, 새로운 기술, 새로운 JavaScript 프레임워크, 무엇이든 하는 방법을 배우는 것이며 자연스럽게 멋진 물건을 만들고자 하는 동기를 부여합니다. 그러나 우리는 그것에 대해 장기적으로 생각하지 않습니다. 알다시피, 우리는 여전히 그것을 유지할 것입니다. 알다시피, 내 아내는 내 집에 온수 욕조를 갖고 싶어하지만 누군가가 그것을 청소할 것이라는 것을 알고 솔직히 말해서, 나는 그것을 청소하는 사람이 어쨌든 그런 종류의 생각이라고 믿지 않습니다. 생각해볼 가치가 있는 정말 정말 좋은 질문입니다. 처음에 실제로 가치가 있는지 그리고 이를 조금 세분화하면 먼저 생각할 수 있는 몇 가지 다른 것들이 있습니다. 즉, 테스트하고 유지 관리하는 데 드는 총 소유 비용과 구축 비용은 얼마입니까? 예를 들어, 그 문제를 해결할 수 있는 정말 간단한 방법이 있을 수 있습니다. 스프레드시트를 사용하거나 회사 내부의 누군가가 단기간 동안 관리할 수 있는 약간 다른 아키텍처를 사용합니다. 그리고 그렇게 하는 것이 이 정말 복잡한 기능을 구축하는 것보다 더 저렴하고 더 효과적일 것입니다. 그러나 실제로 총 소유 비용을 보면 특정 일을 하기 위해 일주일에 몇 시간을 소비하는 것보다 더 많은 비용이 들 것입니다. 오해하지 마세요. 저는 자동화를 매우 중요하게 생각합니다. 기술은 그런 종류의 관리자를 피하기 위해 가능한 한 많이 자동화되어야 하지만
DV: 당신은 가입하고 있고 가치가 거기에 있는지 확인하기 위해 코딩하기 전에 무언가를 시도하는 것과 같은 이 매뉴얼 접근 방식을 사용합니다. 제 말은, 이 요소를 단순화하는 것과 같은 아이디어를 얻었습니다. 대신 수동으로 할 수 있습니까? 궁극적인 수익이 그만한 가치가 있는지 확인하기 위해 테스트 관점에서 접근한 적이 있는지 궁금합니다.
JM: 네. 100%. 그래서 저는 애자일 방법론을 크게 믿습니다. 그리고 기본적으로 Agile의 큰 핵심 원칙 중 하나는 적시에 올바른 것을 구축한다는 것입니다. 그리고 가능한 한 빨리 가치를 얻는 데 초점을 맞춥니다. 그래서 당신은 최소한의 실행 가능한 제품을 만들고 싶어합니다. 즉, 그 시점에서 완전히 기능이 풍부한 무언가가 반드시 있어야 하는 것은 아닙니다. 하지만 테스트를 시작할 수 있는 플랫폼을 제공합니다. 실제로 원하는 것을 얻고 있습니까? 사용자가 이에 응답하고 있습니까? UX나 웹 개발 분야에서 일해 본 사람이라면 누구나 고객의 요청을 받는 경우가 많다는 것을 예상하는 방식으로, 고객이 고객이라고 생각하지만 실제로 고객이 정말로 원하는가? 다시 한번 물어볼 수 있는 정말 좋은 질문입니다. 일단 장기적 관점에 대해 생각해 본 후 웹사이트를 사용할 사람들이 누구인지 알고 있는지, 아니면 그들이 원하는지 테스트해야 하는지 여부입니다. 그것을 사용하려면? 그리고 일단 당신이 그 테스트를 마치면, 우리는 우리가 무엇을 요구하지 말았어야 했는지와 우리가 뒤로 물러나서 실제로 다른 곳에 투자해야 하는지 여부를 알아낼 수 있습니다.
DV: 이 생각을 요약하는 것처럼 들리고 장기적으로 총 소유 비용을 살펴보는 당신의 아이디어가 마음에 들었습니다. 팀은 많은 시간 동안 당신이 아는 사람들도 생각하고, 인용하고, 팀은 몇 시간 또는 몇 주 또는 스프레드 또는 포인트 또는 이것이 구축하기 위해 진행되는 무엇이든 생각합니다. 하지만 그런 다음에는 유지하기 위해 몇 시간 또는 몇 주 또는 몇 주 또는 몇 주 동안 스프레드나 포인트를 유지해야 하는지, 그 균형을 유지함으로써 얻을 수 있는 가치에 대해 사용한다는 사실을 알아야 합니다. 그 활동. 당신은 분명히 그것이 건전한 조언입니다. 하지만 당신은 또한 이렇게 생각하고 있습니다. 글쎄, 내 가정이 올바른지 확인하기 위해 이것을 테스트하기 위해 내가 할 수 있는 일이 있습니까? 그 소리가 정확합니까?
JM: 네. 전적으로. 전적으로. 그리고 우리가 다루지 않은 유일한 부분은 아키텍처에 대해 조금 더 일찍 이야기한 것입니다. 이것을 구조화하여 더 좋게 만들고 그 시간에 프로그래밍 및 기타 작업을 수행할 수 있는 더 나은 방법이 있습니까 아마 조금 후에 만질 것입니다.
DV: 네, 아키텍처에 대한 고려 사항도 있습니다. 제가 당신이 어땠는지 적어놓은 것처럼 사양을 변경할 수 있는 방법이 있습니까? 내 이해 관계자 교육이나 회담에서 내가 자주 말하는 것과 같습니까? 사양이 맞습니까? 숙박에 정말 필요한 것이 무엇인지 물어보십시오. 그리고 그러한 요구는 거짓말일 것이고 정말로 필요한 것이고 이것은 어떨까요? 질문은 매우 중요한 것으로 나타났습니다. 그래서 이것이 당신이 이것에 대해 어떻게 생각하는지의 중요한 부분인 것 같습니다.
JM: 네, 그 사이트가 개발 중인 1분마다 고객 앞에서 가치를 얻지 못하고 있기 때문입니다. 그리고 그것은 그것에 대해 생각하는 쉬운 방법입니다. 가능한 한 빨리 출시되기를 원합니다. 그런 다음 테스트하고, 모니터링하고, 반복하고, 배우고, 거기서 어디로 가는지 확인하십시오. 하지만 이는 옳다고 생각하는 것이 아니라 실제 데이터를 기반으로 하기 때문입니다. 왜냐하면 꽤 자주 그것들은 같지 않기 때문입니다.
DV: 네, 저는 그 점을 좋아합니다. 분마다. 그것은 dev에 있습니다. 당신이 그것을 사용하지 않고 있다는 것을 알아내십시오. 그리고 저는 제가 가지고 있는 또 다른 만트라와 프로젝트 관리 및 이해 관계자 관리에 대한 일종의 유대 관계를 다시 말할 것입니다. 쓰기 위해 우리 얼굴에 프로젝트를 가져옵니다. 어떻게 얘기할 수 있죠? 이해 관계자를 대할 때나 이해 관계자가 있을 때 강력하고 강력한 역할을 하는 것이 좋아요. 좋아. 음, 다음으로 팀이 기술 부채를 줄이기 위해 할 수 있는 일에 대해 이야기해 보겠습니다. 하지만 그 전에 마지막 휴식을 취하겠습니다. 광고 시간에 연결할 시간입니다. 잠시 후 이 버튼을 더 눌러주세요. W EMR에서 이 WordPress 커뮤니티 팟캐스트를 누르기 위해 다시 오신 것을 환영합니다. 저는 귀하의 호스트 David mobile Paul입니다. 저는 John Martin과 휴식 시간 직전에 기술 부채를 없애는 시간을 피하는 것에 대해 이야기하는 중입니다. 우리는 귀하의 가치 공식에 대해 약간 이야기했습니다. 명세서. 그리고 TCO에 대해 생각하고 반복적인 테스트 접근 방식을 취합니다. 하지만 이제 팀이 기술 부채와 WordPress 빌드를 줄이기 위해 실제로 무엇을 할 수 있는지 알아보겠습니다. 기술 부채를 줄이기 위해 가장 좋아하는 기술은 무엇입니까?
JM: 사용할 수 있는 모든 종류의 기술 기술이 있으며 그 중 일부는 익숙할 수 있으므로 사용하지 않을 것입니다. 하지만 실제로 제 시작점은 대화에 대한 훨씬 더 부드러운 접근 방식입니다 당신의 클라이언트에게. 그리고 우리가 전문가이기 때문에 궁극적으로 고객이 이러한 브랜드라는 것을 기억해야 합니다. 그들은 우리의 조언이 필요하고 우리는 그들이 원하는 것을 하기 위해 존재하고 그들이 원하는 것을 하기 위해 존재하지만 실제로는 존재한다는 함정에 빠지기 쉽습니다. 그들이 하고 싶은 것에 도전하고 그것을 개선하기 위해. 그래서 가장 먼저 할 수 있는 일은 그들에게 그것에 대해 이야기하고 설명하는 것입니다. 그렇게 하면 장기적으로 영향을 미칠 것입니다. 테스트를 하려면 하루가 더 소요될 것입니다. 릴리스를 할 때마다 웹사이트를 유지 관리하고 모든 플러그인을 업데이트하거나 무엇이든 업데이트해야 할 때마다 한두 시간이 추가됩니다. 그러나 그 인식을 높임으로써 우리는 그들과 대화를 나누고 있습니다. 클라이언트가 해당 토론에 참여하도록 할 수 있습니다. 그리고 결국 그들은 문제 해결의 일부가 됩니다. 우리는 고객이 우리가 하는 일을 모른다는 이유로 항상 고객을 교육해야 합니다. 그랬다면 애초에 도구가 되지 않았을 것이다. 그래서 사실, 그것이 출발점입니다. 그는 그것을 기억하고 일을 단순화한다고 생각합니다. 다시 말하지만, 사람들은 반드시 우리만큼 기술적인 것은 아닙니다. 따라서 비유를 사용하여 그것에 대해 이야기하십시오. 나는 항상 집이 큰 에너지라는 것을 발견합니다. 모두가 집에 산다. 대부분의 사람들은 일종의 주택 개량을 한 경험이 있습니다. 그래서 그 에너지를 문제를 해결하는 데 사용하는 것이 매우 쉬웠습니다. 그래서 첫 번째 요점은 클라이언트를 얻거나 이러한 대화를 순환시키는 것입니다. 우리가 이전에 다루었던 다음 사항은 장기적인 관점 또는 총 소유 비용에 대한 것이었습니다. 그리고 스스로에게 이러한 질문을 하고 모든 기능 요청에 대해 질문하십시오. 그러나 조금 더 기술적인 부분과 직장에서 이것을 하는 방법. 알고 있는 WordPress 표준을 사용하는 간단한 것, 거기에 표준이 있습니다. 그들은 이유가 있습니다. 이제 그들은 우리 개발자를 도울 것이며 아마도 1, 2년 동안 미뤄둔 프로젝트에서 작업한 다음 다시 돌아올 것입니다. 기억을 새로고침하고 표준을 사용하여 처음 구축했을 때로 돌아가면 도움이 될 것입니다. 그들은 또한 다른 사람들을 도울 것입니다. 따라서 팀에 속하지 않았다면 모든 사람이 작업할 수 있는 이 공통 언어를 갖게 되었다는 의미입니다. 이 공통 언어는 효율성과 문서화 및 이러한 모든 유형의 작업을 지원하는 면에서 정말 유용합니다. 그래서 그것은 누구나 작동할 수 있는 표준을 가짐으로써 기술 부채를 줄이는 좀 더 부드러운 방법입니다. 또한 다른 WordPress 개발자가 해당 프로젝트에서 작업하는 시기가 올 수 있음을 알 수 있습니다. 또한 커뮤니티에 돈을 갚고 동료 개발자가 쉽게 사용할 수 있도록 하는 방법으로 생각하는 데 도움이 됩니다. 이것이 바로, 일종의 표준에 대한 좋은 지적이며 자신과 다른 사람들을 쉽게 만드는 것입니다. 다음은 위대함에 관한 것입니다. 수년 전에 클린 코더(clean coder)라는 훌륭한 책을 저술한 밥 삼촌(Uncle Bob)이라는 애칭으로 알려진 훌륭한 산업 규범입니다. 나는 모든 개발자가 그 책을 읽지 않았기 때문에 그 책을 읽을 것을 강력히 추천합니다. 사실, 개발 팀, 팀에 합류한 모든 사람들을 위해 필수 읽기로 만들었습니다. 주로 그가 유닛 테스트에 대해 이야기하는 좋은 접근 방식을 가지고 있기 때문입니다. 매우 빠르게 반복하고 변경하고 추가 비트를 추가할 수 있는 유연하게 코드를 작성하는 방법에 관한 것입니다. 그가 말하는 큰 요점 중 하나는 자주 리팩토링하는 것인데, 여기서 가장 중요한 것은 코드 조각을 작성해야 한다는 것을 의미하지 않는 코드 조각을 작성한다는 것입니다. 코드를 리팩토링하는 데 시간을 할애하기 위해 수행해야 하는 특정 작업이 무엇이든 간에 모듈을 보다 쉽게 이식할 수 있도록 최적화하거나 테스트를 개선하기 위해 수행할 수 있는 작업이 있습니다. 당신이 그것에 반대할 때 그것을 하는 것은 정말로, 정말로 어려울 수 있습니다. 또는 예산을 위한 하나의 기간일 수도 있습니다. 그러나 궁극적으로 그것은 기술 부채를 쌓는 것을 막는 유형이며 실제로 일반적으로 그것이 강제로 들어가는 방식입니다. 그러나 프로젝트 기한이 정해져 있으므로 기한에 도달해야 합니다. 전적으로. 당신은 그것을 쳐야하지만, 당신이 할 나쁜 코드를 작성하는 것보다 범위를 조정하는 것이 좋습니다.
DV: 리팩토링을 원하지 않는 개발자를 만난 적이 없기 때문에 해당 클라이언트에게도 이에 대해 교육해야 합니다. 암호. 항상 타임라인입니다. 반대입니다. 음, 알겠습니다. 이제 마지막으로 약간의 정보가 있습니다. 저희가 마음에 드시는지 궁금합니다. 오프로딩 및 기성품 플러그인 사용이 기술을 피하는 데 도움이 되는 또 다른 방법이나 기술 부채를 피하는 또 다른 방법이라고 생각하시면 됩니다. 그것도 당신의 목록에 있습니까?
JM: 네. 100% 좋은 방법이지만 실제로 두 가지 모두를 수행하는 좋은 방법입니다. 기술적 부채를 피할 수 있습니다. 그러나 WordPress는 BMC의 한 형태입니다. 마찬가지로 매우 활동적이어서 최대의 적이 될 수도 있습니다. 모든 것을 수행하는 플러그인이 있습니다. 또한 매우 특정한 목적을 위해 구축된 많은 플러그인이 있지만 사용자의 플러그인과 반드시 일치하지는 않습니다. 그래서 저는 플러그인을 사용하여 사이트를 구축하고 처음부터 코딩하는 것보다 더 포인트 앤 클릭 방식으로 접근하는 것을 좋아하는 일부 개발자에게서 이것을 특히 보았습니다. 사람들은 무언가에 플러그인을 던지는 경향이 있습니다. 우리는 100개 이상의 플러그인이 있는 웹사이트에서 작업했으며 그 중 상당수는 더 이상 유지 관리되지 않습니다. 곳곳에 보안 문제가 있습니다. 릴리스 속도를 시도하고 수행합니다. 두어 시간 안에 완료할 수 있는 테스트를 말 그대로 4일 동안 보냅니다. 따라서 플러그인은 좋을 수도 있고 나쁠 수도 있습니다. 적시에 적절한 플러그 인은 훌륭하고 멋진 일이었습니다. WordPress의 가장 큰 장점이지만 잘못된 시간에 잘못된 플러그인도 심각한 손상을 줄 수 있습니다. 그리고 실제로 자본의 가장 큰 원천 중 하나가
DV: 확실히 그런 프로젝트가 있었습니다. 존, 이것은 믿을 수 없을 정도로 통찰력이 있습니다. 오늘 함께해주셔서 감사합니다.
J M: 반갑습니다.
DV: 굉장합니다. Jon에 대해 더 알고 싶다면 hallam.co.uk를 방문하십시오. WMR에서 이 WordPress 커뮤니티 팟캐스트 보도를 들어주신 모든 분들께 감사드립니다. 이번에도 호스트 David Vogelpohl입니다. 저는 WP Engine에서 제 역할의 일부로 WordPress 커뮤니티를 지원하고 여기 Press This에서 커뮤니티 최고의 기능을 제공하는 것을 좋아합니다.