Responsabilitățile unui dezvoltator de pluginuri WordPress

Publicat: 2020-06-05

Este nevoie de mult talent și abilități pentru a crea un plugin WordPress funcțional. Cei mai mulți dintre noi, probabil, nu vor înțelege niciodată pe deplin cantitatea de muncă și dăruire care intră în proces. De la dezvoltare la întreținere până la asistență, este o acțiune destul de masivă.

Dar, dincolo de abilitățile de programare, lansarea unui software pe care oricine din lume o poate folosi necesită și ceva curaj. Când te gândești la asta, există o cantitate enormă de responsabilitate care vine împreună cu punerea la dispoziție a muncii tale pentru public.

De exemplu, vă puteți imagina că lansați o actualizare care sfârșește prin a distruge site-ul web al unui utilizator? Sau cantitatea de sprijin pe care s-ar putea să te trezești nevoit să o oferi gratuit? Chiar dacă un număr bun de plugin-uri sunt scrise ca proiecte secundare, întreținerea unui titlu popular ar putea fi similară cu un loc de muncă cu normă întreagă.

Am vrut să aflu și să aflu cum se descurcă unii dezvoltatori de pluginuri din lumea reală. Așadar, m-am așezat cu doi domni foarte talentați, care au fost destul de amabili să-și împărtășească filozofiile și experiențele.

Faceți cunoștință cu dezvoltatorii

Matt Cromwell este șeful departamentului de asistență și sensibilizare comunitară la WordImpress. Ei sunt dezvoltatorii Give, un plugin popular care ajută organizațiile non-profit să ia donații online. De asemenea, este cunoscut ca unul dintre administratorii grupului Advanced WordPress Facebook.

Robert DeVore este un dezvoltator din Michigan, care a creat mai multe plugin-uri și teme WordPress, inclusiv un plugin de conținut Gutenberg, numit Pillar Press.

Le-am adresat fiecăruia dintre ei același set de întrebări prin e-mail. Mai jos sunt răspunsurile lor, dintre care unele au fost editate pentru concizie.

Matt Cromwell (stânga) și Robert DeVore (dreapta)

1. Indiferent dacă dezvoltați un plugin nou sau actualizați unul existent, cât timp petreceți încercând să evitați conflictele cu alte teme/plugin-uri pe care un utilizator le poate rula înainte de lansare?

Matt Cromwell: Testăm pe cele mai populare teme precum Divi, Storefront, Avada, X Theme, precum și cu plugin-uri majore precum Yoast SEO, WooCommerce etc. Dar aceasta este întotdeauna o țintă în mișcare, deoarece nu știi niciodată când vor scoate un nou Actualizați. Ne sprijinim foarte mult pe echipa noastră de asistență prioritară (eu în calitate de șef de asistență) pentru a lucra cu clienții în problemele pe care le apar.

Când apare un conflict, încercăm să oferim soluții, precum și să luăm legătura cu celălalt autor pentru a vedea dacă putem face lucrurile să funcționeze mai bine. Autorii care răspund și fac schimbări rapid sunt minunați și creăm relații strânse cu ei.

Robert DeVore: Timpul petrecut cu potențiale conflicte cu teme/plugin-uri depinde într-adevăr de munca pe care o fac în prezent. De exemplu, dacă lucrez la ceva legat de WooCommerce, mă voi asigura că funcționează cu tema Storefront și cu oricare dintre suplimentele oficiale de la WooCommerce cu care ar putea interacționa. În afară de asta, construiesc și adaptez lucrurile pe baza conflictelor pe măsură ce îmi sunt aduse în atenție.

2. Cu atât de multe combinații potențiale de pluginuri și teme, vă așteptați ca ceva să se spargă?

MC: Da. Lucrurile se vor rupe, mereu. Aceasta este o realitate inevitabilă a furnizării de cod pentru zeci de mii de medii asupra cărora ai ZERO control. Fiecare utilizator are un mediu complet unic, pentru care este practic imprevizibil pentru care să ne pregătim. Lucrăm din greu pentru a ne asigura că nu suntem codul din acel mediu care creează problema – cât mai mult posibil. Din nou, problemele vor apărea, așa că ne sprijinim din greu pe Asistență pentru a afla care este exact conflictul și potențialele soluții și apoi pentru a crea probleme care pot fi soluționate de dezvoltare.

RD: Da, trăiesc după „sper la ce este mai bun, dar așteaptă-te la ce este mai rău” cu fiecare lansare pe care o fac :)

3. Simțiți presiune atunci când un utilizator raportează o problemă cu unul dintre pluginurile dvs.?

MC: În prezent, avem peste 40.000 de site-uri web în întreaga lume și, în general, toate sunt cauze bune care doresc să facă bine în lume. Dacă nu pot accepta donații din cauza unei probleme cu pluginul nostru (sau combinația lor unică de pluginuri și găzduire și temă), atunci da – simțim o urgență reală să rezolvăm problema prin Asistență cât mai repede posibil. Pe de altă parte, atunci când problema lor este o problemă de nișă, cu un plugin de nișă, asta afectează doar confortul experienței lor de administrare, dar donațiile continuă să curgă - există mult mai puțină presiune în acest caz.

RD: Nu l-aș descrie drept presiune, dar simt un pic de atracție în interior să încerc să rezolv problema cât mai repede posibil. Deci, poate este presiune? laugh out Loud

4. Cât de mult efort ar trebui să depună un dezvoltator pentru a susține un plugin gratuit?

MC: S-ar putea să fiu în minoritate aici, dar cred 100% în sprijinul gratuit. A fost absolut vital pentru succesul afacerii noastre și pentru calitatea robustă a codului nostru. Din cele peste 40.000 de instalări active, avem aproximativ 9.000 de clienți. Adică mai puțin de 1/4 din toți utilizatorii noștri. Asistența gratuită este unul dintre cele mai bune locuri în care putem interacționa cu cei peste 31.000 de utilizatori (și) îi putem ajuta să aibă o experiență pozitivă cu pluginul nostru.

Pe lângă asta, asistența gratuită face parte integrantă din a face parte din comunitatea globală Open Source care este WordPress. Orice afacere care depinde de WordPress ar trebui să contribuie cu cel puțin 5% din timpul lor pe forumurile de asistență WordPress într-un fel sau altul. Cu cât avem o bază de utilizatori mai educată, cu atât este mai bine pentru toată lumea.

RD: Personal, dacă este un plugin gratuit și NUMAI un plugin gratuit (adică nu există suplimente comerciale sau teme care să meargă cu el), atunci cred că un dezvoltator ar trebui să ia în serios notificările de erori/securitate și să caute remedieri pentru ele. Dincolo de asta, orice solicitare de funcții/îmbunătățiri poate fi luată cu un grăunte de sare, deoarece este un plugin gratuit pe care ți-ai făcut timp să îl construiești și să îl lansezi, fără prea multe avantaje financiare pentru a petrece prea mult timp susținându-l.

5. În opinia dumneavoastră, care este cea mai mare responsabilitate pe care o aveți atunci când lansați un plugin în lume?

MC: Că servește nevoia celor care vor să-l folosească. Am scris un articol despre ceea ce eu numesc „Filosofia unicului scop”, care spune că un plugin ar trebui să facă întotdeauna NUMAI un lucru. Aceasta este responsabilitatea dezvoltatorului. Faceți ca pluginul să servească acel singur scop cu eficiență, claritate, fără agitație sau dezordine și îndepărtați-vă din drum... Toate modificările, erorile și compatibilitățile vor veni cu timpul; dar dacă nu vă serviți singurul scop, atunci nu există niciun motiv să lansați.

RD: SECURITATE! Indiferent dacă este un produs gratuit sau comercial, securitatea utilizatorului ar trebui să fie întotdeauna numărul 1. Există o mulțime de „soluții de soluționare” pe care dezvoltatorii le folosesc pentru a economisi timp și pentru a reduce problemele, dar acestea ajung să ducă la mai multe probleme pe drum pentru utilizatorul final și dezvoltator.

Menținătorii ecosistemului WordPress

Cu cât folosiți și dezvoltați mai mult cu WordPress, cu atât câștigați mai multă apreciere pentru toți cei care vă ajută să-l mențină funcțional și flexibil. Deși nu sunt neapărat menținători „oficiali” ai ecosistemului WordPress, dezvoltatorii de pluginuri joacă un rol foarte important în succesul său final. Pluginurile utile și bine întreținute fac parte din ceea ce face WordPress atrăgător pentru utilizatori și o opțiune viabilă pentru designerii web.

Mulțumiri atât lui Matt, cât și lui Robert pentru că ne-au lăsat să aruncăm o privire în lumea lor! În timp ce pluginurile, bazele de utilizatori și filozofiile lor diferă, ambele au demonstrat dedicarea necesară pentru a servi nevoile utilizatorilor.