Category Archives: Informatica

Updated: The easiest and best way to install Ruby and Rails on OS X (Mountain) Lion

Update: a new version of JewelryBox (1.3) is out and is compatible with OS X Mountain Lion. You can download it from here.
The following procedure is still working with Mountain Lion and Xcode 4.4

It’s a long time since I wrote my last article on my blog. I’m back, talking about Ruby.

I don’t want to explain you what Ruby and Rails are or do, because if you want to install them you already know everything you need (I hope…).

With early Ruby release the installation of a complete Ruby environment was not totally painless. Now, with RVM and the great graphical front-end for Mac OS X, JewelryBox things are very simple, like 2-clicks.

With this article I’ll show you the step-by-step guide to install Ruby (1.9.3-p125) on Rails (3.2) on Mac OS X Lion (10.7.3).

Let’s talk about requirements:

1) First of all, you need to install Xcode developer tools 4.3 (free from the Mac App Store);

2) Second, you need to complete the Mac development environment installing the “Command Line Tools for Xcode” (LLVM compiler, Make, linker etc.)

To install “Command Line Tools for Xcode” open Xcode -> Preferences -> Downloads -> Components -> Install (on the right of Command Line Tools).

Installing Xcode Command Line Tools

3) Download JewelryBox from Unfiniti website and install it.

Download JewelryBox

4) Open JewelryBox, and install RVM clicking into “Install” button:

One click RVM install!

5) Once installation is complete, choose “+ Add Ruby” from the upper menu selecting which Ruby version do you want to install (1.9.3-p125 is the latest stable version actually), and leave all the default options enabled.

Leave Default Options

Note that in the older versions of Ruby (1.9.3-p0 or 1.9.2) and Xcode (4.2) you needed to select the “Use Clang” flag for a successful Ruby compiling, but this caused Rails installation to warning you about missing yaml (or libyaml) support. Now everything has gone.

6) All you need is? Rails. No, Terminal. Open the OS X Lion Terminal App and type:

$ sudo gem install rails

7) You’re ready to go, if the terminal output will look like:

$ <= 1.8.6 : unsupported
$ = 1.8.7 : gem install rdoc-data; rdoc-data –install
$ = 1.9.1 : gem install rdoc-data; rdoc-data –install
$ >= 1.9.2 : nothing to do! Yay!
$ Successfully installed … [cut]
$ Successfully installed rails-3.2.1
$ 31 gems installed
$ [cut]
$ _ (blinking)

8) Follow-up…You might ask yourself: “now what?”

  • If you need a great and powerful Ruby on Rails editor: Vim (from terminal) or MacVim are my favorites with rails.vim great scripts. Alternatives are the expensive TextMate, or the free Komodo Edit .
  • If you need some great books or resource to learn Ruby and/or Rails take a look at: Try Ruby, Agile Web Development with Rails.
  • If you want to comment this post, that would definitely be a great follow-up.

Hope you enjoyed this simple guide, have a nice day.

Solira: Linux@Evening 2010

Solira è lieta di confermare l’edizione 2010 della propria iniziativa “linux@evening“. Quest’anno sono in programma una serie di seminari con tematiche legate all’Informatica e, ove pertinente, all’uso del Software Libero. L’accesso ai seminari è del tutto libero e gratuito: non è necessaria alcuna prenotazione o iscrizione.

L’attuale calendario prevede i seguenti incontri:

  • 19 Febbraio: Introduzione alla Crittografia e a GnuPG;
  • 5 Marzo: Scrivere Documenti con LaTeX;
  • 19 Marzo: Introduzione a C++ e alla Programmazione Object Oriented (OO);
  • 26 Marzo: C++ Avanzato: Template e Librerie STL;
  • 9 Aprile: Introduzione alla Shell e agli Script;
  • 23 Aprile: UNIX: Struttura ed Evoluzione dei File-System;
  • 7 Maggio: Introduzione a Python.

Gli incontri si terranno presso la sede di Solira (via Matteotti n.71 – Ragusa) e avranno inizio alle ore 18:00.

Di seguito trovate la locandina dell’iniziativa: vi chiediamo di stamparla e di darne diffusione come potete.

Locandina del linux@evening 2010

Kde 4 e l’usabilità…

…siamo sicuri che sia il giusto modo di procedere?

Smanettando su una macchina virtuale creata appositamente per testare gli sviluppi di Kubuntu Intrepid Ibex 8.10 ho analizzato diverse schermate del nuovo KDE 4.1.1.

La prima che vi propongo e’ quella relativa alla configurazione di Kontact, la suite PIM appena integrata nel branch 4.1.x di KDE:

A dirvi la verità mi sono trovato un po’ spaesato! Ed io che volevo solo configurare l’account di posta…

Questa invece è la schermata relativa alla scelta del layout di tastiera. Per impostare la tastiera italiana, un utente dovrebbe scegliere nell’elenco di sinistra la lingua, spostare la voce nell’elenco di destra e cambiare l’ordine dell’elenco di destra impostando come prima lingua quella appena passata. Un po’ scomodo no?

4 passi per impostare la lingua italiana? mmm…

Per il resto non ho notato ancora molto, ma vi prometto che vi terrò aggiornati. Comunque questo KDE4 mi dà ancora l’impressione di essere un continuo work-in-progress, e rimmarrà tale finche non metteranno un punto a livello di sviluppo di nuove funzionalità e cercheranno di rendere consistente e pulito l’ambiente allo stato attuale. Per il momento se dovessi consigliare ad un newbie di utilizzare Linux, l’usabilità, la semplicità e l’ergonomia di GNOME (da ieri alla 2.24) lo rendono attualmente il miglior desktop environment open source.

Vi lascio ancora con questa immagine secondo me *brutta* relativa alle icone della System Tray di KDE4. Faccio notare che questo “problema” persiste dalle primissime release alpha.

Resto in attesa di obiezioni, commenti eccetera…

linux@evening: Ragusa 18 giugno alle 18.00

Interessantissima conferenza organizzata da Solira in stile “amichevole” per iniziare ad utilizzare Ubuntu 8.04 e a svolgere le operazioni preliminari per essere subito operativi dal punto di vista della gestione del sistema, della connessione ad internet e della installazione dei programmi.

Scarica la locandina dell'evento!

I relatori saranno Mario Di Raimondo, Nunzio Brugaletta e Salvatore Sittinieri. Vi aspettiamo alle 18.00 >>QUI<< .

E’ possibile scaricare da qui le slide della mia presentazione (Comunicare con il resto del mondo).

Configurare NetBeans per sviluppare con le OpenCV

La seguente guida e’ orientata a chi vuole impostare l’ambiente di sviluppo NetBeans per lavorare ad un progetto C/C++/OpenCV. La guida e’ applicabile in ambienti Linux, o Mac OS. Su Windows questa guida ha senso solo se e’ installato il compilatore GNU per C e C++ (dipende da Cygwin).

Il primo prerequisito da soddisfare consiste nell’installare le librerie OpenCV di Intel, disponibili nei repository ufficiali della propria distribuzione Linux, o installabili su Mac OS X tramite MacPorts. Il secondo prerequisito e’ l’IDE NetBeans scaricabile gratuitamente all’indirizzo http://www.netbeans.org .

NetBeans e’ il mio IDE preferito per via della sua completezza in materia di linguaggi di programmazione e tecnologie supportate. Da Java e Java EE (definibili come linguaggi preferiti di NetBeans) a svariati Database e Application Server ad altri linguaggi e sintassi quali HTML, JSP, Ruby, Phyton, C e C++ e perfino UML.

Inoltre e’ OpenSource e disponbile per tutte le piattaforme (Windows, Mac OS, Linux, Solaris).

Attualmente ad esempio sto lavorando ad un progetto di Computer Vision (in C e C++) e contemporaneamente ad una piattaforma di Business Intelligence in Java Enterprise.
Grazie a NetBeans posso lavorare a due progetti differenti, scritti in codici diversi che utilizzano tecnologie e piattaforme diverse con un unico strumento.

Adesso veniamo a noi…

Per iniziare a preparare l’ambiente e adattarlo alla programmazione C/C++ bisogna scaricare il modulo di Netbeans atto a svolgere tale compito:

  • Apriamo NetBeans e andiamo su Tools->Plugins.
  • Nella scheda “Available Plugins” segniamo C/C++ e aspettiamo che NetBeans scarichi per noi i pacchetti necessari all’installazione della funzionalità.

Adesso nella voce File->New Project tra le “Categories” troveremo la cartella C/C++ e potremo cosi’ creare un nuovo progetto C/C++.

  • Creiamo una nuova applicazione e andiamo avanti fino ad ottenere la schermata principale di NetBeans con il nuovo progetto nella scheda Projects.
  • Clicchiamo col destro sul nodo principale del progetto (che corrisponde al nome assegnato al progetto) e scegliamo proprietà.

Aggiungiamo adesso il supporto per le OpenCV:

  • Nella categoria C/C++, espandiamo C compiler e scegliamo la scheda General.
  • Clicchiamo sul pulsante (…) alla destra di “Include Directories” e impostiamo il percorso degli include delle OpenCV (/usr/local/include/opencv o /opt/local/include/opencv su Mac OS se avete installato le OpenCV con MacPorts).
  • Ripetete la stessa procedura per la categoria C++ compiler.

Adesso impostiamo il linker alle librerie dinamiche di OpenCV:

  • Nella categoria Linker, nella voce Libraries clicchiamo sulla (…) alla destra di Libraries, clicchiamo su Add Library File, ed aggiungiamo le librerie libcv.so, libcvaux.so, libcxcore.so e libhighgui.so (Linux su /usr/local/lib) oppure libcv.dylib, libcvaux.dylib, libcxcore.dylib e libhighgui.dylib (Mac OS su /opt/local/lib se avete installato le OpenCV con MacPorts).
  • Sempre nella categoria Linker nella voce General clicchiamo sulla (…) alla destra di Additional Library Directories ed aggiungiamo il percorso delle librerie (/usr/local/lib su Linux, /opt/local/lib su Mac OS X)

Applichiamo le impostazioni e adesso il vostro progetto dovrebbe essere pronto ad utilizzare le librerie OpenCV.

Imparare a programmare con Apple: Objective C, Cocoa ed Xcode

Non riuscendo assolutamente a stare fermo durante il tempo libero, ho iniziato un percorso di apprendimento alla programmazione e allo sviluppo sul mondo Mac.

Mac OS X e’ un sistema operativo potente, pulito, consistente e molto organizzato, e queste proprietà derivano direttamente dalla qualità del Framework che Apple ha consolidato da diversi anni (a partire da NextStep).

Come per ogni nuova tecnologia da imparare ed assimilare, la curva di apprendimento puo’ essere in certi casi molto lunga e poco efficiente.

Lo scopo di questo post e’ quello di condividere il mio percorso di apprendimento con i visitatori del sito.

Pertanto ecco di seguito i passi da seguire per chi vuole inziare a sviluppare software per Mac OS X :

1) Iniziate a leggere questo fantastico libro, utile anche a chi e’ agli esordi della programmazione: Become an Xcoder (scaricabile gratuitamente in inglese); è disponibile anche la versione italiana tradotta da Xcodeitalia.com: Diventare un Xcoder.

2) Dopo aver familiarizzato con C, Objective C ed Xcode, potete subito mettere in atto quanto appreso dallo studio effettuato, tramite una bella esercitazione guidata direttamente da Apple: Start Developing Mac Apps Today o la versione iOS Start Developing iOS Apps Today.

Dopo questi due passi sarete in grado di scrivere codice in Objective C, creare interfacce grafice e far interagire le due cose. A questo punto dovreste essere in grado di camminare da soli grazie alla valanga di documentazione che Apple mette a disposizione su http://developer.apple.com.

3) Per approfondire Objective C potete consultare: Programming with Objective-C.

4) Per approfondire Cocoa: What Is Cocoa?

A questo punto non mi resta che augurarvi buon divertimento, e un grosso in bocca al lupo per tutti i segmentation fault, i warning e gli errori di compilazione che incontrerete nel vostro “path”.

Buone feste

Un augurio personale di buon Natale e felice anno nuovo ai navigatori erranti che per caso o volutamente transitano su questo blog nel periodo festivo piu’ bello dell’anno. Divertitevi, rilassatevi e godetevi l’amore, la famiglia, gli amici e le passioni.

Un tocco informatico: sotto, l’immagine di natalizia di Google, come al solito semplice e spiritosa!

holiday07_4.gif

Masterizzazione libera su Windows

Informo tutti gli utenti Windows “non al corrente” che e’ possibile masterizzare CD/DVD/ISO tramite un ottimo software open source piuttosto che con la versione pirata di Nero o di chessoche’.

Si chiama InfraRecorder ed e’ molto semplice, stabile e veloce.

screenshot_main.png

Il download dal sito ufficiale e’ gratuito e di seguito riporto le caratteristiche tecniche del software:

  • Create custom data, audio and mixed-mode projects and record them to physical discs as well as disc images.
  • Supports recording to dual-layer DVDs.
  • Blank (erase) rewritable discs using four different methods.
  • Record disc images (ISO and BIN/CUE).
  • Fixate discs (write lead-out information to prevent further data from being added to the disc).
  • Scan the SCSI/IDE bus for devices and collect information about their capabilities.
  • Create disc copies, on the fly and using a temporary disc image.
  • Import session data from multi-session discs and add more sessions to them.
  • Display disc information.
  • Save audio and data tracks to files (.wav, .wma, .ogg, .mp3 and .iso).

Concludo ricordando di evitare l’uso di software pirata, preferendo sempre e comunque le valide alternative che vengono dal mondo del software Open Source.

Fedora 8, 1 ora di mal di testa

Voglio raccontarvi in sintesi la mia breve esperienza con Fedora 8, visto che avevo provato a tenerla sul mio notebook per un mese ed invece non e’ durata piu’ di un giorno.

Ma procediamo per gradi…

Hardware:
CPU Intel Centrino 735 1.73 GHz
VGA Intel GMA 950 64Mb
512 Ram
60 Gb Hd

Installazione
Tutto e’ filato liscio, installazione chiara, pulita ma che non ci riserva le comodita’ a cui “Ubuntu” ci ha abituato, molte dei quali farebbero comodo piu’ agli “switchers” che non agli utenti avanzati. Ad esempio fra tutte l’importazione delle impostazioni e dei documenti dall’eventuale partizione Windows oppure il ridimensionamento delle partizioni Windows con un semplice “slider”.
La durata dell’installazione dallo Gnome Live Cd e’ stata di 13 minuti esatti. Una scheggia.

Primo avvio
Il primo avvio ha impiegato 50 secondi esatti, e si e’ avviata una procedura guidata per la creazione di un nuovo utente e per il test della scheda audio. Su internet sono presenti 100000 recensioni piene di screenshots ed altro che coprono questa fase.

Prime impressioni, cose da sistemare
A prima svista, il nuovo tema “Infinity” fa la sua bella figura. Piacevole, pulito e consistente fin dalle prime fasi di avvio del sistema.
Ma si notano le prime imperfezioni: la lingua e’ un misto tra inglese ed italiano,  i fonts non sono belli come sulla nuova Gutsy, mancano Tracker, la Deskbar ed OpenOffice.
Cliccando subito su Applicazioni->Installazione Software notiamo che la finestra che si apre rimane completamente bloccata, non risponde per qualche minuto dopodiche’ ci notifica che qualcosa blocca le sorgenti software.
E’ infatti il demone di YUM che cerca gli aggiornamenti del sistema in automatico.
Solo che non potremo mai saperlo (se non da terminale con top) perche’ non abbiamo notifica di cio’ da nessuna parte. Il che mi ha lasciato molto perplesso.
Dopo circa 12 minuti, mi viene notificata la presenza di nuovi aggiornamenti ed io provo a farli.

Aggiornamenti “Infinity…”
Alle 15:02 del pomeriggio confermo la mia volonta’ di effettuare l’installazione degli aggiornamenti disponibili. Appare una schermata “Retreving software information” senza alcuna altra informazione utile tipo la mole di software da scaricare, la dimensione o la velocita’ di download e il tempo rimanente stimato. Stressante.
Alle 15:07 finalmente inizia a scaricare gli aggiornamenti e completa la procedura alle 15:18.
Sono passati 16 minuti e non so nemmeno quanti Mb di aggiornamenti ha scaricato. Nel caso di una connessione a consumo (tipo la Naviga 3) avrei potuto tirare ad indovinare e sperare di essere fortunato pena il pagamento di diverse decine di euro.

Lingua Italiana
Per installare completamente la localizzazione italiana, vado su System->Administration->Language seleziono “Italian” ed inizia a scaricare i pacchetti della lingua, in soli 2 minuti.

Pacchetti aggiuntivi
Decido di completare il sistema installando la Gnome Deskbar, Tracker, OpenOffice. Inizio l’installazione alle 15:27. Alle 15:29 ha risolto le dipendenze. Alle 15:58 ha completato.

31 MINUTI.

Anche qui nessuna informazione su dimensione dei pacchetti, velocita’, tempo rimanente.
Inoltre se si sposta la finestra nello schermo, essa sembra non rispondere piu’ per qualche  minuto.

Hardware
Il sistema ha riconosciuto un po’ tutto (anche perche’ e’ tutto Intel), poi ho attaccato la webcam, che su Ubuntu funziona perfettamente con ekiga e Skype 2 beta, e non ha rilevato nulla. Il “dmesg” non ha dato nessun segno di vita, il che significa mancato supporto a livello kernel. Per me non ha senso ricompilare un kernel.

YUM non va
La distribuzione e’ curata, pulita, ma un fattore fondamentale ha condizionato immediatamente la mia bocciatura per Fedora 8.
E’  YUM. E’ il gestore principali  dei pacchetti,  e’ lento,  e inutilizzabile con i front-end incompleti e buggati di cui Fedora e’ dotata. Imparagonabile ad apt, aptitude o synaptic.
Quando un componente essenziale quale il gestore pacchetti e’ lacunoso allora e’ meglio rinunciare completamente ad un sistema che non offre ne piu’ ne meno di cio’ che gia’ si ha con qualsiasi distribuzione linux desktop-oriented moderna.

Critiche ed insulti sono ben accetti.