05 July 2009

Schemi di Scheme

Avevo gia' introdotto Scheme e il SICP.

Ora che abbiamo superato le "banalita'", si iniziano a discutere concetti interessanti. Ad esempio, nel 2.4 praticamente viene spiegato come si esegue una conversione di tipo.

Concetti gia' noti in C, ma non da questa prospettiva! Ad esempio, la conversione di tipi viene e la suddivisione dei programmi vengono fatte in modo molto piu' grezzo (Scheme e' un linguaggio molto minimale, per questo va bene nello studio dei linguaggi).

Praticamente si arriva a fare a mano il dispatching delle funzioni di conversione :) Cosa abbastanza interessante.

Sebbene tante cose che scopro in Scheme siano presenti in altre forme anche in C e C++ (ad esempio, in C non ci sono le higher-order functions, ma i puntatori a funzione permettono di usarle come tali), il metodo stesso con cui si programma in Scheme mi attira molto.
La programmazione funzionale, insomma.

Ad esempio, l'uso dei let nel codice introduce un nuovo modo di vedere gli scope, cosa che in C non si usa. Quando mai vedete codice tipo il seguente?

int foo(int bar, float baz)  {
{ // EH?
int tmp = bar * 2;
if (tmp < 42)
baz -= tmp / 3.0;
else
baz += tmp / 3.0;
} // E queste??
baz *= 3.14159265;
return ceiling(baz);
}

(E' codice inutile eh :D Non cercateci dietro matematica sensata.) Questo sarebbe un uso corretto degli scope: tmp vive tra quella coppia di parentesi graffe. In scheme, il lavoro delle parentesi graffe (e della dichiarazione di tmp) la fa let. Ed e' naturale, come modo di fare. Ma implica un sacco di cose graziose: il codice e' piu' strutturato, contiene piu' informazioni (viene impressa una semantica solitamente trascurata), quindi un compilatore potrebbe, ad esempio, ottimizzare in modo migliore il codice.

Anzi: ammettendo un compilatore "scrauso" (che non analizza a priori lo scope delle variabili), questa sarebbe gia' una ottimizzazione: riducendo lo scope di tmp, si evita che quell'oggetto persista in memoria. La chiusura delle graffe corrisponde ad un "ora quello che ho creato qui dentro non mi serve piu', ottimizza tu come preferisci".

Questo e' bene, perche' si sta dando al compilatore una informazione preziosa.
Ma in scheme, che le variabili non sono tipizzate e dichiarate in questo modo, questo modo di fare viene quasi "imposto", quindi il codice e' strutturato per natura.

Lo dico cosi', di fretta, ma ai miei occhi e' la cosa piu' importante: teniamo presente che Scheme e' un linguaggio per la manipolazione simbolica :) A voi le conclusioni.

Stay --sync

04 July 2009

OMGIGP - Lo spot di IE8

La mia guerra contro Micorosft e' finita tempo fa. Microsoft non e' il male, e' solo un'azienda che funziona alla cazzo. E ha un monopolio. Il che rende tutto quello che fa pessimo. E le buone cose che fa, nessuno se le caga, nessuno ringrazia mai.

L'ultima cosa che mi ha fatto pensare a questa degradante situazione, e' stata la reazione allo spot di Internet Explorer 8. (Spero che rimanga online).

A me e' piaciuto molto. Anzi, a mio avviso e' stato una delle poche pubblicita' di microsoft a piacermi.
E' ironica, e' generica, non attacca la concorrenza, evidenzia una feature specifica che puo' interessare molto al pubblico, e lo fa in un modo totalmente non convenzionale, osa tantissimo, da un messaggio fortissimo e lo fa con humor.

Ora, magia delle magie, qualcuno arriva e si lamenta perche' vede questa che vomita?? Dopo che Hollywood ha fatto del vomito un buisness per decine di film demenziali? Ma per favore.

Se ci fosse stato scritto Mozilla (o Apple), anziche' Microsoft, probabilmente le reazioni sarebbero state molto, molto piu' positive... Solo che questo spot e' bello e chi deve fare la sua Guerra Santa contro Microsoft doveva pur aggrapparsi a qualcosa per criticarlo.

Stay --sync

29 June 2009

Grass brush for The GIMP

Well, since I could not find a decent brush for random grass, I did it. Here a sample.
Note that light comes from left.


Downloads:

Hope you like it :)

Stay --sync

25 June 2009

Macchine: l'essenza dell'essere umano.

Prima di cominciare, vi dico due cose veloci:

  1. HTC Hero sembra proprio bello.
  2. Odio tutta quella gente che fa causa a Google con scuse assurde solo perche' e' piena di soldi e si aspettano di strizzarla un po'. Mi riferisco al caso in cui Google viene denunciata per bullismo. Si, e' ridicolo, eppure in Italia succede anche questo. Se fossi io a fare le leggi, farei una legge "no idiozie" che darebbe multe salate a chiunque facesse causa ad altri per ragioni cosi' ridicole.
Ciancio alle bande. Quello che seguira' sara' un non-troppo-profondo-ma-sicuramente-lungo trattato sul perche' penso che sia necessario fare ricerca sull'IA forte. Quindi armatevi di caffe' e tanta voglia :D

Rinfresco un po' la memoria ricordando che la Strong-AI, Intelligenza Artificiale Forte, e' quello che intendiamo per "computer realmente pensante", ovvero un computer che e' realmente intelligente, che capisce, che impara concetti nuovi, cresce, concepisce nuove idee. Inoltre e' abbastanza comune pensare che nell'IA forte il computer abbia coscienza di se': sappia di se' e del suo ruolo tra noi. Questo solleva un sacco di domande interessanti, che vedremo dopo.

Per dovere di cronaca, dico che l'IA Forte si contrappone all'IA Debole - Weak AI - che e' attualmente l'obbiettivo della stragrande maggioranza delle ricerche nel campo. Essa e' quella branca dell'IA che non si preoccupa di creare computer pensanti, ma solo di creare macchine che siano "furbe" perche' noi le abbiamo progettate bene. Non devono capire mille cose: esse sanno fare una cosa sola, ma molto bene. Vi porto un esempio storico: se noi diamo ad un computer tutte le informazioni su tutte le malattie note, e programmiamo molto bene quel computer, lui sara' in grado di fare diagnosi (e quindi predire qualcosa) meglio di dottori veri. Questo perche' alcuni lavori si possono svolgere "meccanicamente" e il buon successo nel lavoro deriva solamente dalla quantita' di informazione accumulata negli anni (l'esperienza).
Pero' la macchina non ha fantasia, ne' intuito ne' creativita' ne' pensiero alternativo. Una IA Debole non potrebbe mai fare il lavoro di Dr. House.

Scommetto che l'IA Debole sembra innocua. E invece non lo e' affatto. Gia' essa ha conseguenze gravi sulla nostra societa', tanto che partiro' da esse per fare un'analisi che si basa sulla realta' dei fatti.
Tanto per cominciare: sapete che 30 o 40 anni fa, molte persone reputavano impossibile che un computer battesse a scacchi un uomo? E invece, grazie alla ricerca sull'IA Debole, Deep Blue batte' per la prima volta il pluri campione mondiale Garry Kasparov. A me e' sempre parso ovvio (sin da piccolo, giuro) come non esistesse il paragone: i computer sono eccezionalmente potenti e rapidi, tanto che nessun uomo potra', ad un certo punto della storia, competere con una macchina (curioso come noi siamo capaci di creare macchine piu' potenti di noi, ma non siamo in grado di migliorarci piu' di loro :).

Ecco il primo problema: Kasparov, poverino, divenne l'ultimo baluardo dell'umanita'. La sua sconfitta rappresento' la sconfitta degli uomini sulle macchine. E non e' poco! Benche' poi gli uomini abbiano superato abbastanza facilmente la sconfitta (almeno, cosi' mi pare, visto che milioni di persone giocano a scacchi e vengono battuti dalle macchine senza lamentarsi troppo).

Pero' e' interessante notare come l'uomo cerchi di battere se' stesso, creando macchine sempre piu' potenti, eppure sia cosi' legato alla sua definizione di essere dominante sulla terra. Lo siamo? E Dio e' onnipotente? Noi, creatori di macchine, siamo un po' degli dei... Noi creiamo cose al nostro servizio, ma siamo in grado di creare cose piu' brave e capaci di noi! Grazie alla ragione, grazie alla nostra comprensione delle cose. E se Dio ci avesse creati e ci avesse fatto meglio di lui? E' un punto di vista interessante :) Magari siamo stati noi ad uccidere Dio e non lo sappiamo.

Fermi un attimo. Torniamo all'IA Debole. L'esempio degli scacchi non e' isolato: i computer, e in particolare le applicazioni piu' "intelligenti", quelle che cercano di togliere all'uomo i suoi primati nel fare qualcosa, sono viste male dalla societa' in cui si presentano.
I sistemi esperti (come quello delle diagnosi) sono un esempio fantastico: crei un computer che assuma la conoscenza degli uomini e poi faccia il lavoro al posto loro. Cosa dovrebbe fare un medico, nel vedere che un computer e' piu' bravo di lui nel fare le diagnosi? A cosa sono serviti tutti quegli anni di studi ed esperienza e malattie schifosissime viste in prima persona? A niente? Il povero dottore sicuramente cadra' demoralizzato. L'avanzata delle macchine e' inevitabile: fanno meglio di noi le cose che noi capiamo meglio di loro.

Qualcuno di veramente radicale potrebbe mettersi a combattere le macchine in prima persona: no alla ricerca, no all'evoluzione dei computer! E' gia' capitato, ad esempio con Weizenbaum: creo' ELIZA, un programma che era in grado di simulare un interlocutore umano. Alcune persone non riconobbero la differenza tra il programma e gli uomini. Weizenbaum penso' che questo era un fatto terribile (lo e'?) e divenne un forte critico nei confronti dell'IA.

Eppure non tutto e' perduto: la soluzione piu' intelligente e' mettere da parte l'orgoglio e convivere, adattarsi. Si ovvio, un medico studia decine di anni per diventare sufficientemente bravo, ma una macchina non sa capire cio' che e' fuori dagli schemi. Un umano puo' farlo. Inoltre, la macchina non arriva dal nulla: essa e' l'insieme di studi di molte altre persone, probabilmente - mettendoli assieme - una macchina e' il risultato di secoli di studi, tra medici e programmatori.

E poi, una macchina non risolve tutti i problemi. Il nostro dottore frustrato puo' comunque aiutare i suoi pazienti, puo' consolarli, parlarci, eccetera. La macchina non ha ancora vinto.

Eccoci al punto interessante: l'intelligenza artificiale debole vuole aiutare l'uomo. La macchina non deve vincere. Deve aiutare gli uomini, anche se, ovviamente, qualcuno opporra' resistenza.
Con i sistemi esperti e l'IA debole, i computer iniziano davvero a mettere alla prova l'uomo. L'essere umano ha sempre sfruttato la sua intelligenza per fare quel che gli piace: macinare il grano e' faticoso? Facciamolo con la forza del vento o dell'acqua. Spostare l'acqua a mano e' faticoso? Lo facciano gli acquedotti. Questo e' meraviglioso! L'uomo non e' succube delle sue necessita' grazie all'intelligenza. Una macchina fara' un lavoro faticoso e ingrato al posto nostro, nel frattempo noi potremo gustare il frutto della nostra intelligenza senza fatica e dedicarci a cose piu' "dignitose" per l'uomo, cioe' le cose che la macchina non puo' fare, come filosofeggiare.

Pero' la meccanica ha dei limiti: non possiamo curare meccanicamente una malattia... Serve esperienza e conoscenza e capacita' ed intelligenza.
Ecco perche' i computer sono rivoluzionari: essi sono in grado di meccanizzare un processo mentale. Quindi curare una malattia diventa una cosa meccanica.

Dobbiamo iniziare a ripensare alla nostra condizione: l'uomo fa un lavoro finche' le macchine non imparano a farlo. Prima l'acquedotto, poi i mulini, poi la macchina a vapore, poi l'elettricita', i robot. Ora molte persone guidano macchine create da macchine, molti uomini non respirano piu' dannosi componenti chimici che producono cose che usiamo tutti i giorni, perche' ci sono robot a fare cio' per noi. Eppure noi andiamo avanti.

La nostra condizione e' di schiavi delle macchine: l'intelletto non fa altro che portarci "un po' piu' in la": prima facciamo un lavoro, poi lo fa la macchina e noi facciamo altro.
Poi lo fa la macchina e noi facciamo altro.
Poi lo fa la macchina e noi facciamo altro.
Poi lo fa la macchina e noi facciamo altro...

... Ma un giorno i lavori finiranno. Le macchine sapranno fare tutto quello che possiamo fare in modo meccanico. Detto per inciso, qui subentrano miei pensieri politici, oltre che filosofici.

Vi siete mai accordi di come il capitalismo ci rende schiavi del lavoro? E quindi delle macchine. Un uomo, in questa realta' dove il sistema lo obbliga a lavorare, non puo' dedicarsi ad altro. Cioe' puo', ma diverra' "un hobby", uno svago, una "fuga" dal lavoro, dalla necessita': l'uomo fugge, per fare qualcosa che vuole fare e che non deve fare. Nel nostro mondo le persone piu' fortunate non sono quelle che guadagnano di piu', ma sono quelle che stanno bene a fare il proprio lavoro. Sono quelle che sono in uffici tranquilli, con gente simpatica, dove non si litiga. Oppure sono quelli che aiutano gli altri e quando hanno finito e la sera tornano a casa, lo fanno con un sorriso, consapevoli di essere stati utili e di avere un senso. C'e' anche gente felice perche' si sa adattare, o perche' non si lamenta. Nessuno e' felice di fare qualcosa che non vuole... Difatti cerca la felicita' in altre cose.

Bene. E se fossero le macchine a fare tutti i lavori? Io lo spero. Lo spero davvero. Perche' finalmente l'uomo sarebbe libero di lavorare, anzi, libero di scegliere.
Pensare che se le macchine fanno tutto, non lascia a noi niente, e' semplicemente un'idiozia. Cioe', non e' ignoranza o pessimismo: e' proprio stupidita'. Se qualcuno ve lo dicesse, sputategli in faccia da parte mia.
Tutti abbiamo in casa un robot da cucina. Eppure, cari miei, io monto ancora le uova a mano con la frusta. Non escono bene :) pero' mi piace e lo faccio.

Ecco la realta': la macchina ci libera dalla necessita', dandoci la scelta: vogliamo farlo? Lo facciamo. Non vogliamo farlo? Lo fa la macchina.
In un certo senso, la macchina e' la nostra onnipotenza: possiamo farlo, come vogliamo.

Calma pero'. Ci sono lavori che non hanno molto senso, fatti dalle macchine. Io disegno per il mio piacere personale. Non lo faccio per mostrare alla gente se sono bravo o meno... A volte lo faccio, per compiacermi, ma spesso disegno solo perche' mi piace vedermi migliorare. Poi posso prendere il foglio e buttarlo. Avrebbe senso, se lo facesse una macchina? Assolutamente no.

Questo e' un fatto importante: fino ad ora ho ammesso che le macchine esistessero per svincolarci dalla necessita' del lavoro. Ma non sto parlando di intelligenza o creativita'. Sto parlando di uomini che possono vivere a prescindere. Sto dicendo che le macchine hanno la possibilita' di dover smettere di preoccuparci della sopravvivenza: acqua e cibo per tutti.
Certo, non possiamo continuare a moltiplicarci come conigli... Una macchina produce X da Y ettari di terra. X sfama Z persone, il conto e' presto fatto: la superficie della terra non e' infinita. Se le macchine potessero mantenerci in questo sistema chiuso per un tempo infinito, sicuramente dovremmo preoccuparci di quanti siamo.

Ma questo problema trascende le macchine, e' un problema nostro in quanto esseri viventi: tutti gli esseri sono in equilibrio numericamente in un ambiente. Anche noi dobbiamo esserlo: con o senza macchine.

L'IA Debole e' un ottimo metodo per permetterci di mantenerci senza sforzo: essa puo' fare efficaciemente tutto quello che sappiamo fare, e quello che impareremo a fare potra' essere integrato nelle macchine con poco sforzo, permettendoci di continuare a vivere, meglio, senza dover essere soppiantati dalle macchine. Il ciclo si manterebbe: noi impariamo, lo insegnamo alle macchine e noi impariamo altro. E cosi' via. Pero' ora non dobbiamo piu' fare, dobbiamo solo imparare. Saranno le macchine a farlo.

Ecco che il nostro stato cambia: non saranno piu' pochi uomini a cercare, ad imparare, a creare, ma saranno tutti gli uomini. Gia' qui sarei molto, molto felice: una socita' fondamentalmente comunista dove tutti gli uomini non lottano piu' per la sopravvivenza, ma (purtroppo) solo per delle idee. I valori morali cambierebbero, non ci sarebbe piu' competizione come la conosciamo oggi. Sarebbe l'apice per noi, esseri intelligenti, costretti - in questo assurdo futuro - a fare l'unica cosa che ci distingue dalle altre macchine organiche (gli animali): pensare creativamente.

Come ho detto: gia' questa realta' mi piacerebbe. Quindi benvenga la ricerca dell'IA debole.

E l'IA forte? Non ne ho ancora parlato. In realta' il discorso della creativita' si lega esattamente in questo punto. Quando noi saremo solo creatori e le macchine solo esecutrici, ci fermeremo qui? Assolutamente no. E qui subentra lo spasso :) (almeno, dal mio punto di vista).

Ipotizziamoci gia' homo filosofus: uomini che non devono sopravvivere, ma che hanno come ruolo sociale quello di pensare, imparare, crescere. Dove la concorrenza sara' solo la nostra lotta a chi impara e capisce di piu'. Dove il nostro essere sapiens (o meglio, filosofus :) si manifesta in tutto il suo splendore.

Mi pare ovvio che il passo successivo, per le macchine, sara' di dotarle di intelligenza. Non ancora di "vita" (benche', evolutivamente parlando, la vita e' raggiunta molto, molto prima dell'intelligenza. Anzi, puo' anche essere che le macchine che ci sostengono saranno gia' vive, in questo futuro ipotetico. Programmate, stupide, al nostro servizio, ma vive).
E questo e' il fatto fantastico: un uomo che mira ad essere intelligente e colto, cosa se ne fa di una macchina pensante? Semplice: nuove sfide :)
Come prima: macchina pensante non vuol dire che noi dobbiamo smettere di pensare. Vuol dire che noi abbiamo un nuovo giocattolo per trastullarci, come prima. Possiamo scegliere di pensare o di far pensare loro. Magari una macchina pensante produrra' molto piu' velocemente di noi delle conclusioni a cui non eravamo ancora arrivati, e magari noi potremmo beneficiarne.

Certo, e' facile pensare come in un romanzo di fantascienza... Questa non e' proprio filosofia!! Non e' detto che debba andare cosi', giusto?

Allora pensiamoci: nel 2100 viene inventata l'intelligenza artificiale forte. Un computer pensante. Com'e'? Cosa sa? Come sta? Cosa sente?

Stara' male, poverino, tutto solo? Solo in mezzo a tanti uomini? Oppure creeremo molti computer intelligenti? Saranno in una loro societa'? O verranno in qualche modo integrati nella nostra?
E poi, intelligente vuol dire solo che capisce e che crea? Oppure ha sentimenti? Potrebbe sentirsi solo? O arrabbiato? Potrebbe volerci uccidere tutti? Oppure aiutarci tutti?
Avrebbe istinti?? Se li avesse, sarebbe fantastico, ma anche grave: istinto di sopravvivere, istinto di difendersi, di uccidere, di nutrirsi, di riprodursi...
Onestamente penso che tutto questo sia molto fantascientifico. Non e' questo il fulcro della questione. Il fulcro e' che anche una macchina intelligente sarebbe come la progettiamo noi.

I sentimenti sono fortemente legati alla nostra biochimica: non c'e' eccitazione senza adrenalina. Non c'e' rabbia senza testosterone. Eccetera. Una macchina dovrebbe essere progettata per sentire qualcosa. Non potrebbe semplicemente esserlo.

Intelligente implica che possa provare sentimenti? Probabilmente no. Ma intelligenza implica creativita'. Esiste creativita' senza sentimenti? Secondo me, si.

Probabilmente vi sembrera' semplicistico il mio discorso... Ma credo che le famose "questioni morali" non siano affatto "questioni". Piu' che altro e' paura di cambiare.
E' facile immaginare un computer che da solo impazzisce in qualche modo... Ovviamente non possiamo trascurare il fatto che quel computer pazzo sara' collegato a tutte le industrie del mondo. Quindi le controllera' e in men che non si dica creera' copie di se stesso unite a delle armi atomiche che sono efficacissime contro di noi e innocue contro loro.
Un baluardo di uomini resistenti alle tentazioni, pero', avra' continuato la vita alla "vecchia manieta" e condurra' gli uomini in una battaglia contro le macchine dall'esito incerto.

Si, e' facile pensare a certe scemenze :) Non e' facile pensare invece razionalmente.
Perche' un computer che controlla tutto dovrebbe ingaggiare una guerra con noi? Gli basterebbe negarci l'accesso alle scorte di cibo. Noi andremmo nel panico dopo 2 giorni e dopo 3 settimane saremmo tutti inevitabilmente morti.
Perche' un computer intelligente dovrebbe volerci uccidere? Sviluppa istinti di sopravvivenza e nessun istinto di cooperazione? Improbabile.

Cosa trarrebbe un computer intelligente nello stare senza uomini?
Cosa trarrebbero gli uomini nello stare senza computer intelligenti?

Queste due domande sono la chiave di tutto :) Mi piacciono molto. Nessun essere intelligente darebbe risposte che implichino la distruzione di entrambe le parti. Anzi, gli esseri piu' intelligenti capirebbero le posizioni reciproche, le reciproche necessita' e tenterebbero la convivenza.

Non e' detto che la convivenza di due forme diverse non si concluda nell'unione in qualcosa di migliore.

Ci sono tante domande aperte, tante a cui non ho dato risposta e a cui - ovviamente - non possiamo darla. Ci sono tante cose che non ho considerato... Ma ad una vorrei cercare di dare la risposta che trovo piu' sensata, quella che poi sarebbe la chiave di questo post.

Come muterebbe la societa' odierna se subentrasse una macchina intelligente?
Secondo me muterebbe in meglio e ci porterebbe, molto piu' velocemente che nelle altre ipotesi, alla conclusione che auspico: un posto dove gli uomini scelgono di vivere come vogliono.

Se poi vivremo ancora con lavori sudati, guerre, malattie e affollamento, sta a noi...

Eccoci arrivati al punto finale: la scelta che faremo, rivelera' la vera essenza dell'essere umano. Saremo liberi di distruggerci o di sopravvivere in pace (o di vivere in un equilibrio delle due cose). La scelta sara' totalmente nostra e incondizionata.

Ecco perche' ricerco e incoraggio la ricerca nell'IA forte: perche' son davvero curioso di sapere la risposta :) E non vivro' fino al 2100... Quindi meglio muoversi!! :D

Stay --sync

24 June 2009

Io Dante e tu Beatrice

Scusatemi lo spocchio del titolo, ma ci tenevo a citare CapaRezza :)

Sto guardando (grazie a aieiesbrazorf che l'ha messo online) la puntata di Tetris (che trovo un bel programma, le poche volte che riesco a guardarlo) sulla liberta' di informazione in Italia.

So che lei non lo leggera' mai, ma vorrei dire che

mi sono assolutamente e definitivamente innamorato di Beatrice Borromeo.

Innanzi tutto e' Bellissima. Mi sciolgo ogni volta che sorride. E "innanzi tutto" non e' perche' e' la cosa piu' importante, ma sicuramente perche' e' la prima che si nota. Sono poche (in percentuale) le bionde che adoro a questo mondo, ma sicuramente lei e' in cima.

Poi mi piace come parla (che incespica un po' :D e' una cosa che mi fa morire, in senso buono).

E' maledettamente ponderata, preparata, equilibrata, sensata, controllata, compita, spiccata, brillante e pertinente.

Ho provato a chiudere gli occhi e riascoltarla e mi trovo comunque d'accordo. Quindi deduco che non sono d'accordo con lei solo perche' e' Bellissima (altrimenti dovrei trovarmi d'accordo anche con la Carfagna, che invece reputo... Non lo dico.)

Ho anche scoperto che la Beatrice ha la mia eta' (fa paura quando tu non sei ancora laureato e vedi gente in TV che gia' scrive libri ed e' di successo e soprattutto e' molto piu' intelligente e colta di te, no?) e che e' fidanzata con un principe.

Ok, io sono un Re, ma non mi chiamo Dante quindi non ho speranze :D

In ogni caso, donna a 5 stelle, fino ad ora.

Ah, riguardo al resto della trasmissione... Si, Tetris e' bello.

Castelli dice (~) la verita': nulla di quel che dice (qui) e' falso. Peccato che sia solo il 20 o al massimo 30% della realta' completa. Insomma, ineccepibile, ma solo il suo futile punto di vista.

Mario Sechi, non mi dice molto: il classico "non sputo nel piatto dove mangio" o se vogliamo "c'e' un motivo se sto dalla parte di Berlusconi", tira acqua al suo mulino.
La Parodi, come Sechi, parla di liberta' dall'editore, ma vorrei far presente che, se un giornalista non va contro al suo capo, sicuramente il capo non va a rompergli le scatole. Mentana, che l'ha fatto, e' stato praticamente cacciato. Parodi: ti sembra questa la liberta' di espressione? Per favore.

Miss. Parlamento ogni volta che apre la bocca riesco a contraddirla dopo le prime 3 parole.

De Magistris: l'ho sentito 2 o 3 volte al massimo, non mi fa impazzire come metodo, ma sicuramente e' uno che centra il segno.

Quella di cui non mi ricordo il nome che ha fatto il reality sulla campagna elettorale (sconosciuta anche a me): politicissima. Ha ragione, ma mi sembra Mastrota da quanto vende la sua visione delle cose. Talk is cheap.

Il resto della giuria non mi dispiace affatto, anche se quello di destra e' un po' riservato sugli argomenti scomodi e gli altri 2 mi sembrano un po' fissati (anche se, meno male, hanno ottimi punti di vista).

Con Sansonetti mi trovo quasi sempre d'accordo, come al solito.

Il conduttore non e' male... Anzi, profuma di indipendente.

La Borromeo e' fantastica.

Beatrice e' perfetta. L'avevo gia' detto? E che l'adoro? Me ne sono innamorato, sapete?

Stay --sync

Grazie al caso

Tempo fa dissi che ho bisogno di memoria e credo di avervi fatto intendere che sono davvero disperato a riguardo (nei limiti del senza-tumore-al-cervello, spero :D).

Ecco l'esempio che conferma la regola: spesso mi viene in mente qualcosa da discutere qui sul blog. Poi vengo qui sul blog e dico: "Per Diana! Non mi ricordo piu' di cosa volevo parlare."
Fortunatamente so di questa mia condizione (di cui stranamente mi ricordo, anche se non sempre). Quindi la mia perizia sopperisce a questa necessita': spesso prendo appunti.
Ovviamente, mi scordo di averli presi.

Ma, grazie al caso (ahahah che bel gioco di parole), a volte capito su questi appunti e mi ritorna tutto in mente come in un baleno :)

Tutto questo per ricordarmi e anticiparvi che voglio spiegare perche' trovo importante fare ricerca sull'IA forte.

Non e' raro che si parli di come, di limiti, di quello che s'e' fatto, di quello che forse possiamo fare, di questioni morali che si sollevano... Ma quali questioni? E quali sarebbero le conseguenze e i vantaggi? Voglio dirvi il mio punto di vista.

Quindi,
Stay --sync ;)

21 June 2009

Ho paura da quanto e' figa sta cosa.

Ho... Sto... Quasi per piangere. Questa cosa fa PAURA da quanto e' figa.
E l'ho scoperta solo adesso.

Come qualcuno di voi sapra', ho una galleria online, gestita anch'essa da google di cui sono fiero utente.

Bene. Giringiravo nelle preferenze quando ho scoperto l'opzione che permette di taggare le persone.

Ok, niente di nuovo. Lo fa anche facebook e mi aspettavo che lo facesse anche picasa.

Bene. Attivo. Salvo. Torno alla home page.
Sulla destra mi attende un messaggio:

People in my photos
340 faces found
Cosa?? Picasa conta il numero di facce nelle foto? Figata!

Ci clicko sopra. Muoio. Risorgo. Scrivo questo post.

Picasa non solo riconosce le facce... Ma capisce anche CHI E' CHI!! Lui raggruppa tutte le foto che contengono la stessa persona (che riconosce in modo egregio), cosi' in una pagina mi son trovato tutte le foto con Sara, in un'altra tutte le foto con Francesco, una con tutte quelle di...

Cosi' mi basta taggarli UNA volta :D Nell'intera galleria!!! E' FANTASTICO!!!

Ok, ora che mi sono sgasato un po', controllo al volo se riconosce anche la stessa persona nonostante le configurazioni facciali diverse... Chesso', abbronzatura, tagli di capelli, barba, etc.

/me controlla

No ok :D Mi sembrava troppo figo... In due foto piuttosto diverse non mi riconosce.

... E direi Grazie a Dio, altrimenti avrei avuto DAVVERO paura XD

Altre stelline per google ****
Stay --sync

EDIT: Comunque noto che il meccanismo di suggerimento delle facce gia' note funziona benone... E poi e' integrato coi contatti di gmail XD Benebene

12 June 2009

Scheme

Scheme (λ) e' un dialetto di lisp, il noto linguaggio con cui Dio ha scritto l'universo.
Sto leggendo Structure and Interpretation of Computer Programs che usa Scheme come suo linguaggio, pertanto sto imparando scheme, pian piano.

Il libro, che dovrebbe essere una introduzione alla programmazione, e' interessante. Anche se purtroppo, per ora, non mi ha insegnato nulla di nuovo a parte Scheme in se' e a parte qualche metodo di calcolo matematico.

Non posso ancora sbandierare in giro la grandezza del libro, quindi non ve lo sto consigliando... Ma se non conoscete lisp, nelle sue varie forme, vi consiglio di studiarlo.

Non solo perche' trovo la programmazione funzionale (e in particolare le ricorsioni) abbastanza divertenti, ma anche perche' il linguaggio in se' e molto potente e semplice. A dirla tutta, di questo passo, scopriro' che Squared e' totalmente inutile.
Pero', per ora, Squared ha dei punti che Scheme esclude totalmente, o li rielabora secondo altri punti di vista... Quindi, a meno di rivoluzioni inaspettate - che reputo improbabili - Squared si fa.

Anche perche', nella sua grandezza, continuo a non amare alcune cose di lisp.
Ad esempio, anche se trovo grandioso l'uso delle liste per rappresentare *tutto*, non mi piace il fatto che la sintassi sia in certo modo vincolato a questo fatto.

Inoltre, trovo le special forms abbastanza pericolose (per quanto utili), perche' suonano tanto come "patch" ad una sintassi semplice che e' stata forzata.
Per chi non lo sapesse, esse sono piccoli strappi alla regola della sintassi di lisp. Il problema e' che non hai modo di capirlo ad occhio, quindi il comportamento non e' proprio trasparente.

Benche' Scheme sia abbastanza pulito e semplice (e quindi facile da imparare), trovo che non sia completamente trasparente: ci sono cose che se non sai, danno risultati scorretti benche' la semantica di base risulti corretta. Ad esempio, il metodo con cui vengono chiamate le funzioni, puo' portare a side-effects spiacevoli.

Questo difetto e' proprio anche del C e del C++, tra l'altro.

In ogni caso, e' stupendo osservare come 3 anni fa, quando venni introdotto ai linguaggi funzionali, li trovai "marginalmente interessanti", mentre adesso, dopo essermi sparato la complessita' Cipiu'piu'esca, li trovi necessari per una corretta formazione di un buon programmatore.

Ah, dimenticavo: i funtori di C++ non sono neanche lontanamente paragonabili alla hi-order functions di lisp :) Sono troppo fighe.

(E il libro non ha ancora parlato di liste!! XD)

Stay --sync