Tales from the Machine Room


Home Page | Comments | Articles | Faq | Documents | Search | Archive | Tales from the Machine Room | Contribute | Set language to:en it | Login/Register


Abbiamo Qualche Problemino

E come detto precedentemente, me ne sono andato in ferie per un paio di giorni. Niente di eclatante, solo una rapida visita al mio fratellone tanto per mostrare che non sono ancora morto. Rientro in ufficio Lunedi mattina, mi leggo la posta e, surprise, surprise, la stramaledetta applicazione non e' andata in produzione.

Non solo ma, stranamente K ha scoperto che deve restare un'altra settimana per vari motivi. Bene, vedo che e' successo durante la mia assenza e noto una mail di T con alcune lamentele sul modo come e' stato installato il server, rispondo facendogli notare che e' impossibile usare "il suo script per configurare jetty" dato che tale script non funziona e che se non mi dice che "ci sono da fare un paio di cambiamenti sulla configurazione di smartd" col cappero che me lo sogno di notte.

Scopro anche che c'e' un ennesimo script di conversione da fare, per i dati "statistici". Anche se a me era stato detto che i dati statistici non erano da convertire. Riprendo percio in mano l'intero accrocchio e cerco di capire come convertire anche questa roba.

Ovviamente tutto questo deve essere inframmezzato con problemi vari che continuano a piovere.

Alla fine della giornata ho lo script piu' o meno finito.

T - Secondo te possiamo mettere in servizio la nuova applicazione domani?
IO - E non vuoi fare un test prima di buttare il tutto su? Perche' questa e' una strada a senso unico. Se qualche cosa non funziona non e' che possiamo tornare indietro eh.
T - Hemmm... Ma abbiamo testato il tutto per dei mesi...
IO - Sicomeno. E quante modifica all'applicazione hanno fatto quei due negli ultimi 4 giorni? Guarda, se vuoi andare in produzione per me sta bene, ma i casini poi te li smazzi tu eh.
T - Hemmm... Allora facciamo che domani facciamo degli altri test e andiamo in produzione Mercoledi, cosi' abbiamo Giovedi e Venerdi per verificare le cose.

Fast forward al giorno dopo

Eccomi arrivare in ufficio di buon'ora, lanciare un'altra conversione, acchiappare la foxxuta applicazione e mettermi a fare un paio di controlli. A questo punto suona il telefono.

IO - Cosa?
CL - Sono CL di $qualcheditta. Noi abbiamo un cliente XYZ che usa $vecchiaversionedellafoxxutaapplicazione ed abbiamo inserito gli indirizzi per controllare la posta, ci chiedevamo se c'e' un modo per avere un elenco di tutti quegli indirizzi.
IO - Non sono riportati sulla web-interfaccia?
CL - Si', ma solo 20 alla volta e noi ne abbiamo inseriti circa 400.

Ecchemipareva. Guardo nel database, faccio un dump della lista degli indirizzi e la spedisco a CL. Poi mi viene un raptus e guardo nel nuovo database. Ok, gli indirizzi sono tutti li'. Che figata! La conversione funziona... Ma... perche' la configurazione dice di "accetta tutti gli indirizzi" invece di "usa la lista" come dovrebbe? Controlla nel db. Hummm... Il campo use_addresses dice '1'. Come dovrebbe. Provo a cambiare la web-interfacia da 'accetta tutto' a 'usa elenco' e guarda un po': il campo adesso dice '0'. Oh che bello. Quindi il campo dice il contrario di quanto dice l'interfaccia. Vado ad acchiappare K e gli spiego la rava e la fava.

K - Hummm... 'Spetta fammi vedere... Ah, ecco perche'. Perche' io quel campo li lo traduco nella mia struttura come "DO NOT USE address list".
IO - Interessante. Quindi tu hai una struttura interna in cui il campo chiamato "use_addresses" e' tradotto come "DONOTUSEaddresses". Logico.
K - Si bhe, e' una cosa che abbiamo aggiunto in un secondo tempo...
IO - ?? Come "abbiamo aggiunto in un secondo tempo"? Quella funzione era gia' nella versione vecchia!
K - Comunque, che problema ti da'?
IO - A me non da nessun problema. Sara' da ridere quando quei 1000 clienti che hanno una lista di indirizzi si vedranno recapitare posta per indirizzi inesistenti, mentre quei 9000 clienti che non hanno una lista non riceveranno piu' posta perche' voi avete invertito il significato di un campo.
K - Ah... Bhe... Potresti invertire il valore nella conversione...
IO - Si. Potrei. Salvo il fatto che ritornerebbe invertito non appena qualcuno usa l'interfaccia. E questo mi fa anche venire il dubbio di cosa avete fatto con tutti gli altri valori di tipo yes/no del database.

Qualche cosa mi fa pensare che questa applicazione sia nata molto male. E questo sarebbe probabilmente passato inosservato se non avessi ricevuto una telefonata da un CL a caso. Qualche volta Murphy funziona al contrario..

Davide
08/06/2009 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.

18 messages this document does not accept new posts

Kaspa

Siamo tutti figli di Dio By Kaspa posted 08/06/2009 08:08

Vedi che anche i CL servono a qualcosa?

Altrimenti non te ne saresti acccorto, no?

-- Kaspa


Davide Bianchi

-AT- Kaspa By Davide Bianchi posted 08/06/2009 08:16

> Siamo tutti figli di Dio

Al solito, quando vogliono insultarti tirano in ballo parentele di dubbia reputazione.

-- Davide Bianchi


Kaspa

-AT- Davide Bianchi By Kaspa posted 08/06/2009 10:33

> > Siamo tutti figli di Dio
>
> Al solito, quando vogliono insultarti tirano in ballo parentele di dubbia reputazione.
>
> --
> Davide Bianchi

Sì, hai ragione, affermare una tua parentela con i CL è un po' pesante... però ammettilo, che senza di loro, sotto sotto, ti annoieresti a morte! (Beh, noi sì, senza le tue storie...)

-- blog.thekaspa.it
www.aimps.it


Alberto

Yes / No / Maybe By Alberto posted 08/06/2009 08:10

Magari, anziché un campo logico invertito, si tratta di un caso di psicologia inversa...

-- Alberto


Mauro Pietrobelli

Sicuro? By Mauro Pietrobelli posted 08/06/2009 08:20

<Qualche volta Murphy funziona al contrario..>
Lo sai che adesso Murphy si scatenerà contro l'applicazione vero?
Ciao BigD e buona settimana

-- Mamo


Davide Bianchi

-AT- Mauro Pietrobelli By Davide Bianchi posted 08/06/2009 08:47

> Lo sai che adesso Murphy si scatenerà contro l'applicazione vero?

Si e' gia' scatenato, non ti preoccupare.

-- Davide Bianchi


Mugna

Terrificante... By Mugna posted 08/06/2009 08:48

> "use_addresses" e' tradotto come "DONOTUSEaddresses"

...e immagino che la foxxutaapplicazione sia definita nel campo costo al cliente con almeno 5 cifre (decimali esclusi).

Beata professionalità in via d'estinzione...

-- Mugna


Carlo

Vero, falso, chissà, forse By Carlo posted 08/06/2009 09:01

Che figo, questo significa che non sono l'unico che si ritrova i campi booleani "al rovescio" e che poi diventa scemo per capire il funzionamento della webapp che secondo il $Admin_Ditta fa tutto, lo fa bene.
Ovviamente ciò è dimostrato dalle 50 chiamate al giorno di "helppp non funziona un c-AT-..o" :-\)
Quasi quasi baratto il mio pc per un campo di patate :-\)

-- --
Carlo


Francesco Paolini

-AT- Carlo By Francesco Paolini posted 08/06/2009 23:37


> Quasi quasi baratto il mio pc per un campo di patate
> --

qui da me l'omino ibm di zona ogni anno prende 2 settimane di ferie per farsi la raccolta delle olive. e altre due per la vendemmia! una volta l'ho chiamato e mi ha detto "sono su una pianta, ma dimmi pure!". mitico!

-- Francesco Paolini


Co.Bra.

Murphy's law By Co.Bra. posted 08/06/2009 09:14

> Qualche volta Murphy funziona al contrario
Non contarci troppo, però: la Legge di Murphy si applica anche a sé stessa

-- Co.Bra.


Takayasu Kenduma

almeno il codice ed il db sono commentati? By Takayasu Kenduma posted 08/06/2009 09:24

cosi' per lo meno dovreste sapere cosa vuol dire il boolean in quel campo o in quella variabile. e poi... nell'epoca degli orm sarebbe ora che uno tra il db e l'object model sia generato automaticamente, almeno si evitano certe incoerenze ;-\)

-- Takayasu Kenduma


Davide Bianchi

-AT- Takayasu Kenduma By Davide Bianchi posted 08/06/2009 09:56

> nell'epoca degli orm sarebbe ora che uno tra il db e l'object model sia generato automaticamente,

..."uno" cosa?

-- Davide Bianchi


Nicola

Impressioni... By Nicola posted 08/06/2009 11:30

Ho come l'impressione che questa bellissima applicazione sarà una delle gocce sostanziose del bicchiere che quando travaserà inumidirà il tuo curriculum...

-- "Le opinioni, si sà, sono come i coglioni... Ognuno ha i suoi" (Giorgio Gaber)


Davide Bianchi

-AT- Nicola By Davide Bianchi posted 08/06/2009 11:47

> Ho come l'impressione che questa bellissima applicazione sarà una delle gocce sostanziose del bicchiere che quando travaserà inumidirà il tuo curriculum...

Altro che inumidire: ci ho l'acqua alle ginocchia!

-- Davide Bianchi


Angkarn

cervelli montati al contrario By Angkarn posted 08/06/2009 18:27

Dunque non è un caso singolo il mio!
Da noi abbiamo un grande (molto grande) database, in gran parte progettato e manutenuto da me medesimo. Per facilitare le cose, ogni campo ha nel suo commento il suo significato e per i vari flag sono previsti l'elenco dei possibili valori.
Però, naturalmente, c'è sempre qualcuno più furbo degli altri che dice "io quel campo lo uso così" con buona pace del tentativo di avere un'applicazione coerente con sé stessa...

-- Angkarn


Francesco Paolini

te vedrai... By Francesco Paolini posted 08/06/2009 23:42

...quando il campo da boolean te lo fanno diventare int(3) perche' "$cliente vuole $casoparticolare"!

-- Francesco Paolini


Ignorante

-AT- Francesco Paolini By Ignorante posted 10/06/2009 19:11

> ...quando il campo da boolean te lo fanno diventare int(3) perche' "$cliente vuole $casoparticolare"!
> --
Quando compilando un'anagrafica su una maschera di un vecchio IBM S/34 devi riempire un campo lungo 3 caratteri e ti dettano $ParolaDiSetteLettere e tu dici perentorio TRE LETTERE e ti senti dire "scriva stretto!"?

-- Ignorante


dAb

Mi sembra perfettamente logico By dAb posted 19/06/2009 01:05

L'interfaccia e` donna. Ergo se e` no e` si`, se e` si` e` no.

-- dAb


18 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