Quando il bug regna sovrano

๐Ÿ› ๐๐ฎ๐š๐ง๐๐จ ๐ข๐ฅ ๐›๐ฎ๐  ๐ซ๐ž๐ ๐ง๐š ๐ฌ๐จ๐ฏ๐ซ๐š๐ง๐จ ๐Ÿฅต Come sudare (ulteriormente) in un pomeriggio di fine luglio Nell’ultima settimana (forse quasi due) ho sviluppato un servizio per lo scambio di dati con una piattaforma partner sfruttando il canale sFTP. La parte “problematica” si รจ verificata quando ho dovuto prendere del codice non mia e portarla all’interno. Alla prima apertura di codice non mi convinceva a pelle, ma illudendomi ho pensato “๐’๐ข๐œ๐ฎ๐ซ๐š๐ฆ๐ž๐ง๐ญ๐ž ๐š๐ฏ๐ซ๐š๐ง๐ง๐จ ๐Ÿ๐š๐ญ๐ญ๐จ ๐ญ๐ฎ๐ญ๐ญ๐ข ๐ข ๐ญ๐ž๐ฌ๐ญ ๐๐ž๐ฅ ๐œ๐š๐ฌ๐จ!

Il codice come il timer della lavatrice?

โฒ๏ธ Il codice come il timer della lavatrice? Riflessioni di sabato mattina da “casalingo” … Mancava una decina di minuti alle 11 quando ho deciso di fare partire la lavatrice dopo il cambio delle lenzuola. Ho fatto un semplice ragionamento istintivo basandomi sulla durata indicata dal programma: 59 minuti! Ho questa lavatrice dal 2018 e non ricordo di avere mai visto un lavaggio durare quel tempo. Quando arriva attorno alla decina di minuti il tempo si dilata.

Andrea Carratta | Developer

Andrea Carratta | Developer Freelance | Senior Backend & Cloud Developer | Microsoft Azure Cloud | Azure DevOps Progettare ed offrire soluzioni complete richiede anche un continuo processo di studio ed aggiornamento. Restare al passo con la tecnologia รจ fondamentale nel mio lavoro. Ogni processo deve garantire il risultato desiderato attraverso una serie di piccoli step come se fosse una melodia piacevole da ascoltare. Analisi, scelta della risorse da utilizzare e codice ottimizzato garantiscono ottime performance per fare la differenza.

IDictionary: rendere la ricerca Case Insensitive

Quando programmo l’utilizzo da parte mia di IDictionary รจ frequente specialmente per ridurre gli accessi allo strati dati generando una sorta di cache minimale nel codice per la chiamata in corso. Purtroppo alle volte capita di non trovare la corrispondenza della chiave e sappiamo benissimo quello che comporta. Nella migliore delle ipotesi si tratta di un nuovo accesso al database, ma in altre possiamo ricevere il valore in out di default o peggio (anche se forse รจ meglio) una bellissima Exception.

Newtonsoft: JSON Format da string ... a

Durante uno sviluppo recente mi sono trovato a dovere affrontare nuovamente una situazione vissuta in passato legata alla leggibilitร  di un file JSON da parte dell’utente finale. Cosa intendo per leggibilitร ? Mi riferisco a presentare un file formattato in modalitร  Formatting.Indented partendo da un Json privo di formattazione. Non capite l’esigenza e la motivazione? Provate a leggere quanto segue! JSON & Formatting.Indented Anche in questo caso -come nel precedente- l’esigenza era molto chiara.

Azure Function: retry

Quante volte aprendo il monitor delle Azure Functions hai visto una serie di errori tutti uguali? Di default -se non ricordo male- ogni errore genera un totale di cinque “Error” complessivamente. Personalmente trovo questo fatto molto sgradevole per una serie di motivi e se possibile punto ad evitarlo. Vi state chiedendo come? Ecco svelato il mistero … host - retry Senza perdermi troppo in parole vi svelo subito come evitare di avere molte occorrenze dello stesso errore.