Come promuovere Scala alla gestione?

2

Come sviluppatore mi piace Scala e potrei dire alla direzione dei benefici tecnici della lingua. Ma anche se la direzione capisce che una tecnologia superiore ha un impatto sul business, temo che non capiscano di cosa parlerei.

Quali argomenti presentereste ai dirigenti con background tecnico (gli informatici non programmano da molti anni)?

    
posta deamon 29.08.2013 - 13:51
fonte

4 risposte

5

I manager non sono interessati ai dettagli tecnici, sono interessati all'efficienza.

Per vendere una nuova tecnologia ai manager, devi convincerli che questa tecnologia consente di produrre un prodotto migliore in meno tempo e con meno soldi.

Ma sei sicuro che sia così?

Puoi dimostrare che il progetto X sarà più economico da sviluppare quando viene eseguito in Scala anziché nella lingua che stai utilizzando attualmente? E quanto tempo e denaro sarà necessario per trovare e / o addestrare i programmatori ad essere abbastanza abili con Scala per beneficiare della transizione?

Prima di far apparire l'argomento, assicurati di avere una buona risposta a queste domande e di avere riferimenti indipendenti per sostenerle.

    
risposta data 29.08.2013 - 14:56
fonte
1

Il management comprende anche che le nuove tecnologie portano nuovi costi, una formazione extra o la ricerca di altri sviluppatori che conoscono queste tecnologie per aiutarti nel progetto o per supportarlo quando non ci stai più lavorando.

Il modo migliore è lavorare su un prototipo convincente durante quei momenti tranquilli e / o nel tempo libero per mostrare i vantaggi di questa nuova tecnologia. O usalo in uno dei progetti più piccoli senza dire: p (dipende tutto dalla cultura aziendale)

In ogni caso avresti dovuto farlo già, perché altrimenti potresti essere convinto che questa nuova tecnologia fornirà vantaggi.

    
risposta data 29.08.2013 - 14:06
fonte
1

Penso che ci siano un paio di cose fondamentali da tenere a mente riguardo al caso:

Non iniziare suggerendo una transizione all'ingrosso verso un nuovo linguaggio di sviluppo. Individua un modo per iniziare in piccolo e dimostrare il successo prima di suggerire un cambiamento più ampio. Scegli un progetto che sai che puoi uscire dal parco usando Scala e puoi agire per evidenziare i punti di forza di Scala. La gestione è più propensa ad accettare un pilota iniziale piuttosto che una transizione completa.

Assicurati di avere argomenti chiari su alcune delle obiezioni che potrebbero emergere.

  1. Rispetto a Scala, dovresti aspettarti un push back correlato alla ricerca di sviluppatori esperti. Mentre Scala continua a guadagnare slancio, è un linguaggio impegnativo per coloro che non hanno familiarità con la programmazione funzionale. Non ci sono molti talenti forti là fuori e non tutti gli sviluppatori possono passare con successo da altre lingue.
  2. Dovresti anche aspettarti di conoscere l'investimento nella base di codici esistente. Se si dispone di una base di codice estesa in un'altra lingua, l'interoperabilità e l'utilizzo di quel lavoro precedente saranno importanti. Se quel codice base si trova in Java, il tuo lavoro è un po 'più semplice. In caso contrario, sarà necessario essere in grado di spiegare come Scala e la tua infrastruttura esistente possano coesistere. Alcune organizzazioni sono aperte ad avere un ambiente poliglotta, ma altre possono essere dogmatiche riguardo l'adozione di uno standard che renderà più difficile introdurre qualcosa di nuovo.

Infine, devi essere in grado di dimostrare che c'è un chiaro vantaggio in termini di capacità del team di fornire, almeno per il sottoinsieme di progetti in cui Scala è applicabile. Se non riesci ad articolare chiaramente questo beneficio al di là delle tue preferenze, avrai difficoltà a riuscire.

    
risposta data 29.08.2013 - 14:21
fonte
1
  1. Inizia con la tua squadra, non con i tuoi manager. "Tutta la nostra squadra vuole usare questo" è qualcosa a cui un manager presterà attenzione, anche se alla fine non sono d'accordo. Non , al contrario, cerca di utilizzare i tuoi manager per imporre una scelta impopolare alla tua squadra. Anche se funzionasse, la tua vita professionale non varrebbe la pena di essere vissuta.
  2. Scrivi qualcosa di utile in Scala nel tuo tempo libero (con il quale non intendo necessariamente a casa, al di fuori dell'orario di ufficio - intendo senza compromettere la consegna degli obiettivi stabiliti). Mostra come ha reso Scala più facile. Mostra come Scala rende più facile per gli altri estendere il tuo lavoro. Questo sarà particolarmente utile se la tua squadra ha bisogno di essere convincente (vedi sopra).
  3. Fai qualche ricerca sulle implicazioni sulla manutenzione per il resto della tua organizzazione. In che modo questo influenzerà i tester, il supporto applicativo, la gestione dei rilasci, l'integrazione continua e così via? Hai bisogno di trovare risposte reali a questo. Se il tuo posto di lavoro supporta già la JVM (cioè Java / Groovy), questo sarà molto più facile ma ci sarà comunque un impatto al di là del tuo team immediato.
  4. Siate pronti ad accettare il no per una risposta.

Se non si riesce a breve termine, tornare al punto 1 sopra. Prova a convincere i tuoi colleghi dev devoti a Scala. Se un numero sufficiente di loro ha il prurito, potrebbe essere il caso per te.

    
risposta data 29.08.2013 - 19:01
fonte

Leggi altre domande sui tag