Piero V.

Piccole fatti che fanno innervosire

Ho avuto una settimana molto impegnata. Ho avuto un po’ da fare presso un mio conoscente per mettergli a posto i computer e sono andato un po’ avanti con il mini mixer.

Ecco un po’ di avventure di cui vorrei rendere chi mi legge partecipe.

Problemi di connessione

Dal mio amico la linea è davvero fantastica: pur avendo riconosciuto la presenza di un’ADSL telecom che arriva anche a 1 MB/s . Peccato che sul computer su cui sto lavorando ci sia qualche problema e la connessione va bene una volta sì e due no.

O si usa FileZilla che allora sa riprendere o si mette in pausa il download, e intanto si stacca il cavo di rete dal computer e lo si riattacca.

Una vera rotta. Il bello è che anche gli altri computer che sono connessi a quella presa di rete hanno qualche problemino.

Oppure è il server che gioca un po’ col QoS.

Pagine di assistenza Microsoft

Sempre su questo computer c’è Windows Vista.

Oggi che avevo un po’ di tempo perso volevo aggiornare Internet Explorer alla versione 9, anche se non viene utilizzato.

Però richiede il Service Pack 2 di Windows Vista e mi rimanda alla pagina dei requisiti di IE 9, tradotta in italiano.

Scarico 348MB di SP con la connessione a singhiozzo che mi avrà fatto riconnettermi una ventina di volte per poi scoprire che quell’aggiornamento non era compatibile con la lingua italiana. Meno male che l’ho scaricato da una pagina tradotta in italiano!

Allora mi si apre un’altra pagina dove spiegano questo errore. Dicono che esistono altri exe con lingue diverse ma di link neanche traccia e il sito Microsoft mi pare molto scomodo. Sia ringraziato Google che mi ha trovato subito il link adatto.

Pinout

Il mini mixer è praticamente completo. Ho anche stagnato l’alimentazione, che non va.

In pratica non mi sono accorto dello strano pinout dell’LM1084, lo stabilizzatore di tensione. Un po’ imbrogliato dal datasheet, un po’ per l’abitudine dei 78xx che sono sempre stabilizzatori, ho invertito la massa con l’out.

Però sono stato molto fortunato: nulla ha preso fuoco. Spero solo l’LM1084 sia ancora buono, perché viene 8€ e ho 16V a 5A da trasformare in 12-13V 5A .

Plugin Local Cover Art [Picard]

È da quasi due anni che uso Music Brainz Picard, il programma di cui avevo già parlato che serve per taggare in automatico e con precisione la musica.

Già allora mi ero lamentato della mancanza del supporto delle copertine, cosa che, per chi ha un iPod Touch, è insopportabile.

All’inizio ho usato il plugin Cover Art Downloader, solo che il risultato non era del tutto soddisfacente: infatti il plugin non poteva distinguere le copertine belle da quelle meno.

La mia soluzione al problema allora è stata scaricare le copertine da Google immagini e inserirle con un altro programma: EasyTag. Come software quest’ultimo non è affatto male, però io continuavo a usare comunque Picard, perché più veloce, immediato e preciso e dover usare due programmi mi risultava scomodo.

Così oggi ho cambiato ancora le mie abitudini: per Picard è possibile scrivere plugin in python, linguaggio che mi piaciucchia, così ho scritto un plugin per fare da solo ciò che prima dovevo fare io, cioè cercare un’immagine chiamata Front.png o Front.jpg nella cartella dell’album e poi aggiungerla.

Non è stato proprio immediato da fare perché non conoscevo bene le API di MusicBrainz e il plugin da cui sono partito (Cover Art Downloader, di Oliver Charles e Philipp Wolfer) non andava più bene con la versione di Picard/Python della mia Debian Unstable.

Se avete voglia di provarlo, il file è localcoverart.py.

Va installato come tutti gli altri plugin del programma.

Per la licenza, fin quando non scoprirò quella del plugin originale è Creative Commons 3.0 con obbligo di Attribuzione: potete farne quel che volete, fino a quando io, Oliver Charles e Philipp Wolfer (gli autori del plugin da cui ho preso spunto) saremo riconosciuti come gli autori originali del plugin.

Transparents thumbs [Flatpress]

English

I’ve added some code to thumb plugin that allows the get transparent thumbs with GIFs and PNGs files.

I’ve taken this code from a comment of the imagecopyresampled PHP function.

Open fp-plugins/thumb/plugin.thumb.php with a text editor and replace:

	$scaled = imagecreatetruecolor($new_width, $new_height);
	imagecopyresampled($scaled, $image, 0, 0, 0, 0, $new_width, $new_height, $infos[0], $infos[1]);

with

	$scaled = imagecreatetruecolor($new_width, $new_height);

	/*
	 * If gif or png preserve the alpha channel
	 *
	 * Added by Piero VDFN
	 * Kudos to http://www.php.net/manual/en/function.imagecopyresampled.php#104028
	 */
	if($infos[2]==1 || $infos[2]==3) {
		imagecolortransparent($scaled, imagecolorallocatealpha($scaled, 0, 0, 0, 127));
		imagealphablending($scaled, false);
		imagesavealpha($scaled, true);
		$output=$infos[2]==3 ? 'png' : 'gif';
	} else {
		$output='jpg';
	}

	imagecopyresampled($scaled, $image, 0, 0, 0, 0, $new_width, $new_height, $infos[0], $infos[1]);

Now, replace some lines belove imagejpeg($scaled, $thumbpath); with: … [Leggi il resto]

Piccole soddisfazioni

Dopo che da un bel po’ di tempo Telecom mi aveva abbassato la velocità a circa 400KiB/s, oggi mi sono preso una bella soddisfazione!

velocita_aumentata.png

La cosa migliore è che non avevo mai avuto quella velocità prima.

Morale della favola: ogni tanto anziché abbassare alzano.

WebSocket

Grazie al changelog di Firefox 6 (uscito oggi) ho scoperto questa funzionalità di Javascript, che ovviamente, come tutte le più belle funzionalità, saranno in HTML 5, ma intanto i browser si stanno preparando.

La funzionalità di cui voglio parlare è la “websocket”.

Generalmente, quando si parla di socket in informatica si parla di una connessione tra un server e un client. Anche i normali protocolli che siamo abituati a usare utilizzano delle socket: per esempio quando si visita una pagina web, si apre una socket con un server, ma questa connessione viene subito chiusa dopo che il server ha inviato il contenuto della pagina.

In una web-socket invece la connessione rimane aperta, in attesa che una delle due parti la chiuda, e intanto si possono inviare dati.

Una delle applicazioni che potrebbero sfruttare questa caratteristica è senza dubbio la chat.

Si potrebbe mettere il server in ascolto di nuovi messaggi che poi sono inviati subito al client, anziché sfruttare continue richieste AJAX.

Un giorno magari potrei provare a fare dei test con una chat “ibrida”: le websocket saranno preferite, ma in caso il browser non le supporti, si va di AJAX.