23 marzo 2010

Ruby Best Practices di Gregory Brown

Dal creatore e principale manutentore di Prawn, ecco un interessante libro sulle "best practices" in Ruby, derivanti dal suo lavoro con questo linguaggio.
La versione versione open source dell'intero libro è disponibile all'interno del post Full Book Now Available For Free! sul suo blog.
L'indirizzo da cui prelevare il libro è http://sandal.github.com/rbp-book/pdfs/rbp_1-0.pdf, ma penso davvero che possa essere interessante visitare il blog di Gregory.

Buona lettura!

Powered by ScribeFire.


Continua...

19 febbraio 2010

CUPS 1.4.1 ed un baco malefico risolto

Con CUPS 1.4.1 ho avuto modo di imbattermi in un malefico bug con le stampanti condivise con SaMBa.
Il baco consiste nella richiesta continua delle credenziali per l'accesso alla stampante, anche se si è configurato correttamente l'accesso ad un dominio Windows da GNU/Linux.
Questo baco, molto sottile consiste nel fatto che CUPS 1.4.1 imposta (e reimposta dopo ogni stampa), nel file /etc/cups/printers.conf  l'attributo
AuthInfoRequired username,password

La soluzione al problema consiste nel commentare nel file tal riga e nel rendere tale file non modificabile: a tal fine non basta usare
[me@mybox]# chmod a-x /etc/cups/printers.conf
, in quanto CUPS riesce a reimpostare anche tali permessi, ma usare il meno noto (almeno a me)
[me@mybox]# chattr -i /etc/cups/printers.conf

Ecco di seguito tutto quello che c'è da fare:
[me@mybox]$ su
Password:
[me@mybox]# chattr -i /etc/cups/printers.conf
[me@mybox]# /etc/init.d/cups stop
[me@mybox]# vim -i /etc/cups/printers.conf

editare il file, ad es.
<defaultprinter theprinter="">
#AuthInfoRequired username,password
...
# eliminare la password e l'username quando il baco di CUPS 1.4.1 sparira'
DeviceURI smb://me:mypwd@MYDOMAIN/windoze/theprinter
...
</defaultprinter>

e poi
[me@mybox]# chattr +i /etc/cups/printers.conf
[me@mybox]# /etc/init.d/cups start

Powered by ScribeFire.

Continua...

20 gennaio 2010

Ottenere la documentazione di classi e metodi di Ruby da command line

Poiché uso spesso la documentazione on-line di Ruby e Rails, invece di quella da riga di comando, scrivo questo post come promemoria personale.
Per ottenere la documentazione di Ruby (e quindi anche di Rails e di altre Gem installate in locale) prodotta da rdoc bisogna, stranamente, utilizzare il comando ri, così:
[me@mypc]$ri String

In questo modo otterremo la documentazione prodotta tramite rdoc per la classe String.
Ricordo, inoltre, che il parametro del comando è case-sensitive, per cui c'è differenza fra
[me@mypc]$ri String
e
[me@mypc]$ri string

(in particolare, in Ruby con la maiuscola si fa riferimento ad una classe e con la minuscola ad un metodo, e così assume anche ri/rdoc.



Powered by ScribeFire.


Continua...

7 maggio 2009

VMWare Server 2.0: (strana) console failure con guest Windows 2003

Per un lungo periodo ho sbattuto la testa su di uno strano problema relativo alla mancata apertura della console di VMWare Server 2.0 su di un guest Windows 2003.

La macchina host era una Mandriva 2009.0 su cui, oltre al guest di cui sopra è presente anche un altro guest Mandriva 2009.0: su quest'ultima la console si apriva sempre senza alcun problema, mentre con la prima, a seconda della risoluzione video impostata in Windows 2003, ottenevo:
  • schermata nera, senza alcuna possibilità di vedere alcunché all'interno;
  • errore di segmentation fault della console al suo avvio.
Con un po' di sbattimenti riuscivo ad ovviare al problema, ad esempio eseguendo il log-in su di una macchina remota Windows e da lì usando VMware Infrastructure Web Access (da cui stranovviamente il problema non si riproduceva).
Ma dopo un lungo cercare, riesco a trovare un interessante articolo sul blog di Holger Paschke proprio relativo al mio caso in esame (VMWare Server 2.0 Console Failure).
Nel commento seguente al post, Holger puntualizza che la soluzione potrebbe consistere nell'impostare anche solamente la variabile di ambiente VMWARE_USE_SHIPPED_GTK=yes prima di lanciare firefox.
Nonostante io usi KDE e QT, una veloce prova conferma che la cura suggerita è quella valida. Ciò nonostante, prima di inserire in .bash_profile l'istruzione export VMWARE_USE_SHIPPED_GTK=yes mi balena un idea!
Provo ad installare gtk-qt-engine e... *snap*, il problema si risolve automagicamente!
Ovviamente se provate a cambiare gli stili GTK e selezionate QT o QTCurve non aspettatevi che quest'ultima soluzione da sola funzioni!

Powered by ScribeFire.


Continua...

4 dicembre 2008

NETIZEN CLANDESTINO, il tuo sito è clandestino. Sciopero e lutto di tutta la rete Internet italiana.

vai al gruppo su FaceBook Contro il DDL anti-Blog presente alla Camera

Sembra paradossale, ma è la realtá.
Anche il tuo sito/blog può essere oscurato e tutti noi come Carlo Ruta possiamo essere condannati per stampa clandestina.
Infatti esiste una legge (N° 62 del 7/3/2001) che dice a chiare lettere che in Italia siamo tutti in situazione di illegalità.
E tu cosa vuoi fare? Aspettare che ti arrivi una denuncia perché hai espresso le tue idee?

Continua...

USB su Ubuntu 8.04

Nel tentativo di monitorare un UPS (di marca abbastanza anonima) con NUT ho dovuto perdere un po' di tempo per capire qualcosa circa la connessione USB dispnibile sull'UPS stesso.
Purtroppo il solo
tuxmal@sphinx$ lsusb
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 004: ID ffff:0000
Bus 001 Device 002: ID 046d:0840 Logitech, Inc. QuickCam Express
Bus 001 Device 001: ID 0000:0000
non bastava a dare informazioni dettagliate, sapevo solo che il device connesso era quello con id ffff:0000.

Continua...

17 ottobre 2008

Rails, ovvero: come ho fatto per tanti anni a scrivere web applications senza?

Da tre settimane ormai, sono molto preso nella scrittura di una piccola applicazione di supporto ad un grosso gestionale dell'ente in cui lavoro. La scelta è caduta su Ruby ed in particolare Rails, ma non a caso. Avevo già avuto modo di leggere e di parlare con persone che lo utilizzavano a pieno traendone interessanti spunti.

Continua...