La domanda è questa e il dettaglio segue: c'è qualcosa che posso dire / sollevare, come programmatore, per portarlo dalla mia parte?
Mi piacerebbe ascoltare argomenti validi per entrambe le parti su questo, ma soprattutto suggerimenti su come parlargli in giro.
La mia situazione è questa: sto lavorando a un progetto di gruppo sul mio corso di laurea, costruendo un sito Web di medie dimensioni come prototipo per l'università. Tutti sono considerati uguali nel gruppo e non esiste un leader nominato, quindi la risposta a questo problema non può essere "pull rank".
Tutti sono uguali, tuttavia esiste un enorme divario nella conoscenza tra i membri. Il membro del team in questione e io siamo entrambi sviluppatori capaci, anche se non ha esperienza nel settore. Gli altri tre membri sono meno capaci e due hanno rinunciato completamente allo sviluppo. Tutti e tre hanno rifiutato di commentare la situazione a causa della mancanza di conoscenza.
Come gruppo, stiamo arrivando a decidere quali tecnologie utilizzare per l'implementazione del sito Web; in particolare, se utilizzare o meno un framework PHP (Code Igniter).
Sto discutendo a favore, citando:
- Non reinventare la ruota
- Base di codice ben scritta e testata su cui lavorare
- Andare avanti (la scadenza è più vicina di quanto vorremmo)
- Velocità di sviluppo
- Modelli di progettazione solidi e sostenibili e buone pratiche
Sta sostenendo di lavorare nel modo in cui era abituato a:
- Scrivere su misura, una volta funziona in un file "libreria" come quando ne ha bisogno
- Funzioni per l'accesso ai dati e il rendering di tali dati nella pagina, per ottenere / impostare da e verso la sessione e ottenere / pubblicare dati ecc
- Avere 1 file per pagina (risultante in nessuna separazione delle preoccupazioni tra controllo, presentazione e dati)
Le sue ragioni contro l'uso del framework sono principalmente basate sul fatto che non è in grado di vedere il punto: può già fare tutte quelle cose. Il framework non cambia questo, lo rende solo più difficile perché deve imparare il framework; non vuole usare il codice che non ha scritto personalmente.
Ha anche affermato che "non importa la qualità della base di codice, poiché il progetto è solo un prototipo e non verrà mai mantenuto". Per me, questa non è una scusa per scrivere un codice non mantenibile.
Posso capire perché esponga tali argomenti, ma ho problemi con la sua "mancanza di preoccupazione per la manutenibilità" e il suo "disprezzo per un buon design", o addirittura con la separazione delle preoccupazioni. Tuttavia, sospetto che non abbia mai studiato i modelli di progettazione, quindi non so quanto sia efficace dimostrare perché il suo metodo potrebbe rivelarsi non mantenibile.
Voglio iniziare questo progetto, ma non voglio farlo senza riguardo per tutto ciò che ho imparato negli anni. Come ho detto prima, non vi è alcuna possibilità di salire di rango qui, né gli altri membri del team sono disposti a partecipare. Devo solo tornare indietro e fare le cose a modo suo? È troppo testardo e inesperto per conoscerlo meglio? O sono la testarda qui?
TL; DR Un membro del team inesperto è testardo, come posso conquistarlo?
he doesn't want to use code he hasn't personally written.
I want to know exactly how everything works
è un argomento valido durante l'apprendimento, in cui reinventare la ruota è effettivamente accettabile. Forse, proprio forse, potresti leggerlo come un grido di aiuto e non come testardaggine.
since the project is only a prototype and will never be maintained
Ultime parole finali :) Vorrei avere un dollaro ogni volta che avevo fatto questa ipotesi e ho scoperto che l'impazienza e l'avidità a breve termine degli alti hanno deciso che il prototipo È il prodotto ora.