Appunti, scoperte e invenzioni

Tutto quello che mi viene in mente (se permettete l’esagerazione…)

  • Universal Declaration of Human Rights

    Article 19. Everyone has the right to freedom of opinion and expression; this right includes freedom to hold opinions without interference and to seek, receive and impart information and ideas through any media and regardless of frontiers.
  • My Last Twits

    • google wavin'!!! 1 month ago
    • chi è così buono da spedirmi un invito per la beta di Google Wave a mario.piccinelli@gmail.com? 2 months ago
    • perde tempo su internet.. la tesi aspetterà.. bah 2 months ago
    • Noemi Letizia premiata per il suo ruolo nel film Scaccomatto: è la preferita di un boss mafioso. Esattamente come nel film. (spinoza.it) :-) 3 months ago
    • I have sailed the world and seen his wonders, from the Dardinels to the mountains of Peru, but there's no place like.. Lovere! 3 months ago
  • Meta

  • Delicious Links

  •  

    Ottobre: 2009
    L M M G V S D
    « Set   Nov »
     1234
    567891011
    12131415161718
    19202122232425
    262728293031  
  • Archivi

  • Disclaimer

    Questo blog non rappresenta una testata giornalistica [...]

    L’autore del blog dichiara di non essere responsabile per i commenti inseriti dai lettori.[...]

    Le immagini pubblicate sono quasi tutte tratte da internet e quindi valutate di pubblico dominio. [...]

    L'autore declina qualunque responsabilità per danni a cose o persone derivanti dall'applicazione di istruzioni apprese da questo blog.[...]

    Per ulteriori info legali vi consiglio di passare da qui.

Archivio per Ottobre 2009

Una verifica di inglese.. in python!

Pubblicato da piccimario su Ottobre 26, 2009

Stasera, dopo le mie 8 ore abbondanti di lavoro davanti a un terminale di un AS400, più l’ora di macchina all’andata e l’ora al ritorno, mia madre è saltata fuori per chiedermi di prepararle una verifica di inglese sui verbi irregolari per la scuola dove insegna. Si tratta di prendere un elenco di verbi irregolari, sceglierne una quindicina a caso, mischiarli e scrivere su un foglio con quattro colonne (presente, passato, participio passato, traduzione in italiano) un solo valore, anch’esso scelto a caso; ovviamente gli altri tre valori dovranno essere inseriti da chi svolgerà la verifica. Come ulteriore complicazione, quà e là è necessario seminare qualche verbo regolare, che però richiede degli accorgimenti particolari: ne esistono diversi tipi, a seconda della desinenza e di conseguenza del modo di costruire i tempi verbali, e di ciascun tip deve essere presente un elemento, con già scritta la versione al presente oppure quella in italiano. Un bel pò di requisiti, eh?

Fare un lavoro del genere a mano è noioso e lungo, nonchè suscettibile di errori di vario genere. Eppoi è proprio per questo genere di lavori che esiste il computer, no? Di conseguenza ho scritto un piccolo programma in python che mi realizza la verifica come csv, che ho poi importato in excel per dargli una parvenza grafica decente. Ecco il codice:

pyenghw01

Nella prima parte (qui sopra) viene definita la lista di verbi, ciascuno dei quali in realtà a sua volta è una lista di 4 stringhe che rappresentano rispettivamente la forma al presente, al passato, al participio passato e in italiano. Mediante il comando random.shuffle() la lista viene mescolata casualmente, e mediante il comando immediatamente successivo viene troncata ai primi 15 elementi.

A questo punto per ciascun verbo (ovvero quartetto di stringhe) si chiama un random.random(), che moltiplicato per in numero di elementi del quartetto e troncato all’intero darà un numero casuale compreso tra 0 e 3; questo valore deciderà quale dei quattro elementi del quartetto dovrò scrivere (gli altri saranno lasciati in bianco). La stringa così realizzata (in forma CSV, ovvero valori separati da virgola) viene aggiunta come elemento della lista result.

pyenghw02

Il procedimento per i verbi regolari è simile ma un pochino più contorto. Esistono infatti diverse famiglie di verbi regolari, a seconda del modo in cui si costruiscono le loro forme verbali. Nell’esempio ho lasciato due famiglie, una composta da due e una da tre verbi (il quartetto di prima è diventato una coppia, poichè mi interessa rappresentare solo il presente oppure la forma italiana). In questo caso vado a:

  • selezionare una famiglia, cioè una lista di coppie, e metterla nella variabile verbfamily;
  • mescolo la lista verbfamily e ne prendo il primo elemento;
  • genero un numero casuale (0 oppure 1) che deciderà se andrò a scrivere la forma presente o quella in italiano;
  • aggiungo alla lista result anche questa stringa;
  • ripeto per tutte le famiglie di verbi.

A questo punto prendo la lista result, ovvero la lista delle stringhe che devo stampare, gli dò una bella mischiata e la stampo un elemento alla volta.

Salvo il tutto nel file verbiinglesi.py, e da terminale eseguo:

python verbiinglesi.py > verbi

il programma viene eseguito e il suo output viene memorizzato automaticamente in un file chiamato “verbi”. Una rapida occhiata a questo file con un editor di testo mostra che tutto ha funzionato per il meglio:

Yuna:~/Documents/provaPython mario$ cat verbi
,,,CREDERE
ARRIVE
FLY,,
,,,COLPIRE
,ATE,
,,DUG
,,LEFT
WATCH
,,,ANDARE

e così via.. A questo punto devo solo importare la lista in excel (stessa cosa in OpenOffice, credo) per sistemare un pò la presentazione e stamparla. Basta aprire il proprio foglio di calcolo, selezionare “Importa” dal menu “File”, scegliere l’opzione CSV, selezionare il file “verbi” (se non ve lo lascia selezionare è necessario scegliere “All Files” dalla lista sopra), impostare la virgola come carattere delimitatore et voilà! Ingrandiamo il carattere, allarghiamo le colonne, scriviamo l’intestazione, tiriamo di qua e molliamo di la e questo è il risultato:

pyenghw03

Ovviamente il grandissimo vantaggio di questo sistema è che è possibile realizzare in tempo zero decine di verifiche completamente diverse tra di loro, incubo di ogni studente che in tal modo non può proprio copiare dal compagni di banco! E’ sufficiente eseguire di nuovo lo script e importare il file in un nuovo foglio di calcolo: voilà!

Ciao a tutti!

Pubblicato su Uncategorized | Contrassegnato da tag: , , | Lascia un commento »

Google Wave Update: utenti online

Pubblicato da piccimario su Ottobre 19, 2009

E’ dalla cura dei dettagli e dal costante miglioramento che si riconosce un progetto destinato ad un futuro radioso. Da stamattina in Google Wave gli utenti online vengono identificati da un pallino verde in basso a destra del loro avatar ovunque esso sia visualizzato: nell’elenco dei contatti, nella lista centrale e nella wave aperta. In questo modo è possibile capire immediatamente se l’utente cui sto scrivendo può rispondermi immediatamente.

waveonlinecont01 waveonlinecont02

Io amo Google :-)

Pubblicato su Uncategorized | Contrassegnato da tag: , , | 4 Commenti »

Google Wave

Pubblicato da piccimario su Ottobre 16, 2009

Ieri sera grazie all’amico Pedro ho ricevuto un invito a provare Google Wave, il nuovo servizio sperimentalissimo di Google aperto solo a pochi fortunati. E dai primi esperimenti che ci ho fatto sopra sembra molto, molto promettente.

Ma di che si tratta? Sostanzialmente è un’evoluzione del concetto di email, che va a sovrapporsi al concetto di chat realtime realizzando qualcosa di completamente diverso che però fa le veci di entrambe. Una “wave” (“onda” in italiano) è una specie di lavagna bianca, creata da un utente che poi vi invita altri utenti. Ciascuno di questi utenti è in grado di aggiungere un messaggio su questa lavagna, e tutti gli altri collegati possono leggerlo in tempo reale e aggiungere risposte. Gli utenti non collegati troveranno questa wave in una sorta di “inbox” (analogamente all’email) e potranno leggere e rispondere o commentare anche in un secondo tempo, sempre su questa lavagna condivisa. Inoltre in questa lavagna è possibile inserire immagini, suoni, documenti e addirittura piccole applicazioni sviluppate su misura.

wave-prova

Come si può vedere l’interfaccia di Wave è composta da quattro elementi: un menu per selezionare la lista di wave (ad esempio, la inbox oppure quelle archiviate), un elenco di amici anch’essi utenti wave, una finestra con la lista delle wave selezionata in precedenza e una finestra per visualizzare la wave vera o propria.

Per ora ho utilizzato il sistema per giocherellare e chattare con gli amici, e posso dirmi assolutamente soddisfatto. Si tratta di una versione incompleta e in fase di costruzione, e mancano ancora molte funzioni (tanto per dire manca ancora la sezione “impostazioni”), e nonostante questo sono riuscito senza fatica o dubbi a chattare, condividere informazioni e documenti con pià amici contemporaneamente.

Ragazzi, questa roba è da urlo! Non vedo l’ora di avere la possibilità anche io di invitare qualche amico (gli inviti sono pochi e vengono attivati con calma, contrariamente a quello che è stato per gmail) per provare a creare qualche onda più frequentata.

Se qualcuno di voi è entrato in possesso di un invito ma non ha nessuno con cui comunicare mi potete trovare su mario.piccinelli@gmai.com

Ciao a tutti!

Pubblicato su Uncategorized | Contrassegnato da tag: , , , , | Lascia un commento »

Trofeo del Sebino – dall’alto!

Pubblicato da piccimario su Ottobre 4, 2009

Oggi si è tenuta la VII edizione della Sebino Cup, tradizionale sfida degli skipper del Lago d’Iseo. E ovviamente io c’ero in mezzo, col mio valoroso equipaggio di coraggiosi allievi della scuola vela AVAS che hanno tenuto alto l’onore del circolo e lottato fino all’ultima oncia di sudore per strappare con le unghie e con i denti il penultimo posto (!!!!) a un altro equipaggio di allievi della scuola vela altrettanto valorosi e temerari. E concludo affermando che neanche l’Istituto Luce avrebbe saputo descrivere con termini più altisonanti la mia giornata di oggi :-) .

La regata è stata massacrante ma entusiasmante, come del resto qualunque regata caratterizzata da continui salti di vento sia per direzione (anche 90 gradi alla volta, roba da matti) che per intensità (direi da 0 a 20 nodi, avanti e indietro tutto il giorno).

D’altro canto, per rendersi conto dell’astrusità del campo basta dare un’occhiata al log delle velocità, registrato con il Geonaute Keymaze 500, il logger gps da polso di cui ho parlato in passato (click sull’immagine per ingrandire):

velocita

Snoccioliamo qualche statistica, per gli appassionati di numeri:

Uscita in acqua: 12:47
Partenza regata: 13:20 circa
Durata del record gps (quindi inclusi uscita, prepartenza e rientro): 3 h 27 m
Distanza percorsa complessiva (vedi sopra): 12,37 nm (22,92 km)
Velocità media: 3,58 kts (6,64 km/h)
Velocità massima: 7,36 kts (13,64 km/h)

E ora qualche bella immagine del tracciato gps complessivo della regata:

percorso

..e un dettaglio della prepartenza:

partenza

E con questo è tutto.. Spero che ci saranno altre occasioni di gareggiare con questo spettacolare equipaggio (e questi spettacolari avversari, ovviamente). Alla prossima!

Pubblicato su Uncategorized | Contrassegnato da tag: , , , , , | 1 Commento »

Google Wave: qualcuno ha un invito per me?

Pubblicato da piccimario su Ottobre 1, 2009

Come da oggetto: voglio provare Google Wave, non è che qualche buon’anima ha un invito che gli avanza da spedire a mario.piccinelli@gmail.com? Daaaai… :-) Menzione d’onore sul mio blog (come se a qualcuno potesse interessare) nonchè la mia eterna gratitudine :-) a chiunque sia così generoso!

Pubblicato su Uncategorized | Lascia un commento »