Sakuro blog
giovedì, ottobre 28, 2010
venerdì, agosto 06, 2010
martedì, luglio 06, 2010
Worldcup giorni 4 e 5
Una cosa e' certa: il Sud Africa in questi giorni e' e rappresenta l'intero continente, come non potrebbe mai accadere in Europa o anche in Sud America.
sabato, luglio 03, 2010
Worldcup giorni 2 e 3: Arrivo e Soccer City
1 Luglio
La prima impressione del Sudafrica e' un dejavu della Sardegna d'estate: eucalipti, terreno brullo, parecchie scarpate nere perché bruciate da poco.Il tragitto dall'aeroporto all'hotel e' tutto un susseguirsi di bandiere dei 32 paesi che partecipano ai mondiali: su ogni strada, su ogni ufficio. Per strada ragazzi che vendono cappellini, magliette, bandiere, sciarpe. Un sacco di macchine con le bandiere del Sudafrica sulla capotte o messe come rivestimento degli specchietti.
I sudafricani parlano un inglese poco british come accento e hanno l'abitudine di chiedere sempre come stai. Entri in un negozio e la commessa ti chiede: "Morning Sir, how are you?" poi magari non aspetta neanche la risposta, e come un saluto. Oppure: "Hello gentlemen, is everything ok?"
A colazione me lo hanno chiesto in 5.
2 Luglio
Partite di oggi: Brasile Olanda e Ghana Uruguay. La notizia e' obbligatoriamente l'eliminazione del Brasile. Hanno dominato il primo tempo, non sono riusciti a fare il 2-0, poi Felipe Melo ha deciso la partita: autogol e espulsione. Il brasile dopo essere andato sotto ha perso tutte le sue sicurezze, sopratutto difensive, e non e' riuscito a replicare
Invece per me la partita del giorno e' Ghana Uruguay, perche' sono andato a vederla allo stadio! Soccer City e' uno degli impianti nuovi ed e' bellissimo. La partita, sono stato dortunato, e' stata forse non bellissima tecnicamente, ma drammatica e molto molto intensa. Tutta l'Africa, e quindi tutto lo stadio, tifava Ghana. Gia' dal pomeriggio si incontravano in giro sudafricani, con la maglietta dei bafana e la bandiera del Ghana. Allo stadio questo si e' sentito. Nei tempi supplementari il Ghana e' stato spinto all'attacco sopratutto dal pubblico, collezionando calci d'angolo sino a quello che ha causato il rigore. Rigore al 120', sparato da Gyan sulla traversa, Gyan che credo non si dara' pace per il resto dei suo giorni.
Quasi scordavo le vuvu... ALLUCINANTE il chiasso che riescono a combinare, mi chiedo se in campo si senta il fischio dell'arbitro. Alla fin fine preferisco il pubblico che urla il nome della propria squadra o i cori dei tifosi a sto baccano costante, che non si capisce per chi stia parteggiando in quel momento lo stadio.
La prima impressione del Sudafrica e' un dejavu della Sardegna d'estate: eucalipti, terreno brullo, parecchie scarpate nere perché bruciate da poco.Il tragitto dall'aeroporto all'hotel e' tutto un susseguirsi di bandiere dei 32 paesi che partecipano ai mondiali: su ogni strada, su ogni ufficio. Per strada ragazzi che vendono cappellini, magliette, bandiere, sciarpe. Un sacco di macchine con le bandiere del Sudafrica sulla capotte o messe come rivestimento degli specchietti.
Sistemati in hotel, otteniamo l'accreditation per entrare nel headquarter fifa, dove si trova anche l'ufficio di fifa.com. Hotel e ufficio si trovano nel quartiere di Sandton. L'hotel e' dentro un mega maxi centro commerciale che finisce nella Nelson Mandela Square. Gli uffici sono giusto li dietro.Headquarter FIFA dietro Nelson Mandela SquareBanconote sudafricane
La banconota di taglio piu' grosso e' quella da 100 rand e vale circa 10 euro. Ho cambiato 3000 rand e mi hanno dato un malloppo di banconote alto cosi'.
I sudafricani parlano un inglese poco british come accento e hanno l'abitudine di chiedere sempre come stai. Entri in un negozio e la commessa ti chiede: "Morning Sir, how are you?" poi magari non aspetta neanche la risposta, e come un saluto. Oppure: "Hello gentlemen, is everything ok?"
A colazione me lo hanno chiesto in 5.
2 Luglio
Partite di oggi: Brasile Olanda e Ghana Uruguay. La notizia e' obbligatoriamente l'eliminazione del Brasile. Hanno dominato il primo tempo, non sono riusciti a fare il 2-0, poi Felipe Melo ha deciso la partita: autogol e espulsione. Il brasile dopo essere andato sotto ha perso tutte le sue sicurezze, sopratutto difensive, e non e' riuscito a replicare
Invece per me la partita del giorno e' Ghana Uruguay, perche' sono andato a vederla allo stadio! Soccer City e' uno degli impianti nuovi ed e' bellissimo. La partita, sono stato dortunato, e' stata forse non bellissima tecnicamente, ma drammatica e molto molto intensa. Tutta l'Africa, e quindi tutto lo stadio, tifava Ghana. Gia' dal pomeriggio si incontravano in giro sudafricani, con la maglietta dei bafana e la bandiera del Ghana. Allo stadio questo si e' sentito. Nei tempi supplementari il Ghana e' stato spinto all'attacco sopratutto dal pubblico, collezionando calci d'angolo sino a quello che ha causato il rigore. Rigore al 120', sparato da Gyan sulla traversa, Gyan che credo non si dara' pace per il resto dei suo giorni.
Quasi scordavo le vuvu... ALLUCINANTE il chiasso che riescono a combinare, mi chiedo se in campo si senta il fischio dell'arbitro. Alla fin fine preferisco il pubblico che urla il nome della propria squadra o i cori dei tifosi a sto baccano costante, che non si capisce per chi stia parteggiando in quel momento lo stadio.
giovedì, luglio 01, 2010
Worldcup giorno 1: Torino - Johannesburg
Partiti da Torino, volo Lufthansa delle 19:30 per Francoforte. La mattina passata a casa, con Enrico e Marie. Ce la siamo presa comoda, colazione con la macedonia, Marie ha voluto la sua "schiuma di latte" e i biscotti, Enrico ha guardato un po' di cartoni in TV. Poi commissione in banca, dove i due si sono fatti dare i timbri "San Paolo" mentre cercavo di sbrigarmi in fretta.
Gita alla Loia Scura. Su dopo Giaveno, prima di Coazze, dal santuario madonna di Lourdes, facile camminata di 40/45 minuti (a passo di bambini). Nel bosco, poi strada sterrata, incontro con le mucche e il margaro, sempre costeggianod il Sangone. La Loia Scura e una pozza scavata nella roccia da una cascata del Sangone. Splendido posto, bella passeggiata, bimbi che hanno camminato. Ci togliamo scarpe e calze, ci rinfreschiamo ( o congeliamo per meglio dire) i piedi nel torrente e via, si torna a casa. Arriviamo che son le 14:30 e 1- dobbiamo pranzare 2- fare tutti la doccia 3- (tragico) ho ancora i bagagli da preparare!!Tra dubbi (li' e' inverno, che mi porto?), sgridate (ecco, ti porti il giubbotto sporco, lo sapevi da 6 mesi che dovevi partire, lo potevi lavare!) e ficca in valigia alla bella e meglio, i bagagli li ho fatti e l'aereo lo ho preso.
La novità è stata viaggiare in business class, noi amanti dell'economy e habitué del low cost. Già sul volo da Torino a Francoforte, bibite a gogò e come snack, invece dei soliti cracker, prosciutto di Parma, pretzel e mozzarelle al pesto (si, mozzarelle al pesto...). Che il pesto era anche buono, com molto aglio, che ho dovuto subito metterci una birra sopra. Poi a Frankfurt, corridoi lunghissimi, metro interna per andare da un terminal all'altro e la Business lounge. La Business Lounge del gate C16, accessibile solo agli eletti, poltrone, poltroncine, tavolini, free bar, free salatini, free panini, free tutto. Che siccome non sembra mai vero e pare brutto non aprofittarne mi son fatto: panino, macedonia, 3 birre alla spina, salatini, caramelle gommose varie. Poi son stato tentato di intascarmi una scatolette di cioccolatini After Height, ma ho resistito. Tutto questo in 25 minuti netti, tempo ufficiale cronometrato dall'ingresso all'imbarco: corsia preferenziale ovviamente, secondo piano del Boing 747 che ci avrebbe portato a Jo'Burg
Boing
Primo volo intercontinentale in business class: un gioco e una scoperta. La poltrona si puo' reclinare, alzare, modellare in 101 modi diversi. Nel bracciolo è inserito un telecomando con 80 tasti con allegato manuale di istruzioni su come usarlo. In omaggio un beauty case con dentro: dei tappi per le orecchie e una mascherina per gli occhi, un paio di calze, un balsamo per le labbra, spazzolino e dentifricio usa e getta (e sin qui va bene) e infine dei tee!! Cioè quei coni di plastica che si usano nel golf per poggiarvi la pallina prima di colpirla con la mazza. Che Fabio dietro di ma fa "Ma che c'è il campo da golf qui dentro??"
Gita alla Loia Scura. Su dopo Giaveno, prima di Coazze, dal santuario madonna di Lourdes, facile camminata di 40/45 minuti (a passo di bambini). Nel bosco, poi strada sterrata, incontro con le mucche e il margaro, sempre costeggianod il Sangone. La Loia Scura e una pozza scavata nella roccia da una cascata del Sangone. Splendido posto, bella passeggiata, bimbi che hanno camminato. Ci togliamo scarpe e calze, ci rinfreschiamo ( o congeliamo per meglio dire) i piedi nel torrente e via, si torna a casa. Arriviamo che son le 14:30 e 1- dobbiamo pranzare 2- fare tutti la doccia 3- (tragico) ho ancora i bagagli da preparare!!Tra dubbi (li' e' inverno, che mi porto?), sgridate (ecco, ti porti il giubbotto sporco, lo sapevi da 6 mesi che dovevi partire, lo potevi lavare!) e ficca in valigia alla bella e meglio, i bagagli li ho fatti e l'aereo lo ho preso.
La novità è stata viaggiare in business class, noi amanti dell'economy e habitué del low cost. Già sul volo da Torino a Francoforte, bibite a gogò e come snack, invece dei soliti cracker, prosciutto di Parma, pretzel e mozzarelle al pesto (si, mozzarelle al pesto...). Che il pesto era anche buono, com molto aglio, che ho dovuto subito metterci una birra sopra. Poi a Frankfurt, corridoi lunghissimi, metro interna per andare da un terminal all'altro e la Business lounge. La Business Lounge del gate C16, accessibile solo agli eletti, poltrone, poltroncine, tavolini, free bar, free salatini, free panini, free tutto. Che siccome non sembra mai vero e pare brutto non aprofittarne mi son fatto: panino, macedonia, 3 birre alla spina, salatini, caramelle gommose varie. Poi son stato tentato di intascarmi una scatolette di cioccolatini After Height, ma ho resistito. Tutto questo in 25 minuti netti, tempo ufficiale cronometrato dall'ingresso all'imbarco: corsia preferenziale ovviamente, secondo piano del Boing 747 che ci avrebbe portato a Jo'Burg
Boing
Primo volo intercontinentale in business class: un gioco e una scoperta. La poltrona si puo' reclinare, alzare, modellare in 101 modi diversi. Nel bracciolo è inserito un telecomando con 80 tasti con allegato manuale di istruzioni su come usarlo. In omaggio un beauty case con dentro: dei tappi per le orecchie e una mascherina per gli occhi, un paio di calze, un balsamo per le labbra, spazzolino e dentifricio usa e getta (e sin qui va bene) e infine dei tee!! Cioè quei coni di plastica che si usano nel golf per poggiarvi la pallina prima di colpirla con la mazza. Che Fabio dietro di ma fa "Ma che c'è il campo da golf qui dentro??"
giovedì, settembre 13, 2007
Checked Exceptions e Vista
Ovvero dell'essere rassicurato dalle idee comuni
No, checked exceptions e windows vista non sono i correlazione tra loro. E' che
talvolta capita di avere delle sensazioni e poi vedersele confermate da altri che, con maggior autorità e chiarezza, le espongono per farle diventare dei veri e propri punti di vista.
Ecco Hamilton Verissimo sulle Checked Exceptions:
If there’s one thing I hate about java…
Invece su Windows Vista niente meno che Joel Spolsky (link):
No, checked exceptions e windows vista non sono i correlazione tra loro. E' che
talvolta capita di avere delle sensazioni e poi vedersele confermate da altri che, con maggior autorità e chiarezza, le espongono per farle diventare dei veri e propri punti di vista.
Ecco Hamilton Verissimo sulle Checked Exceptions:
If there’s one thing I hate about java…
Invece su Windows Vista niente meno che Joel Spolsky (link):
"I've been using Vista on my home laptop since it shipped, and can say with some conviction that nobody should be using it as their primary operating system -- it simply has no redeeming merits to overcome the compatibility headaches it causes. Whenever anyone asks, my advice is to stay with Windows XP (and to purchase new systems with XP preinstalled)."
martedì, aprile 17, 2007
IE quirk for js window.open
window.open is a common javascript call used to open a new browser window from the current page. The syntax is the following:
var newWin = window.open(url, name, options);
So this should be a perfect call:
But it fails with an "invalid argument" error in IE6. The problem is the '.' character in the name parameter. It seems like IE 6 accepts only letters, numbers and '_' for that parameter, but I couldn't find ANY more info about this. Does anyone have more clues about this??
var newWin = window.open(url, name, options);
So this should be a perfect call:
But it fails with an "invalid argument" error in IE6. The problem is the '.' character in the name parameter. It seems like IE 6 accepts only letters, numbers and '_' for that parameter, but I couldn't find ANY more info about this. Does anyone have more clues about this??
lunedì, aprile 16, 2007
prototype.js su Java Journal
Sul numero 3 di JavaJournal c'è un mio articolo sull'uso di prototype.js per creare applicazioni AJAX . Qui anche un estratto.
mercoledì, aprile 04, 2007
Li Taliano
Oggi in treno ero seduto a fianco due ragazze. E ridevano tra di loro delle email e delle telefonate che ricevono da fornitori, clienti, capi, referenti. Ecco alcune perle:
"Q'uando sarà pronta sarà spedita"
"Ho appena evacuato il suo ordine"
"Sono obesa di lavoro"
(parlando di merce da ritirare)"costei è pronta da ritirare"
Purtroppo siamo arrivati in fretta, altrimenti le risate sarebbero continuate!
"Q'uando sarà pronta sarà spedita"
"Ho appena evacuato il suo ordine"
"Sono obesa di lavoro"
(parlando di merce da ritirare)"costei è pronta da ritirare"
Purtroppo siamo arrivati in fretta, altrimenti le risate sarebbero continuate!
lunedì, febbraio 19, 2007
Code Gallery: defensive coding!
Nothing frights more a developer than a NPE! A C# reporting app, period: year 2007:
1- instantiate an object with a new Something()
2- don't rely on "new"! what if it doesn't work? (what if the moon crashes on hearth, I'd reply...)
3- test the newly instantiated object: is it null?
4- if yes... That's the unexpected case, I think! our man had to be in real trouble: what to do NOW? Here comes the artist touch and sensibility, if it is null... well... simply... return null!
A great little cameo: how to look busy and fill of dust a 3 lines method.
public AReport generateReport(...)Comment: how to smartly avoid a (brrr!) feared NPE! Here's the clever algorithm, stated after long mumble numble the author:
{
//do somethig
AReport report= new AReport(...);
if ( report != null )
{
return report;
}
else
{
return null; //!!!!
}
}
1- instantiate an object with a new Something()
2- don't rely on "new"! what if it doesn't work? (what if the moon crashes on hearth, I'd reply...)
3- test the newly instantiated object: is it null?
4- if yes... That's the unexpected case, I think! our man had to be in real trouble: what to do NOW? Here comes the artist touch and sensibility, if it is null... well... simply... return null!
A great little cameo: how to look busy and fill of dust a 3 lines method.
mercoledì, febbraio 14, 2007
Fisica dello stato solido al Politecnico
Io mi sono laureato al Politecnico di Torino nel 1999. Oggi, dopo ben 8 anni, mi è capitato di entrarci di nuovo, da un ingresso un po' laterale, di quello che pochi usano. E' ho scoperto che il cartello misterioso, che tante domande ha sollevato è ancora lì. Qualcuno sa dare qualche significato?
Jug Torino Meeting 21 - febb - 2007
La prossima settimana tengo un seminario al meeting mensile del JugTorino!
Tutti dettagli qui e qui sotto il programma:
JugTorino Meeting
21 - febbraio - 2007
Presso CSP SpA Corso Svizzera 185, 10149, Torino
Fabbricato 1, Scala H, 2° Piano
PROGRAMMA:
h18:30 Check-In
h18:45 JugTO Quickie:UML for Dummies
Impara a leggere e scrivere class e sequence diagram in pochi minuti!
Bruno Bossola, JUGTorino
h19:00 JugTO Hands-On: Design Patterns by Examples: il Decorator
Come aggiungere comportamenti e responsabilità alle classi esistenti senza modificarle. Entriamo nel JugTO Lounge Bar per fare pratica!
Domenico Ventura, JUGTorino
h20:00 JugTO Pizzata!
INFO:
http://www.jugtorino.it/vqwiki/jsp/Wiki?MeetingFebbraio2007
meetingfebbraio@jugtorino.it
Tutti dettagli qui e qui sotto il programma:
JugTorino Meeting
21 - febbraio - 2007
Presso CSP SpA Corso Svizzera 185, 10149, Torino
Fabbricato 1, Scala H, 2° Piano
PROGRAMMA:
h18:30 Check-In
h18:45 JugTO Quickie:UML for Dummies
Impara a leggere e scrivere class e sequence diagram in pochi minuti!
Bruno Bossola, JUGTorino
h19:00 JugTO Hands-On: Design Patterns by Examples: il Decorator
Come aggiungere comportamenti e responsabilità alle classi esistenti senza modificarle. Entriamo nel JugTO Lounge Bar per fare pratica!
Domenico Ventura, JUGTorino
h20:00 JugTO Pizzata!
INFO:
http://www.jugtorino.it/vqwiki/jsp/Wiki?MeetingFebbraio2007
meetingfebbraio@jugtorino.it
lunedì, febbraio 12, 2007
Scrivere
Ho scritto una prefazione ad un libro che non ho mai letto...
lunedì, febbraio 05, 2007
Code Gallery: create and destroy
Known as "stable" code, a so called J2EE web application, period: year 2005:
Comment: a great example of coding for obfuscation, which states: "never ever will you clearly express your intention through code".
Why creating a new cell and destroying it the line after? And why that subtle test, which checks for srcCol, but creates a new cell at destCol? The artist leaves us slightly dazed and confused, while thinking of his wisdom.
//used in the creation of some kind report
public void shiftColumn(...)
{
//do somethig
if ( isBlankCell(table, row, srcCol) )
{
cell = row.createCell((short) destCol);
row.removeCell(cell);
}
//do somethig else
}
Comment: a great example of coding for obfuscation, which states: "never ever will you clearly express your intention through code".
Why creating a new cell and destroying it the line after? And why that subtle test, which checks for srcCol, but creates a new cell at destCol? The artist leaves us slightly dazed and confused, while thinking of his wisdom.
giovedì, febbraio 01, 2007
Code Gallery: error messages
Production code, unknown artist, VB school, period: beginning of 2000th:
Public Function getGridURL(...,ByVal values As xxx,...) As String
Dim url As String
-- Do some stuff
If values Is Nothing Then
url = "ERRORE PIRLA" -- italian for "FUCKING ERROR"
Else
--Do other stuff
End If
Return url
End Function
Comment: a little masterpiece for its conciseness, the clean stroke and the ability to crash the whole application.
Public Function getGridURL(...,ByVal values As xxx,...) As String
Dim url As String
-- Do some stuff
If values Is Nothing Then
url = "ERRORE PIRLA" -- italian for "FUCKING ERROR"
Else
--Do other stuff
End If
Return url
End Function
Comment: a little masterpiece for its conciseness, the clean stroke and the ability to crash the whole application.
Il Cardinale Poletto
Ecco uno splendido campionario delle posizioni della chiesa cattolica. Difficile capire in quale mondo vivono (non su questo sicuramente):
Articolo [La Stampa]
Articolo [La Stampa]
venerdì, gennaio 26, 2007
Surviving a .Net web project (1 episode)
(from a java developer perspective...)
It happened: I was asked to build a webapp using .Net, and the old 1.1 version, too!
Discarded (without a real evaluation...) VB.Net, I went discovering C#, hoping it would be more comfortable for a Java developer.
So I downloaded the .Net framework, installed Visual Studio for .Net (hey, does anyone know some sort of plugin for Ecplise or some other C# IDE to use?) and started with some HelloWorld, HelloEverybody and so on.
First reaction: VStudio sucks! really! Particularly if you got used to Eclipse. Or maybe I' m not good in using it...
Some examples:
- It opens all files in tabs, like Eclipse, like UltraEdit, like PSPad, but... No close all command!
- Absolutely no navigation through code (like ctrl+click in Eclipse): just go to definition
- No refactoring utilities at all: cannot automatically rename even a local variable!
C#, in version 1.1 is quite like Java, no especial oddities, apart for property definition in interfaces, but done with an expressive syntax:
string AProperty { get; set:}
More to come, stay tuned!
It happened: I was asked to build a webapp using .Net, and the old 1.1 version, too!
Discarded (without a real evaluation...) VB.Net, I went discovering C#, hoping it would be more comfortable for a Java developer.
So I downloaded the .Net framework, installed Visual Studio for .Net (hey, does anyone know some sort of plugin for Ecplise or some other C# IDE to use?) and started with some HelloWorld, HelloEverybody and so on.
First reaction: VStudio sucks! really! Particularly if you got used to Eclipse. Or maybe I' m not good in using it...
Some examples:
- It opens all files in tabs, like Eclipse, like UltraEdit, like PSPad, but... No close all command!
- Absolutely no navigation through code (like ctrl+click in Eclipse): just go to definition
- No refactoring utilities at all: cannot automatically rename even a local variable!
C#, in version 1.1 is quite like Java, no especial oddities, apart for property definition in interfaces, but done with an expressive syntax:
string AProperty { get; set:}
More to come, stay tuned!
mercoledì, gennaio 17, 2007
Checked vs Unchecked Exception
Una delle principali differenze rispetto a Java che ho trovato lavorando in C#, è l'assenza di Checked Exceptions. Cioè in C# tutte le eccezioni sono unchecked.
Mentre altre differenze mi convincono oppure no, di questa non riesco ad avere una opinione precisa.
Sono (o ero?) abituato a considerare le Checked Exception una BUONA COSA, ma..
Insomma, non riesco ad avere una opinione precisa:
per alcuni versi le checked exception mi sembrano utili e necessarie, per altri mi dico (forse anche a causa dell'abuso che ne fa il JDK) che se ne farebbe volentieri a meno.
Mentre altre differenze mi convincono oppure no, di questa non riesco ad avere una opinione precisa.
Sono (o ero?) abituato a considerare le Checked Exception una BUONA COSA, ma..
- Ad esempio ho visto che per l'integrazione e il supporto di Hibernate in Spring, la classe HibernateTemplate una delle cose principali che fa è trappare tutte le checked exception di Hibernate e rilanciarle come unchecked.
- Ho visto (e scritto anche) troppo codice Java con metodi che rilanciano 7,8,9 eccezioni diverse, che si propagano, si propagano, si propagano, fino al catch/finally del main...
- Ho letto questo:
http://www.artima.com/intv/handcuffs.html
dove uno degli architetti di C# spiega i perché non ci siano checked exception in C#
Insomma, non riesco ad avere una opinione precisa:
per alcuni versi le checked exception mi sembrano utili e necessarie, per altri mi dico (forse anche a causa dell'abuso che ne fa il JDK) che se ne farebbe volentieri a meno.
mercoledì, ottobre 18, 2006
Ecco la sensazione che ogni tanto si prova a fare questo mestiere
giovedì, ottobre 05, 2006
In edicola
Stamane mi sono fermato in edicola per comprare il giornale.
"la Repubblica" dico.
"sono in sciopero" mi rispondono.
Alché penso di comprare il Corriere (della Sera, intendo).
Lo davano solo in omaggio con la gazzetta dello sport.
"la Repubblica" dico.
"sono in sciopero" mi rispondono.
Alché penso di comprare il Corriere (della Sera, intendo).
Lo davano solo in omaggio con la gazzetta dello sport.
giovedì, agosto 03, 2006
OOP explained: il polimorfismo
Secondo me la programmazione orientata agli oggetti (OOP) non è difficile da capire: sono gli esempi che normalmente vengono usati che non spiegano bene i concetti.
Qui invece il polimorfismo è invece spiegato come non avrei mai immaginato...
Qui invece il polimorfismo è invece spiegato come non avrei mai immaginato...
giovedì, giugno 29, 2006
Interfacce e metodi "opzionali" :-((
Ieri dedicavo un po' di tempo alle slide per il corso Java Beginners del JugTO [1]... e mi sono accorto una volta in più della mia ignoranza.
Ad esempio non conoscevo il fatto che le interfacce potessero avere dei metodi opzionali.
Chi è più esperto e ferrato di me ha già capito che sto andando a sparlare del collection framework :-):
Ad esempio queste istruzioni, perfettamente legali per il compilatore, a runtime riservano delle sorprese:
Set aSet = someHashMap.keySet();
//BANG:UnsupportedOperationException
aSet.addAll(someCollection);
A me sta cosa piace proprio per niente:
- rende difficile e "pericoloso" programmare per interfacce
- è diseducativa (lo fanno nel jdk... vuoi che non possa farlo io??)
Possibile che il JDK continui a riservare sorprese di questo tipo?
Ad esempio non conoscevo il fatto che le interfacce potessero avere dei metodi opzionali.
Chi è più esperto e ferrato di me ha già capito che sto andando a sparlare del collection framework :-):
"All of the modification methods in the collection interfaces are labeled optional. Some implementations may not perform one or more of these operations, throwing a runtime exception (UnsupportedOperationException) if they are attempted. Implementations must specify in their documentation which optional operations they support."
Ad esempio queste istruzioni, perfettamente legali per il compilatore, a runtime riservano delle sorprese:
Set aSet = someHashMap.keySet();
//BANG:UnsupportedOperationExce
aSet.addAll(someCollection);
A me sta cosa piace proprio per niente:
- rende difficile e "pericoloso" programmare per interfacce
- è diseducativa (lo fanno nel jdk... vuoi che non possa farlo io??)
Possibile che il JDK continui a riservare sorprese di questo tipo?
venerdì, dicembre 09, 2005
Java StrictFP
Non so quanti conoscono il modificatore
se si vuole che il codice che usa aritmentica floating point sia consistente su tutte le piattaforme, bisogna che sia strictFP.
(domanda retorica: come è quindi dichiarata la classe Math?? :-))
strictfp
in java. E' un modificatore che può essere anteposto alla dichiarazione di metodi o di intere classi. Questa è la definizione che ne da il Java Language Specification Second Edition:Within an FP-strict expression, all intermediate values must be elements of the float value set or the double value set, implying that the results of all FP-strict expressions must be those predicted by IEEE 754 arithmetic on operands represented using single and double formats.Questo, all'atto pratico, comporta principalmente una cosa:
se si vuole che il codice che usa aritmentica floating point sia consistente su tutte le piattaforme, bisogna che sia strictFP.
(domanda retorica: come è quindi dichiarata la classe Math?? :-))
giovedì, ottobre 13, 2005
Ajax in action
E' uscito il primo libro su Ajax (qui). Ovviamente non si tratta del noto detersivo, ma di una nuova tecnica, asincrona, di sviluppo web, molto usata ultimamente, sopratutto in Google. Per chi vuole saperne di più:
Ajax: A New Approach to Web Applications
The Web Application Leap carina la frase:
E' uscito il primo libro su Ajax (qui). Ovviamente non si tratta del noto detersivo, ma di una nuova tecnica, asincrona, di sviluppo web, molto usata ultimamente, sopratutto in Google. Per chi vuole saperne di più:
Ajax: A New Approach to Web Applications
The Web Application Leap carina la frase:
Believe it or not, you have Microsoft and ActiveX to thank for XMLHTTPRequest. Gasp. Wheeze.
lunedì, ottobre 20, 2003
lunedì, luglio 28, 2003
Sempre più ardito e spregiudicato
Grazie a .mau. per questo prezioso post. Non si può non ammirare lo sprezzo del pericolo (e del buon senso).
mercoledì, luglio 23, 2003
Per la serie: MAI PIU' SENZA
Un utile attrezzino per la cucina. Devo ammettere che ci ho messo un attimo a capire a cosa serva e come si usi. Ma per _soli_ 16,95$ è vostro!!
Un utile attrezzino per la cucina. Devo ammettere che ci ho messo un attimo a capire a cosa serva e come si usi. Ma per _soli_ 16,95$ è vostro!!
mercoledì, luglio 09, 2003
Esiste!
Io pensavo esistesse solo nelle barzellette o al limite nelle commedie. Lo ritenevo come il classico caso da portare come cattivo esempio nelle conversazioni, ma che infine in pochi l'avessero scorta dal vivo.
Invece oggi l'ho vista!! Dal finestrino del tram su cui andavo al lavoro la ho potuta osserva per almeno 2 minuti buoni. Era un bell'esemplare di sciura truccans in semafuro. Col suo bel beauty case sulle ginocchia, durante un rosso è riuscita ad passarsi mascara, rossetto e fondotinta. Il tutto come detto in circa due minuti. Quello che ovviamente mi chiedo è: ma arriverà in ufficio in orario grazie a quei due minuti risparmiati a casa??
Io pensavo esistesse solo nelle barzellette o al limite nelle commedie. Lo ritenevo come il classico caso da portare come cattivo esempio nelle conversazioni, ma che infine in pochi l'avessero scorta dal vivo.
Invece oggi l'ho vista!! Dal finestrino del tram su cui andavo al lavoro la ho potuta osserva per almeno 2 minuti buoni. Era un bell'esemplare di sciura truccans in semafuro. Col suo bel beauty case sulle ginocchia, durante un rosso è riuscita ad passarsi mascara, rossetto e fondotinta. Il tutto come detto in circa due minuti. Quello che ovviamente mi chiedo è: ma arriverà in ufficio in orario grazie a quei due minuti risparmiati a casa??
martedì, luglio 08, 2003
Anche la miseria pare abbia le sue mode. A Torino, come in tutte le città italiane credo, è abbastanza facile incontrare al semaforo i lavavetri: si offrono di detergere il tuo parabrezza e in cambio gli si offre qualche moneta.
Ma da qualche tempo c'è una nuova tendenza nella miseria metropolitana. Al semaforo ti viene incontro una signora di una certa età, oppure un giovanotto magro oppure ancora una ragazza sulla trentina. Hanno in mano un piccolo cartello di cartone con un messaggio in italiano "Sono povera, tre bambini, auitatemi per mangiare", o ancora "Non trovo lavoro, ho tre bambini a casa, aiutatemi per favore". I bambini sono sempre tre, ho notato. Chiedono anche loro qualche spicciolo. Da quest'ultima moda della miseria sono esclusi i nordafricani, ormai troppo legati al mestiere di lavavetri per essere a' la page.
Ma adesso a queste due strategie per raggranellare qualche spicciolo si è aggiunta l'ultimo movimento (almeno per Torino):
i suonatori di fisarmonica sui mezzi pubblici. Arrivano in due o tre, quasi sempre bambini o adolescenti, suonano qualche motivetto sull'autobus o tram, chiedono un obolo poi scendono. Non li avevo mai visti, poi di punto in bianco qualche mese fa sono apparsi su tutte le linee GTT. L'ultima moda della disperazione?
Ma da qualche tempo c'è una nuova tendenza nella miseria metropolitana. Al semaforo ti viene incontro una signora di una certa età, oppure un giovanotto magro oppure ancora una ragazza sulla trentina. Hanno in mano un piccolo cartello di cartone con un messaggio in italiano "Sono povera, tre bambini, auitatemi per mangiare", o ancora "Non trovo lavoro, ho tre bambini a casa, aiutatemi per favore". I bambini sono sempre tre, ho notato. Chiedono anche loro qualche spicciolo. Da quest'ultima moda della miseria sono esclusi i nordafricani, ormai troppo legati al mestiere di lavavetri per essere a' la page.
Ma adesso a queste due strategie per raggranellare qualche spicciolo si è aggiunta l'ultimo movimento (almeno per Torino):
i suonatori di fisarmonica sui mezzi pubblici. Arrivano in due o tre, quasi sempre bambini o adolescenti, suonano qualche motivetto sull'autobus o tram, chiedono un obolo poi scendono. Non li avevo mai visti, poi di punto in bianco qualche mese fa sono apparsi su tutte le linee GTT. L'ultima moda della disperazione?
giovedì, luglio 03, 2003
Press Clippings
Oggi mi tocca una piccola rassegna stampa, sopratutto internazionale, sulle gesta del "nostro".
Dalla CNN:
Germany demands Nazi jibe apology
Berlusconi's Nazi jibe not his first gaffe
Dal Financial Times:
Berlusconi insult is latest in long line of gaffes
Da quel covo di rossi manovrati dall sinistra italia che è diventato ormai The economist:
Silvio Berlusconi Unfit to lead Europe
The Italian prime minister is not the man to speak for the European Union
Berlusconi’s blunder
By comparing a German politician to a Nazi camp commandant, Silvio Berlusconi has made an absurd start to Italy’s presidency of the European Union
Mi fermo per carità di patria.
Sarà anche vero che all'estero sono prevenuti nei nostri confronti e che alcuni attacchi siano stati eccessivi o pretestuosi, ma in questo caso direi che ci stiamo subendo meritatamente, purtroppo...
lunedì, giugno 16, 2003
Trek: Col di Thures
Sabato bella e facile gita in montagna: i laghetti del col di Thures. Da Bardonecchia si va in macchina sino alla Valle Stretta (direzione Melezet), alla sbarra si lascia la macchina.
Poi si parte dal Rifugio III Alpini e si seguono le indicazioni per il Col di Thures. Il sentiero parte in salita e allo scoperto per i primi cento metri, poi si inoltra nel bosco e le pendenze non sono mai eccessive. Si arriva dopo circa 1h ad una falsopiano che si passa e dopo l'ultima salitella si arriva al lago di Thures. Se si sale ancora sulla sinistra si trova il secondo lago, mentre lasciando il laghetto sulla destra si può salire alla Guglia Rossa (o L'Aiguille Rouge).
Partenza: Rifugio III Alpini , 1790 m.
Arrivo: lago di Thures, 2189m
Io e Monika ci abbiamo messo circa 1h e 15min
Evoluzioni politiche
Oggi segnalo due articoli, anzi uno lo copio perché sul sito del corriere gli articoli non durano tanto.
1) Eugenio Scalfari su Repubblica.it. Da rimarcare la chiusura:
2) Ernesto Galli della Loggia sul Corriere della Sera. Lo riporto per intero:
Il governo, Berlusconi e i pannicelli caldi
ULTIMO AVVISO PER IL MEDIATORE
di ERNESTO GALLI DELLA LOGGIA
Il governo Berlusconi sembra essere arrivato all’ultima stazione: quella, per intenderci, dopo la quale c’è solo il capolinea. Un risultato elettorale mediocre (anche se tutt’altro che rovinoso) ha improvvisamente illuminato tutte le cose che fin qui non hanno funzionato e tutti i motivi che hanno impedito e impediscono il loro funzionamento. Si tratta - ed è bene dirlo subito come premessa - di una situazione di fronte alla quale i rimedi annunciati («vertici», «consiglio di gabinetto», «rimpasto», «tagliando»), oltre ad avere un suono alquanto grottesco, rievocativo di stagioni politiche che credevamo finite per sempre, appaiono privi di qualunque efficacia: i malanni seri, infatti, non si curano con i pannicelli caldi. I malanni del governo sono almeno tre. Il primo riguarda la sua composizione. Molti ministri e sottosegretari, perlopiù di Forza Italia e della Lega, non hanno spessore politico e autorevolezza personale. Appaiono perennemente incerti, incapaci di iniziative, confermando in tal modo la decisione di chi li ha voluti al loro posto solo perché fedeli e obbedienti. Ma agli italiani della loro fedeltà e obbedienza importa assai poco. Quel che conta è che così l’immagine dell’esecutivo e la sua capacità di dialogare con il Paese sbiadiscono e svaniscono progressivamente.
Il secondo malanno riguarda le promesse elettorali non mantenute. Per la stragrande maggioranza dei cittadini il carico fiscale è rimasto sostanzialmente invariato: che poi per alcune categorie sia invece diminuito è solo motivo di sconcerto per tutte le altre. Egualmente, il governo non ha fin qui messo mano ad alcuna seria riforma dell’ordine giudiziario. Anche qui: sono andati subito in porto gli interventi che favorivano direttamente il premier e i suoi amici; di quelli che invece sarebbero dovuti andare a beneficio della collettività non se n’è fatto nulla. Allo stesso modo è fin qui caduto nel dimenticatoio il solenne impegno preso ripetutamente da Berlusconi di sanare il conflitto di interessi che lo vede coinvolto in prima persona. È bene su questo punto essere chiari: anche chi quel conflitto non glielo ricorda ogni giorno tuttavia di esso non si scorda mai, non può scordarsi mai.
Il terzo non è un malanno, è soprattutto un problema: si tratta della leadership di Berlusconi. Al presidente del Consiglio non è ancora riuscito di trasformarsi da padrone elettorale della sua coalizione in suo effettivo padrone politico. La sua personalità - che pure ha modo di rifulgere quando può muoversi in piena libertà nella dimensione istrionico-personale, come nel caso della politica estera - appare invece spegnersi quando si entra nell’ambito della politica interna. Qui egli svolge sì un ruolo di mediazione (come farà sicuramente anche stavolta), ma si tratta di una mediazione per così dire sempre al ribasso, incapace di rappresentare una sintesi superiore, di inserire tale sintesi in una prospettiva dotata di qualche consistenza ideale e incapace altresì di alimentare uno slancio politico forte.
Dunque una mediazione che finisce per esaurirsi rapidamente in se stessa, proprio perché soltanto pura e semplice mediazione. Berlusconi appare, infatti, incapace di decidere davvero. Ancora peggio: l’impressione che comunica all’esterno è che su quasi tutto ciò che non riguarda le sue personali necessità egli non abbia un’opinione precisa, o meglio un’opinione per la quale sia disposto a impegnare davvero se stesso. La parabola del governo è a un punto critico: più che di mediazioni oggi c’è bisogno di scelte, e le scelte non può che farle il presidente del Consiglio. Lui ha vinto le elezioni, e dunque scelga e governi, se è capace.
martedì, giugno 10, 2003
Niente resterà impunito
Era il titolo di una famosa rubrica di Cuore che prendeva di mira le insegne più idiote. Io ne ho due da segnalare:
Scarpe diem: negozio di scarpe, visto ad Avigliana (TO)
Il business del panino: paninoteca, Via Nizza Torino
SIGH! mi viene da piangere
Iscriviti a:
Post (Atom)