May 24th, 2008
Cosa fare quando il sabato sera si è a casa influenzati? (troppa acqua presa in moto)
Ho deciso di fare una mappa mentale per descrivere ciò che faccio nella realtà e quello che vorrei fare. E’ un esercizio che tutti potrebbero farsi, sia per analizzarsi, sia per imparare la tecnica delle mappe mentali.
Ho messo qualche BOIs di troppo (più di sette) ma credo che sia una buona mappa…

Ciao Piero
Posted in play | 2 Comments »
May 21st, 2008
Per chi non seguisse la Mailing List nazionale di Ruby, un utente questa mattina ha segnalato l’esistenza di rush, una shell unix con sintassi Ruby.
Dedicata ai ruby-maniacs e ispirata alla M$ PowerShell di .NET utilizza il paradigma object oriented come punto di forza nella sintassi.
L’ho subito provata, mi è sembrata un po’ scomoda (ad esempio non si ha il concetto di CWD, che viene rimpiazzato da una istanza di un oggetto directory che possiede i metodi classici tipo ‘ls’).
Questa shell potrebbe essere molto comoda da integrare nella console Rails o in Capistrano…
La potete installare come gemma seguendo le istruzioni su
http://rush.heroku.com/
e leggere una migliore recensione su infoQ
http://www.infoq.com/news/2008/02/rush-oop-shell
Tags: Linux, ruby, shell
Posted in Linux, ruby | No Comments »
May 19th, 2008
Se avete i Ubuntu 8.04 (quindi anche firefox 3) probabilmente non riuscirete ad installare Lotus Notes 7 a causa dell’errore “Could not validate mozilla version” / “Impossibile convalidare la versione di Mozilla”
Questo a causa di un bug dell’installer che genera un script bash che controlla la versione e le dipendenze corrette delle librerie GTK/XulRunner/Mozilla. Per ovviare a questo inconvegnente ho utilizzato un workaround, non molto elegante, ma funzionante.
Ecco come funziona l’installer:
1) L’installazione di notes avviene normalmente nella cartella /opt da utente non root
2) L’installer scrive il file il risultato del comando ldd (che controlla le dipendenze) in un file temporaneo (/tmp/iwcttmp.out)
3) L’installer controlla il risultato in iwcttmp.out e fallisce (non ho capito perché, ho sclerato un paio di ore con strace ma niente da fare…)
Ecco come ho installato notes:
1) Ho eseguito da ROOT il comando
ldd “/usr/lib/mozilla/libgtkembedmoz.so” | grep gtk>&/tmp/iwcttmp.out
in questo modo l’utente normale non avrà i permessi di scrittura su quel file quindi non potrà rigenerarlo
2) Si può ora eseguire l’installazione di Lotus Notes 7 (da utente non root) tranquillamente!
Non sarà una soluzione elegante…. ma funziona…
Ciao Piero
UPDATE: Sembra che questo ‘trucchetto’ abbia funzionato solo sulla mia macchina, in un altra il problema è persistito.
Tags: Linux, lotus, notes, tips, ubuntu
Posted in Linux | No Comments »
May 16th, 2008
Recentemente è stato scoperto un baco nel pacchetto Debian (e ubuntu) di ssh dovuto ad un packager che ha commentato due linee di codice nel sorgente del generatore di chiavi. Se avete aggiornato il vostro server se chiavi ssh saranno state rigenerate, facendo scadere vecchie chiavi salvate sui client.
Per una sessione ssh “normale” è sufficiente eliminare (o modificare) sul proprio client il file ~/.ssh/known_host che verrà rigenerato alla prima connessione.
Se avete NoMachine come client X (una X-client molto comodo per gestire le sessioni sui server in modo simile a RDP di Windows) dovrete aggiornare le chiavi sul server anche nella cartella home di NX.
1) eliminate il file known_hosts di NX: “sudo rm /usr/NX/home/nx/.ssh/known_host”
2) copiate la nuova chiave ssh nella cartella home di NX: “cp /etc/ssh/ssh_host_rsa_key.pub /usr/NX/home/nx/.ssh/known_host”
3) That’s all!
Tags: nxclient nx linux x xserver administration ssh bug
Posted in Linux | No Comments »
April 2nd, 2008
Oggi ho dovuto effettuare qualche lavoro di aggiornamento su un database, utilizzando delle query – per me – piuttosto complesse dal punto di vista logico.
Per organizzare il lavoro e pensare ai risultati aspettati, mi sono preparato una mappa mentale delle tabelle e delle procedure in questione, utilizzando diversi simboli grafici per dare un significato istantaneo alle tabelle. Il risultato? Ora il db mi è molto più chiaro e qualla parte di lavoro è stata effettuata correttamente.
Per me, questa è una dimostrazione della flessibilità delle mappe mentali e del radiant thinking, tecnica molto ben spiegata nel libro ‘Mappe mentali’ di Tony e Barry Buzan.
E’ molto importante associare un simbolo grafico ad un elemento testuale di una mappa, per me questo è stato un passo piuttosto difficoltoso, anche perchè ero convinto di non avere nessuna abilità grafica, ma con l’esercizio mi è stato possibile migliorare anche sotto questo aspetto. Oltremodo mi è stato utile fare ‘mindmapping’ a mano piuttosto che con software come FreeMind. Sebbene il computer sia più semplice da usare e permette correzioni più veloci, non mi consente di esprimermi al meglio: se voglio fare uno scarabocchio con la matita per indicare movimento o una azione nel tempo il foglio di carta è sempre il più indicato… quindi armiamoci di un bel bloccone di carta bianca (non quadrettata) e di qualche pennarello colorato e alleniamo e istruiamo le nostre sinapsi con le mappe mentali!
Tags: mind map mappe mentali db
Posted in brain | 1 Comment »
February 25th, 2008
Se volete stampare il numero di revisione della vostra applicazione Rails su una pagina potete fare come segue:
- Aprite il file config/environment.rb
- Aggiungete questa linea
“MY_APP_REVISION = %x[(cd "#{RAILS_ROOT}" && svn info | grep Revision | cut -c 11-)].strip”
- Salvate e aprite la view dove volete visualizzare il numero di revisione
- aggiungete la linea “<%= MY_APP_REVISION %>”
Il comando funziona come segue:
- %x[] è simile alla funzione system() di ruby e permette di eseguire un comando in una shell e catturarne l’output
- tutti i comandi sono rinchiusi all’interno di due parentesi tonde in modo da aprire una nuova shell esclusivamente per questo comando
- prima mi posiziono della directory principale di rails, se ho successo, lancio il comando ’svn info’ che mi ritorna tutte le informazioni sul mio repository svn
- redirigo l’output a grep che mi filtra le linee contenenti la parola ‘Revision’ (in questo caso una sola), otterrò così la stringa ‘Revision: 580′
- redirigo di nuovo l’output (‘Revision: 580′) al comando cut che taglia una stringa. I parametri passati a cut sono ‘-c 11-’ ovvero taglia dal carattere 11 fino al termine della linea
- L’output ottenuto da %x[] sarà una stringa terminata da ‘\n’, per eliminare il carattere di fine linea utilizzo il metodo standard della classe string strip().
Naturalmente questo tip funziona solo su sistemi unix-like
Ciao Piero
Tags: rails svn revision ruby linux shell cut grep
Posted in rails, ruby | No Comments »
February 20th, 2008
Se stupidamente, come me, avete utilizzato le sessioni nella vostra WebApp memorizzando molto più che lo stretto necessario avrete qualche problema con Rails 2.0 ricevendo errori di Cookie Overflow.
Infatti di default Rails 2.0 utilizza CookieStore per salvare le sessioni limitando così a 4Kb la dimensione massima della sessione. Per ‘tamponare’ questo problema potete tornare ad utilizzare il vecchio metodo di Rails 1.x: PStore.
Modificate il vostro file config/environment.rb e aggiungete questa linea:
config.action_controller.session_store = :p_store
e tutto tornerà a funzionare come prima.
Tags: rails cookie sessions
Posted in rails | No Comments »
December 30th, 2007
Ecco una bella figura dell’Italiota di turno… che crede che il “press any key” significhi premere il tasto “any”…
Leggere il thread per credere
http://www.hwupgrade.it/forum/showthread.php?t=1263518
Tags: utonti
Posted in play | 1 Comment »
December 19th, 2007
vedere per credere!
[youtube R90Zs60HXms]
Posted in play | No Comments »
December 12th, 2007
Sul sito Ruby-doc sono riportate le slides di Jim Weirich alla Open Source Conference del 2005 riguardo a ruby.
Sono molto interessanti e utili, la lettura non porta via più di 10 minuti…
Il link è questo
Il blog di Weirich è questo
Tags: rails, ruby
Posted in rails, ruby | No Comments »