PDI^2

Login OpenID via XMPP via Firefox via un server sudafricano

personale, web, italia, software, Identity March 31, 2007 12:54 pm (Save post)

Ovvvero, il miglior modo per ottenere qualcosa è suggerirlo vagamente a un buon hacker.
Checché ne dica bard, io gli ho solo detto “oh, sai esiste una cosa carina per autenticarsi su openid via xmpp“, ed è stata la sua avidità di creazione a generare una estensione per firefox per l’autenticazione OpenID via XMPP.

Per maggiori info vi rimando all’articolo su openid.it, posso solo dirvi che funziona da paura, ma non va benissimo con gli account GTalk (per colpa del relaying party, non per l’estensione).

Auguri (Chrisblogs|Anarchaia) !

ruby, personale, web March 30, 2007 8:03 am (Save post)

Nella comunità ruby (che ahimé, non seguo come un tempo) c’è sempre stata un sacco di gente interessante. Oddio, il SNR è peggiorato molto negli ultimi due anni ma sorvoliamo.

Tra questa gente interessante, c’è chris, che:

  • programma da dio
  • in una dozzina di linguaggi
  • mi ha fatto scoprire che si può implementare call/pc con call/cc in un linguaggio imperativo
  • ha sense of humor
  • è dannatamente più giovane di me e ne sa il quadruplo, di tutto

Oggi, innalzo le lodi di chris blogs, il suo blog che compie tre anni, e dei due anni di Anarchaia, l’insalata mista più bella della rete.

Eh già, perché è stato lui ha inventare i tumblelog, per quanto credo che il nome l’abbia inventato _why. D’altronde ora c’è tumblr che ha un sacco successo, ma io ho sempre pensato che il tuo tumblelog devi scriverlo da te ;)

E siccome io ne ho scritt una dozzina e poi non li ho mai pubblicati, e siccome ne avevo uno che mi son dimenticato di postare nel’ultimo anno, eccovi il mio tumblelog minimale, che si ottiene mettendo questo codice in rub.rb in un’applicazione nitro.
Non so se funzioni ancora. Forse funziona con Ramaze.


require \'nitro_and_og\'
require \'glue/timestamped\'
require \'skin\'
require \'nitro/helper/feed\'
require \'part/admin\'
	
class Thing
  is Og::SchemaInheritanceBase, TimestampedOnCreate
  property :text, :control=>:textarea
  property :title
  def to_href
    \"/thing/#{oid}\"
  end
  def to_html
    %(<p class=\"thing\">#{text}</p>)
  end
end
	
def thing(p, &block)
  Class.new(Thing) do
    property p, String
    define_method :to_html, block
  end
end
	
Quote      = thing(:author)    {\"<blockquote>%s</blockquote>\"%text}
Irc        = thing(:channel)   {\"<pre>%s</pre><p>on %s</p>\"%[text,channel]}
Snippet    = thing(:language)  {\"<pre>%s</pre>\"%text}
Image      = thing(:url)       {\'<img src=\"%s\" alt=\"%s\"/><p>   %s</p>\'%[url,title,text]}
Link       = thing(:url)       {\'<a href=\"%s\">%s</a>, %s\'%[url,title,text]}
	
Og.setup # default sqlite
	
class Home < Nitro::Controller
  helper :feed, :pager
  def atom
    response.content_type = "application/atom+xml"
    build_atom  Thing.latest,
                :title => "Tum! Atom Feed",
                :base=> "http://my.domain.info"
  end
  def login(pass)
    session[:ADMIN]=true if pass == 'password'
  end
end
	
Nitro.run(Home)

Post Archivio n° 14

ruby, personale, web, studio March 29, 2007 6:18 pm (Save post)

Nel quale il nostro eroe celebra il 23 in reti ottiche recuperando arretrati e riproponendoli al Lettore inerte, e recuperando obliate consuetudini

Scusa Lettore, avrei voluto bloggare, ma ero impegnato. Studio, progetto 1, progetto 2 progetto N. Dove per progetto intendo perdita di tempo (libero). Dove per tempo intendo minuti soggettivi in ore oggettive. Dove per oggettivo intendo il complemento, che in latino si fa con l’accusativo, che generalmente al singolare si fa con la “-m”.

E che per qualche strana ragione, dopo 10 anni che conosci inglese e latino (si fa per dire..) un giorno ti rendi conto che la forma corretta/elitista/pedante/desueta di “who will you marry” sarebbe “whom will you marry”. Poi dite che non vi acculturo.

Link del giorno:

  • l’altra volta avevo dato un bel po’ di link a blog. Oggi ne do uno solo a una cosa che smette di essere solo un blog. Clipperz è concettualmente una figata, e rientra nella nostra teoria della relatività linguistica ristretta, ovvero la maggior parte degli italiani che fanno roba innovativa sul web tendono a farla in inglese. Ben venga, se la fanno multilingue però è meglio.
  • oggi ennesimo aggiornamento effettuato su osx. Con questo raggiungo il giga di roba scaricata in circa un anno. Grazie a dio non pago la connessione
  • dal blog di XRuby, una simpatica sfida: sei in grado di definire Integer#times in puro ruby in modo che se vengano ridefiniti Integer#+ o Integer#succ funzioni ancora? Ok, adesso provate a renderlo resistente a qualsiasi modifica di una classe esistente. AFAICT è impossibile, ed è così che dovrebbe essere.
  • e sapevate che una volta c’era chi proponeva che in Smalltalk si potesse definire una propria #dispatchMessage per rendere ancora più dinamico il linguaggio? Mi sono perso il link, ma se chiedete vi passo il file.
  • e parlando di Smalltalk, congratulazioni & complimenti a giovanni corriga che non solo ha praticamente fatto entrare Squeak nella google SoC praticamente da solo, ma ha anche alcuni dei messaggi di stato più belli che si siano mai visti su un IM.
  • e finalmente, torniamo alla buona abitudine: Il koan di marzo

    Un bambino entrò nel tempio mentre i monaci erano fuori per dargli un dono, e non trovando nessuno si appoggiò alla statua del buddha per aspettare e si addormentò. Un monaco lo sveglio sgridandolo:
    “cosa fai, dormi sul buddah!?”
    “No!” rispose.
    Subito, il monaco fu illuminato

    .
  • Restando in tema di pseudozen, spesso ho pensato che le religioni orientali siano sopravvalutate. Voglio dire, a noi arriva tutta la roba spiritual-essenzialista da cioccolatino, ma in realtà c’è una marea di fuffa liturgica. Probabilmente dovremmo fare lo stesso con le religioni del libro, e pescare solo frasi e storielle ispiranti, per cui, parafraso

    il monaco stava passeggiando sulla spiaggia cercando di capire il mistero, e vide un bambino che aveva scavato una buca e prendendo l’acqua del mare con una conchiglia, la versava nella buca.
    “Cosa fai?” chiese il monaco.
    “Metto il mare nella buca”, disse il bambino.
    “Ma non è possibile mettere il mare in una buca, e certo non con una conchiglia”, rispose il monaco.
    Subito, fu illuminato.

  • PyCon Uno! Finalmente, e bravi organizzatori.
  • Non mi ricordo se l’avevo già linkato, ma date un’occhiata a questo fantastico Foozle Wars, che spiega l’ascesa e il declino della programamzione foozle oriented. Secondo me il paradigma delle Nimble Arrow è nettamente superiore.
  • Nel continuo tentativo di sovraccaricare la mia lista di cose da fare fino a che l’intero multiverso vada in stack overflow, mi sono messo a dare una mano al blog italiano su openid. Graze a claudio e michele.
  • E appunto dalla versione inglese di quest’ultimo, avevo salvato un bookmark su come scrivere il quicksort in Scala.

Ti lascio alla lettura e alla meditazione, Caro Lettore.

Pagety, CMS hosted

linux, web March 24, 2007 4:48 pm (Save post)

Altro lancio di web app italica sul mercato globale, pagety.

On rails, se l’autore è rimasto in linea con 16 bugs e non è andato a esplorare strani nuovi lidi.

Non gli ho ancora dato un’occhiata, ma da luca c’è uno screencast. Notare che

  • la società è italiana
  • il prodotto è in inglese, ci sono miliardi di utenti potenziali (ma ha sempre senso un po’ di i18n, imo)
  • non è una copia di un servizio che già esiste

Questo, solo per riflettere sull’idea di navigare italiano, sul fatto che i programmatori bravi non ci sono in italia e costano tanto e non conoscono le tecnologie moderne e quanto è difficile fare l’imprenditore in italia.

So long, mrBackus, and thanks for all the fish

personale March 22, 2007 9:51 pm (Save post)

E così, se ne va un altro pezzo della storia dell’informatica, il signor John Backus che fu autore di FORTRAN & ALGOL, inventò la notazione BNF, e diede forse origine alla genia dei linguaggi funzionali, con il suo FP.

E mi piace pensare che fossero tempi in cui si parlava in maiuscolo.

Non sono vecchio abbastanza, o non sono stato abbastanza sveglio quando ero piccolo, per avere ricordi come quelli di alfonso fuggetta, ma mi ricordo chiaramente il primo anno di università, quando il mondo era giovane e si poteva dormire con la porta aperta (la TCP 23).

A fondamenti di informatica spiegavano, senza alcuna utilità visibile, la BNF e la incredibilmente identica, per noi all’epoca, EBNF.
Lezione si faceva in PASCAL, e la professoressa continuava stranamente a dirci che certe cose in lisp e prolog si facevano diversamente. Senza che capissimo minimamente di cosa parlava.

All’esame toppai la prova pratica ottenendo che un mergesort (o erano alberi binari? boh) stampasse una surreale stringa di faccine sorridenti, con sfondo nero, figlie di un puntatore smarrito con un senso dell’umorismo malvagio.

Allo scritto però azzeccai la mia grammatica in BNF, e l’esame lo passai, quindi al signor Backus un pensierino volevo dedicarglielo.

command not found in Ubuntu Feisty

linux, software March 21, 2007 11:22 pm (Save post)

Queste sono le piccole cose che avrebbero dovuto essere in uso da un decennio.
Installando il pacchetto command-not-found, apt verrà in aiuto dell’utente ogni volta che viene lanciato un comando che non c’è nel sistema, dicendogli cosa deve installare per usarlo.

Semplice e geniale, installato di default nella prossima ubuntu.

Minirecensione: Snow Crash di Neal Stephenson

lettura 9:10 pm (Save post)

Ritratto il mio giudizio preliminare su Snow Crash (due righe, verso la fine).

Il libro inizia in modo volutamente iperesagerato e demenzialmente ironico (il personaggio principale che si chiama Hiro Protagonist e sfoggia carte da visita con su scritto Freelance Hacker & Miglior Spadaccino Del Mondo”, lo Zio Enzo presidente della megacorporazione nota come Mafia che gestisce gli stati autonomi di Nova Sicilia etc..) ma la carica satirica finisce in poche pagine, e lascia spazio a un testo più classico.

Ci sono tutti i crismi del cyberpunk, le megacorporazioni, la dissoluzione degli stati nazionalistici novecenteschi, il megamagnate delle telecomunicazioni, le IA, wikipedi^Wla mega libreria online dove c’è tutto e la realtà virtuale alternativa.

Stephenson sa scrivere, e il libro prende ritmo man mano che si va avanti, e pian piano che escono fuori riferimenti ai sumeri, a babele e alla qabbalah.
Sono un geek, NGE & Eymerich & il pendolo di foucalt mi hanno reso ricettivo a certi input, quindi passo allegramente sopra alle falle di realismo, ma in generale la trama si regge.

All’autore perdoniamo anche le eventuali marchette, come i dettagli sessuali superflui, o il citare gratuitamente FORTH, Lisp e perl.

Lo facciamo in virtù di spezzoni come

“why, exactly, is Marduk handling Hammurabi a one and a zero in this pictures?” Hiro asks
“They were emblems of royal power”, the Librarian says.

Crediamo quindi in una genuina geek’ezza dell’autore, specie dopo aver letto la postfazione in cui spiega che sa quali siano le parole nascoste dietro B.I.O.S. , ma che secondo lui avrebbe avuto molto più senso si chiamasse Basic Integrated Operating System.

Mi trovo d’accordo, e mi lancio nella lettura di Cryptonomicon, che pare essere molto più gustoso, non so bene se per lo script in perl a pagina 240, perché Bruce Schneier ha inventato un cifrario carta & penna robusto per il libro, o perché uno dei personaggi è alan turing.

Bloglab: sperimentazione mediatica alla sapienza

blogosfera, studio, italia 11:07 am (Save post)

Bloglab vorrebbe essere un laboratorio dedicato allo studio dei nuovi fenomeni comunicativi, e apre con un seminario nel quale blogger affermati dovrebbero, per quel che ho capito, adottare gruppi di studenti e guidarli nei meandri della social cosa. Iniziativa interessante, piuttosto e anzichenò, sono curioso di vedere che ne verrà fuori.

Se seguite il link, potete anche scoprire come partecipare nel ruolo di fellow, a quel che capisco l’unica condizione è avere esperienza nel bloggare. Se è così, ulteriore plauso, se non è così.. perché no?

Ovviamente, nell’interesse della scienza, vorrei ricordare che scienze della comunicazione è piena di gnocca, i miei lettori maschi e non troppo maturi ci pensino attentamente.

Titoli che non spiegano l’argomento

personale, blogosfera March 20, 2007 11:31 am (Save post)

Ne hanno parlato un po’ di persone di questa lista, ma l’unico che mi ricordo è alberto quindi il linklove è per lui.

Caro Lettore, volevo farti notare che dovresti discriverti dal feed, perché:

  1. Too many posts: posso arrivare a 5 al giorno
  2. Infrequent Posting: quando manco per un mese
  3. Partial Excerpts Feeds: in passato l’ho fatto
  4. Blog Changes Focus: niente programmazione in 6 mesi
  5. Too many posts that I see elsewhere: appunto, questo
  6. Uninteresting Content: appunto, questo
  7. Irrelevant Content: non vi interessa quel che faccio nella doccia?
  8. The Blogger’s Ego: sono il più importante del mondo, il mio ego èproporzionale
  9. Low Quality Content: Lo Zen e l’arte della manutenzione della motocicletta dice che la qualità è un sogno
  10. Too many posts that are too long: tipo questo?
  11. Negative blogging: no
  12. Feed Errors: non così spesso
  13. Offensive Content/Personal attacks/Discrimination: lawrence, valentino & ludo sono infami pythonisti
  14. infomercials: non ho niente da vendere, quando lo avrò lo farò
  15. Blog Titles that Don’t Tell what the post is about: intenzionalmente ermetici
  16. No or Poor Formatting in posts: liste e corsivi sono abbastanze per chiunque, il resto è fuffa
  17. My own interests as a reader change: ti seguirò. Diventa appassionato di classici e bloggherò l’ira funesta del pelide achille
  18. No Longer Useful or Valuable: mai stato utile
  19. Too many links in the text and not enough content: i miei post archivio
  20. Advertising: ok, non so se lo faccio
  21. Inconsistent writing (style and focus): non va bene che bloggo su pugs, erasmus & i libri che ho letto allo stesso tempo? I miei pastiche di calvino non legano con post schematici tipo questo? Ma davvero?
  22. Too Many Grammatical Errors: cuali erori?
  23. Found other feeds that are better: dimmi quali così li elimi^Wseguo anche io
  24. Too Narrow a focus: questo blog è su di me
  25. Too much repetition in topic: forse..
  26. Pushiness of Blogger: sono un bastardo, ma sono sicuro che mi amate
  27. Blogger Doesn’t Respond to Comments: ok questo non lo faccio
  28. No Images in the feed: le immagini sono per i fighetti
  29. Lack of Confidence or Opinion: boh, non so
  30. Lack of a sense of who the blogger is: cosa ?
  31. Too much clutter/extras at the end of posts: aspettate..
  32. Talking Down to Readers: non so neanche cosa significhi
  33. Too many quotes: diceva il poeta che tutto quello che dico l’hanno già detto altri
  34. Change of Primary blogger: salve, mi chiamo Teresa

Aspettate, voglio riprendere la cosa del “cambiare topic a fine post”, e al tempo stesso quella del “seguo altri blog”.

Penso spesso che ci siano blog che potrebbe piacermi seguire, ma di cui non so niente. E non posso neanche cercarli, perché ancora non so di cosa parlino.

Quindi vorrei chiedere a voi lettori di darmi un consiglio direttamente nei commenti, su cosa leggere, un link per commento. Cpsì quando mi abbandonate per seguire un altro blog almeno ci si ritrova lì :)

XRuby più veloce di matz’ ruby & reimplementazioni simpatiche

ruby 9:55 am (Save post)

XRuby è un ennesimo runtime alternativo per ruby, la cui idea di fondo è di compilare il codice ruby in bytecode per la JVM, e poi lasciare che quest’ultima si preoccupi di gestire le ottimizzazioni automaticamente.

In fin dei conti, anche se la VM HotSpot è cambiata molto nel corso degli anni, originariamente essa era stata progettata per far girare Self, che è molto più simile a ruby che a java :) .

Ho scoperto ieri il blog di xruby, e mi è capitato questo simpatico benchmark comparato, ispirato da quello che fece antonio un po’ di tempo fa. Sorpresa: Xruby, è già più veloce di ruby1.8.5, in vari casi. Ma la cosa che più mi sorprende è che in effetti questi test passino :D

A occhiometro i casi in cui fallisce sono quelli in cui YARV effettua una specie di TCO.

Get free blog up and running in minutes with Blogsome
Theme designed by Janis Joseph