Archive for the ‘Programmazione’ Category

apr 29

Non ci credete? Male, perché oggi vi parlo di una stupenda utility per Windows che vi permetterà di installare una qualsiasi distribuzione Linux su chiavetta USB ed utilizzarla per provare attivamente la resa di Linux sul vostro PC senza installare nulla. Partiamo dall’interfaccia praticamente autoesplicativa:

Partendo dall’alto ci sono 5 semplici passi:

  1. Inserite la stick USB e selezionatela dal primo menu;
  2. Scegliete da dove installare la distribuzione: se avete scaricato una ISO dal sito, se avete a disposizione un CD oppure se volete direttamente scaricare da internet la distribuzione linux che più vi piace;
  3. A seconda della grandezza della chiavetta potrete destinare una percentuale di spazio alla “persistenza”: in questo modo le modifiche apportate al sistema verranno salvate sulla chiavetta permettendovi una personalizzazione duratura. Se si imposta a 0 allora la distribuzione verrà interpretata come “Live” (senza salvataggi delle modifiche);
  4. Qui scegliete se nascondere i files dell’installazione, formattare la chiavetta e se includere la possibilità di provare Linux tramite una “virtualizzazione”: se selezionata quest’ultima casella verrà infatti scaricato il Portable Virtualbox che vi permetterà di aprire una finestra in cui eseguire la distribuzione Linux direttamente da Windows.
  5. Impostate tutte le opzioni correttamente (e ciò verrà segnalato dall’interfaccia mettendo “verdi” i semafori di ogni passaggio) vi basterà cliccare sul “lampo” e il processo inizierà. Al termine verrà aperta una pagina internet che vi consiglierà come utilizzare al meglio la vostra distribuzione.

(continua…)

ott 07

AppStore diventa sempre più grande e Objective C (linguaggio nativo di iPhone e tutti i sistemi Mac) prende piede tra gli sviluppatori di tutte le fasce (dalla grande azienda al piccolo programmatore) pur avendo dei costi di base non indifferenti (per esempio l’uso obbligatorio di un sistema Mac e la licenza di 99 $ per poter pubblicare le proprie applicazioni).

Tutto questo grazie alla facilità e alla comodità degli strumenti che Apple mette a disposizione. Naturalmente, chi si addentrerà per la prima volta su Objective C e il mondo Apple in generale potrebbe lo stesso trovare difficoltà di vario genere. Ecco quindi che segnalo un tutorial in italiano scritto da Marco Siviero dove, con concetti molto semplici, fa da introduzione e da apri pista verso il mondo delle applicazioni iPhone.

http://www.bubidevs.net/2009/06/09/ecco-il-libro-tutorial-pratici-per-iphone-sdk/

Le prime 22 pagine del tutorial sono gratuite mentre per il libro completo in formato digitale bisogna pagare 3 € (veramente poco in proporzione alla qualità del contenuto contando anche il fatto che è un libro in italiano). Nell’articolo sono presenti inoltre anche tutte le condizioni e i prerequisiti hardware necessari per poter sviluppare su Mac e iPhone.

Buona lettura.

set 28

Quanti programmatori ci leggono? Spero più di 10, soprattutto se questo numero è interpretato in base 2! :mrgreen: battute (da informatico) a parte, oggi vi propongo una di quelle utility freeware veramente ma veramente utili(ty): il DB Designer 4 di Fabforce.

Stavo infatti cercando un’applicazione che mi permettesse di disegnare un Database relazionale, o meglio di tracciarne lo schema relazionale, quando mi sono imbattuto in questo strepitoso software gratuito. La cosa importante quando si progetta un database relazionale è soprattutto la possibilità di capire prontamente quali relazioni intercorrono tra le varie entità (tabelle) in gioco.

Questo grandioso progamma vi permette con estrema semplicità di progettare tutto in maniera visuale e di esportare addirittura la vostra creazione in SQL per MySQL! I progetti vengono salvati in XML, cosa molto utile per l’interscambio quando si progetta magari su piattaforme diverse condividendo il progetto.

set 14

Nel precedente articolo abbiamo visto come installare OpenERP all’interno di un sistema operativo Ubuntu 8.04. Adesso ripartiremo esattamente da dove ci eravamo fermati e siamo pronti per creare il nostro primo database.

Nella schermata di avvio perciò, cliccate sul bottone “Databases” e sarete in una nuova pagina dove dovrete riempire i seguenti campi

  • Super Admin Password: dovrete inserire la password del super admin di OpenERP definita nella configurazione (di default è admin quindi inserite pure ‘admin’ come valore);
  • New Database Name: il nome del database che state creando, indicate pure un nome di vostro gradimento;
  • Load Demostration Date: permette il caricamento o meno di dati dimostrativi di base. Selezionarlo o meno è a vostra discrezione;
  • Default Language: la lingua del database. Scegliente l’Italiano;
  • Administrator Password: quando generate un database, OpenERP creerà automaticamente un utente admin che è colui addetto alla configurazione del sistema e responsabile di tutte le operazioni di amministrazione. In questo campo gli assegnerete la password;
  • Confirm Password: la conferma della password precedentemente inserita.

Premete “Ok” e attendete qualche attimo. Dovreste ritrovarvi in una finestra del genere.

Si tratta di selezionare quello che è un “profilo” aziendale che permetterà automaticamente di definire OpenERP il più simile possibile alle vostre esigenze. E’ possibile scegliere tra il profilo di una industria manifatturiera ma anche un profilo legato ai rapporti con la clientela (CRM) e altro ancora.

Io personalmente consiglio il “Minimal Profile” in quanto è l’opzione che caricherà i moduli strettamente necessari (in un altro articolo vedremo come importare moduli) e avere così le configurazioni al minimo.
Cliccate su “Avanti” e sarete in un altra pagina.

In questa pagina inserite i dati relativi alla vostra azienda. Cliccando tralaltro su “Informazioni Report” avrete già modo di inserire quelle che saranno le intestazioni che appariranno automaticamente nei report che OpenERP genererà. Tra le opzioni potrete inserire anche un logo della vostra azienda (anch’esso sarà inserito nei report).

Cliccate su “Avanti” quando avrete finito. Il processo terminerà con una pagina di riepilogo dove potrete in qualunque momento tornare indietro per effettuare modifiche ai dati inseriti. Cliccate su “Installa” quindi per installare il database.

Ora avete il database installato e apparirà un wizard dove potrete inserire alcune opzioni di base (come la tipologia di interfaccia o l’inserimento di utenti). Per adesso saltiamo questo passo e cliccate su “Usa direttamente”.

Se tutto è andato bene sarete giunti, finalmente, alla prima schermata in assoluto di OpenERP. Le opzioni disponibili per ora solo molto poche (abbiamo scelto un Minimal Profile d’altronde) ma nel prossimo articolo cercheremo di rendere il vostro sistema molto più ricco e appetibile.

set 10

OpenERP è un potente applicativo in grado di gestire l’attività di aziende di vario tipo (dalla manifatturiera all’eCommerce fino all’IT) rilasciato dall’azienda francese Tiny ERP in collaborazione con Axelor. Rappresenta un sistema detto “a moduli” in cui, importando i moduli, è possibile utilizzare nel gestionale tra le operazioni più disparate (per esempio un modulo che gestisce i contatti e la contabilità con i clienti e i fornitori, un modulo che tiene traccia degli orari di lavoro dei dipendenti ecc.).

Cosa interessante è che OpenERP è completamente gratuito e a disposizione della community: il suo codice sorgente è aperto, è rilasciato sotto licenza GPL (che non è il combustibile:lol: ma una licenza che ti permette di poter modificare il codice del prodotto e di venderlo senza problemi di copyright) e il software è estendibile in tutte le sue forme (i moduli si possono considerare allo stesso modo dei plugin di Firefox).

C’è solo un inconveniente: la documentazione è molto scarsa e poco chiara e anche solamente per una semplice installazione ci sono molte guide che non sono molto curate. Scrivo perciò questo articolo per coloro si trovassero in difficoltà e si fossero persi tra forum e siti non del tutto esaurienti.

In questo primo articolo vedremo come installare questo gestionale all’interno di un sistema Ubuntu 8.04. La versione di OpenERP presa in considerazione è quella attualmente disponibile (la 5.0.3). Aprite perciò un terminale a riga di comando e digitate questa riga per scaricare il pacchetto compresso.

wget http://openerp.com/download/stable/source/openerp-server-5.0.3.tar.gz

Terminato il download, sempre nello stesso terminale scompattate il file tar e spostatevi nella cartella appena creata

tar xfz openerp-server-5.0.3.tar.gz

cd openerp-server-5.0.3

Prima di far partire il processo di installazione, abbiamo bisogno di alcuni pacchetti che potrebbero essere richiesti da OpenERP (soprattutto il database PostgreSQL che è il DB dove OpenERP si appoggia per caricare i dati o l’interprete Python che è fondamentale per eseguire i moduli di OpenERP). Avviate questo comando e aspettate che tutti i programmi siano installati (alcuni di questi potrebbero non servire ma voi scaricateli lo stesso). In guide future analizzeremo alcuni di questi programmi e che integreremo con OpenERP.

sudo aptitude install python-psycopg2 python-libxml2 python-libxslt1 python-xml \
python-reportlab python-pychart python-pydot poppler-utils \
python-lxml python-tz python-vobject python-profiler antiword \
fetchmail postgresql

Se siete rimasti all’interno della cartella del server di OpenERP, eseguite la riga seguente per installare OpenERP:

sudo python setup.py install

Terminata l’installazione, adesso abbiamo bisogno di un client che farà da interfaccia grafica. Per semplicità ci affideremo all’interfaccia web che è molto flessibile e versalite (nonchè eseguibile su qualsiasi browser). Ci affideremo sempre al terminale di comando e in particolare ai comandi easy_install e TurboGears che scaricheranno per noi la versione più aggiornata del client web. Non perdiamo tempo ed eseguite queste 3 righe.

sudo apt-get install python-setuptools
sudo easy_install TurboGears==1.0.8
sudo easy_install -U openerp-web

Dato che tutti i dati di OpenERP saranno gestiti dal database PostgreSQL, dobbiamo fare in modo che il database abbia i permessi necessari per poter richiamare il gestionale. Rendiamo perciò l’intera cartella del server come proprietaria dell’utente postgres (l’utente amministratore di PostgreSql).

sudo chown -R postgres /usr/lib/python2.5/site-packages/openerp-server

Abbiamo praticamente finito, adesso (in 2 diverse terminali a linea di comando) dobbiamo eseguire il server e avviare il client web. Questi comandi dovranno essere richiamati ogni volta a meno che non abbiamo installato il tutto all’interno di una macchina server:

sudo su postgres -c “openerp-server”

openerp-web

Se vedrete dei log senza alcun errore, tutto dovrebbe essere ok. Lasciate perciò le finestre in secondo piano e aprite un browser e digitate “http://localhost:8080″.
Naturalmente “localhost” ci va nel caso in cui abbiate eseguito tutta la procedura in locale mentre invece se avete eseguito tutto su una macchina remota, mettete al posto di “localhost” l’indirizzo ip della macchina o l’host remoto. “8080″ in quanto la porta di ascolto di OpenERP di default è la 8080 (attenzione quindi se avete un altro servizio in ascolto su quella porta).

Se tutto sarà andato bene dovreste vedere questa schermata.

http://img42.imageshack.us/img42/9238/erp.png

Nel prossimo articolo vedremo come creare un database dal gestionale, un primo utilizzo e alcune configurazioni particolarmente interessanti che renderanno più semplice l’utilizzo di questo utilissimo strumento.

lug 17

Dal lancio di Chrome, Google ha pubblicato una piattaforma che non può che rendere felici gli smanettoni di Javascript e linguaggi web vari. Trattasi di Google Experiments.

Google Experiments consente agli artisti del web e a progettisti fantasiosi di poter esprimere la loro creatività. Lo scopo è anche quello di mostrare le potenzialità dell’engine Javascript V8 incorporato nel browser della casa di Mountain View.

Google Experiments è una immensa vetrina adatta a mostrare ogni tipo di applicazione: dal disegno ai giochi fino al più disparato effetto grafico (per esempio una palla che possiamo far passare da una finestra all’altra).

Siamo sicuri che con tutta probabilità la strada per il sistema operativo di Google passerà anche per di qua

lug 06

Microsoft con l’ultima versione rilasciata del suo browser ha giocato un brutto scherzetto alla community di sviluppatori (tra cui, ahimè, ne faccio parte anch’io) costretti a lavorare su IE per lo sviluppo di applicazioni Web.

Il tag rendering di IE8 (ossia l’engine che legge i tag all’interno di una pagina HTML per il suo caricamento) è infatti mutato molto (troppo) rispetto a IE7 e quindi coloro che sviluppavano sulla precedente versione adesso, nel momento in cui il cliente decidesse di voler passare alla versione successiva, si ritrovano i componenti della pagina scombinati o cmq con delle imperfezioni grafice più o meno gravi.

Per fortuna c’è una soluzione in grado, se non di risolvere completamente i problemi, almeno di limitare i danni: si tratta di inserire tra i meta tag della pagina un riferimento a una sorta di “emulatore” del tag rendering di IE7.
L’operazione è molto semplice: nei meta tag di ogni pagina dovranno essere inseriti i seguenti valori:

http-equiv=”X-UA-Compatible” content=”IE=EmulateIE7″

In questo modo i problemi saranno (almeno parzialmente) risolti in quanto la pagina richiede di essere letta dal tag rendering del vecchio IE7.

(PS: proprio adesso sto usando IE8 per scrivere questo articolo e sto avendo tutt’ora dei problemi. Ringraziamenti sinceri a Microsoft che ci rende la vita più semplice)

UPDATE: in IE8 ci sarebbe una soluzione ancora più semplice, infatti c’è una impostazione di “Visualizzazione di Compatiblità” in cui si inserisce una lista di siti per farli caricare con l’engine di IE7 senza dover inserire il meta tag per ogni pagina.

Quali altri commenti aggiungere oltre a “è Microsoft”? Facciamo parlare questa img

giu 17

Non so perché, non so per come… però oggi in seguito ad un po’ di pulizia e reinstallazione di componenti di Windows XP mi son ritrovato senza barra di “Avvio Veloce“. Panico, terrore, raccapriccio. Come faccio? Niente paura, mi dico, basta “cliccare col destro” selezionare “Barre degli strumenti” dal menu contestuale e poi “Avvio Veloce”.

Manco per niente. Mi dice “Impossibile creare la barra degli strumenti“. Perché? perché? Che ti ho fatto di male io?

Non demordo e cerco la soluzione. Effettivamente alla Microsoft hanno notato che a volte può scomparire questa cosa che è legata ai Dati Applicazioni di Internet Explorer. Mi domando perché l’Avvio Veloce dovrebbe aver a che fare con Internet Explorer? Bah… comunque la soluzione è qui: “Impossibile creare al barra degli strumenti“.

Perfetto, tento di seguire i consigli ma niente. Non trova quel file fantomatico (IE4UINIT.EXE) ma fortunatamente l’(in)utile funzione cerca viene in mio soccorso e lo trova nella directory di internet explorer 7. Da lì lo lancio con le due righe di parametro suggerite nella soluzione, riavvio il sistema… e la barra non c’è ancora!

Stavolta però la scelta dal menù contestuale va a buon fine e infatti appare il menù veloce con dentro l’icona per Explorer 7. Benissimo, problema risolto… però… in effetti mi manca “mostra desktop”. Cavoli. Non posso stare senza l’icona “mostra desktop”. Bene, per questo ho trovato questo mini-fix che funziona subito: Wintrix.it Ripristinare l’icona Mostra Desktop. Seguitelo e risolverete.

giu 08

Sei un webmaster che sta smanettando con Javascript? Internet Explorer 7 ti sta facendo penare e al comando window.close() ti si apre una fastidiosa finestra di conferma anzichè avere direttamente la chiusura immediata?

La soluzione è molto semplice, subito prima del comando window.close() bisogna inserire un’altra riga ossia:

window.open(”,’_parent’,”);

In genere tendo sempre a spiegare quello che espongo ma stavolta…..non ho proprio idea del perchè funzioni XD (se c’è magari qualche buon cristiano che me lo espone ne sarei ben felice).

Sicuramente viene sfruttato (tanto per cambiare) un bug presente all’interno di IE che permette di aggirare la richiesta di conferma di chiusura. Fatene buon uso però: se siete dei webmaster dovrete cmq fare in modo di garantire la sicurezza sia per voi sia per gli utenti che vengono a farvi visita.

PS: diffidate da ciò che leggete in giro riguardo l’uso di window.opener. A parte che dalla versione 7 in poi non è più consentito ma poi è cmq un oggetto molto delicato che potrebbe compromettere la vostra navigazione costringendovi a una brutale chiusura tramite Task Manager dell’affidabilissimo (!) browser di Microsoft.

apr 21

Notizia che scuote il mondo dell’informatica: il colosso dei database Oracle ha acquisito le azioni della Sun Microsystem, la famosa azienda madre del popolare linguaggio di programmazione Java.

La trattativa si è conclusa con un importo intorno ai 7 miliardi di dollari (poco più di 5 miliardi di €) di cui 2 per risanare i debiti della Sun e i restanti 5 per i soci Sun. Balzo del 36% delle azioni Sun sul Nasdaq.

La notizia di una acquisizione di Sun in sè non è sorprendente in quanto Sun non era in buone acque ma da mesi sembrava che fosse il colosso IBM ad accaparrarsi il patron di Java ed invece la casa dei database di Redwood City si è prepotentemente inserita con un colpo di scena da soap opera.

Non si sa bene adesso quale sarà il destino dei prodotti proprietari Sun ma è quasi sicuro che il prodotto Java resterà open source e libero per la comunità. 

Diverso destino potrebbe avere invece il database open source MySql che potrebbe essere venduto o peggio ancora accantonato definitivamente (in ogni caso Oracle non avrà la minima intenzione di supportarlo).

Dove arriverà la Oracle?