Daniel Bachhuber discută despre WP-CLI, API-ul WP REST și provocările de a contribui la Open Source pe Podcastul Radio Roots

Publicat: 2016-05-16

daniel-bachhuber Daniel Bachhuber, menținătorul proiectului WP-CLI și un dezvoltator care a contribuit la API-ul WP REST, sa alăturat lui Chris Carr și Austin Pray într-un episod recent al podcastului Roots Radio. Bachhuber a discutat despre experiența sa recentă de crowdfunding a lucrării sale pe „A More RESTful WP-CLI”, precum și despre provocările pe care le-a întâlnit ca colaborator la diferite proiecte open source de-a lungul anilor.

În prima parte a episodului, Bachhuber a împărtășit cum a petrecut cele 283 de ore de timp pe care comunitatea WordPress le-a finanțat pentru a promova proiectele WP-CLI și WP REST API. Finanțarea i-a oferit posibilitatea de a dedica timp împărțit între cele două proiecte. Bachhuber a investit aproximativ 95 de ore pentru API-ul REST în ianuarie și februarie, dar cea mai mare parte a orelor s-a dus pentru a face WP-CLI mai prietenos pentru dezvoltatorii care lucrează cu API-ul REST.

„Dezvoltatorii WordPress vor dedica mult timp acum pentru scrierea punctelor finale REST care își expun funcționalitatea lumii și ar fi foarte bine dacă WP-CLI ar interopera bine cu asta și ți-ar permite să folosești această funcționalitate la linia de comandă. fără a fi nevoie să scrieți separat propriile comenzi WP-CLI”, a spus Bachhuber.

El a discutat despre provocarea de a defini acest obiectiv larg și ce a învățat despre crowdfunding în timpul procesului.

„Proiectul kickstarter RESTful WP-CLI a fost în mod intenționat ambițios, pentru că sunt un tip căruia îi place idei mari și îi place să facă lucruri mari”, a spus Bachhuber. „Există unele lucruri pe care mă simt foarte fericit că am reușit să le livrez și să le produc până acum și există alte funcții pe care, dintr-un motiv sau altul, nu le-am putut executa încă și asta este puțin frustrant. .

„Este un cu totul alt joc de minge să încerci să gestionezi așteptările susținătorilor tăi Kickstarter decât este un singur client. Am 107 clienți pe care trebuie să-i fac fericit”, a spus el.

Cu toate acestea, Bachhuber a spus că a reușit să reducă stocul de probleme pentru WP-CLI la mai puțin de 60 de probleme, iar timpul dedicat i-a permis să rezolve probleme vechi care au „languit din zorii vremurilor”.

Ca parte a recompenselor oferite contribuitorilor la campania de crowdfunding, Bachhuber și-a oferit timpul pentru a consulta indivizi și organizații, ceea ce a considerat că este mai ușor decât recompensele tradiționale de tip swag fizic.

„Sunt foarte bucuros că am ales [consultanța] în defavoarea nevoii de a oferi un model fizic, pentru că este foarte dificil de procurat și de expediat tuturor, mai ales când ai susținători internaționali”, a spus el. „Chiar dacă mi-am petrecut mult timp îndeplinind recompensele și discutând cu oamenii, apelând cu ei și întâlnindu-i personal, este un efort mult mai ușor de gestionat decât trimiterea a 100 de căni de cafea în întreaga lume.”

Când a fost întrebat dacă o va face din nou, Bachhuber a spus da, dar a subliniat că a petrece atât de mult timp într-un proiect open source funcționează doar dacă păstrați un echilibru sănătos cu alte aspecte ale vieții.

„Cred că este foarte important ca, dacă contribuiți la proiecte open source în mod regulat sau chiar le mențineți, să vă echilibrați timpul între asta și alte lucruri”, a spus el. „Este foarte ușor să fii epuizat de proiectul open source, dacă îți petreci 100% din timpul pe acesta pentru o lună întreagă sau șase luni.

„Am fost destul de intenționat să spun că banii pe care îi strângeam vor acoperi implicarea mea în proiect timp de șase luni, un anumit număr de ore și că va fi o chestie cu normă parțială. Acesta a fost un mod cu adevărat sănătos de a-l aborda. Cred că m-aș fi ars dacă aș fi încercat să mă scufund în ea, să-l scot și să trec la următorul lucru”, a spus Bachhuber.

Provocările emoționale ale lucrului la proiecte open source

Pe parcursul interviului, Bachhuber a fost rugat să-și împărtășească sentimentele cu privire la ceea ce el a numit „procesul cu API-ul REST”, care a avut loc în februarie. Echipa REST API a scris o propunere de îmbinare în septembrie 2015 care recomanda îmbinarea API-ului în două părți – infrastructura în 4.4 și postările, comentariile, termenii și punctele finale ale utilizatorilor în 4.5 sau 4.6. După ce a executat parțial acea propunere, echipa a ținut o conversație de stare pentru a discuta despre planul care merge mai departe.

Bachhuber a spus că discuția a devenit „un eveniment foarte plin de emoții” după ce Matt Mullenweg a spus că proiectul are nevoie de paritatea caracteristicilor cu administratorul WordPress înainte ca oricare dintre punctele finale să poată fi luate în considerare pentru fuzionare. După ce a dedicat sute de ore în proiect alături de o mână de colaboratori dedicați care erau deja răspândiți, a descoperit că această nouă cerință era o pastilă dificil de înghițit.

„La bine și la rău, ca întreținător sau chiar participant la un proiect open source, trebuie să ai o piele groasă și să realizezi că tot timpul deciziile care se iau nu sunt despre tine, ci despre proiect.” a spus Bachhuber. „Chiar dacă ești personal jignit de decizie, nu contează pentru că nu este vorba despre tine. Este cu adevărat dificil să faci față emoțional.”

Anii de contribuție și menținere a proiectelor open source ai lui Bachhuber l-au învățat câteva lucruri despre gestionarea stresului și a conflictelor pe care intenționează să le împărtășească la WordCamp Europe într-o discuție intitulată „Condoleanțe, acum ești menținătorul unui proiect OS popular. ”

„Găsesc multă bucurie în menținerea proiectelor open source”, a spus Bachhuber. „De asemenea, trebuie să lucrez activ pentru a aborda partea emoțională a ecuației pentru a mă asigura că sunt într-un spațiu sănătos pentru a continua să mențin proiectul și proiectul nu mă afectează personal. Mi-a luat ani de zile să ajung la un punct în care să mă simt confortabil cu asta.”

În cazul API-ului WP REST, Bachhuber a ajuns într-un loc în care își poate compartimenta reacțiile emoționale și răspunsurile la opiniile diferite.

„Am ajuns la un punct în care îmi pasă, dar nu-mi pasă”, a spus el. „Îmi pasă în sensul că mi-ar plăcea în continuare să văd acele puncte finale mergând în nucleu și să văd roadele muncii noastre realizate. Nu-mi pasă pentru că nu sunt atașat emoțional de faptul că asta se întâmplă într-un anumit interval de timp. Sincer, aș prefera să se întâmple când este gata să se întâmple prematur și îmi dau seama că s-ar putea să nu fiu persoana cea mai calificată pentru a lua această decizie.”

În restul episodului, Bachhuber și Carr discută despre React, Redux, Karma, Enzyme și alte instrumente de testare și dezvoltare cu API-ul REST. Consultați înregistrarea episodului pe Roots Radio pentru mai multe detalii despre munca lui Bachhuber la WP-CLI și experiența sa de crowdfunding.