b0sh.net

Proudly debugging the system since 1981

Una cosa che sapevo e una che ho scoperto

Un problema abbastanza comune: io non riesco a mantenere l’attenzione su quello che sto facendo mentre ci sono voci di altre persone. Sentire parlare qualcuno automaticamente sposta parte della mia attenzione da quello che sto facendo a quello che sento anche se non sono io il desiderio del messaggio.

In una certa misura credo che capiti a tutti, a chi più a chi meno. Per me è più.

E inevitabilmente accade anche con la musica.

Una cosa che sapevo è che si possono usare i noise generator per offuscare il parlato e isolarsi. MyNoise ne ha una collezione enorme e personalizzabile.

Una cosa che non conoscevo, e che sto apprezzando molto, sono le stazioni LoFi Hip Hop. Ne scegli una e la fai andare per ore. Fantastico.

Un ulteriore consiglio non richiesto: per ascolti prolungati è meglio un paio di cuffie grandi, vecchia maniera, piuttosto che gli auricolari in-ear, se poi sono dotate di cancellazione attiva del rumore l’effetto isolamento è ancora migliore.

Commenti al codice e affini

Nella parte non visibile dei programmi si trovano cose strane. Una recente scoperta, nascosta in una riga alta 1px. Mah.

Una delle mie attività principali consiste nel favorire e ampliare le reazioni.
Io non progetto soluzioni, ma facilito le reazioni; è l’organizzazione a preoccuparsi dei contenuti.
Io analizzo la situazione, la riporto ai responsabili e mi assicuro che ogni decisione venga immediatamente comunicata e passi attraverso una catena informativa con molteplici retroazioni.
Costruisco delle reti, accresco la connettività dell’organizzazione e amplifico le voci degli operatori (che altrimenti rimarrebbero inascoltate).
In seguito al mio lavoro, i responsabili cominciano a discutere cose che, normalamente, non sarebbero state discusse, e in questo modo viene ad accrescersi la capacità di apprendere propria dell’organizzazione.

Fritjof Capra, La scienza della vita, Rizzoli, 2002.

Tastiera meccanica

E’ un attrezzo che volevo provare da molto tempo, ma visto che la maggior parte della mia attività di scrittura si svolge su un notebook che mi porto in giro, non mi ero mai deciso.

Ora questa lunga permanenza a casa, e un po la noia, mi ha convinto a comprare questo strumento di tortura uditiva per chi mi sta intorno. Si perchè fa un rumore paragonabile ad una vecchia macchina da scrivere.

Però, per il resto, mi chiedo come ho fatto prima di oggi. La scrittura è infinitamente più comoda e piacevole. Come farò a tornare ad usare la tastiera del notebook?

La tastiera scelta è una Ajazz AK33, con layout ridotto (come si vede nella foto), ha un discreto peso, data la struttura metallica e giochi di luci molto vari, non che la cosa mi interessi molto. E inoltre ha il layout americano, cosa estremamente comodo quando si programma. Ecco un po’ meno quando si scrive in italiano ma comunque si può cambiare e anche se quello che è stampato sul tasto non corrisponde a quello che viene scritto non è un problema. Diciamo che il layout italiano lo so a memoria. Un po’ meno quello americano per cui ogni tanto guardo i tasti per sapere cosa scrivere.

Dagli all’untore

Alla primavera non frega nulla dei nostri problemi.

Probabilmente mi ha fatto male rileggere i Promessi Sposi di recente, e constatare che a distanza di 2 secoli dalla scrittura, e 4 dai supposti eventi narrati poco è cambiato. L’unica cosa che vedo di differente è che la Medicina è una scienza un po più matura e che ha dei dati oggettivi da produrre e capacita analitica sul male.

La peste prima è stata sottovalutata e sminuita dalla autorità, poi chi assisteva i malati è stato lasciato a se stesso, poi in tutta fretta si sono individuati luoghi in cui mettere i malati e alla fine molti di quelli che assistevano i malati si sono ammalati a loro volta. Alla fine si è salvato chi è stato isolato e chi fortunatamente ne è uscito con le sue forze. Gran parte degli sforzi tardivi delle autorità hanno fatto più male che bene.

Ma il punto è che la ggente (con due g) ancora cerca l’untore. Per semplicità: avere un nemico visibile ti mette in pace con i tuoi pochi neuroni. Prima il cinese, poi il passeggiatore di cani, ultimamente si è eletto a categoria untrice il runner. Probabilmente non sarà l’ultima categoria. E perché non il corriere o la cassiera? Vedremo. Non sono tempi noiosi.

Solo non affidatevi all’astrologia, e tenete acceso il cervello. Le soluzioni semplici non esistono. Le soluzioni estreme sono sempre un estremo sbaglio.

Vue.js – Primo impatto

Alla fine il tempo è quello che è, anche in quarantena, e non ho visto molto, ma qualche prima impressione posso scriverla.

Aspetti interessanti:

  • Non necessita che tutta l’applicazione sia una SPA. Può esserlo, ma può anche essere una versione ibrida, con html statico o generato server side in alcune parti, e una applicazione Vue.js dove serve più reattività.
  • Non necessita di scaricare mille cose, librerie, dipendenze, compilare, etc … si aggiunge il link al js sulla CDN e si ha tanto pronto.
  • Approccio a componenti, reattività e data binding. Ovvio. Se no tanto valeva usare una tecnologia server side con un pò di jQuery.

Dubbi:

  • Come scala all’aumentare della complessità dell’applicazione? In genere i framework che puntano a facilitare l’ingresso finiscono anche a facilitare lo spaghetti coding all’aumentare della difficoltà del problema che devono risolvere. Ma dovrei vedere qualche lezione in più.

Vue.js – Corsi gratis per due giorni

Oggi e domani sono accessibili gratuitamente tutti i corsi di VueMastery su Vue.js.

Non ho un idea sull’argomento, ma probabilmente lunedì, sfruttando l’isolamento forzato, ne saprò qualcosa di più.

Proxy Dinamico per logging

Può essere necessario loggare tutto ciò che fa una determinata classe che però fa parte di una libreria e non contiene tutti i log desiderati. Supponendo che non sia necessario debuggare la classe in sè, che fa quello che deve fare nel modo giusto, ma come viene utilizzata all’interno del progetto ho trovato che realizzare un proxy dinamico sia una soluzione efficace e molto versatile. Anche perchè fatto uno, va bene per qualsiasi classe.

La classe che andiamo da realizzare fa due cose :

  • implementa InvocationHandler in modo che venga richiamata tutte le volte che viene chiamato un metodo dall’utilizzatore del target da loggare
  • ha un factory method di comodo che crea una nuova istanza di proxy dinamico attaccando se stessa come InvocationHandler

Implementare InvocationHandler significa implementare il metodo invoke:

invoke di fatto richiama il metodo del target e logga nome del metodo, parametri e risultati. Più la gestione delle eccezioni del metodo target e di tutte le altre possibili eccezioni.

Il metodo wrap permette di avere la nostra classe ben wrappata con un solo comando.

Visto che tutto questo mi ha permesso oggi di scoprire un utilizzo un pò insensato dell’accesso ai dati con conseguente lentezza ho pensato di condividerlo.

Correre o non correre

In tempo di NON coprifuoco, con l’Italia NON chiusa ma caldamente invitata ad essere più asociale che mai la corsa, sport solitario che si può praticare in gruppi grandi a piacere, si adattata molto bene.

Quindi si ho deciso che sì: potevo correre, da solo, in periferia, girando molto al largo da sparuti passanti pur rispettando l’essenza di quello che ci viene chiesto di fare e non causando pericolo ne a me ne agli altri.

Lo rifarò a breve.

Ufficio domestico

Lati positivi:

  • Non ho a che fare con Trenord
  • L’ ufficio domestico è meglio di quello aziendale
  • Ogni tanto riesco a fare anche mezzo post sul blog

Perchè?

Contesto: classe Java, framework Wicket (ma non è significativo), IDE Intellij.

Quale sarà mai il motivo percui, un anonimo programmatore che mi ha preceduto, può aver pensato che avesse senso fare un metodo privato, che nel nome richiama l’idea di un factory method, che ritorna un campo della sua stessa classe?

E poi perchè commentarlo con // (5) ?

Leggi tutto

Pagina 1 di 116

Powered by WordPress & Theme by Anders Norén