Applicazioni Ruby On Rails che non utilizzano database

Se a qualcuno fosse capitato di recente di creare una semplice applicazione “Hello World” utilizzando il framework Ruby on Rails, avrà notato che in fase di esecuzione si ottiene un errore di questo tipo:

Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

Perchè un errore relativo a MySQL in un’applicazione che stampa semplicemente una stringa di testo? Nelle nuove versioni di RoR vengono caricati per default i moduli ActiveRecord, ActiveResource e ActionMailer. ActiveRecord in particolare si aspetta di trovare (per le impostazioni di default) un database MySQL funzionante.

Per evitare questo errore è sufficiente decommentare una riga all’interno di environment.rb che si trova in $PATH_APPLICAZIONE/config/environment.rb:

# Skip frameworks you're not going to use (only works if using vendor/rails).
# To use Rails without a database, you must remove the Active Record framework
config.frameworks -= [ :active_record, :active_resource, :action_mailer ]

Fonte: http://www.swards.net/2008/02/ruby-on-rails-application-with-no.html

Microsoft Office 2007 SP2 con supporto OpenOffice (ODF) e PDF

Open OfficeFinalmente una bella notizia. Microsoft ha confermato alla redazione di BetaNews che Microsoft Office 2007 Service Pack 2 includerà il supporto per il formato ODF di OpenOffice e per il PDF di Adobe.

Grazie a questa funzionalità sarà possibile non solo aprire documenti in formato ODF o PDF, ma sarà anche possibile salvarli in tali formati e scegliere una delle due estensioni come formato predefinito per il salvataggio dei propri documenti.

Nei piani di Microsoft c’è anche il rilascio di una serie di API che permetteranno ai programmatori di scrivere add-in per Microsoft Office in modo da aggiungere il supporto per ulteriori formati.

Questo è sicuramente un bel passo avanti sia per quanto riguarda l’interoperatibilità di sistemi diversi (Windows, Linux, OsX) sia per quanto riguarda la diffusione del formato ODF di OpenOffice.

Gli utilizzatori di OpenOffice non dovranno piu’ preoccuparsi di salvare il proprio documento in formato .doc prima di inviarlo all’amico o all’azienda che magari non usa ancora OpenOffice. Il documento verrà aperto e visualizzato in modo nativo, senza la necessità di installare ulteriori plugin.

La versione SP2 di Office verrà rilasciata verso la metà del 2009, ci auguriamo quindi che la promessa venga mantenuta e che le due suite possano finalmente scambiarsi i documenti in maniera ottimale.

MSN e la censura delle conversazioni

CensuratoLo sapevate che i server di MSN censurano le vostre conversazioni, filtrando i messaggi che, secondo loro, sono ritenuti “potenzialmente pericolosi” ?

Non si tratta certo di una novità, purtroppo però molte persone ancora non sono a conoscenza di questo fatto e penso sia opportuno fare quanta piu’ informazione possibile per mettere gli utenti MSN al corrente del comportamento di questo sistema di instant messaging.

Come funziona la comunicazione fra utenti MSN? Quando ci si connette a MSN e si vuole inviare un messaggio ad un nostro amico nella lista dei contatti, il messaggio viene prima inviato ai server di MSN e poi viene successivamente inviato al nostro amico da parte del server.

Questo meccanismo fa si che la conversazione non sia diretta, ma passi attraverso qualcosa che è in grado di fare qualsiasi cosa: registrarla, analizzarla e persino bloccarla.

E’ quello che è accaduto in questi giorni con i link ai video di Youtube e quello che sta accadendo da sempre a moltissimi link ritenuti pericolosi da “mamma Microsoft”.

Provate ad esempio ad inviare tramite MSN un link contenente la stringa “download.php” come ad esempio il link per scaricare OpenOffice (sarà un caso?!):  http://www.plio.it/download.php?q=d&product=OpenOffice.org&os=winwjre&lang=it&version=2.4.0

Il comportamento sarà lo stesso per tutti, qualsiasi client si usi (anche se utilizziamo un client MSN-compatibile, tipo Pidgin, su un altro sistema operativo), visto che il filtro avviene a livello di server: il messaggio non verrà recapitato alla persona alla quale abbiamo tentato di inviarlo.

Come possiamo sapere quali saranno le parole che verranno censurate dai server di MSN? Non c’è modo. La lista delle parole censurate è ovviamente segreta. Cosa succederà un giorno se a Microsoft (magari con l’appoggio o la spinta di qualche governo) verrà in mente di iniziare a filtrare altri contenuti ritenuti “pericolosi”? Questa situazione purtroppo ricorda molto da vicino “la grande muraglia“, ovvero il firewall con il quale tutti i navigatori residenti in Cina sono costretti a fare i conti durante la navigazione.

La soluzione ovviamente esiste: non utilizzare MSN come sistema di instant messaging, ma usare invece una piattaforma completamente aperta e non centralizzata, come ad esempio Jabber dove la comunicazione avviene tra piu’ server, e dove chiunque puo’ mettere su un proprio server.

Spero che questo post abbia aperto un po’ gli occhi a coloro che fino ad ora erano un po’ scettici su questo tipo di cose.

Skype SMS su Linux: grazie a Skype4Py si puo’!

Skype LogoIl client di Skype per Linux non supporta al momento l’invio degli SMS. Questa puo’ essere per molti una grossa limitazione, visto che è molto conveniente come metodo per inviare gli sms (costano 10 centesimi) rispetto a molte tariffe in circolazione al momento, con i principali gestori italiani.La mancanza di questa funzionalità è però soltanto apparente! Infatti è stata già implementata a livello di librerie di Skype ed è già disponibile tramite le API.

Grazie alla libreria Skype4Py, ufficialmente supportata da Skype e sviluppata da Arkadiusz Wahlig (che ha tenuto un talk proprio su questo argomento nella giornata di ieri del PyCon Due), è possibile scrivere applicazioni multipiattaforma (Windows, Linux, Mac) che interagiscano con Skype.

Una volta installata la libreria nel proprio sistema, dobbiamo soltanto avviare il client Skype.

Le applicazioni che possiamo scrivere, per automatizzare alcune funzioni di Skype, sono moltissime. In questo caso particolare farò vedere un piccolo script Python che invia un SMS utilizzando il client (ed il credito) dell’istanza di Skype che sta girando sulla vostra macchina:

import Skype4Py

number = '+393*********'
text= 'Messaggio di prova da PySms4Skype!'

skype = Skype4Py.Skype()
skype.FriendlyName = 'PySms4Skype'

skype.Attach()

sms = skype.CreateSms(Skype4Py.smsMessageTypeOutgoing, number)
sms.Body = text
sms.Send()

Quando eseguite questo script, Skype vi chiedera’ la conferma per autorizzare la vostra applicazione ad utilizzare le API, basterà quindi dare conferma per continuare. Nello script ovviamente dovrete sostituire il numero di telefono con uno valido.

Slides del talk su PyMaemo al PyCon Due

PythonPer chi avesse seguito il mio talk su PyMaemo al PyCon Due a Firenze, metto a disposizione le slide che ho utilizzato. Potete liberamente scaricarle, modificarle e distribuirle.

Inoltre vi riporto un piccolo abstract del talk:

Il talk prevede una breve introduzione alla piattaforma Maemo ed ai Nokia Internet Tablet, sia dal punto di vista dell’utente comune, sia da quello dello sviluppatore.

Verrà poi spiegato come configurare ed installare l’ambiente Scratchbox, il principale ambiente utilizzato per sviluppare applicazioni per Maemo.

Infine verranno presentati due plugin per Eclipse: ESbox e PluThon. Il primo si interfaccia con Eclipse e Scratchbox, permettendo di sviluppare sia applicazione C/C++ che Python e di testarle all’interno dell’ambiente Scratchbox. Il secondo è un plugin specifico per Python e permette di eseguire e debuggare le applicazioni direttamente sul dispositivo.