30 dicembre 2014

La solita caccia alle streghe virtuali (GTA V il male)

Ci siamo cascati un'altra volta purtroppo. La signora Sabrina Salvadori, pediatra e che scrive sul Corriere, ha postato un articolo tra il delirante e il fazioso per scagliarsi ancora una volta contro la violenza dei videogiochi. Trovo che sia un caso lampante di disinformazione o ancor peggio di completa ignoranza, oltretutto proveniente da una professionista che dovrebbe avere un minimo di cognizione su tali tematiche.


Non voglio filosofeggiare sulla morale e sull'arte contenuta in un videogioco, ma vorrei far notare che la copertina di GTA V sia in realtà piuttosto esplicita nei contenuti e nelle informazioni. Se una madre regala questo titolo al figlio di 11 anni, indossando un bel paraocchi e senza voler capire un beneamato **BIP**, beh la colpa non sarà del gioco...

Indovini cara signora Sabrina che cosa rappresenta quel 18 in basso a sinistra? Do un suggerimento in forma del tutto gratuita: ha a che fare con l'età dei possibili fruitori dei contenuti.


Se poi vogliamo dare un giudizio di merito, mi sembra alquanto anacronistico che si accostino videogiochi e violenza, più o meno siamo sullo stesso piano che giudica un satanista chi ascolta la musica metal.

Dai davvero, basta con questi luoghi comuni, magari informarsi un po' meglio prima di sputare sentenze (oltretutto non richieste)?

Il finale dell'articolo è poi davvero esilarante ed in pieno stile "lei non sa chi sono io". La segnalazione fatta al deputato amica della signora Sabrina, sempre peggio... Ma non credetemi sulla parola e leggetevi l'articolo e fatevi un'idea sulla pochezza espressa.

22 dicembre 2014

L'auto del futuro

Se penso a qualcosa che cambierà per sempre il nostro approccio alle auto, con dei veicoli intelligenti ed in grado di portarci a spasso senza rischi, penso subito a KITT, che da bambini tutti sognavamo un giorno di poter guidare.



Ma da qualche tempo mi tormenta un incubo made in Google, che l'auto del futuro la vede un po' diversa.


Ma nooooo Google, il concept è di un topo a ricarica come quello dei miei gatti.

I miei sogni di bambino hanno subito un drastico ridimensionamento.

10 dicembre 2014

Possiamo estinguerci

Qualche giorno il personale di Youtube è stato costretto a cambiare il contatore di visualizzazioni dei video, passando da 32 a 64 bit. Infatti il max_int di 2.147.483.647 del 32 bit, non era più in grado di gestire l'incremento di visite per un video online dal luglio del 2012.

Perfetto, evidentemente il successo del video in questione era tale da costringere questo upgrade tecnico. Ma di che video si tratta?

Provo a buttarla: il discorso del reverendo King, quello del famoso del "I have a dream".


Oppure il discorso di Mandela a Pretoria, simbolo della fine dell'apartheid, la famosa scarpa Krusciov sbattuta sul banco della nazioni unite, lo sbarco sulla Luna, l'omicidio Kennedy, lo sgancio della bomba su Hiroshima, l'abbattimento del muro di Berlino.... Cosaaaaaaaaaaa?



Acqua, siamo molto lontani.


Vabbé dai il famoso filmato dell'uomo che ferma il carro armato durante gli scontri di Tienanmen.



Non ci siamo ancora, un aiutino sul genere: musica.

Ah ok, musica, wooow non pensavo, allora direi che si tratta di qualcosa di solenne e maestoso impresso a fuoco nelle menti. Potrebbe essere Imagine di John Lennon?


Oppure Starway to Heaven dei Led Zeppelin?

 


No, sbagliato, si tratta dello Gangnam Style di PSY.


La razza umana deve estinguersi, non vedo altra soluzione...

20 settembre 2014

Come cambiare la lingua della nostra Debian

Se volessimo cambiare da console il LANG e LANGUAGE della nostra Debian, esiste un modo molto semplice per farlo.

Prima di tutto rendiamoci conto di cosa è settato sul nostro sistema:
# /usr/bin/env | grep LANG
Si potrebbe palesare qualcosa di simile a:
LANG=en_US.UTF-8
LANGUAGE=en_US:en 
Dove ovviamente "en" sta a significare che la nostra Debian non parla la lingua del Sommo Vate. Per convincerla basterà lanciare questi comandi e scegliere tra le possibilità proposte:
# export LANG=it_IT.UTF-8
# dpkg-reconfigure locales

Dobbiamo riavviare il sistema per rendere effettive le nuove impostazioni.

Have fun.

21 luglio 2014

Sbarcano in Italia i G-Glasses (forse)

Certo che se li mette lui, chi sono io per non imitarlo?!?


Verrebbe da chiedersi se siamo davanti a un fenomeno di moda, di cultura, di necessità o niente di tutto ciò o una commistione di tutti i fattori citati... Ma forse non bisognerebbe farsi troppe domande filosofiche e pensare che siamo difronte ad un semplice gadget tecnologico, che si porta dietro un non trascurabile problema di privacy.

Ma anche qui mi verrebbe da pensare che nel 2014 trovare qualcosa che non nasconda delle insidie di insicurezza sia in realtà davvero dura. Dalla e-posta, alle passwords, ai dati delle nostre carte di credito, agli account social, fino al profilo della nostra console, siamo costantemente circondati da centinaia di possibili "violazioni" alla nostra privacy. Focalizzarci solo su un singolo oggetto è alquanto discutibile e molto francamente anacronistico

Io per ora ho una sana (leggasi nerd) curiosità.

10 luglio 2014

Don't wanna be your monkey wrench


[....]
One last thing before I quit
I never wanted any more than I could fit
Into my head I still remember every single word
You said and all the shit that somehow came along with it
Still there's one thing that comforts me since I was
Always caged and now I'm freeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
[....]

07 giugno 2014

Ci siamo, nuova TOP20

Wooooow finalmente trovo cinque minuti per integrare le mie nuove "manie musicali" nella TOP20, che da anni non cambiavo più che altro per pigrizia.

Ma non posso più aspettare e mi rendo conto che alcuni pezzi (ossessioni dovrei scrivere), ormai hanno soppiantato altri brani storici nella mia testa ed anche se non si tratta quasi mai di "roba" nuova, è ora di dargli la loro giusta evidenza.. Let's rock!!

1. Smells like teen spirit - Nirvana
2. Second chance - Shinedown
3. Rearviewmirror - Pearl Jam
4. Monkey wrench - Foo Figthers
5. Through Glass - Stone Sour
6. In Bloom - Nirvana
7. Shed my skin - Alter bridge
8. Happy? - Mudvayne
9. Creep - Radiohead
10. Hide - Creed
11. Glycerine - Bush
12. 45 - Shinedown
13. Enter sandman - Metallica
14. Sirens - Pearl Jam
15. Stardog Champion - MLB
16. I am the highway - Audioslave
17. Interstate love song - STP
18. All over you - Live
19. Devour - Shinedown
20. New Tatoo - Saving Abel

27 aprile 2014

Impossibile impostare il blocco /var/lib/dpkg/lock

Quando la Mint (o qualche altra Ubuntu-like) si rifiuta di aggiornarsi da terminale o da strumenti dedicati che siano, restituendoci il messaggio E: Impossibile impostare il blocco /var/lib/dpkg/lock - open (11: Risorsa temporaneamente non disponibile). che cosa possiamo farci oltre a piangere e disperarci per l'avverso destino?

La soluzione è in questo caso semplice, infatti basterà digitare da terminale:
sudo rm /var/lib/apt/lists/lock

...ed in caso di ulteriori e persistenti problemi:
sudo rm /var/cache/apt/archives/lock

Ecco qui, tutto sbrilluccica come prima.

26 aprile 2014

Eliminare file *.pyc dal repository Git

Alzi la mano chi non ha lanciato imprecazioni verso il proprio Dio al cospetto del proprio repository Git invaso da migliaia di file .pyc, oltretutto andandone a compromettere l'usabilità generale.

La soluzione però è semplice. Dentro la cartella del vostro progetto, ovviamente in questo caso si Python o suoi discendenti, vi basterà lanciare il comando:
find . -name "*.pyc" -exec git rm -f {} \;
Poi e se non  lo aveste ancora fatto, aggiungete al vostro .gitignore:
*.pyc

Tutto fatto cavalieri, un altro drago sconfitto.

23 marzo 2014

Floppy canterini

Tu dimmi se costui non è un genio? Certo le finalità potranno essere anche discutibili (ognuno col proprio tempo può farci quello che vuole), ma tutto il resto no...



05 marzo 2014

LA SINTASSI DI PYTHON: L'indentazione

Quando ci si avvicina per la prima volta ad un linguaggio di programmazione ancor prima di pensare a flussi, condizioni, costrutti, moduli e/o concetti avanzati, ci si ritrova davanti al primo scoglio da affrontare rappresentato dalla sintassi del linguaggio. Una delle paure che attanaglia il programmatore in erba è proprio quella di non ricordarsi esattamente quello che il linguaggio pretende di sapere da lui e, purtroppo per noi, senza grosse deroghe.

Però avete la fortuna di avere il vostro amico Python al vostro fianco e la sua sintassi leggera ed intuitiva vi farà entrare subito nel mondo della programmazione con pochi sforzi mnemonici.

PHP
echo "Hello World";

Python 2.x
print "Hello World"

Python 3.x
print ("Hello world")

Tralasciando per un attimo il "veicolo" che permette la stampa di questo semplice messaggio, come vedete sono poche le differenze tra il nostro amico e il diffusissimo linguaggio di programmazione web (che presto abbandonerete, sappiatelo). Abbiamo fatto un classico Hello World e non ci ha dato delle grandi soddisfazioni, perché non si intuisce una delle meraviglie di Python: l'indentazione, che però potrebbe disorientare i neofiti. Essendo parte del linguaggio, l'indentazione ci aiuterà a scrivere codice pulito e ordinato, ma non dovete credermi sulla fiducia, vi faccio dei facili esempi per capire di cosa sto parlando:

PHP
[...]
if ($variabile == "Qualcosa") {
$altra_variabile = "Altra cosa";
$stupida_variabile = "Stupida cosa";
[...]
} else {
$altra_variabile = "Qualcosa di default";
}

Python 2.x e 3.x
[...]
if variabile == "Qualcosa":
    altra_variabile = "Altra cosa"
    stupida_variabile = "Stupida cosa
    [...]
else:
    altra_variabile = "Qualcosa di default"

Grida di giubilo e manifestazioni collettive in piazza ed un solo urlo si alza al cielo: "La sintassi di Python è bellissima...". Chi ha detto no? Scusate quel rubista in fondo alla stanza può smettere di dar fastidio per cortesia? Ma analizziamo i due piccoli script e vediamo se vi convinco...

Come notate, ci sono delle notevoli differenze principalmente dovute al posizionamento delle varie righe. Se per inciso modificassimo lo script in PHP in questo modo:

[...]
if ($variabile == "Qualcosa") {
        $altra_variabile = "Altra cosa";
              $stupida_variabile = "Stupida cosa";
            [...]} else {
    $altra_variabile = "Qualcosa di default";
                                                               }

...questo funzionerebbe ugualmente. Ma non su Python, perché se producete un codice come il sottostante, attirerete l'ira funesta su di voi e verrà restituito un errore:

[...]
if variabile == "Qualcosa":
    altra_variabile = "Altra cosa"
   stupida_variabile = "Stupida cosa
  ^^^
  [...]
else:
altra_variabile = "Qualcosa di default"
^^^

Bene penserete, quella del PHP è flessibilità... NO E' MALE.

Quando scriverete applicazioni complesse di centinaia di migliaia di milioni di righe, ringrazierete di farlo con Python, perché vi obbligherà ad essere scrupolosi ed attenti, ed un buon programmatore deve esserlo (pausa scenica guardando il rubista a fondo sala).

Non sottovalutate il fatto che il vostro codice potrà in futuro essere utilizzato anche da altri programmatori. Trovandosi di fronte all'uniformità nel metodo di scrittura, questi saranno in grado di essere subito produttivi senza dover perdere tempo ad insultare tutta la vostra famiglia fino alla terza generazione solo perché il martedì indentate ed il giovedì no.

Piccola digressione normativa. Se vi state chiedendo se il formato dell'indentazione sia a libera interpretazione, sappiate che la risposta è sì perché potete usare quello che vi è più comodo (4 spazi, 1 tab, 8 spazi, etc...), basta che nello stesso file siano uguali (Python 3 non accetta nemmeno l'alternanza tra tab e spazi). Se poi volete vincere il premio del programmatore del mese, sappiate che la PEP8 suggerisce l'utilizzo di quattro spazi.


Ma torniamo per un attimo ai due script dove notiamo che in Python siamo liberi da ogni orpello sintattico. Niente "( )" e "{ }" per definire il ciclo, niente " ; " a fine riga (pena la decapitazione se dimenticati), insomma nulla se non l'indentazione ed il " : " dopo l'invocazione del ciclo.

Sia chiaro, non è un confronto né tantomeno un attacco a PHP, è solo un esempio e lo avrei potuto fare con altri mille linguaggi. Quello che deve restarvi è l'estrema pulizia con la quale Python permette di scrivere e "manutenzionare" il proprio codice.

Questo è il primo approccio di una lunga serie al nostro linguaggio, prossimamente parleremo dei tipi di dati, dei cicli e delle funzioni vitali Built-in.

02 marzo 2014

Meccanica di tiro in slow motion

Amo il basket ed amo tutti quei piccoli particolari che lo rendono unico. Sono sempre stato fanatico della meccanica di tiro, che per raggiungere la perfezione deve essere ripetuta fino allo sfinimento.

Proprio per questo il video qui sotto mi manda già di testa...

01 marzo 2014

Sono uno zombie

Sia chiaro i ragazzi del video sotto hanno estremizzato il discorso, ma non tanto poi. Sono entrato al ristorante qualche ora fa ed ho visto una scena apocalittica: tutte le teste chine sul telefono e praticamente nessuno che interagisse con la persona davanti o col cibo. Incredibile ho pensato, ed era evidentissimo ai miei occhi, ma appena mi sono seduto al tavolo come se avessi dimenticato l'alienazione appena riscontrata, ho tirato fuori il mio smartphone e ho controllato messaggi e posta. Nooooo, sono anche io uno zombie.

Tondo è bello...

Tondo è bello...