Archivi per la categoria: Software

Sto costruendo un Sint Wind PI per il club Volo Libero Diecimo, oggi ho collegato i sensori per il vento ed ho piazzato il tutto in giardino per testarlo:

Il Sint Wind PI è una stazione anemometrica basata sul Raspberry PI e sviluppata da Tonino Tarsi, offre innumerevoli possibilità tra cui la connessione a webcam e macchine fotografiche, l’uso di svariati tipi di sensori (commerciali o autocostruiti, quelli nella foto sono degli economici PCE), l’upload dei dati su un server. Sul sito linkato sopra la documentazione è esaustiva.

Noi per ora ci accontentiamo del semplice risponditore telefonico che fornisce i dati in tempo reale, per il resto si vedrà.

Per risolvere il problema della sicurezza nell’invio di dati sensibili da parte dei clienti all’Hotel Panorama, ho pensato che la soluzione migliore potesse essere quella di dotare l’albergo di una sua chiave GPG.
In occasione del PyCon, con l’abergo prenotato da orde di geek, la crittografia è stata utilizzata ampiamente e senza problemi, ma con la maggior parte dei clienti meno tecnologici la cosa era più problematica.

All’inizio avevo scritto una guida per l’uso di FireGPG, un estensione per Firefox, ma era comunque una cosa complicata: richiedeva un sacco di azioni da parte dell’utente e comunque dopo un po’ l’estensione è stata abbandonata, quindi ho dovuto cercare un’altra soluzione.

A questo punto ho trovato l’ottimo plugin per WordPress Subrosa, che consente la cifratura direttamente nel form di invio dell’email tramite javascript, l’utente deve solo premere un pulsante.
Per far funzionare il plugin, oltre ad impostarne i parametri ed inserire la chiave pubblica, bisogna modificare il codice di un qualsiasi form mail di wordpress e sostituire la chiamata alla funzione php mail() con una chiamata alla funzione ctsr_mail(); l’unico problema è che così diventano cifranti tutti i form mail presenti sul sito, mentre a me interessava che ce ne fosse uno solo.

La soluzione è stata quella di installare un plugin per mail aggiuntivo, accanto a quello “ufficiale”, ed applicare la modifica solo a quello.
La scelta del plugin da modificare è ricaduta su Zero Conf Mail, che ho riconfezionato col nome Encrypted Zero Conf Mail per evitare che un aggiornamento spensierato potesse spianarmi le modifiche.
Utilizzando lo shortcode di questo plugin invece che di quello principale, si può inserire un form mail attrezzato per la cifratura in qualsiasi pagina del sito.

Ulteriori modifiche che ho apportato sono state semplicemente alcuni accorgimenti tra CSS e javascript per nascondere nel form il pulsante invia finchè non è stato premuto il pulsante cifra, per evitare che un utente particolarmente distratto potesse inviare mail non cifrate pensando che partano comunque cifrate dal form.
Il risultato è qui.

Non so dire quanto sia realmente utile alla programmazione di un sito web o quanto invece sia solo una fighetteria, ma è veramente uno spettacolo!

Istruzioni: installare Firefox 11, aprire un sito web, premere CTRL+MAIUSCOLA+I e poi il tasto 3D in basso a destra. Sbavare. 🙂

Due dei migliori giochi di sempre mescolati in uno solo, e per di più multipiattaforma!
Non vedo l’ora che venga pubblicato!

Dopo ben sei anni dalla sua realizzazione, è finalmente disponibile online la versione inglese di Quantoon, la tesi della Cri (alla stesura della quale ho dato una bella mano).

Si tratta di un cartone animato che spiega in maniera semplice e divertente alcuni concetti della meccanica quantistica, ispirato in parte al lavoro analogo di Robert Gilmore.

Da un punto di vista tecnico, Quantoon è stato sviluppato soprattutto in Flash (però su Ubuntu, tramite Wine…), le scenografie sono state fatte con Blender e l’audio elaborato con Audacity.
Il proiettore Flash per windows che funge da player per Quantoon gira egregiamente anche sotto Wine, e nel pacchetto è contenuto anche un proiettore .hqx per Mac, ma non disponendo di quest’ultimo sistema operativo, non l’ho potuto provare. Se qualche macaco volesse farmi la cortesia di testarlo, gliene sarei molto grato.

Quest’inverno ho avuto l’occasione e la soddisfazione di piallare via windows dal portatile di una mia amica, che dopo un paio di settimane di rodaggio ha deciso di saltare sulla barca di Linux.

Finchè è durato il freddo è stato tutto ok, ma con i primi caldi il suo PC, un Acer Aspire 5720, ha cominciato a spegnersi improvvisamente senza preavviso alcuno.
Lì per lì ho pensato ad un intasamento della ventola di raffreddamento, ma non si trattava di questo.
In realtà il problema era legato al software: in alcuni laptop Acer, presumibilmente quelli usciti con a bordo Vista, il controllo della ventola di raffreddamento è sottratto ad ACPI ed affidato ad un software chiamato ePower,  che gira appunto sotto Vista.
Con qualunque altro sistema operativo, la ventolina non gira.

Fortunatamente Acer ha fatto marcia indietro e sui nuovi PC la ventola è nuovamente affidata ad ACPI, ed anche sui vecchi PC è possibile recuperare il comportamento normale aggiornando il BIOS.

L’aggiornamento del BIOS l’ho fatto tramite una chiavetta USB con sopra FreeDOS, creata con l’immagine disponibile in questo blogpost, e questa è una pratica che dovrebbe seguire anche chi ha a disposizione windows: data la tendenza di quest’ultimo ad inchiopparsi, non mi fiderei per niente ad usarlo per aggiornare il BIOS, col rischio di trasformare il PC in un fermaporte.
I file di aggiornamento del bios in formato MS-DOS per i calcolatori Acer si possono trovare sul loro server ftp.

Una volta aggiornato il BIOS si è reso necessario provare l’efficacia dell’aggiornamento, in parole povere tentare di surriscaldare il processore fino a far saltare l’automatico.
Dopo aver provato a mandare in play contemporaneamente tre video in HD da YouTube, avevo bisogno di qualcosa di più stressante e meno invasivo, e con una veloce ricerca in rete ho scoperto un’applicazione per Linux atta proprio a questo: cpuburn!
Trattasi di un programma che ha come unico scopo quello di caricare al massimo la CPU, facendola surriscaldare; comprende vari comandi, ognuno ottimizzato per un tipo di CPU, il più adatto al mio caso era burnP6.

Per essere ancora più cattivissimo, ho messo il laptop sopra ad una coperta, in modo che le prese d’aria fossero ostruite, e con due istanze accese di cpuburn (una per core), la temperatura del processore è arrivata fino ad 84°C, ma la ventola ha fatto il suo dovere ed il pc non si è spento, YAY!

Si, sto cominciando a diventare veramente monotono, nei miei ultimi post scrivo solo di monociclo… mi piacerebbe scrivere del parapendio, ma ancora non c’è stato verso di volare.
Va be’, comincio col classico video e poi scrivo anche qualcosa di Software Libero, ok?

Veniamo al Software Libero: durante la convalescenza dall’influenza di due settimane fa, per ammazzare il tempo, ho rimesso mano a Blender ed ho modellato (indovina un po?) un monociclo!
Per renderizzarlo ho utilizzato l’ultima versione dell’ottimo LuxRender, che ad ogni release mi piace sempre di più.
Purtroppo non ho potuto utilizzare l’ultima versione di Blender, con la stupenda interfaccia nuova, proprio per via dell’esportatore di LuxRender, che nella migliore delle ipotesi mi dava qualche problemino.
Ecco i risultati:

Gli smartphone con Android, per ricavare la propria posizione nello spazio, utilizzano di preferenza il sistema AGPS, che integra i dati forniti dalla rete satellitare con quelli ricevuti attraverso internet da un server atto all’uopo.

Non disponendo di una connessione dati, e quindi non potendo disporre del sistema AGPS, il mio telefono ci metteva una vita prima di agganciare i satelliti ed ottenere un fix, ma ho trovato in rete un trucco per accedere ad un menù “tecnico” del telefono e cambiare qualche impostazione, e adesso il fix è molto più rapido, sotto i 30 secondi.

Per accedere al menu tecnico bisogna digitare nel tastierino telefonico il seguente “numero”:

*#*#1472365#*#*

se usate FroYo il numero è quest’altro:
*#*#3214789650#*#*

Una volta nel menù, i parametri da cambiare sono questi:

  • Settings -> Parameter Settings -> Address -> Server Type: 1x MPC
  • Settings -> Parameter Settings -> Position mode: option3
  • Settings -> Fix Request Settings -> Session Operation: Standalone
  • Settings -> Fix Request Settings -> Server Option: Local
  • gpsOne XTRA -> Xtra Enable: Enable

Credo che l’opzione determinante per la miglioria sia quella option3, ma mi piacerebbe sapere nel dettaglio, magari da qualche tecnico Samsung, cosa significhi ogni singola opzione.

Se si desidera tornare indietro, i parametri originali sul mio telefono erano questi:

  • Settings -> Parameter Settings -> Address -> Server Type: UMTS SLP
  • Settings -> Parameter Settings -> Position mode: option2
  • Settings -> Fix Request Settings -> Session Operation: MS-based
  • Settings -> Fix Request Settings -> Server Option: Default

Il post originale che riporta questo trucco è in indonesiano, ma ovviamente ci sono arrivato tramite una versione in inglese in quest’altro post.

Finalmente ho rottamato il vecchio Samsung u700 EVO regalatomi dal Basu, che piano piano ero arrivato ad odiare (il telefono, non il Basu), e l’ho sostituito con un piccolo Androide, il più piccolo in commercio, sempre Samsung ma è tutta un’altra storia.

Trattasi del GT-i5500, altrimenti noto come Galaxy 5 o Galaxy Europa o Corby Smartphone. Io preferisco Galaxy 5 , che da lontano sembra Galaxy S 😀

Per 150€ c’è molto più di quello che mi aspettavo, praticamente l’unica cosa che invidia ai fratelloni maggiori è lo schermo, e nonostante il processore meno potente e la ram limitata, il tutto è molto vispo e reattivo.
Le personalizzazioni di Samsung poi non sono così terribili, ci si può convivere; l’unica vera pecca è la necessità del software Kies (solo per windows, ovviamente) per aggiornare il software, ma per quella cifra ci posso stare, vorrà dire che quando uscirà l’aggiornamento a Froyo mi appoggerò a qualche amico.

In questi giorni ho avuto modo di provare l’App Inventor di Google per costruire le applicazioni per i telefoni Android-powered.
Devo dire che, nonostante abbia molti difetti di funzionamento e lasci spazio ad innumerevoli limature e migliorie, immagino come possa davvero permettere anche ad utenti alle prime armi di mettere insieme qualcosa di funzionante.

Nella finestra iniziale si compongono graficamente le varie parti dell’applicazione che si intende realizzare, compresi anche i componenti “invisibili” come timer, database o interfaccia con i sensori del telefono.

Nella finestra di “programmazione” i vari componenti del linguaggio sono rappresentati come pezzi di puzzle, quindi non è possibile incastrare un pezzo dove non può andare; sul lato sinistro c’è una libreria di “pezzi” standard (operatori, variabili, funzioni) o legati alle parti inserite nel deigner, ed è possibile dichiarare delle variabili.
Questo sistema consente di creare un programma senza conoscere niente della sintassi del linguaggio di programmazione.

Onestamente, conoscendo un minimo di programmazione, gradirei la possibilità di passare ad una modalità testo al posto di quella del puzzle, ma considerato che non ho nemmeno un telefono Android, non è un gran problema 🙂

Se si dispone di un telefono Android, si può collegare  al programma ed utilizzarlo per testare l’applicazione direttamente online, in alternativa (come nel mio caso) si può lanciare l’emulatore.

Tutto sommato credo che chiunque sia in grado di leggere le istruzioni (attualmente solo in inglese) possa cavarsela e buttar giù un qualcosa di vagamente utilizzabile. Insomma, non proprio programmazione per tutti, ma almeno per qualcuno sì!