Ho lavorato come team leader / sviluppatore in un grande ambiente di impresa finanziaria per la parte migliore di tre anni. Il nostro processo di rilascio in produzione è un incubo perché ruota attorno a Clearcase. Abbiamo un gruppo di gestione delle modifiche che esegue tutte le versioni e che consentirà solo la produzione del codice che è stato preso da essa.
Una delle prime cose che ho fatto quando mi sono unito è stata quella di formare la mia squadra con Git. Tutti concordarono sul fatto che Clearcase fosse orribile e poco pratico per gestire le questioni quotidiane sul controllo delle fonti. Quindi abbiamo creato una sorta di repository "non ufficiale" sul mio computer locale e ho scritto uno script per sincronizzare i repository git e Clearcase al momento del rilascio.
La notizia si è diffusa ad altri team e molti hanno adottato lo stesso processo. Usare git in modo "non ufficiale" per le attività quotidiane e "ufficialmente" usare Clearcase per le versioni. Sono diventato una specie di go to guy per eventuali problemi con Git.
Quindi questa settimana ho un incontro con l'SVP nel cambio di infrastruttura che vuole specificamente che le spieghi i meriti di Git. Apparentemente la notizia le è arrivata delle mie frequenti assenze su Clearcase. Se accetta le mie argomentazioni, avrò una vera possibilità di aiutare il mio datore di lavoro a liberarsi di questo abominio.
La mia esperienza con i dirigenti mi dice che a) vogliono spiegazioni estremamente concise per tutto b) sono interessati solo a fatti che coinvolgono cifre in dollari
A uno sviluppatore posso spiegare i meriti di Git su Clearcase (o QUALSIASI altro sistema di controllo della versione su Clearcase per quella materia), ma sto disegnando uno spazio su come fare questo a un dirigente tecnico senza un background tecnico (ha un MBA e ha conseguito la laurea in geografia).
Sento che qualsiasi argomento che le faccio o suonerà come una sciocchezza tecnica o che sto evangelizzando le mie preferenze personali.
Quello che sto cercando di trovare sono fatti concreti che dimostrano che gli sviluppatori lavorano in modo più efficace con Git o QUALSIASI moderno sistema di controllo del codice sorgente.
Penso che il fatto che le altre squadre abbiano iniziato a usare Git internamente sia un segno significativo, ma non è ancora abbastanza forte perché può ancora essere respinto come preferenza personale.
Ciò di cui ho veramente bisogno è qualcosa di abbastanza potente da superare il "Questo processo ha funzionato per 20 anni, perché dovremmo cambiarlo?" discussione.