Se vogliamo impostare l'autocomplete di un form a off, in modo che non visualizzi eventuali dati salvati, ci basta fare questo:

<form method="post" action="" autocomplete="off">
    <div>
        <label>Email:</label>
        <input type="email" name="email" value="" placeholder="Email">
    </div>
    <div>
        <label>Password:</label>
        <input type="password" name="password" value="">
    </div>
    <button type="submit" name="btn">Salva</button>
</form> 

Oppure possiamo impostarlo un campo specifico:

 <form method="post" action="">
    <div>
        <label>Email:</label>
        <input type="email" name="email" value="" placeholder="Email" autocomplete="off">
    </div>
    <div>
        <label>Password:</label>
        <input type="password" name="password" value="">
    </div>
    <button type="submit" name="btn">Salva</button>
</form> 

Il problema è che su Chrome (e Chromium) questo non funziona benissimo.

Ho trovato un plugin per jQuery che permette di creare pannelli dentro una pagina web in maniera veramente easy: jsPanel!

Se guardate gli esempi e la documentazione, potete notare che le possibilità sono veramente tante.

C'è anche l'integrazione con la prossima versione di Bootstrap, ed è possibile creare pannelli espandibili, finestre modali, toolbar, menu contestuali, ecc.

Insomma tanta roba.

Non parleremo dei tab intesi come QTabWidget, ma l'ordine di quando usiamo il tab per navigare tra i componenti della gui.

In sostanza, come suppongo già sappiate, quando state in una gui, potete usare il tasto tab per navigare tra i componenti.

L'ordine in cui si naviga viene scelto dal Qt Designer man mano che si aggiungo i componenti nella finestra.

Quando scegliamo una password, dovremmo essere certi che sia abbastanza sicura.

Se usiamo Linux possiamo usare una libreria apposita: cracklib!

Ovviamente il nome può cambiare tra le distro, ma se siete su Archlinux:

# pacman -Sy cracklib

Su una macchina Linux ho installato l'Oracle client e tutto il necessario, ed ho provato a connettermi tramite ODBC (unixODBC per la precisione).

Con le credenziali giuste, ottenevo sempre questo errore:

ERROR:
ORA-21561: OID generation failed

Alla fine ho scoperto di dover modificare il file /etc/hosts.

Di programmi per eseguire lo sniffing di rete su Linux ne abbiamo visti tanti.

Ma oggi ve ne propongo uno nuovo: sniffit!

Viene descritto come packet sniffer and monitoring tool, e il suo utilizzo è un pò diverso da quello a cui siamo abituati.

Ma prima di tutto installiamolo; su Archlinux:

# pacman -Sy sniffit

Supponiamo di avere un file di testo con righe vuote, tipo questo:

$ cat test.txt
roma

lazio
milan

bologna

Vogliamo eliminare le righe vuote, ma non manualmente riga per riga.

Per effettuare l'hashing delle stringhe in Python, possiamo avvalerci di un modulo apposito: hashlib!

Il suo utilizzo è molto semplice, e ci mette anche a disposizione delle funzioni per capire cosa è supportato a sistema, e cosa è sicuramente supportato dal modulo.

Dagli sviluappatori di Google è arrivato un ottimo strumento per comprimere immagini JPEG senza perdita di qualità: Guetzli!

Come potete vedere dalla documentazione, è disponibile per varie piattaforme, ma deve essere sempre compilato.

JFreeChart è una libreria per Java per creare grafici.

I dati per riempire i grafici possiamo crearli staticamente o prenderli da altre fonti, tipo da database MySQL.

E questo è proprio l'esempio che vedremo.

Inoltre possiamo sia creare un'immagine sul disco che aggiungerlo a un pannello.

Nello specifico vedremo questo esempio.

Prima di tutto scarichiamo la libreria da qua; tenete conto che JFreeChart richiede anche JCommon che comunque potete scaricare sempre dalla stessa pagina.

Poi aggiungete le librerie al vostro progetto.