martedì 26 gennaio 2010

Ma in Italia c'è internet?


Sapevate che esiste un Google Lab? ... Si? ... Bene!
Sapevate che il Google Lab ha organizzato un tour in giro per il mondo? È proprio una gran figata!!!
Sapevate che Google ha pensato bene di non includere l'Italia nel tour?

Ebbene si, Google, come è accaduto per l'Android Developer Challenge, ha ritenuto che l'Italia non è degna di certi riguardi. Prima però di scagliarsi contro la multinazionale di turno io mi fermerei un attimo a riflettere e guardare in faccia la realtà di ciò che il nostro paese fa nell'era del Web 2.0.

Le infrastrutture sono quelle che sono. Internet sui cellulari lo usa il 2% (stima mia personale fatta ad occhio con una certa ironia) della popolazione e quasi nessuno sa cosa vuol dire cloud.
Vi sembra normale? A me personalmente no! Direi che è giunto il momento di darsi una bella svegliata se non vogliamo rimanere indietro per sempre.

Detto questo Google non ci fa sicuramente una bella figura visto che per quanto riguarda la telefonia l'Italia ha sicuramente un mercato redditizio pari a quello degli altri paesi. Purtroppo è sul piano dei servizi che deficitiamo.

domenica 24 gennaio 2010

Parametri da linea di comando secondo Go

Go-lang è stato pensato per essere il linguaggio definitivo per le applicazioni di sistema.
Una delle cose che più impreziosiscono gli strumenti che (non) tutti i giorni utilizziamo per l'amministrazione del nostro sistema è sicuramente il parco di opzioni e flag che possiamo indicare da linea di comando.

Go-lang permette molto comodamente di dichiarare quali saranno i parametri che ci aspettiamo di ricevere da linea di comando, di che tipo saranno e che cosa comunicare all'operatore per aiutarlo nell'utilizzo del tool.

Vediamo, con un semplice esempio, ciò che Go ci mette a disposizione per rendere la nostra applicazione il più flessibile possibile.

Cominciamo con dichiarare quali flag ci aspetteremo:
//Flags
var file_to_download * string;
var fileType * string;
var configShow * string;
var configEdit * bool;


Successivamente definiamo le keywords con le quali potranno essere attivati i parametri:
/**
*Function used to initialize flags from command line.
*/
func initFlags() int
{
file_to_download = flag.String("d","","Type the name of the file");
fileType = flag.String("t","*","Kind of file you want to download:\n\t*: all\n\tmov: movie\n\tmsc: music");
configShow = flag.String("c","editor","Open the config file into chosen [editor]");
configEdit = flag.Bool("C",false,"Edit parameters of config from inside the program.");
}

Il package flag contiene una funzione di definizione parametro per ogni tipo di comando che desideriamo ricevere. Tutte queste funzioni però hanno tutte la stessa forma. Ricevono infatti tre parametri:

  1. La lettera/Le lettere che identificano il comando;

  2. Il comportamento di default;

  3. Un messaggio da dare all'operatore su come va utilizzato il flag.


Una volta definiti i flag possiamo utilizzare i comandi che arrivano dalla shell all'interno del nostro programma:
/**
*Main function. From here the program starts.
*/
func main()
{

//Initialize flags
initFlags();

flag.Parse(); //Scans the arg list and sets up flags

var fileStr string = "";
var typeStr string = "";
var confStr string = "";
var confMode bool = false;

confStr += *configShow;
confMode = *configEdit;

if(confMode)
{
os.Stdout.WriteString("Config mode\n");
}
else
{
os.Stdout.WriteString("Normal mode\n");
}

if( *file_to_download == "") //Want to download a file
{
fileStr += "errore";
fileStr += Newline;
os.Stdout.WriteString(fileStr);
}
else
{
fileStr += *file_to_download;
fileStr += Newline;
os.Stdout.WriteString(fileStr);
}

typeStr += *fileType;
typeStr += Newline;
os.Stdout.WriteString(typeStr);

//Useless calls
giogolib.LogMessage(def.Debug,"Applicazione partita");
}


Spero di aver mostrato in modo chiaro come Go lang permetta di fornire all'utente che andrà ad utilizzare la nostra applicazione tutti gli strumenti per adattare l'esecuzione del software alle sue esigenze.

giovedì 7 gennaio 2010

Gennaio bollente!

Dopo una breve e meritatissima vacanza passata sul suolo parigino si ricomincia con la nostra battaglia per la libertà nel software (e non solo).


Lo stato italiano finalmente ci da uno strumento importante che è la class action. Sicuramente questo strumento si andrà ad affinare ma già al giorno d'oggi ci consente di battagliare per avere dei computer senza Windows pre installato. In questo modo l'utente sarà libero di scegliere quale sistema operativo e suite da lavoro installare.

Per approfondire questo interessante argomento vi consiglio di dare una sbirciatina a ossblog.it che ha un articolo veramente ben fatto ;)