La cultura delle prenotazioni mal si sposa con i continui ritardi

Questo articolo sarebbe dovuto uscire subito, tempestivamente, per rimanere al passo con gli argomenti caldi del frivolo mondo di internet ma è stato rimandato. Praticamente, perfetto per il topic di questi giorni.

È oramai noto come tantissimi prodotti attesi per la prima metà dell’anno siano slittati, di poco, o di tanto a seconda dei casi. Alcuni dei grandi giochi di questi mesi a venire, sono a loro volta prodotti del 2019 capitombolati nel 2020. Io oramai non riesco più a muovere il minimo di lamentela riguardo questi comportamenti.

Qui entra di prepotenza il mio background lavorativo, inserito in un contesto di produzione industriale di prodotti, includendo la composizione di software. Non è proprio uguale alla produzione di un videogioco poiché ho a che fare con prodotti fisici finiti in un modello di business diverso, ma il workflow è molto più simile di quel che si possa pensare. Quindi sfrutterò questo spazio per indagare sul perché avvengono i ritardi. Perché fino a quando non si produce un qualcosa, anche solo per passione, insieme ad altre persone, non si riesce spesso a comprendere le dinamiche di processo.

Andiamo veloci togliendoci subito di mezzo i rimandi di natura tattico-commerciale. Il team di marketing, impegnato a stimare proiezioni di vendita in base ai momenti di rilascio ed alle mosse ignote dei competitor, piazza determinati periodi di uscita per i prodotti. A volte, questi risultano essere sbagliati: diventano troppo affollati, la chiusura/apertura dell’anno fiscale è alle porte e la convenienza o meno di avere incassi può variare. Questi rimandi sono o di breve entità o abbastanza telegrafati in termini di periodo di ricollocazione. La parte economica si ripercuote anche nei rimandi per motivi tecnici. Se un gioco avesse bisogno di 2 mesi in più per essere completato e ciò porterebbe la finestra di lancio in piena estate, molto meglio aspettare Settembre.

Il tempo è denaro recita una famosa massima. L’esatto calcolo e considerazioni che portano alla decisione di come gestire un progetto videoludico variano da entità ad entità, ma la logica è sempre la seguente. Posso permettermi 100.000€ di budget: se uno sviluppatore costa 1000€ al mese, ne posso far lavorare 100 per 1 mese. O 20 per 5 mesi. Se il lavoro non è completato entro questo periodo, sforo il budget. Pensare di operare senza dei limiti temporali e di budget è da folli. C’è un limite a quanto si può incassare con un determinato prodotto: Rockstar può permettersi cicli di sviluppo estremamente estesi perché i loro giochi vendono tantissimo e nel tempo. Tutti quelli che vivono nel periodo del lancio, non possono tirarla per le lunghe.

Puntare in alto, senza esagerare

E poi immaginate di fare tutto senza limiti di tempo o con tempi estremamente dilatati. Non funzionerebbe più nulla. Certo è brutto quando ti dicono dai piani alti: “time out, si esce, in qualsiasi stato, non abbiamo più soldi per tenervi in piedi”. A questo proposito, per organizzare il lavoro di tante persone, ci sono numerosi strumenti informatici e specialisti che devono tenere traccia della progressione del progetto. Il video qui sottostante, da un bellissimo spaccato di uno dei tanti modi per organizzare i flussi di lavoro.

https://www.youtube.com/watch?v=qOjXfNnhxf0

Eh si, il video è di Star Citizen. Il gioco che “non uscirà mai” a detta di molti. In perenne beta, con mille promesse, ancora molte da rispettare. Con una roadmap consultabile liberamente. Perché quindi, malgrado tutti questi strumenti, malgrado l’occhio vigile continuano ad esserci rinvii? Perché si continua a sbagliare? Lo sviluppo di un videogioco è un processo molto complicato, specie nell’industria AAA, dove un numero molto elevato di persone dalle abilità più disparate deve collaborare per arrivare ad un prodotto finito. Un elemento che forse ci sfugge, è come sia un processo unico, non standard nella maggior parte dei casi. Questo introduce un numero di incognite notevole, che si scontra enormemente con il fattore umano, difficilmente controllabile.

Il primo punto critico è individuare cosa si vuole fare. In inglese si usa il termine “scope”, da noi sarebbe più opportuno usare grandezza ed ambizione del progetto. Capita il più delle volte di puntare in alto. Per voler fare qualcosa di nuovo, diverso, per elevare il franchise. Qualcosa che non esiste prima, che deve essere creato da 0. Qualcosa al di fuori della portata dello studio, che quindi deve crescere, studiare, formarsi prima di poter arrivare dove si vuole. Ed intere fasi produttive non possono partire se non viene prima realizzata la base. Altre volte lo scopo del progetto cambia costantemente e tantissimo lavoro viene fatto per nulla. Star Citizen è un po’ il simbolo di questo problema.

Il continuo foraggiamento monetario ha portato ad un’espansione degli obiettivi, cambiando numerose volte in corso d’opera. Le ambizioni sono talmente alte, che intere tecnologie sono state sviluppate per poi dimostrarsi inadeguate e dover essere rifatte da 0. Non è un problema solo di SC, esiste in ogni catena produttiva: il problema è quando si sbaglia, non come. Sbagliare molto all’inizio della catena produttiva costa poco, in termini di tempo e forza lavoro. Sbagliare verso la fine, può voler dire dover rifare tutto da capo. Arrivare quasi in fondo ed accorgersi che quel livello fa davvero schifo, che la storia non funziona, che quell’idea bellissima sulla carta di gameplay una volta realizzata è terribile porta ad enormi scompensi nel ritmo del lavoro. Per questo più è affinata la parte iterativa di test iniziale, meno ci saranno problemi in fondo.

quanti rinvii per le features dello store Epic?

In un processo che porta ad un bene fisico, si soppesano di più gli errori perché ogni iterazione deve essere realizzata materialmente. Nuove revisioni di circuiti stampati, nuovi stampi per avere nuove geometrie per plastica e metallo. L’avvento di sistemi CAD e stampa 3D ha permesso anche a queste filiere di sbagliare sempre più presto, ma non è nulla in confronto alla natura fortemente iterativa dei videogiochi. La complessità del proprio gioco si fa sentire anche quando “è andato tutto bene”.

In maniera molto ovvia, più sono le righe di codice e le interazioni tra esse, più c’è possibilità che ci siano bug. E forse non ci rendiamo conto dei numeri in gioco. I team QA, anche quando sono grandi, non possono competere con il rilascio del gioco al pubblico: un team di 10 tester, anche se giocassero 24 ore al giorno per 1 mese, accumulerebbero solo 7200 ore di gioco. Un milione di copie vendute al lancio, sono milioni di ore di giocato, che per la legge dei grandi numeri, sono in grado di scovare più bug di sole 7200 ore. Direi che Cyberpunk 2077 è questo il caso. Loro hanno definito a modo il loro obiettivo, ce l’hanno mostrato. Solo che per pulirlo ad un livello accettabile, occorrono ancora mesi. Ed ecco che alcuni publisher, preferiscono rimandare che far uscire un gioco in stato pietoso. Finalmente direi.

Questo è quello che accade a livello tecnico, tecnologico o di concetto. Bug, necessità di sviluppare nuove tecnologie o aver sparato troppo in alto. Poi però ci sono tutti gli errori e le difficoltà in corso d’opera. Queste coinvolgono la sfera umana, in quanto in media noi siamo dei pessimi organizzatori e ci sono numerosi aspetti psicologici che ce la mettono tutta per far saltare in aria un progetto.

Chi lavora è pur sempre un umano


Il primo di tutti è forse quello che ci porta a sovrastimare le nostre capacità ed a considerare sempre le migliori condizioni al contorno possibili. Questo avviene principalmente perché tendiamo a spostare le cause di nostri fallimenti e ritardi ad elementi esterni più che a noi stessi. È un meccanismo molto difficile da evitare. Questo si applica sia nella definizione della portata del progetto come discusso sopra, che nei lavori ordinari. “Quanto ti ci vuole a fare i modelli dei tre personaggi?” – “Ah, ma vai tranquillo, facile, ci metto 5 giorni!” E invece 2 settimane dopo, ancora non sono pronti. Perché? “Eh, il mal di pancia, le pause caffè, mi fa male il piede, il mio vicino di scrivania mi da fastidio, quegli idioti del reparto IT hanno fatto casini col database, gli strumenti che ho non son adeguati”…

Anche qualora si riesca a finire prima le proprie mansioni però, entra in gioco un altro meccanismo, conosciuto come la Legge di Parkinson. Il suo enunciato è il seguente: “Il lavoro si espande fino a occupare tutto il tempo disponibile; più è il tempo e più il lavoro sembra importante e impegnativo“. In sostanza, se la scadenza per una mansione è una settimana, il lavoro verrà ultimato allo scadere del tempo. Questo assume tre forme diverse.

Nella prima, il mio flusso di lavoro rallenta fino ad essere ottimamente spalmato per completare la richiesta nel tempo stimato. Altra possibilità è procrastinare fino all’ultimo minuto utile ed impiegarci esattamente un minuto. Ultima opzione invece vede l’opera essere completata prima, ed il tempo extra viene sfruttato per abbellirla, per aggiungere al di fuori della richiesta. Anche perché andare a dire al proprio capo reparto di aver finito prima, potrebbe avere le conseguenze di mettervi in troppa bella luce e quindi aspettarsi di più. Meglio non essere caricati di più lavoro.

Ed in mezzo a questo discorso c’è il crunch. Il passare un numero estremamente alto di ore in ufficio per ultimare un lavoro. Che è un comportamento più complesso di come spesso lo si dipinge: parliamoci chiaro, se i propri capi obbligano a fare enormi straordinari per rispettare delle scadenze, e qualora non vengano rispettati si rischia il licenziamento, non meritano di fare i capi. Qualora ci siano assenze di tutele per mancanze di sindacati, occorre regolare le cose. Però c’è da dire che molti di noi soffrono della sindrome dello studente o sono estremamente legati al proprio lavoro/propria azienda.

Quando c’è una pressione temporale nota, spingiamo al massimo. Studiare poco prima dell’esame a cannone per esempio. Scrivere la tesi in tempo, facendo notti insonni e weekend al chiuso. Questo comportamento non cambia quando si entra nel mondo del lavoro, con corse finali dell’ultimo minuto o giorni e giorni di straordinario perché tu, in primis, sei quello che vuole chiudere la faccenda in tempo e bene. Non te lo ordina nessuno, non hai alcuna pressione esterna, parte tutto dalla propria persona.

Per questo io onestamente non credo che sia qualcosa contro la quale si possa combattere ad un livello assoluto. Il semplice lasciare la gente libera di lavorare quanto vuole, dare una mano se queste ore diventano troppe e dannose, cioè quando diventano deleterie invece che utili, retribuire tutti in modo adeguato allo sforzo e mai dare pressioni esterne dai piani alti. Non vedo una vera soluzione che non sia repressiva anche della propria volontà. In fondo basterebbe fare davvero attuare leggi come i nostri contratti collettivi. Quello dei metalmeccanici per esempio lascia 8 ore di lavoro straordinario settimanale, massimo 200 ore all’anno. Che equivale a lavorare 13 mesi su 12 effettivi. Se fosse rispettato anche per chi lavora nel settore videoludico, soprattutto estero, non sarebbe così disastroso.

A questo punto direi che abbiamo visto, a grandi linee quali sono alcuni dei meccanismi coinvolti nei rinvii dei prodotti. Purtroppo, mano a mano che l’industria diventa più complessa, questi problemi si intensificano solamente. Le parti in movimento sono sempre di più e saperle combinare senza eccedere diventa un lavoro sempre più difficile. Io ad ogni rinvio non penso a me che dovrò aspettare di più una cosa che desidero con tutto me stesso, penso a tutte le persone che stanno lavorando duramente per portare alla luce il loro capolavoro personale e chissà a quanti intoppi hanno incontrato lungo la strada. Fa parte della natura dell’industria e secondo me alterarla ne cambierebbe troppo l’anima. Vorrebbe dire accontentarsi del compitino e non voler più puntare in alto.