Tales from the Machine Room


Home Page | Comments | Articles | Faq | Documents | Search | Archive | Tales from the Machine Room | Contribute | Login/Register

Presto! Presto! Presto!

E' (di nuovo) la meta' di Dicembre (cosa che capita tutti gli anni da un po' di tempo) e la neve cade leggera al suolo poi si surgela provocando catostrofi nella viabilita'. Il risultato e' che l'ufficio e' letteralmnente decimato dal punto di vista della presenza. Considerando che ci sono un massimo di 10 persone in questo ufficio, "decimato" significa che ci sono io a tenere il forte (e ad esercitare la mia Risposta Patentata da Bionda Scema al telefono).

Comunque sia, dato che le ferrovie olandesi hanno anche deciso di mettere in pratica l'orario invernale (aka: tagliare il numero di treni che viaggiano) io sono nella situazione di uscire dall'ufficio alle 16.30 o uscire alle 19.00 e dato che (di solito) arrivo in ufficio prima delle 8 del mattino (questo quando non mi metto a lavorare da casa alle 6 per installare roba o altro) ho deciso di uscirmene alle 16.30.

Ergo, quando il telefono suona alle 12 (sempre all'ora di pranzo eh?) ed il CL di turno mi dice che "a causa un problema gravissimo" nel loro sito interdet e' necessario fare un rilascio di emergenza lo stesso pomeriggio, io mi sono subito premunito di specificare che il rilascio sarebbe stato meglio farlo prima delle 16 o rimandare al giorno dopo.

CL1 - Aaaaaghhh!!! Ma questa e' una emergenza, c'e' un baco terribile nell'applicazione (me pensa: ed i test ovviamente li avete fatti con il didietro eh?).
IO - Comunque sia, il rilascio deve essere prima nell'ambiente di test no?
CL1 - No, prima in produzione.
IO - ? Prima in produzione? Non dovrebbe essere prima in test e poi in produzione? A che serve l'ambiente di test se non a testare?
CL1 - Ma e' una emergenza!!!

Sicomeno... Comunque sia, io mi rimetto a fare quello che stavo facendo ed attendo che questa nuova versione sia consegnata. Dopo una mezz'ora ri-suona il telefono. E questa volta e' CL2 che annuncia che per un problema nella loro uebapplicascion dovranno rilasciare un "hot-fix" su tutti gli ambienti (test, accettazione, produzione, staging... sta' gente ne ha una caterva). E questo hot fix dovrebbe essere consegnato nel giro di un paio d'ore dal loro sviluppatroto. Hummm... comincio a vedere un certo 'trend' nella giornata.

Ovviamente alle 15.59 non si e' ancora visto un tubazzo di niente. Ed io sto' gia cominciando a madonnare quando risuona il telefono ed e' CL1 che dice che la nuova release dovrebbe essere consegnata "a momenti". Alle 16.15 la nuova release e' pronta sul server per essere installata, io domando conferma che questa cosa deve andare in produzione direttamente e dopo poco ricevo una mail da CL1 con la conferma. Noto che la mail termina con "inviata dal mio HTC"... ossignur, ma se hai una tale iphone-penis-envy comperati sto' ca$$o di iphone e non rompere i marroni.

L'installazione e' una procedura abbastanza noiosa e ripetitiva, onde per cui io ho sviluppato uno script per eseguire il tutto. Lancio lo script, che tra le altre cose verifica che il file appaia per lo meno decente, che i files di configurazione siano leggibili e cose cosi' e poi procedo alla "prova fumo": si punta il browser sul sito interdet e vediamo se questo risponde. Pare che tutto funzioni per cui riferisco a CL1 che l'installazione e' avvenuta e che possono andare a farsi ammazzarecominciare a verificare che funzioni tutto.

Alle 16.25 del famoso "hot-fix" non ve ne e' alcuna traccia, ma uno dei miei colleghi (LX) e' risorto (non si sa come) ed e' in Jabber che mi dice che dell'hotfix se ne occupa lui.

Ora, il secondo cliente (CL2) ha un ambiente che e' un po' un casino, con 10 server di produzione ed una pletora di altra roba. Dato che un rilascio richiederebbe di fare login e logout da ogni singolo server, io ho sviluppato uno script di installazione centralizzato, che prende quello che c'e' da installare e lo installa "a distanza" su uno o piu' server a raffica. In seguito, dato che questi continuavano con 'hotfix' su 'hotfix', ho modificato il tutto per gestire anche quelli. La differenza maggiore tra un 'hotfix' ed una installazione e' che l'installazione rimuove prima la versione precedente mentre l'hotfix viene semplicemente installato 'dentro' a quella gia' esistente (e' un volgare unzip). Per questo motivo l'hotfix deve chiamarsi 'hotfix-...zip'. E tutto questo e' chiaramente spiegato nell'howto che e' disponibile sulla Wiki aziendale.

Vabbe', io me ne corro in stazione a prendere il treno e poi non ci penso piu' di tanto. Fino alle 6 del mattino dopo quando DaBoss mi chiama al telefono domandando che e' successo con CL1.

IO - Loro hanno mandato la nuova versione ed io l'ho installata.
DB - Si ma su che sistema?
IO - Entrambi. Come da istruzioni di CL1
DB - Perche' pare che tutto il sito sia andato in coma ieri sera e non funzionanava piu' un ca$$o
IO - La home page del sito era ok, ho controllato. E non ho visto nessun alert nel sistema di monitoring. Dato che noi non sappiamo esattamente cosa controllare e' il massimo che possiamo fare. Per altro, se loro hanno un sistema di test ma decidono di mettere le cose in produzione direttamente non e' che possiamo farci poi molto.
DB - Vabbe', poi ne parliamo in ufficio... che e' successo con CL2?
IO - Non lo so... che e' successo con CL2?
DB - Mi hanno chiamato ieri sera che dovevano mandare un hotfix e che non e' stato installato.
IO - Io non ho visto nessun hotfix fino alle 16.30, poi ho sentito LX che ha detto che ci pensava lui e poi non ho piu' saputo nulla.
DB - Ma hai controllato?
IO - Se LX dice che ci pensa lui, io assumo che ci pensi lui e che sia in grado di fare il suo lavoro, quindi no, non ho controllato.

Ho scoperto in seguito che il problema con CL1 e' che nella fretta di risolvere il "terribile problema" il programmatroto di turno ha confuso i files di configurazione del sistema di test con quelli del sistema di produzione, ma la cosa non era evidente dalla home page del sito (ed in effetti in nessun altra pagina da noi raggiungibile) ma solo dopo che un 'ordine' era inserito nel sistema e che l'hotfix di CL2 era stata in effetti installata da LX ma nella fretta aveva sbagliato il nome del file, invece che '.zip' era stato chiamato '.xip' e quindi l'unzip non aveva fatto un tubo.

Ed il "terribile bug" che doveva essere corretto immediatamente? Il colore del banner sbagliato!

Davide
15/08/2011 08:00

Previous Next

Comments are added when and more important if I have the time to review them and after removing Spam, Crap, Phishing and the like. So don't hold your breath. And if your comment doesn't appear, is probably becuase it wasn't worth it.

13 messages this document does not accept new posts
lufo88 By lufo88 - posted 15/08/2011 15:11

Quello che io mi domando è:

ma queste persone dove hanno studiato? surpriseLa fase di test è importantissima, si scovano bug sia "scemi", sia impensabili e non necessariamente dovuti ad incompetenza. Rinunciare alla verifica implica solo una cosa: programmi che non funzionano. Non mi sembra difficile.

In sostanza il concetto è "quale parte di 'i test sono essenziali' non hanno capito?". D'altro non capiscono neanche la differenza tra un no e un , per cui mi sono anche dato la rispostasad

--
lufo88


Programmatore frustrato By Programmatore frustrato - posted 15/08/2011 18:48

Io continuo a leggere imperterrito le tue storie, e più che vado abanti e più che non riesco a crederci che in giro ci sia gente che lavora in questo modo da schifo...

--
Programmatore frustrato


Andrea Quaglia@ Programmatore frustrato By Andrea Quaglia - posted 16/08/2011 16:20

 

Io continuo a leggere imperterrito le tue storie, e più che vado abanti e più che non riesco a crederci che in giro ci sia gente che lavora in questo modo da schifo...

 

Vieni a lavorare con me, te ne faccio conoscere almeno 8... L'ultimo ci doveva consegnare un file flash interattivo, solo che non ha tenuto traccia dei bug che correggeva né ha marcato le versioni di rilascio, per cui alla fine abbiamo ottenuto un file flash che non sappiamo come fa a funzionare... nel senso che il sorgente (a quanto ho capito) non corrisponde all'eseguibile (o meglio: a nessuno degli eseguibili che abbiamo)...

--
Andrea Quaglia


Kurgan@ Andrea Quaglia By Kurgan - posted 18/08/2011 13:27

L'ultimo ci doveva consegnare un file flash interattivo

 

Eh, va bene... quello  non e` un programmatore, e` un "creativo", e` un "artista"... cosa ti aspetti da lui? Che tenga anche in ordine quello che fa?

 

Nella classifica delle persone con ordine mentale, ci sono prima i sistemisti, poi i programmtori, poi i manager, poi le oloturie, e alla fine, molto distaccati, gli "artisti del web".

Mi ricorda il mio, di artista, di tanti tanti anni fa... il suoi progetti avevano nomi tipo "pippo", poi "pippo.nuovo" e poi "pippo.ultimo" e "pippo.definitivo" e poi "pippo.definitivo.ok", e "pippo.finale", eccetera. Quale di questi doveva essere messo in produzione?

--
Il massimo danno con il minimo sforzo


Anonymous coward By Anonymous coward - posted 16/08/2011 00:06

CL1 - Aaaaaghhh!!! Ma questa e' una emergenza, c'e' un baco terribile nell'applicazione (me pensa: ed i test ovviamente li avete fatti con il didietro eh?).

Senti, ma la posto di "me pensa" perche non passi al "me dice"?

CL1 - Aaaaaghhh!!! Ma questa e' una emergenza, c'e' un baco terribile nell'applicazione.

BigD: mi scusi, ma che risultato vi hanno dato le prove che avrete sicuramente fatto in ambiente di test?

Cosi', per sentire le patetiche scuse che inventano...

--
Anonymous coward


Luca By Luca - posted 16/08/2011 10:25

Noto che la mail termina con "inviata dal mio HTC"... ossignur, ma se hai una tale iphone-penis-envy comperati sto' ca$$o di iphone e non rompere i marroni.

Embe'?Magari ha fatto una cosa intelligente nella sua vita, prendersi un telefono con android :P

--
Luca


Guido By Guido - posted 16/08/2011 12:16

ci sono cose che si risolvono solo con un "vaff...o" e tu hai sbagliato a non mandarli in quel posto prima...

--
Guido


Tapirlongo Fiutatore By Tapirlongo Fiutatore - posted 16/08/2011 13:36

I mangler non capiscono che trovarsi in emergenza è di per se, e per definizione, una gran brutta cosa.

La terapia d'apprendimento d'urto vorrebbe che gli si spezzassero le gambine e poi li si mandasse, ovviamente con la massima urgenza, al traumatologico: forse così capirebbero che è preferibile prevenire a priori piuttosto che riparare a posteriori, sia pure con il personale più preparato che ti da tutta la priorità che vuoi.

--
Tapirlongo Fiutatore


Anonymous swiss coward By Anonymous swiss coward - posted 16/08/2011 16:52

Gli ambienti di sviluppo e preproduzione (quando c'è) sono ormai del tutto ridondanti. Sempre più spesso vedo gente operare direttamente in produzione.

Quei pochi che ancora sono costretti ad usare ambienti di test poi non testano, poco spesso si fanno test d'integrazione e men che meno si prova a simulare un carico realistico.

Poi quando ci sono patch o interventi sui sistemi c'è sempre più spesso la pessima abitudine di non preparare nemmeno un piano di rilascio.

Lavorare in IT nel 2011....la vittoria del pressapochismo...sigh

--
Anonymous swiss coward


Anonymous coward By Anonymous coward - posted 16/08/2011 21:37

Mettiamola cosi': se non fosse per questi idioti, magari sarei in mezzo ad una strada.

Per cui: "dacci o Signore, il nostro idiota quotidiano (PAGANTE!!)"

--
Anonymous coward


Luca BG By Luca BG - posted 17/08/2011 10:49

<i>A che serve l'ambiente di test se non a testare?</i>

Mah? Alle volte me lo chiedo anch'io...

Upgrade OS su un paio di macchine (Solaris 8 → Solaris 9). Direttamente in produzione, ovviamente.

Richiesta mia: "Possiamo provarlo prima sulla macchina di test?"

Risposta del cliente: "No, la macchina di test ci serve".

...

Seriously: WTF?

--
Luca BG


Anonymous londoner coward By Anonymous londoner coward - posted 18/08/2011 02:27

Ma perche` la gente non fa i test diosanto!!!

 

Comunque dio salvi gli utonti pieni di soldi. mi pagano lo stipendio!

--
Anonymous londoner coward


Tapirlongo Fiutatore By Tapirlongo Fiutatore - posted 19/08/2011 12:59

Ma, sul dacci oggi il nostro utonto quotidiano non sono così sicuro, è vero che creano una marea in più di lavoro, ma seriamente:

1) non sono in grado di distinguere un tecnico da una scimmia, figuriamoci se sono in grado di dare lavoro a chi se lo meriterebbe (sia nel senso di preparazione, sia nel senso di aderenza del prodotto/competenze con le esigenze del cliente, sia nel senso di saper innanzitutto capire ed eventualmente dirigere in direzione costruttiva le idee "ponydinamiche" del cliente) anzichè al primo consultante / programmatroto / itticcimangler che passa, affossando il mercato in termini di prezzo e reputazione, e scaricando le peggio cose sui tapini che verranno mentre loro seguono la regola aurea: non hai bisogno di un prodotto migliore ma di un cliente più tonto

2) ragà, nessuno regala niente, Gates, Jobs, Brin, Page, Zuckerberg e compagnia bella non hanno certo fatto i soldi perchè sono tonti, idem per chi lavora negli altri settori. Viceversa per ognuno di questi nomi si potrebbero scrivere paginate e paginate di imprenditori di ogni settore che sono andati gambe all'aria. Vorreste un utonto come cliente o peggio come datore di lavoro? Quanto vi potete fidare che non vada gambe all'aria prima di avervi saldato le fatture? La ricerca di nuovi clienti (o di un posto) è un tempo morto che non dà paga e che se possibile è meglio evitare.

Pensateci bene prima di lavorare in posti a forte prevalenza di utonti, la carriera si costruisce lavorando in aziende serie e con clienti seri, gli utonti sono un rischio per se stessio e per gli altri e meno ce ne sono meglio si lavora seriamente!

--
Tapirlongo Fiutatore


13 messages this document does not accept new posts

Previous Next


This site is made by me with blood, sweat and gunpowder, if you want to republish or redistribute any part of it, please drop me (or the author of the article if is not me) a mail.


This site was composed with VIM, now is composed with VIM and the (in)famous CMS FdT.

This site isn't optimized for vision with any specific browser, nor it requires special fonts or resolution.
You're free to see it as you wish.

Web Interoperability Pleadge Support This Project
Powered By Gojira