Qt Creator: disponibile la preview release dell’IDE per Qt/C++ di Trolltech

Programmazione, Qt 7 Comments »

Trolltech ha appena rilasciato la preview release di Qt Creator. Si tratta di un'IDE pensato appositamente per lo sviluppo di applicazioni multi piattaforma tramite Qt e C++.

Tra le funzionalità piu' importanti ci sono sicuramente un'avanzato completamento del codice digitato, l'integrazione con QtDesigner ed il debugger integrato.

Mancano ancora alcune feature che siamo abituati a trovare su altri IDE, come ad esempio l'integrazione con SVN/CVS, templates per il codice sorgente, opzioni di personalizzazione della formattazione ecc... tuttavia l'ambiente promette veramente bene, per essere una preview release. L'architettura a plugin che sta alla base dell'IDE, non esclude che funzionalità di questo tipo possano essere aggiunte in un secondo momento e rese disponibili anche da sviluppatori di terze parti.

Nonostante le librerie Qt stiano prendendo sempre piu' campo nei dispositivi portatili (palmari, cellulari ecc...), non è al momento supportato lo sviluppo di applicazioni per questo tipo di device. E' una funzionalità prevista per le future release, anche se al momento non sono noti i tempi esatti di rilascio.

Al momento è possibile scaricare l'IDE per tutte le principali piattaforme: Windows (Xp e Vista), Linux (32 e 64 bit), OSX. La disponibilità in futuro è però limitata soltanto dalle piattaforme per le quali esiste un porting delle librerie Qt.

La versione definitiva di Qt Creator dovrebbe essere rilasciata poco dopo il rilascio delle Qt 4.5, ovvero entro la prima metà del 2009. Così come le librerie Qt, sara' rilasciato con una licenza GPL compatibile che permettera' di sviluppare sia applicazioni commerciali che opensource.

Mini antenna parabolica per potenziare il segnale dei router wireless

HowTo 8 Comments »

Dopo averne sentito tanto parlare, senza mai aver avuto occasione di provarla direttamente, mi sono deciso a costruire una mini antenna parabolica per potenziare il segnale del router wireless.

Grazie al dettagliatissimo howto presente sul sito di Napoli Wireless, sono riuscito a costruire l'antenna in meno di un'ora.

Dalle poche prove che ho potuto fare, in effetti il segnale viene potenziato abbastanza. Ad esempio ricercando le reti wireless con il palmare da camera mia al salotto, il segnale del router era di circa metà. Avendo messo l'antenna nuova il segnale è quasi pieno!

Consiglio a tutti di provare questa soluzione, potrebbe potenziare molto il vostro segnale wireless e permettervi di avere un segnale molto piu' stabile in qualsiasi punto della casa.

Install Fest Ubuntu Linux 8.10 a Pistoia

Linux, Ubuntu No Comments »

Il Pistoia Linux User Group organizza un "install fest" sabato 22 novembre a partire dalle ore 15:00 fino alle ore 19:00, presso la propria sede al Centro Giovani (Via Nazario Sauro, 289 - Pistoia).

Durante la giornata lo staff del PtLUG sarà a disposizione per aiutare tutti coloro che vogliono installare Linux sul proprio PC (portatile o fisso).

La distribuzione che verrà installata sara' principalmente la Ubuntu 8.10, per festeggiare la nuova versione che verrà appunto rilasciata fra pochi giorni.

Sara' inoltre possibile richiedere una copia del CD di Ubuntu, sia facendoselo masterizzare sul momento, sia ordinandolo gratuitamente tramite il sito di Ubuntu.

L'evento è completamente gratuito ed aperto a tutti. E' necessario però iscriversi tramite il nostro sito web per prenotare l'installazione di Linux sulla propria macchina, in modo da assicurarci che ci siano abbastanza persone disponibili per le installazioni: http://www.ptlug.org/installfest

Vi aspettiamo!

24 ore di lezioni no-stop all’Università di Firenze

Unifi 2 Comments »

Il Collettivo di Matematica degli Studenti di Scienze dell’Università di Firenze ha organizzato una 24 ore no-stop di lezioni da lunedi 27 ottobre alle ore 8:30 fino a martedi 28 ottobre alle ore 8:30.

Le lezioni si terranno presso il dipartimento di Matematica a Firenze in Viale Morgagni (zona Careggi) nell'aula 3 del plesso Ulisse Dini.

Durante la notte verrà offerto gratuitamente caffe' a tutti i partecipanti. Sarà possibile inoltre seguire le lezioni anche da casa, collegandosi alla diretta in streaming audio/video tramite VLC al seguente indirizzo: http://radio.math.unifi.it:8000/24hnostop.m3u

Qui di seguito il programma delle lezioni:

  • 08.30 Ricci: "Testa, croce o successioni"
  • 09.30 Primicerio: "Innovazione tecnologica: la risorsa matematica"
  • 10.30 Pepino: "La chimica nel piatto"
  • 11.30 Giachetti: "I fatti e le idee fondamentali che hanno dato origine alla meccanica quantistica"
  • 12.30 Righini: "Il sole, la relazione terra sole e il clima terrestre"
  • 13.30 Paolini: "Come imparare a risolvere il cubo di Rubik"
  • 14.30 Trosti: "La simmetria"
  • 15.30 Livi: "Aspetti elementari della complessità"
  • 16.30 Landi: "Reti neurali artificiali"
  • 17.30 Casalbuoni: "Radici quadrate e antimateria"
  • 18.30 Ottaviani: "Enriquez e Severi"
  • 19.30 Baracca: "Energia nucleare"
  • 20.30 Maggesi: "La meccanizzazione della matematica"
  • 21.30 Casolo: "La matematica in letteratura"
  • 22.30 Borsi:  "Modelli matematici per fluidi in mezzi porosi: dalla suola delle scarpe alle falde inquinate"
  • 23.30 Gentili: "Che cos’e’ la congettura di Poincarè"
  • 00.30 Rubei: "Geometria tropicale"
  • 01.30 Vannini: "Chi ha paura di Darwin ovvero a cosa servono le zanzare"
  • 02.30 Cupini: "Temperamento:un enigma musicale da Pitagora a Bach"
  • 03.30 Puglisi: "In cerca dei numeri primi"
  • 04.30 Cannicci: "Il contributo della zoologia nelle investigazioni scientifiche"
  • 05.30 Romito: "Mentire con la statistica"
  • 06.30 Bagnoli: "La fisica sotto il naso"
  • 07.30 Casetti: "L’ultimo lavoro di Fermi e i fondamenti della meccanica statistica"

LinuxDay 2008 a Pistoia: un successo strepitoso!

Linux No Comments »

E' con estremo piacere che mi sento di dire che l'edizione di quest'anno del LinuxDay a Pistoia è stata un successo senza precedenti! Si sono registrate all'evento circa 170 persone e, contando anche quelle che non si sono registrate, contiamo di aver raggiunto oltre le 200 presenze in tutta la giornata.

Un ringraziamento particolare va fatto ai docenti dell'ITC Capitini di Agliana che hanno accompagnato due classi e agli studenti dell'ITIS Silvano Fedi che per qualche ora hanno rinunciato ad occupare il loro istituto per tenere fede all'impegno di partecipare al LinuxDay.

La manifestazione si è svolta nella nuovissima Biblioteca SanGiorgio, messa gentilmente a disposizione dal Comune di Pistoia ed è stata suddivisa in due target particolari: la mattina è stata dedicata a scuole, pubblica amministrazione ed aziende, mentre il pomeriggio sono stati affrontati temi di carattere piu' generale. E' ovviamente disponibile il programma delle conferenze che si sono svolte e sempre sulla stessa pagina, sarà possibile a breve scaricare le slides degli interventi.

All'esterno della sala conferenze erano state allestite 6 postazioni con Ubuntu e Fedora installate per permettere ai visitatori di provare Linux direttamente. Lo staff del PtLUG era a disposizione dei visitatori per rispondere a domande tecniche oppure per installare Linux direttamente sui PC.

Una delle attrazioni che hanno suscitato piu' interesse è stato il videogioco da sala giochi dentro il quale era stato posizionato un PC con il Mame, che permetteva di giocare a moltissimi videogiochi che hanno fatto la storia delle sale giochi.

Grazie al supporto del personale della biblioteca, sono state effettuate le registrazioni sia audio che video di tutte le conferenze. Non appena ci verrà consegnato il DVD avrò cura di rippare i contenuti e di pubblicarli da qualche parte in modo che siano accessibili anche a chi non è potuto essere presente fisicamente.

Per chi fosse interessato, sono già state pubblicate circa 175 foto dell'evento, che potete trovare sull'album che abbiamo allestito.

La giornata del LinuxDay ci ha permesso di entrare in contatto con diverse nuove persone che si sono dimostrate interessate a partecipare al PtLUG e a dare una mano per quanto riguarda i prossimi progetti che realizzeremo.

Ci auguriamo che il successo di quest'anno possa ripetersi anche nei prossimi anni, riuscendo a coinvolgere un numero sempre piu' grande di persone, per riuscire a diffondere in modo ancora piu' capillare la cultura del software libero e opensource.

Il Presidente della Repubblica Napolitano esprime il proprio apprezzamento per il LinuxDay

Linux 2 Comments »

Grazie ad un'iniziativa di Davide Dozza (Presidente dell'Associazione PLIO) e Michele Dalla Silvestra (Presidente di Italian Linux Society), il Presidente della Repubblica Napolitano era stato invitato ufficialmente all'edizione di Roma del LinuxDay 2008.

Purtroppo i suoi numerosi impegni non hanno reso possibile confermare la propria presenza all'evento, ma si è comunque interessato di esprimere il proprio appoggio all'iniziativa ed ha inviato un cordiale saluto a tutti quelli che parteciperanno al LinuxDay 2008 in tutta Italia.

Di seguito un estratto della lettera, di cui potete trovare la scansione a questo indirizzo.

Il Presidente Napolitano esprime apprezzamento per l'iniziativa che, nel diffondere l'iniziativa del software libero, concorre a far conoscere e a rendere accessibile la cultura informatica e le sue tecnologie consentendo così la piu' ampia fruibilità del nuovo sistema di comunicazione ed informazione che su di esso si basa.

Trusted Computing: perchè fidarsi di chi non si fida di noi?

Censura, Google, Sicurezza No Comments »

E' notizia di questi giorni il fatto che Google abbia previsto un meccanismo di "sicurezza" che consentirà a loro stessi di rimuovere automaticamente, dai telefonini GPhone che verranno venduti, le applicazioni non ritenute sicure. Google avrà quindi la possibilità di controllare i propri dispositivi da remoto, accedere alla memoria del telefono e rimuovere quello che non desidera ci sia installato: chi ci assicura che non si mettano a controllare pure il testo degli SMS che inviamo o riceviamo, magari per inviarci pubblicità mirata a seconda delle nostre esigenze?

Della stessa pasta sono fatti anche i dispositivi della Apple, in particolare l'iPhone. Anche questo dispositivo incorpora infatti un chip che impedisce alle applicazioni non consentite di girare sul telefonino. L'unico modo per installare applicazioni sull'iPhone è quello di scaricarle dall'Apple Store, ed ovviamente Apple si riserva il diritto di decidere quali applicazioni possano apparire nello store e quali invece no, ed una nota nella licenza che devono firmare gli sviluppatori di applicazioni per iPhone, si dice anche che essi non possono in alcun modo dire pubblicamente che una loro applicazione è stata esclusa dallo store. Tutto questo in nome della nostra "sicurezza".

Vi invito a guardare il seguente video, che non è certo nuovo, ma è molto utile per poter spiegare anche ai non addetti ai lavori, cone mai questa situazione sia così grave ed inaccettabile.

Creare mappe personalizzate e condivise con Google Maps

Google, HowTo No Comments »

Il servizio che Google offre per consultare le mappe di quasi tutto il mondo, non ha certo bisogno di presentazioni. Ormai integrato in qualsiasi tipo di dispositivo, Google Maps ci permette di ricercare velocemente un indirizzo oppure un'attività commerciale e di poterlo visualizzare sulla cartina.

Avere una mappa fatta da altri puo' essere utile a volte, ma spesso puo' capitare di avere l'esigenza di creare una propria mappa (inserendo i propri punti di interesse) per condividerla magari con amici.

Mappe Personalizzate

Google da la possibilità di utilizzare la loro enorme banca dati per poter costruire una mappa personalizzata a seconda delle proprie esigenze. Facciamo l'esempio di una persona che voglia condividere con altri tutte le birrerie dov'è andato fino ad ora, indicandole sulla cartina e scrivendo anche una piccola recensione.

Per poter creare una mappa personalizzata occorre avere un account Google (va benissimo quello che si usa per la posta di GMail), andare sul sito di Google Maps e cliccare su "Crea una nuova mappa".

Ci vengono richiesti un titolo, una descrizione ed in particolare se vogliamo che questa mappa sia pubblica oppure privata. Da sottolineare il fatto che per privata si intende soltanto una mappa che non compare nei risultati di ricerca, ma che non richiede alcun tipo di autorizzazione per essere consultata. Chi conosce l'URL esatto della mappa quindi puo' consultarla senza alcun problema.

A questo punto la mappa è pronta per essere personalizzata. Tra le informazioni che possiamo inserire ci sono i punti di interesse, tracciare linee di percorso personalizzate ed infine evidenziare delle aree.

Condivisione Mappe

Riuscire a personalizzare una mappa è di sicuro una gran cosa, ma ancora piu' utile è poterlo fare con l'aiuto di piu' persone. Tramite Maps infatti è possibile permettere ad altri utenti (che abbiano un Google account) di modificare la nostra mappa, inserendo altri punti di interesse, annotazioni, foto ecc...

Inserendo l'email della persona con la quale vogliamo condividere la mappa, faremo in modo che questa riceva una mail di invito per poter iniziare a personalizzare la mappa.

Conclusioni

Il mio invito è quello di provare a crearsi una mappa personalizzata e condividerla con amici. Vedendo la procedura scritta puo' sembrare tutto molto piu' complicato di quanto lo sia in realtà. Vi assicuro che dopo qualche prova, creare mappe personalizzate e condividerle sarà un'operazione semplicissima e che vi permettera' di realizzare cose che fino a ieri pensavate impossibili.

LinuxDay 2008 a Pistoia

Linux No Comments »

Per l'ottavo anno consecutivo il Pistoia Linux User Group, di cui faccio parte, organizza l'edizione di Pistoia del LinuxDay, che si terrà sabato 25 ottobre dalle ore 9:00 fino a sera.

Il LinuxDay è una manifestazione che si svolge ogni anno inoltre 100 città d'Italia con lo scopo di diffondere l'utilizzo del sistema operativo Linux ed il software libero. Ogni evento viene organizzato in maniera indipendente e promosso dai singoli LUG (Linux User Group) locali.

L'evento di Pistoia si svolgerà nella prestigiosa Biblioteca San Giorgio di Pistoia, situata in via Pertini ed ha ottenuto il patrocinio di Regione Toscana, Comune di Pistoia e Comune di Monsummano Terme (PT).

Abbiamo suddiviso la giornata in due momenti principali: la mattina verrà dedicata (ma non in modo esclusivo) a scuole, aziende e pubblica amministrazione. Il pomeriggio sara' invece dedicato a tutti gli utenti che conoscono ancora poco Linux o a chi lo vuole conoscere per la prima volta.

L'ingresso alla manifestazione è ovviamente gratuito ed aperto a tutti. Si consiglia in ogni caso di registrarsi online in modo da agevolare gli organizzatori dell'evento e per avere la possibilità di vincere i premi messi in palio dai nostri sponsor:

Di seguito il programma ufficiale dell'evento di Pistoia:

Mattina

  • 09:00/09:15 - Introduzione (Andrea Grandi)
  • 09:15/09:30 - Spazio riservato istituzioni (Assessore Tommaso Braccesi del Comune di Pistoia)
  • 09:30/10:00 - Spazio riservato SIS Informatica (Gruppo CNA)
  • 10:00/10:30 - Presentazione Progetto Wireless (Andrea Grandi e Alessandro De Filippo)
  • 10:30/11:00 - Progetti opensource all'ITIS
  • 11:00/11:30 - Linux per aziende (Alessandro De Filippo)
  • 11:30/12:00 - PostgreSQL (Gabriele Bartolini di ItPUG)
  • 12:00/12:30 - Italc (Andrea Cappelli)
  • 12:30/13:00 - Domotica (Alessandro De Filippo)

Pomeriggio

  • 15:00/15:30 - Perchè Opensource (Alessandro De Filippo)
  • 15:30/16:00 - Presentazione Ubuntu (Andrea Grandi)
  • 16:00/16:30 - Presentazione Fedora (Lorenzo Villani)
  • 16:30/17:00 - Registrare musica con Linux (Carlo Ascani)
  • 17:00/17:30 - Firefox (Enrico Sorcinelli)
  • 17:30/18:00 - Wikimedia (Lorenzo Losa)
  • 18:00/18:30 - Giocare con Linux (Simone Vassili)
  • 18:30/18:45 - Conclusione dei lavori (Andrea Grandi)

Per essere informati sulle ultime novità, vi consiglio di visitare il sito web ufficiale dell'evento, dove potrete trovare informazioni piu' approfondite e tutti i dettagli per partecipare.

Dieci buoni motivi per non utilizzare PHP

Programmazione 3 Comments »

Quando in questi giorni ho appreso la triste notizia che il progetto da consegnare per l'esame di Laboratorio di Reti avrebbe dovuto essere realizzato in PHP, sono stato preso un po' dallo sconforto.

Per anni mi sono sempre rifiutato di imparare ed utilizzare questo linguaggio ed ho persino declinato diverse offerte di lavoro, visto che già sulla carta ne avevo sempre sentito parlare male. Adesso è arrivato il momento di ingollare il rospo ed imparare almeno il minimo indispensabile alla realizzazione del progetto.

Ho approfittato della situazione per documentarmi un po' sul PHP e per ribadire alcuni motivi che per anni mi hanno tenuto lontano da questo linguaggio. I punti che seguono prendono spunto sia da considerazioni personali, sia da un ottimo articolo di Edwin Martin.

1. Ricorsione?! Chi era costei...

La ricorsione, come molti di voi sapranno, è un meccanismo che permette ad una funzione di chiamare se stessa. Viene impiegata nell'implementazione di moltissimi algoritmi, come ad esempio il Quick Sort. Se vengono generate troppe chiamate ricorsive in PHP, il linguaggio va letteralmente in palla e non funziona piu' correttamente. Questa cosa è stata segnalata come bug e la motivazione che è stata data dagli sviluppatori è che PHP utilizza lo stack al posto dell'heap per le chiamate ricorsive. Questo cosa c'entra? Mi viene da chiedere... eppure in altri linguaggi la ricorsione funziona benissimo!

2. Molti moduli PHP non sono thread safe

Anche se tutti i moduli del core di PHP sono garantiti thread safe, la maggior parte degli altri moduli non lo sono. Questo rende completamente inutile il fatto che Apache 2 supporti la modalità multithreaded: gli sviluppatori di PHP sconsigliano pure di utilizzare questa versione di Apache.

3. PHP è azzoppato per motivi commerciali

Vi sembra che PHP sia un po' lento? Non avete provato la versione commerciale di Zend PHP, che garantisce maggiori prestazioni! La versione gratuita di PHP infatti non ha alcuna ottimizzazione e a meno di non utilizzare un qualche meccanismo di cache (come ad esempio APC) le prestazioni saranno basse.

4. Nessun supporto ai Namespace

Se due moduli hanno una funzione che si chiama read, non possono essere utilizzati contemporaneamente. Era stata proposta una soluzione a questo problema in PHP5, ma alla fine non è stata inclusa nella release definitiva. L'unico modo per evitare la collisione dei nomi dei metodi è quello di nominarli aggiungendo il nome del modulo all'inizio. Ecco perchè non è strano trovare metodi che ad esempio si chiamano xsl_xsltprocessor_transform_to_xml che di sicuro non aumentano la leggibilità del codice.

5. Caratteri di formattazione delle date non standard

La maggior parte dei linguaggi di programmazione utilizza uno standard per quanto riguarda i caratteri di formattazione delle date, che deriva da Unix e dal linguaggio C. PHP utilizza un proprio formato, completamente incompatibile.

6. Inconsistenza nei nomi delle funzioni

Quando i nomi dei metodi contengono piu' di una parola, solitamente ci sono tre modi diversi per poterli scrivere. Prendiamo ad esempio un'ipotetica funzione che restituisce il numero dei file aperti. Potremmo chiamarla getnumberofopenfiles, get_number_of_open_files oppure getNumberOfOpenFiles. Quale metodo utilizza PHP? Tutti e tre ovviamente! Oltre a questo è opportuno far notare che i nomi dei metodi e delle funzioni non sono case sensitive.

7. Assenza di un framework integrato

Il modello piu' corretto per sviluppare un'applicazione web, sarebbe quello chiamato MVC, dove la parte di visualizzazione, la business logic e la validazione dei dati ed infine l'interazione con il database, sono parti separate del progetto.

Nella maggior parte dei siti scritti in PHP è molto comune trovare sorgenti che includono tutti e tre questi aspetti in un unico file! Poche righe sopra viene fatta la connessione al database, poi c'è una parte di visualizzazione di alcuni dati, verso la metà ci sono le funzioni di validazione ed infine di nuovo altro codice html di visualizzazione. Credo che questo sia il peggiore dei modi di realizzare un'applicazione web. Pensate che sia facile per un grafico dover apportare modifiche alla parte di visualizzazione senza toccare il codice PHP? E viceversa... pensate che sia facile per un programmatore, aggiungere codice PHP senza rischiare di scombinare il layout della pagina?

Altri linguaggi con Ruby o Python ci hanno ormai abituati a framework come Rails e Django, rispettivamente. Per fortuna le cose sono in miglioramento anche su PHP, grazie a framework come CakePHP o Symfony.

8. Mancanza del supporto Unicode

Questa lacuna forse potra' non riguardarci da vicino, visto che il set di caratteri che utilizziamo in Europa ed in America è ampiamente supportato, ma non è certo così per Cina, Giappone ed altre nazioni dove viene utilzzato un set di caratteri e di simboli molto diverso dal nostro. Tramite Unicode è possibile supportare anche questi caratteri. PHP avrà il supporto per Unicode solo nella futura versione 6.

9. Lentezza

Pensate che il Java sia un linguaggio lento? Beh, niente a confronto di PHP! Leggendo questo report si mettono in evidenza le scarse prestazioni di questo linguaggio. Persino Rasmus Lerdorf, il creatore di PHP ammette che non c'è modo di migliorare le prestazioni di PHP. Rasmus tra l'altro sconsiglia persino l'utilizzo dei frameworks sopra citati (CakePHP e Symfony) perchè rallenterebbero inutilmente le prestazioni dei siti web.

10. Estrema facilità di utilizzo

Ammetto che questo ultimo punto possa essere non condiviso da molte persone, si tratta infatti di una mia personalissima opinione. Il fatto che un linguaggio di programmazione sia troppo facile da usare, secondo me puo' presentare anche degli svantaggi. Permette infatti anche a chi ha scarse conoscenze di programmazione, di cimentarsi in progetti, con il rischio poi di far abbassare notevolmente la qualità del codice che si trova in giro. Non è difficile infatti imbattersi in programmi scritti in PHP che all'apparenza possono risultare gradevoli ed accattivanti (magari perchè scritti da persone che principalmente si occupano di web design), ma che sotto sotto sono dei veri e propri pastoni di codice mal scritto.

Conclusioni

A favore di PHP possiamo sicuramente dire che si tratti di un linguaggio molto semplice da imparare ed ampiamente supportato dalla maggior parte dei servizi di hosting in tutto il mondo. A parte queste due motivazioni però, non mi sentirei in alcun modo di consigliarlo per sviluppare un'applicazione web.

Sicuramente qualcuno mi fara' notare che lo stesso blog sul quale sto scrivendo è scritto in linguaggio PHP. Per l'utilizzo che ne devo fare, Wordpress va piu' che bene, almeno per le mie esigenze. Questo non toglie che PHP soffra ugualmente di tutti i problemi che sono stati esposti sopra.

E' mia intenzione che questo articolo sia di avvertimento a chi si sta per avvicinare per la prima volta al PHP o chi già lo utilizza. Ci tengo però al fatto che non contenga imprecisioni, perchè credo che servirebbero solo a screditare la natura stessa dell'articolo. Invito quindi i lettori che rilevassero imprecisioni a segnalarmele, indicandomi dove poter trovare maggiori informazioni per verificare la validità di quanto riportato.

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in