giopas.eu

aMSN2 vede la luce!

by on Jun.12, 2008, under Linux

Da meno di 24 ore sulla mailing list di aMSN (aMSN-devel) il mantainer del progetto (KaKaRoTo) ha finalmente annunciato l’apertura al pubblico dei lavori per aMSN2.

Il progetto, fino ad oggi tenuto in gran segreto nei suoi dettagli, è in realtà in via di sviluppo da più di un anno e solo pochi (pochissimi) “intimi” sviluppatori ne conoscevano i dettagli.

Ma vediamo le grandissime novità che saranno – in futuro, visto che è lecito attendersi ancora almeno un anno di intenso sviluppo prima di essere rilasciato nella sua prima versione stabile – sotto i nostri occhi.

Cominciamo subito: aMSN2 è basato su tre livelli (protocollo, core e GUI).

1. Il protocollo adottato è pymsn;
2. la GUI è “slegata dal programma”, cosicchè diverse GUI possono essere utilizzate;
3. il core è programmato in python e non più in tcl/tk.

Cerchiamo di dare qualche informazione in più:

1. il protocollo:

aMSN2 userà la libreria pymsn per tutte le funzioni legate al protocollo. Pymsn è infatti la prima libreria che ha implementato MSNP15 ed ha al suo interno le necessarie funzioni per implementare il protocollo MSNP16. KaKaRoTo (o Youness Alaoui che dir si voglia) assisterà il team di Pymsn per sviluppare le funzioni necessarie ad aMSN2.

2. la GUI:

Disattendendo tutte le attese, aMSN2 spiazza tutti scegliendo – forse come front end predefinito – una GUI basata sulle librerie EFL (Enlightenment), di cui qui potrete trovare un primo video dimostrativo!

Ma, come anticipato, la novità continua: aMSN2 disporrà di una GUI per MAC, un front end ncurses (per gli appassionati del terminale), una GUI gtk, una QT e un’ultima XUL. Ce n’è per tutti i gusti, no??

C’è di più: la GUI in GTK sarà direttamente mantenuta dal team di sviluppo di emesene, che in quest’anno ha mostrato di saper lavorare egregiamente! Addirittura 4 persone di questo team hanno deciso di contribuire direttamente al progetto aMSN2!

Che sia in vista una “reunion” in grande stile?? No, non credo, certo è che l’open source anche in questo caso dimostra la sua forza: l’esperienza di uno si tramuta nell’esperienza di tutta la comunità!!

3. il core:

Come detto, aMSN2 sarà sviluppato in python. Tale scelta è stata mantenuta segreta fino ad oggi ed è stata oggetto di un lungo dibattito interno tra i maggiori sviluppatori del progetto: Youness Alaoui, Philippe Valembois, Harry Vennik e Tom Hennigan.

KaKaRoTo spiega la scelta affermando che è stata fatta per evitare ogni tipo di flame, come quelli che scoppiano ogni volta che si sceglie un linguaggio al posto di un altro. Ora – dice – la scelta è stata fatta, quindi è inutile discuterne ancora.

Riguardo a questo argomento tra l’atro KaRaKoTo si era già espresso in mailing-list il 17 gennaio 2008 (in inglese):

I had a working/semi-usable aMSN2 ready since last july, but I didn’t have time to clean it/polish it/finish it, in order to release it…
The design is done and will not change as we think that this is what aMSN2′s future should be. We made very thorough decisions involving a LOT of research and proof of concepts meant to be thrown away to test various theories, we reviewed a lot of solutions and considered all the things that aMSN2 needs in terms of usability, performance, development time, team involvement, team motivation, knowledge transfer, GUI of course, language, libraries to use, etc…
We made decisions that will most benefit aMSN2 in every aspect considered, BUT of course, not everyone can be happy… for example, if we decided to use GTK, all QT lovers will rant, if we decided to choose QT, all GTK lovers will rant, if we decided to use something all, maybe the whole world will
rant. The same can be applied to the language.
For this specific reason, we chose not to disclose anything, because if we do, we will generate a huge flame war which will never end and aMSN2 will never see the light. We want to avoid flame wars, trolling, etc.. and since there will always be someone unhappy about our choices, we will have to make a decision for everyone and impose it, force it to the community as ‘the decision’, and not ‘the proposal’. And as experience serves, when we decide something and implement it, and people try it, it’s accepted, if we ask about it, none agrees and nothing gets done (take for example all the lengthy discussions we had on the ML and what about the on-line spaces thing, etc.. once implemented, everyone’s happy, and none is when it’s being discussed).
For that reason, we decided to keep it all a secret, and not talk about it. And this email will only generate flaming, I already see 10 people getting all excited and starting to type about how cool it would be if we chose python, and another 10 people writing how python would be a bad choice, and
let’s not talk about all the dbus-haters and/or the people who do not want to see telepathy added to the project.. another few people will be happy to see telepathy added and will start a flamewar about whether aMSN should be multiprotocol or single protocol stating that telepathy will allow us to be multiprotocol easily, etc … It will generate a lot of useless, time wasting talk about something that was already designed, decided, and written and will not change anytime soon.

Certo, lo si potrebbe accusare un po’ di decisionismo, tuttavia è bene considerare il tutto sotto due aspetti:

a. dal punto di vista pratico, un mantainer di un progetto DEVE fare delle scelte strategiche, perchè è grazie ad esse che il progetto può avanzare. In bene o in male, ma in ogni caso la responsabilità è sua.

b. dal punto di vista teorico, la filosofia open-source non impedisce di prendere autonomamente delle decisioni, ma di far in modo di lasciare agli altri la possibilità di accettarla o di rifiutarla, prevalentemente rilasciando i codici sorgenti del proprio lavoro. Questo vuol dire che se qualcuno non fosse d’accordo con la scelta di usare python, potrebbe benissimo creare un nuovo progetto scritto in un qualsiasi altro linguaggio.

Le novità quindi sono moltissime, il progetto davvero all’avanguardia ed il lavoro ancora molto.

Pur non essendo un appassionato dell’istant messaging (ho un account msn che non uso praticamente mai), devo dire che la curiosità è tale da… poter decidere tra qualche mese di riaccedere al mio account dal mio nuovo aMSN2 fiammante!

enjoy, ;)

giopas

ps: il repository di sviluppo lo trovate qui

:,

Leave a Reply

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Visit our friends!

A few highly recommended friends...