Jan Lehnardt è il presidente del Project Management Committee (PCM) di Apache CouchDB e ha deciso di rispondere a Canonical sullo stato dell’arte del database. In sintesi, il progetto è tutt’altro che “morto” e soprattutto non dipende da Couchbase: la società di Mark Shuttleworth citava quest’ultima come la proprietaria di CouchDB.
La querelle ha avuto inizio con l’eliminazione di CouchDB da Ubuntu One: Canonical ha optato per la realizzazione di un proprio database, U1DB, rivelata dagli sviluppatori di Novacut. Lehnardt non entra nel merito della decisione, ma non gradisce che i responsabili di Ubuntu denigrino CouchDB. È sempre lecito fare scelte differenti.
Purché non si dichiarino delle inesattezze. Canonical ha motivato la propria scelta con diverse argomentazioni, più o meno valide: fra queste non è accettabile che s’associ CouchDB a Couchbase. Se le patch, fornite da quest’ultima, sono state implementate nel ciclo di sviluppo di CouchDB è perché rispettavano la politica di Apache.
Tra le righe Lehnardt ha spiegato il motivo per il quale Canonical ha optato per la realizzazione di U1DB. Non tanto perché CouchDB fosse inadeguato alle nuove esigenze di Ubuntu One, quanto perché Apache non riteneva accettabili le patch inviate da Canonical. Una ragione molto più banale di quella degli sviluppatori di Ubuntu One.
La polemica in sé non ha una grande importanza. Inserita nella politica di Canonical per Ubuntu, però, supporta un’idea precisa. Shuttleworth e soci privilegiano le soluzioni sviluppate internamente alla società, rispetto ad altri progetti. Non è una decisione deprecabile, soprattutto quando apporta benefici alla loro distribuzione.
Personalmente, ho già avuto modo di sostenere la creazione di U1DB parlando dell’impatto su Novacut. Ubuntu è una distribuzione drammaticamente pesante e la razionalizzazione dei componenti è importante. Purtroppo, Canonical sembra peccare quanto a una visione d’insieme: eliminare un database per aggiungere dell’altro non ha senso.
Via | The H Open
barra
02 dic 2011 - 11:21 - #1Riscrivo nuovamente quanto già detto nei commenti dell’altro post relativo a questa situazione:
U1DB NON È UN DATABASE ma una serie di API che Canonical spera che vengano implementate nei vari DB sul mercato per permettere una maggiore flessibilità agli sviluppatori ( http://www.ossblog.it/post/8831/novacut-e-il-futuro-delleditor-con-ubuntu-one-in-assenza-di-couchdb/1#606751 ).
romfladef
02 dic 2011 - 11:30 - #2Per quanto mi riguarda, ed è il motivo per cui ho ignorato la cosa pur leggendo il commento, la differenza è sovrastrutturale: mi spiego, U1DB è un API (definita “agnostica” da Apache), ma si collega… a un database che praticamente è un fork di CouchDB e in sé non ha un nome. Di conseguenza, personalmente continuerò a chiamare U1DB anche quel database. Quando lo chiameranno in un modo preciso, allora m’adeguerò. Intendiamoci, il tuo discorso tecnicamente non fa una piega: il punto è che U1DB non è né soltanto un database, né soltanto un set di API per database alieni. Come gestiscono i dati di Ubuntu One, senza un database? Quel database è una versione modificata di CouchDB (alla quale pure stava lavorando uno sviluppatore di Novacut, e con questa sono due volte che lo scrivo) e rientra nel progetto U1DB. Se l’hanno chiamato in un altro modo e conosci quel nome, sarò lieto di modificare l’articolo con le dovute correzioni. Altrimenti, per me continuerà a chiamarsi tutto U1DB.
romfladef
02 dic 2011 - 11:35 - #3Nota di folklore… guarda caso, l’unico database diverso da CouchDB e il suo “innominato” fork interno a Canonical supportato dalle API di U1DB (guardate i sorgenti in Python) è SQLite: il database di Zeitgeist, che a quanto mi era stato detto «non c’entrava». Per essere uno che scrive soltanto idiozie, ho colto un’altra volta nel segno.
romfladef
02 dic 2011 - 12:00 - #4Visto che ci sono, puntualizzo su U1DB e il problema API/database: riprendo le parole di Jason De Rose, sviluppatore di Novacut, sulla questione.
De Rose spiega il passaggio da Desktop CouchDB (il connettore per CouchDB) a DC3, un fork interno a Novacut. Il connettore in questione sarà rimosso per lasciare spazio a un altro connettore, U1DB.
Il problema subentra quando a
desktopcouch, il connettore, si sostituisce CouchDB, il database. Se Novacut sostiene che continuerà a utilizzare CouchDB con U1DB, Canonical non ha specificato (almeno, che mi risulti) cosa farà con U1DB.La mia ipotesi, opinabile per carità, è che realizzi un proprio fork di CouchDB per sostituire con U1DB sia
desktopcouch, sia lo stesso database. Guardando il codice, l’unico plugin di U1DB riguarda SQLite… ma SQLite e Ubuntu One non sono collegati. Scindendo U1DB-codice da U1DB-progetto, io chiamo quel database “sconosciuto” col nome comune di U1DB. È un’approssimazione? Sicuramente lo è! Però, finché Canonical non sosterrà di voler passare a SQLite su Ubuntu One, posto che ha abbandonato CouchDB, “qualcosa” ce lo dovrà pur mettere. Possiamo anche chiamarlo «il database di Ubuntu One».anonimoconiglio
03 dic 2011 - 17:32 - #5Come al solito Canonical non rispetta certi standard comuni per tutti. Allora i ragazzi di Apache non le accettano le loro patch, e così i geni al comando di Shuttleworth decidono di fare di testa loro. Sempre la stessa storia. Bravi.
(il bello è che poi parlano di unione e di tribalismo nel mondo dell’open source, ma sono i primi a fare un progetto interno e non mainstream.)
romfladef
03 dic 2011 - 19:47 - #6Esattamente. Anche se, qualora Canonical optasse davvero per SQLite (ipotesi che escludo perché dovrebbero tradurre tutto il contenuto del database da CouchDB, perché sia leggibile), almeno avrebbe rimosso in un colpo solo due elementi di troppo e ne capirei la strategia! Non lo ribadisco ogni volta, ma se davvero Ubuntu vuole approdare sugli smartphone e sui dispositivi integrati come Set Top Box, ecc. la “pesantezza” attuale non va bene… e deve “tagliare” qualcosa.
Però continuo a pensare a quello che giustamente fa notare @barra… e cioè che U1DB, a dispetto del nome, in sé non è un database. Capirei sostituire Desktop CouchDB (il connettore) con U1DB, stando al codice finora pubblicato, ma sostituire tutto CouchDB con U1DB equivarrebbe a montare uno specchietto retrovisore al posto della centralina elettrica di un’automobile. Insomma, non ha senso. Qualcosa (un database) ce lo dovranno “ficcare”, al posto di CouchDB…
Kim Allamandola
04 dic 2011 - 22:05 - #7@anonimoconiglio #5
Scusa RH col suo GnomeOS, con gli indicatori standard freedesktop riscritti per
essere incompatibili ma uguali a quelli di Ubuntu? Non è chiusura quella? Senza
rilevare poi come Gnome-Shell copi sempre più Unity…
@romfladef #6
Perché non puntare su Redis? U1DB può presentarsi come ORM lato codice e come
completamento di redis-cluster… Redis è molto più leggero di CouchDB e molto
più vicino (o pioniere) a quel che appare il futuro prossimo del computing
ovvero della sempre più comoda gestione dei dati in strutture proprie del
linguaggio senza passare per n strati non trasparenti esterni (dai file alle
query SQL).
Sul discorso SmartPhone e TV lo vedo come qualcosa di molto più lontano: sarà
il momento di Ubuntu Mobile quando Android sarà alla fine, distrutto dalla sua
stessa architettura. Ubuntu per andare su SmartPhone, STB, Tablet ecc deve
ancora fornire un X “a basso consumo”, delle applicazioni touch-friendly ed un
framework “di servizio” (dal GPS alle mappe alle mail, tutto accessibile con
API coerenti in un solo linguaggio) completo. Per ora sia Unity 2D che 3D sono
legate ad X, il core desktop è legato a Gnome e non ci sono applicazioni al
di fuori del DE veramente pensate per un uso duale touch e classico… Fa bene
IMO Mark Shuttleworth a spingere e tenere alto il volume mediatico per andare
in quella direzione ma il risultato è di la da venire :-)
guiodic
05 dic 2011 - 19:05 - #8Ubuntu su un telefonino è un’idea ridicola destinata a fallire miseramente, come tutte le iniziative commerciali di Canonical. In questi anni sembrava che era lì lì per sbarcare sul mercato di massa e ha sempre preso botte in testa. Intervenire poi in un mercato dove ci sono già marchi del calibro di Apple, Google, RIM, oltre alla piccola quota Microsoft, francamente, è da dilettanti.
Canonical è una piccola azienda poco più che da scantinato. Il giorno in cui Nokia illuminava col suo marchio un intero palazzo loro hanno fatto una striscetta arancione. Che figuraccia.
Kim Allamandola
06 dic 2011 - 11:07 - #9@guidodic #8
Hai certamente ragione, dopotutto sono la sola azienda che ha portato
GNU/Linux sui desktop di tutto il mondo, il cui prodotto di punta è tanto
poco noto che dai niubbi viene considerato un sinonimo di GNU/Linux.
Il suo creatore è un noto pazzo filantropo che nonostante sia un
economista diventato venture-capitalist con un’altra pazza idea non
ha certo speranze…
Poi fai riparare la sveglia però che sennò arrivi al lavoro in ritardo e
ancora in pigiama :-)