BACKGROUND: sviluppo in PHP da due anni - autodidatta e oltre l'editing di base, in realtà solo un anno e mezzo - ma la mia esperienza è limitata a un numero limitato di ambienti. Negli ultimi tre anni, oltre a progetti collaterali casuali, ho praticamente speso tutto il mio tempo a sviluppare soluzioni personalizzate per i 12 siti di un'azienda, principalmente WordPress con qualche lavoro Drupal occasionale per buona misura. La maggior parte di questi siti sono per conferenze annuali e fiere, quindi sono costantemente impegnata a pubblicare nuove funzionalità, revisioni di stile annuali, ecc. Inoltre, creo e-mail di marketing settimanali per le loro varie campagne.
Essenzialmente, tutto ciò che ho costruito è stato su server e sistemi che conosco intimamente. Non devo mai chiedermi a lungo quale potrebbe essere la causa di un problema, perché la mia console del browser e WP_DEBUG non sono mai lontani.
PROBLEMA: Ho iniziato a contattare i potenziali datori di lavoro e ieri ho avuto il mio primo colloquio tecnico con un'azienda di sviluppo della valle del silicio. Ho fallito miseramente. A parte la seconda domanda che trattava di PHPUnit, uno strumento di cui non avevo mai sentito parlare e che non era in nessun posto nella descrizione del lavoro o menzionato nella precedente intervista, sono caduto a pezzi sulla terza domanda.
Da allora, questa domanda mi ha tormentato e ho cercato di capire quale sarebbe stata la risposta migliore che avrei potuto dare. Sto arrivando a breve. Ecco il succo:
"Quindi, sapendo che i nostri plugin sono distribuiti su oltre un migliaio di siti Web, con tutte le loro possibili configurazioni, come procederebbe quando un cliente segnala un errore di natura sconosciuta?"
La mia risposta: "Beh, la maggior parte delle società di plugin con cui ho lavorato ha posto domande dettagliate per tentare di sradicare il problema. Vorrei iniziare chiedendo all'utente di disattivare i propri altri plug-in un tempo per vedere se questo risolvesse il problema. Se risolto, configurerei un ambiente locale per vedere se potevo duplicare il problema con entrambi i plugin installati ... "ecc." Da lì, se non fosse stato ancora risolto, vorrei richiesta accesso amministratore, come ho visto alcuni dei maggiori produttori di plug-in fare (WPMU DEV, per esempio) per cercare di risolvere il problema - usando WP_DEBUG (TRUE), o altri metodi come può dettare il problema specifico. "
Apparentemente, questo era sbagliato Hella. Sosteneva che molti utenti si sarebbero sentiti a disagio nel fornire tali credenziali (o wp admin o ftp), e che molti utenti non avrebbero avuto la necessaria esperienza di passare attraverso i test di disattivazione dei plug-in. Quindi cosa dovrei fare?
Sono rimasto bloccato. Nessuna idea. Se non riesco a entrare, e non puoi almeno dirmi quali plugin e temi stai usando in modo da poter provare a duplicare ... Come posso capire cosa sta causando il mondo? un errore che non può essere visto sul front-end?
Ha iniziato a portarmi alla risposta giusta chiedendomi se c'era un modo di usare var_dump (che non uso mai perché, ancora una volta, mi occupo di un numero molto limitato di ambienti in genere).
A quanto pare, sentiva che la risposta giusta era costruire una funzione var_dump nel plugin che si collegava a uno script di posta elettronica che mi avrebbe mandato via email i risultati di var_dump. Questa funzione dovrebbe essere attivata da un pulsante facile da trovare da qualche parte nel pannello di amministrazione dei plugin, in modo che l'utente possa inviarmi le informazioni.
Ora, non sto dicendo che si sbaglia. So che c'è una tonnellata che non conosco e la mia limitata esperienza con produzioni su larga scala mi sta trattenendo ("ciao primo progetto pubblico su Github"). Quello che so è che sto scavando attraverso alcuni dei plugin più grandi che ho scaricato dal repository di WordPress per trovare qualche esempio di un approccio simile alla gestione degli errori e non lo vedo. Inoltre non sto trovando molto in termini di tutorial che affrontano questo scenario tramite google. Quindi, qualcuno può consigliare dove dovrei cercare di sviluppare migliori capacità di gestione degli errori? O è stata la mia risposta, per qualche strano colpo di fortuna, giusto (anche se ne dubito)?
Per aromatizzarsi in più - era piuttosto scontenta di tutto ciò che accadeva dopo la prima domanda (domanda di base e domanda di loop, facilmente inchiodata), ed ero così completamente preso alla sprovvista sentendo quello che pensavo Sapevo di aver ragione era apparentemente così disgustosamente sbagliato nei suoi confronti, che alla fine dell'intervista mi sono praticamente rotto. Quando mi ha chiesto se avevo qualche domanda per lei (con una nota di impazienza nella sua voce), sostanzialmente ho detto "Mi sento come se avessi bombardato questo ..." Ha detto "Sì." Ho detto "Mi dispiace se ho sprecato il tuo tempo. Spero che tu abbia un grande giorno". Ha riattaccato.