jump to navigation

TorinoZTL 24 ottobre 2012

Posted by fripp in App, Informatica, Torino.
Tags: , , , , , ,
1 comment so far

Da qualche giorno è disponibile sull’App Store italiano la mia nuova applicazione per i device Apple.

Si tratta di TorinoZTL, un’applicazione che permette di conoscere, in tempo reale, i confini della ZTL centrale del comune di Torino.

L’applicazione ha una struttura molto semplice. All’avvio viene visualizzata una mappa con la posizione corrente dell’utente e con l’area della ZTL centrale.

Ogni pallino rosso (vedi figura accanto) indica uno dei punti di ingresso alla ZTL. Facendo tap sul pallino si apre una vista informativa, che indica il nome dell’ingresso e il suo indirizzo.

L’applicazione richiede iOS 4.3 o superiore ed è ottimizzata per iPhone 3GS, iPhone 4, iPhone 4S, iPhone 5, iPad 2 WiFi+3g e iPad WiFi+4G.

Potete scaricare l’applicazione direttamente dall’App Store, cliccando su questo link. Come sempre, ogni commento e suggerimento per migliorarla è sempre bene accetto!

TurinPark 18 marzo 2012

Posted by fripp in App, Informatica, Torino.
Tags: , , , , , ,
add a comment

Da qualche settimana è possibile scaricare dall’App Store italiano la mia prima applicazione per iPhone e iPad.

L’applicazione si chiama TurinPark e ha come obiettivo quello di mostrare, in tempo reale, la disponibilità di posti nei parcheggi torinesi gestiti da GTT (Gruppo Torinese Trasporti).

TurinPark è pensata per essere semplice ed essenziale ed è organizzata in due sezioni principali, che si chiamano rispettivamente “Intorno a me” e “Parcheggi”.

La sezione “Intorno a me”, riportata nell’immagine a lato, mostra su una mappa la posizione corrente dell’utente (rappresentata come un pallino blu “pulsante”) e le posizioni dei parcheggi (i segnaposto rossi). Al tocco di ciascun segnaposto rosso compare il nome del parcheggio e il numero di posti liberi. L’utente inoltre può accedere a una schermata di dettaglio, dove vengono riportati l’indirizzo del parcheggio, il numero di posti totali, il numero di posti liberi e l’ora dell’ultimo aggiornamento.

Nella sezione “Intorno a me” è anche possibile abilitare la modalità “Follow”, che permette di centrare la mappa sulla posizione dell’utente, in modo da seguirne gli spostamenti. La modalità “Follow” si abilita toccando l’icona in alto a destra presente nella barra superiore dell’applicazione. Per disattivare questa modalità, basta spostare la mappa in qualsiasi punto.

La sezione “Parcheggi” invece contiene la lista di tutti i parcheggi, ordinata in senso crescente in base alla distanza tra l’utente e il parcheggio stesso; questa lista viene aggiornata continuamente man mano che l’utente si sposta.

Potete scaricare l’applicazione direttamente dall’App Store, cliccando su questo. Ogni commento e suggerimento per migliorarla è sempre bene accetto!

GrammyClient 0.1.1: bugfix 27 dicembre 2010

Posted by fripp in Informatica, Musica, Programmazione, Python, Scripting.
Tags: , , , , , , , ,
add a comment

Ho corretto un piccolo baco di GrammyClient. Adesso la gestione della finestra di download delle tracce MP3 avviene in maniera corretta. Potete scaricare l’ultima versione del programma da questo link se usate Python 2.7 o da questo link se usate Python 2.6. Potete scaricare Python 2.6.x o Python 2.7.x da questo link.

GrammyClient 0.1 6 dicembre 2010

Posted by fripp in C++, GNU/Linux, Informatica, Mac OS X, Musica, Programmazione, Python, Scripting, Unix, Windows.
Tags: , , , , , , , , , , , ,
3 comments

Alla fine è nato! Dopo un bel poco di settimane di sviluppo (a causa dei miei impiegni universitari) vede finalmente la luce GrammyClient 0.1, un semplicissimo client che permette di scaricare comodamente sul proprio desktop le canzoni presenti nell’enorme archivio di grammy.ru. L’applicazione è stata totalmente scritta usando la libreria PyQt4 e il parser HTML/XML BeautifulSoup, senza il quale sarebbe stato impossibile proseguire nello sviluppo.

Potete scaricare il file binario per Windows XP/Vista/7 da questa pagina. Per usare l’applicazione è necessario scaricare e installare Python versione 2.6 o 2.7 (scaricabili qui).

GrammyClient è dotato di una semplicissima interfaccia grafica, spero abbastanza intuitiva da essere capita e usata al primo (o secondo) colpo. Di seguito riporto uno screenshot:

Come potete vedere, l’interfaccia è essenziale, divisa in 3 colonne. Nella colonna più a sinistra abbiamo un campo di ricerca, in cui inserire l’artista da cercare. Non occorre che inseriate il nome completo, basta anche una porzione; il motore di ricerca del sito ricercherà tutte quelle voci che contengono la stringa da voi inserita.

Al di sotto del campo di ricerca compariranno i risultati della ricerca: una tabella con i nomi degli artisti e il numero di tracce audio che potete scaricare. Facendo doppio click su una riga (o usando il menu contestuale) potrete visualizzare nella colonna centrale gli album associati all’artista. Facendo nuovamente doppio click sul titolo di un album potrete vedere sulla colonna più a destra l’elenco delle canzoni contenute nell’album.

Per scaricare una canzone basta fare doppio click sul suo titolo. Comparirà una finestra di dialogo che vi permetterà di scegliere dove salvare il file.

In ogni istante solo 4 download possono avvenire contemporaneamente. Se aggiungete più di 4 download, quelli in eccesso verranno messi in coda in attesa del completamento di uno dei primi 4. Questo limite è imposto dai server di grammy.ru per limitare i download simultanei.

L’applicazione è naturalmente in uno stato embrionale, ma funziona dignitosamente. Non esitate a contattarmi per qualsiasi malfunzionamento. Coerentemente con i miei impegni accademici cercherò di correggere eventuali bachi.

Repository Bitbucket 5 ottobre 2010

Posted by fripp in About me, C, C++, Informatica, Programmazione, Python.
Tags: , ,
add a comment

Da qualche giorno ho attivato il mio custom domain su bitbucket.org. Con molta fantasia, il mio repository di sorgenti/progetti software è hg.calogerosanfilippo.net.

Chromium updater 21 agosto 2009

Posted by fripp in Browser, Chrome, Chromium, Informatica, Mac OS X, Programmazione, Python, Scripting, Sistemi Operativi, Unix.
Tags: , , , , , , , , ,
6 comments

Per passatempo ho scritto in questi giorni un piccolissimo script python che controlla se esiste una nuova versione per il browser Chromium per Mac OS X; in tal caso scarica il file .zip da http://build.chromium.org/buildbot/snapshots/chromium-rel-mac, lo scompatta e salva l’applicazione Chromium.app sul Desktop, in modo che successivamente l’utente possa copiarla dove meglio crede.

Potete scaricare lo script cliccando qui.

Ecco il codice
(altro…)

Programmazione di classi singleton in Java 1 aprile 2009

Posted by fripp in Informatica, Java, Programmazione, Torino, Università.
Tags: , , , , , , , ,
7 comments

“Il Singleton è un design pattern che ha lo scopo di garantire che di una determinata classe venga creata una e una sola istanza, e di fornire un punto di accesso globale a tale istanza.” (fonte Wikipedia).

Qui riporto la soluzione al problema proposta da Bill Pugh.

La struttura della classe Singleton è molto semplice e sfrutta alcune peculiarità del linguaggio Java. Ecco il codice:

class Prova {
	protected Prova() {

	}

	private static class ProvaHolder {
		private final static Prova INSTANCE = new Prova();
	}

	public static Prova getInstance() {
		return ProvaHolder.INSTANCE;
	}
}

Il costruttore della classe è definito protected e questo impedisce che questo venga chiamato dall’esterno di tale classe. All’interno della classe Prova abbiamo definito una classe statica e privata, chiamata ProvaHolder, che al suo interno contiene il campo INSTANCE di tipo Prova; notiamo come INSTANCE sia dichiarato final static.

Quando il programmatore chiama il metodo statico getInstance la classe privata ProvaHolder viene “caricata” dalla JVM e viene allocato il suo campo statico INSTANCE attraverso la chiamata al costruttore protetto della classe Prova.

In questo modo siamo sicuri che della classe prova possa esserci una sola instanza, che è per giunta inizializzata in maniera lazy, ovvero solo al momento in cui viene effettivamente richiesta l’allocazione dell’oggetto.

Se ancora non è chiaro il funzionamento del pattern, ecco un esempio di cosa accade se creiamo due oggetti instanza della classe singleton appena dichiarata:


        Prova p1 = Prova.getInstance();

        Prova p2 = Prova.getInstance();

        if(p1 == p2)
            System.out.println("uguali");

Se provate ad eseguire questo codice, vedrete che la stringa “uguali” sarà stampata a schermo; il metodo getInstance ritorna sempre e solo un’unica instanza della classe Prova, quella creata al momento del caricamento da parte della JVM della classe privata ProvaHolder.

Le piccole soddisfazioni della vita 4 gennaio 2009

Posted by fripp in About me, Bash, cazzate, Debian, Gnome, GNU/Linux, Informatica, Scripting, Sistemi Operativi, Ubuntu, Unix.
Tags: , , , , , , ,
add a comment

#!/bin/sh
var=echo -n $(dpkg -l|grep 'xserver-xorg-video'|awk '{print $2}')
apt-get remove --purge $(for i in $var; do tmp=$(echo $i|grep 'intel'); if [[ -z "$tmp" ]]; then echo $i; fi; done)

VirtualBox(R) Images: statistiche annuali 1 gennaio 2009

Posted by fripp in About me, Amici, Debian, Gnome, GNU/Linux, Informatica, KDE, OpenSolaris, Programmazione, Python, Sistemi Operativi, Solaris, Ubuntu, VirtualBox Images.
Tags: , , , , , , , , , , , , ,
2 comments

Dopo un anno di esistenza del progetto VirtualBox(R) Images, fondato da Emanuele Cipolla e portato avanti anche da me, mi piace tirare le somme di questa interessante esperienza.

Il progetto nacque nel gennaio del 2008 e dopo un anno ha raggiunto dei livelli di successo davvero inaspettati, forse perchè siamo stati i primi ad offire un servizio del genere per la piattaforma di virtualizzazione VirtualBox(R) o forse perchè abbiamo fatto un buon lavoro (o forse abbiamo avuto solo culo 😀 ).

All’inizio il progetto forniva immagini di poche distro di Linux (Debian, Slackware, OpenSUSE); oggi le distribuzioni di Linux son ben 23, dalla piccola Damn Small Linux alla distribuzione server-oriented CentOS. Oltre a distribuzioni di Linux il progetto fornisce immagini di sistemi basati su OpenSolaris (Nexenta, Milax, Indiana) e immagini di sistemi “non convenzionali”, come Haiku, AROS, ReractOS.

Vediamo un poco di numeri. Questo grafico mostra il numero di visite al sito del nostro progetto a partire dal gennaio 2008

Statistiche del 2008

Statistiche del 2008

Dalle 1805 visite di gennaio 2008 siamo passati alle 43315 visite di dicembre 2008; le visite sono quasi raddoppiate rispetto al mese di ottobre.

Passiamo adesso al grafico che mostra il numero di download e la quantità di dati scaricata.

detail-graph2008

Il picco è stato raggiunto nel mese di novembre con ben 8035 download, per un totale di 2.6 TB! Come è possibile vedere dal grafico, per tutto l’anno il numero di download mensili ha subito un incremento davvero notevole. In totale, sono stati effettuati 39487 download, per un totale di 12.6 TB di immagini.

Speriamo di continuare a mantenere questi notevoli risultati anche nel 2009!

Buon anno

VirtualBox® Images: che successo! 1 novembre 2008

Posted by fripp in About me, GNU/Linux, Informatica, OpenSolaris, Sistemi Operativi, Unix, VirtualBox Images.
Tags: , , , , , , , , , , ,
7 comments

Arrivato alla fine di ogni mese mi piace guardare le statistiche del progetto VirtualBox® Images, che porto avanti da qualche mese insieme all’amico Emanuele.

Il numero di visite al sito del progetto è aumentato in maniera considerevole rispetto agli inizi, come si evince da questo grafico

Nel mese di ottobre abbiamo ricevuto ben 26141 visite, 5300 in più rispetto al mese di settembre. Un successo davvero notevole, che va ben oltre le nostre aspettative.

Passiamo ad un altro dato interessante e forse più concreto: il numero di download effettuati e il numero di TB serviti fino ad oggi.

Ecco un altro grafico

Dal grafico possiamo vedere come nel solo mese di ottobre siano stati fatti circa 5000 download di immagini dal nostro spazio su Sourceforge.net, per un totale di circa 1.6 TB di dati! Dalla creazione del progetto sono stati scaricati circa 7.4 TB di immagini da Sourceforge.net, per un totale di 24,244 download. Davvero notevole, se si considera che il progetto viene mandato avanti da studenti universitari con poco tempo libero e squattrinati!

Il numero delle distribuzioni di GNU/Linux che attualmente sono disponibili è pari 18 e c’è la volontà di aumentarne il numero e di creare immagini adatte a scopi più specifici:finora abbiamo soltanto fornito immagini general purpose, configurate in modo da funzionare, ma senza alcuna caratteristica in più. Sarebbe interessante creare immagini più specializzate, orientate per esempio allo sviluppo software o allo sviluppo per il web.

Abbiamo aperto il nostro progetto anche alle distribuzioni di OpenSolaris, come la Nexenta o come il progetto Indiana della Sun Microsystems.

Speriamo di migliorare ulteriormente i risultati per il futuro!