lunedì 31 agosto 2009

Ma allora questo Snow Leopard com'è?

E' uscito venerdì 28 l'atteso nuovo sistema operativo della casa delle mela.
Ora, io non sono un fan del Mac, perché quelle 2 o 3 volte che l'ho provato non mi ci sono trovato a mio agio (sarò storto io, ma che ci posso fare?) però ho amici che osannano Apple.
Mi sto quindi cercando di fare un'idea su come sia in realtà la nuova release di sistema operativo, anche per poterne parlare con un minimo di cognizione di causa, sempre ammettendo però la mancanza di esperienza diretta.
Guardando in giro sono per esempio incappato in questo articolo: ora, capisco che magari ZFS non sia un requisito così fondamentale per il nuovo S.O., ma mi sembra che questa nuova release non abbia introdotto grandi cambiamenti, se non un po' (magari anche un bel po') di velocità. Ma sinceramente, piochè il sistema è completamente a 64 bit non mi sarei aspettato di meno.
Mi preoccupano di più invece alcuni rumors sul fatto che anche il leopardo sarebbe infettabile da malware.
Da Javista incallito quale sono poi, mi fa abbastanza imbestialire che per avere una versione aggiornata di Java sulla mela si debba aspettare lustri interi, e sono anch'io concorde con alcuni commenti a questo articolo sul fatto che il Mac non sia adatto per gli sviluppatori.
Prego chiunque usi il mac di farmi ricredere e se mi dimostrate che posso sviluppare in Java con Eclipse e 1-2 database (PostgreSQL e Firebird per esempio) girerò con la maglietta della mela addosso!

venerdì 28 agosto 2009

PostgreSQL Video

Josh Berkus,
uno dei creatori di PostgreSQL, ci avverte che ci sono oltre 40 ore di video su come funziona PostgreSQL.
Buona Visione!

mercoledì 26 agosto 2009

Google e la digitalizzazione delle biblioteche italiane.

E' ormai da qualche giorno che leggo notizie sulla digitalizzazione delle biblioteche italiane da parte di Google.
Prima Roma, poi, Firenze, poi infine questo.
A me sinceramente il fatto di poter avere la possibilità di consultare gratuitamente le opere non più coperte da copyright piace immensamente.
La cosa che mi da veramente fastidio è che si sia dovuti ricorrere all'elemosina di Google (che poi sarà quello che veramente ci farà i soldi) perché lo stato non ha investito risorse in questo "progetto".
E così i guadagni andranno a qualcun altro, e quindi ci saranno sempre meno fondi destinabili a queste cose. Una bella spirale discendente verso il vuoto più totale.

My 2 cents...

martedì 25 agosto 2009

Agile Development: prime impressioni

Ebbene si, anch'io ho cominciato a guardare verso il fantastico mondo dell'Agile Development.
Innanzitutto: da dove partire?
Direi proprio da qui, cioè dal manifesto per l'Agile Software.

E poi altra domanda: cos'è l'Agile Development?
Se dovessi dirlo in parole povere direi che è un processo di sviluppo software (l'ennesimo?).
In realtà sotto c'è molto di più: diciamo che è un metodo di lavoro che si può adattare a tutte le situazioni, non solo allo sviluppo software.
Questa è però una definizione molto "sfumata", che non definisce in dettaglio cosa ci si aspetta dal'Agile Development.

Facciamoci quindi un'altra domanda Quali sono i principi fondamentali?
Sempre nel manifesto sono dichiarati 12 punti fondamentali.
Ora, per chi è abituato a lavorare "alla vecchia maniera" possono sembrare devastanti, perché viene scardinata la regola base: scrivi un documento di progetto nei più minuti particolari e non muoverti di una virgola da lì!

Nell'Agile Development invece si lavora in maniera iterativa, e si aggiusta il tiro via via che si procede: attenzione però, questo non vuol dire che si debba partire dal voler fare una mela, e si finisca col fare una pera! Fin dall'inizio bisogna essere più che consapevoli di qual'è l'obbiettivo: ciò che può cambiare sono i particolari, che ovviamente emergono via via che la visione del prodotto si fa più chiara.

E' quindi molto più semplice rilasciare con cicli brevi prototipi funzionanti ed aggiornare il tiro su quelli piuttosto che scrivere tonnellate di documenti prima ed arrivare con un prodotto finito al 100% per poi scoprire che non si è centrato esattamente l'obbiettivo perchè non si erano (sia noi come team di sviluppo sia il destinatario dell'applicazione) approfonditi alcuni aspetti.

Bene, e qui finiscono le chiacchiere: prossimo passo da fare è sporcarsi le mani: voglio cioè cercare di mettere in pratica queste "regole" e vedere se sono veramente valide per me.
Ma tutto questo prossimamente su questi schermi.

venerdì 21 agosto 2009

Restare Aggiornati

Anche oggi, vista l'estrema calura, niente argomenti tecnici, o il cervelletto rischia di fondere.
Leggendo qua e la un po' di post, ho trovato un'interessante considerazione su come dovrebbe essere il mestiere dello sviluppatore software.
In breve, Jay Fields, l'autore dell'articolo, dice che un preciso dovere dello sviluppatore è quello di restare aggiornato sulle nuove tecnologie: il tempo che si dedica quindi a questa attività dovrebbe essere inserito nell'orario di lavoro, e non nel fuori orario. Un'esempio lampante è Google, con il suo 20% di tempo libero, che non è, a dire dell'autore, una novità, ma semplicemente l'accettazione di un metodo di lavoro.
Ora, premesso che concordo al 101% con l'articolo, ditemi chi qui in Italia, riesce a lavorare così. Io so solo di tanti dopocena e fine settimana passati a capire come funzionano le cose. Per l'amor di Dio, non le rimpiango, ma magari....

martedì 18 agosto 2009

JPA con database multipli

Mi sono fatto una domanda: supponiamo di avere MOLTI dati da trattare, suddivisi in più di un database. Come si può fare con JPA?
Infatti JPA, di default, punta ad un solo database.
l'EntityManager, cioè il gestore delle Entity, si ottiene attraverso EntityManagerFactory. Ora, usualmente si invoca il metodo EntityManagerFactory.createEntityManager(), senza parametri nè altro, e quindi si ottiene l'EntityManager predefinito.
Si può però usare anche il metodo EntityManagerFactory.createEntityManager(Map map) dove nella map sono specificate le proprietà con cui si vuol creare l'EntityManager.

Viene fatto con Hibernate, ma il concetto è lo stesso.
Questo mi permette di ottenere il risultato voluto, e di implementare una logica custom per la scelta del database.

Una breve storia di Java

E' un po' osannante, però direi che fa il suo effetto...

Tips on Time-Based Partitioning

Josh Berkus ha scritto un interessante articolo sul partizionamento di tabelle in PostGreSQL.
Sono pochi suggerimenti, che magari sembrano scontati, ma che rendono la vita di un DBA molto più semplice.

http://it.toolbox.com/blogs/database-soup/tips-on-timebased-partitioning-33389?rss=1

Benvenuti!

Ho deciso di creare questo blog più per me che per altri.
Mi servirà come repository di pensieri, idee, appunti sull'informatica, mia professione e mia grande passione.
Per chiunque vorrà leggermi, buon divertimento!