On the other side of the screen, it all looks so easy

Archive for gnome

Driving Sideways

non ti rendi conto di quanto dai per scontato in Linux se non quando devi replicare un ambiente di sviluppo sotto OS X. fortunatamente, con un po’ di Macports e di JHBuild si riesce a mettere in piedi qualcosa di usabile.

una cosa sicuramente mi piacerebbe avere anche sotto GLX, e sono i tool per fare profiling delle chiamate OpenGL; l’UI è banale da replicare (basta prendere una cosa tipo questa) ma quello che è interessante è tutta la serie di hooks per attaccarci uno statistical profiler.

Comments

Just a Ride

Dicevo altrove di aver provato Vala, il linguaggio C#-like scritto usando GLib e GObject come base, e che viene “compilato” in C invece di usare una VM e un linguaggio intermedio1.

Ho trovato dei difetti nel layer di traduzione, ma sono dovuti essenzialmente alla giovane età del progetto, e il team di sviluppo sta raccogliendo intorno a sé una quantità di collaboratori più o meno saltuari che fa ben sperare. In più, la mera esistenza di Vala sta spingendo a completare il supporto per l’introspezione in GObject2.

Quello che più mi interessa, però, è la possibilità di avere un linguaggio a medio/alto ufficialmente sanzionato da GNOME - come Objective-C da Apple. Intendiamoci: la quantità di binding già presenti è enorme, e già oggi se volessi scrivere un’applicazione per GNOME potrei farlo in Perl, come in Java, come in C# e perfino con quel train wreck di Python3. Tuttavia, i bindings sono quello che sono: si portano dietro virtual machine, ambienti di runtime, licenze, implementazioni patent encumbered e altre amenità.

Intendiamoci: non ho nulla contro le VM - a parte l’obiezione classica: “sto già usando una macchina virtuale su una macchina reale, perché devo usarne un’altra ancora per ogni linguaggio?”; tuttavia, e specie sulle macchine su cui lavoro, una virtual machine è già sufficiente - figuriamoci quattro o cinque. Mi piacerebbe che qualcuno prendesse Mono e ci portasse più di tre o quattro linguaggi; mi piacerebbe ancora di più che qualcuno prendesse Parrot e lo completasse. Mi piacerebbe, insomma, avere una macchina virtuale per tutti i linguaggi ad alto livello. Se non posso averla, allora tanto vale usare Vala.

  1. si potrebbe arguire come, in realtà, la VM usata sia il sistema operativo ospite, e che sicuramente esistono più piattaforme con un compilatore C che piattaforme che supportano Java o C# []
  2. ovvero la possibilità di avere meta-informazioni a runtime su una libreria, sulle API e sui tipi di dati esportati []
  3. che, spero, Python 3.0 affosserà definitivamente con tutte le modifiche arbitrarie alle API senza vere nuove feature; non ci resta, quindi, che sperare in IronPython per una implementazione sana di mente? non voglio pensarci []

Comments (8)

GUADEC/0

Di nuovo qui al GUADEC, quest’anno vicino a casa.

Non ho ancora visto la venue, anche se mi dicono essere molto bella. Abbiamo portato un po’ di ferramenta per mostrare Poky e Clutter: un paio di board, un’AppleTV (ribrandizzata prontamente “OhTV”), Zaurus, UMPC, etc.

Mi raccomando, date un’occhiata a Flickr per le ultime news.

Comments (5)

The Worst Joke Ever

Ho passato gli ultimi tre giorni a tentare di capire perché un pezzo di codice producesse un SIGSEGV. Ho cambiato linee, logica, tipi di dato. Niente: qualunque cosa facessi, solo crash. Come al solito, gdb si rivelava poco utile, mentendo spudoratamente sul luogo della violazione di memoria.

Oggi pomeriggio ho deciso di arrendermi e ho chiesto a Kris se poteva darmi una mano (dato che il segfault si verificava nel codice del GtkTreeModelSort che lui mantiene). Stasera mi dice di aver trovato la patch:

Index: gtk/gtkfilechooserdefault.c
==============================================================
--- gtk/gtkfilechooserdefault.c (revision 17846)
+++ gtk/gtkfilechooserdefault.c (revision 17848)
@@ -9508,7 +9508,7 @@ recent_column_path_sort_func (GtkTreeMod
   if (!name_a)
     return 1;

-  if (!name_b);
+  if (!name_b)
     return -1;

   if (is_folder_a != is_folder_b)

Penso che i miei moccoli siano arrivati vicinissimi al Moccolo a Delta di Dirac (dieci alla ventottesima madonne in un microsecondo).

Va da sé che Kris si vedrà offrire una birra al GUADEC.

Comments (11)

Overdrive/2

segue

GTK+

Per mancanza di tempo, negli ultimi mesi ho dovuto lasciare a metà alcuni miei lavori sulle GTK+. Fortunatamente ogni tanto si è aperto qualche spiraglio di tempo libero, e quando ho potuto ritornare alla libreria che (ricordiamolo) ha consentito all’avere di che mangiare non mi sono certo fatto scrupoli.

Le GTK+ sono piagate, da tempo ormai, da una cronica mancanza di sviluppatori nel core team; il flusso di patch in Bugzilla è più o meno costante (anche se non altissimo), ma le persone in grado di fare una revisione delle patch e in generale dei bug segnalati sono poche, e nessuno lavora a tempo pieno sulle GTK+. A questo si aggiunge un’inerzia proveniente dalle compagnie che lavorano con le GTK+ nei confronti di una (ormai inevitabile) rottura della compatibilità binaria e, possibilmente, delle API. Il quadro è complesso, e meriterebbe un post di analisi dei fattori pro e contro una tale rottura di compatibilità all’indietro; sfortunatamente è sabato mattina e non ho molta voglia di farlo - considerate la questione solo rimandata.

Cosa si muove, quindi, nelle GTK+? Cosa ci sarà nella prossima minor release, la 2.12.0? E cosa ci aspetta nel futuro?

Cominciamo con le cose già in trunk:

Supporto Quartz e DirectFB
Il lavoro sui backend per GDK continua; il backend per Quartz è mantenuto dagli sviluppatori della Imendio ed è quasi stabile; mancano ancora feature, e molto dipende dalla stabilità del backend Quartz di Cairo, ma comincia ad essere usabile. Il backend DirectFB è invece portato avanti dal team per l’installer grafico della Debian, e ha ricevuto molte attenzioni in occasione del rilascio di Etch. Alcune delle funzionalità sono state aggiunte alla branch stabile, ma trunk è il posto dove la magia avviene.
Rimosso il supporto a Windows 9x/ME
Il supporto per i sistemi operativi giocattolo della casa di Redmond era già cessato con la release 2.10; adesso è stato completamente rimosso dalla code base. Chi vuole, può fare un diff tra 2.10 e trunk, procurarsi un incudine e un martello e prepararsi per un’intensa sessione di martellate sui gioielli di famiglia.
Nuova API per le tooltip
Kristian Reitveld ha creato una nuova API per gestire le tooltip sui vari widget. D’ora in poi, niente più GtkTooltips da tenere in giro per tutta la durata dell’applicazione, ma una semplice proprietà che contiene il testo della tooltip (con supporto per il markup). Se si vuole modificare la finestra stessa usata per la tooltip, basta fare l’override di una funzione virtuale della class GtkWidget e si può usare la finestra che si preferisce. Questo, tra l’altro, permette finalmente di poter usare tooltip con GtkTreeView e GtkComboBox.
File recenti
Una delle cose che ho scritto io. Finalmente è possibile infilare la lista dei file recenti in un menu costruito usando GtkUIManager. Per la disperazione (di uno) degli autori di gedit, niente menu “in linea” (come Windows, per intenderci) ma solo come sotto-menu (come OS X). Scrievere una version in linea non è complicato (se volete, trovate una implementazione qui). Ho anche aggiunto la possibilità di inserire elementi del menu prima e dopo la lista dei file recenti nel GtkRecentChooserMenu, così da renderlo più simile a un GtkMenu (quale è).
FileChooser migliorato
Una delle cose che mi fanno aumentare la misantropia e, in generale, il desiderio di vedere la razza umana estinguersi sono le flame sul selettore di file delle GTK+. Seriamente: ogniqualvolta arriva qualche sedicente esperto di usabilità che urla ai quattro venti come il GtkFileChooserDialog sia “inusabile” io spero solo che si tratti di qualcuno che vive vicino ad una costa marittima, e aspetto che il riscaldamento globale faccia il resto. Due settimane fa ho fatto il commit della patch (non scritta da me) che aggiungeva il supporto per la ricerca di file usando (indirettamente) Beagle, Tracker o una semplice ricerca per nome. La patch aveva ancora dei problemi, con funzionalità non implementate o comportamenti non consistenti, quindi ho passato questa settimana a scrivere patch per chiudere il bug #435343 e intanto che c’ero anche il bug #435342 (se volete vedere come appare il selettore file adesso, ci sono degli screenshot qui e qui) per aggiungere la lista dei file recenti direttamente nel selettore di file e chiudere così integrazione iniziata con la scorsa versione delle GTK+ - quasi due anni dopo il GUADEC che ha iniziato tutto quanto.

Ovviamente, le novità non sono solo queste. C’è stato un gran lavoro nel portare alcune feature sviluppate per piattaforme embedded, come la navigazione via tasti oppure il metodo di inserimento per tastiere solo numeriche. In più, ci sono nuove feature in fase di valutazione e di revisione che non sono ancora “atterrate” in trunk, come il supporto per il tap-and-hold per i menu contestuali (usato dai touchscreen o più in generale da chi ha puntatori con un tasto solo, come Mac o tablet). Infine, c’è la grossa feature rappresentata dal GtkBuilder, ovvero la possibilità di creare interfacce utente usando XML - come libglade ma integrato ed esteso.

Cosa ci attende nel post-2.12 non si sa. Le GTK+ avranno finalmente un canvas? E come impatterà questo oggetto con la struttura dei widget? In più, avremo finalmente una class GtkApplication per scrivere applicazioni in maniera più semplice, lasciando che siano le GTK+ a gestire le sessioni e lo stato (liberandoci di un bel pezzo di libgnome e libgnomeui)? Avremo un layer per VFS finalmente usabile senza una lobotomia parziale? E una piattaforma per la configurazione che non sia ferma al 2001?

Infine, quando avremo le GTK+ 3.0, con una ripulitura generale del codice?

Non so dare risposte; so solo che chi vivrà, vedrà.

continua…

Comments (6)

Special Delivery

A tirare su il bilancio di una discreta settimana del cavolo ci pensa eBay, grazie alla quale ho potuto mettere le mani su un Super Nintendo d’occasione, completo di una decina di giochi tra cui Starwing, Sensible Soccer e una valanga di Super Mario.

Sul fronte più interessante dell’hacking, sto finendo la riscrittura di gnome-screenshot; ho rimpiazzato buona parte del codice con oggetti, rimosso l’uso diretto delle Xlibs in favore delle più compatte e utili GDK (tagliano circa l’80% di fuffa, garantendomi una certa qual sanità mentale), e aggiunto il code path per scattare screenshot su compiz/beryl/vattelapesca (che non fanno il reparenting delle finestre con il frame aggiunto dal window manager - come chiunque abbia tentato di usare gnome-screenshot sotto compiz avrà notato).

Un altro fronte sul quale ho lavorato nelle ultime due settimane è stata la separazione di backend in Clutter; adesso Clutter si può usare sia in ambienti desktop con GL che in ambienti embedded con GL-ES; in più, il codice è molto migliorato e la gestione degli eventi pure.

Infine, qualche tempo fa ho incontrato Neil Patel dal vivo. Trattasi di ragazzo particolarmente in gamba impegnato nella realizzazione di bling vario e utile per il desktop. A quanto pare, si è interessato a Clutter per scrivere una specie di media center. Il suo unico difetto è che gli piace Tracker, ma non temete: con un po’ di convincimento da parte del sottoscritto potrebbe lasciar perdere quell’aggeggio senza speranze.

Comments (15)

Next Year

Attenzione: post ad elevato livello di sarcasmo

È bello vedere gli amici di KDE pensare agli utenti, e passare a Dolphin. Certo che, potendo scegliere, non sarebber convenuto loro usare un file manager che non assomigliasse a Nautilus com’era cinque anni fa?

Ad ogni modo, il cerchio si chiude e si ritorna al 1999: KDE torna ad essere l’ambiente per i corporate user, transfughi di Windows, mentre GNOME torna ad essere il desktop environment pieno di crack.

Comments (3)

Climbing the Wall/2

segue

Finalmente sono riuscito ad avere quei dieci minuti di tempo per installare Compiz sul portatile. Immensamente meglio di Beryl: l’applet per la configurazione sembra quasi progettato da uno sano di mente.

Ovviamente, se avessi un Metacity con un compositing engine sarei molto più felice; speriamo che Thomas riesca a finire di renderla accettabile entro GNOME 2.20.

Update@20070217T23:22Z: come non detto - Xgl, che sono costretto ad usare per via della ATi del cavolo, crasha non appena parte lo screensaver e mi tira giù tutta la sessione con sé; ergo, for the time being si torna a Metacity.

Comments (5)

Twist the Knife

Panacea
\Pan`a*ce”a\, n.
[L., fr. Gr. pana`keia fr. panakh`s all-healing; pa^s pa^n, all + ‘akei^sqai to heal.] [1913 Webster]
1. A remedy for all diseases; a universal medicine; a cure-all; catholicon; hence, a relief or solace for affliction. [1913 Webster]
2. (Bot.) The herb allheal. [1913 Webster]
3. (Programming) Tracker. [2007 Gnome]

Okay, adesso si è andati talmente oltre il ridicolo che non è neppure più divertente. Gli autori ci si sono messi per la loro parte, ma adesso i droni stanno diventando davvero fastidiosi.

Comments (2)

Nuclear War (On The Dance Floor)

Di solito non accendo flame: ci partecipo solo (grazie ai poteri della I-can-t-believe-it-s-not-Asbestos tuta che mi è servita per anni su Usenet) perché mi diverte vedere le buffe reazioni degli esseri umani (misantropo umanista? You bet!).

Stavolta, però, me la stanno tirando fuori dalle carni.

Chiunque segua desktop-devel-list sarà al corrente che non nutro grande simpatia per Tracker, il calderone di indexer/database/interfaccia grafica/kitchen sink/quello che sarà questa settimana che alcuni vorrebbero avere una maggiore integrazione con GNOME.

Premetto subito che io non odio Tracker: mi stanno cordialmente sulle balle le modalità con cui viene evangelizzato e, soprattutto, sviluppato. Dopo un anno e rotti in cui è stato riscritto almeno tre volte, cambiato il database, cambiato l’indexer, aggiunte feature e realizzato poco testing, ancora manca una cazzo di API decente per permettere a me, sviluppatore, di poterlo utilizzare. Si, perché il fine ultimo di Tracker è, evidentemente, immagazzinare il maggior numero di informazioni sui vostri file e poi non utilizzarle, dato che esiste solo una serie di remote procedure calls per D-Bus e nient’altro. Ma certo, se ho bisogno di estrarre dati mi basta usare Python. Solo che non io posso riscrivere GNOME in Python (o C++, o C#, o D, o COBOL o ${WHATEVER_LANGUAGE_ZEALOTS_WILL_PROPOSE_NEXT} - in fondo, abbiamo milioni di linee di codice da riscrivere da capo, che sarà mai), e gli utenti non hanno un cazzo di Cray su cui far girare uno GNOME scritto in Python (i requisiti di memoria dopo otto ore di utilizzo sono quelli). By the way: menarmi il torrone su quanto Tracker sia buono con la mia CPU e la mia RAM e poi dirmi che se voglio usarlo devo ridurmi a scrivere un’applicazione in Python è prendermi per culo - puro e semplice; e io non sopporto quando mi prendono per il culo.

Prendiamo HAL, l’Hardware Abstraction layer scritto per evitare di dover pasticciare con device, permessi e stronzate varie; è composto da RPC ma ha anche ben due librerie che mi permettono di non dover usare D-Bus direttamente. Perché? Perché HAL è scritto da qualcuno sano di mente, probabilmente, che pensa che l’utente non se ne fa una sega di HAL in quanto tale - l’utente è esposto ad applicazioni che usano HAL a loro volta; gli utenti di HAL sono gli sviluppatori, e se non do agli sviluppatori un’API sensata come diavolo faranno a scrivere applicazioni? Tracker occupa una nicchia analoga: gli utenti non sanno cosa sia Tracker, a cosa serva o come lo faccia; sanno solo che possono aggiungere una tag a un file e cercare file usando lo stesso tag. Se un utente si eccita con il fatto che esista Tracker è un cazzo di geek, e non è per loro che io contribuisco a GNOME.

Quindi, prego qualcuno di mettersi a scrivere un’API coi contro cazzi per permettermi di scrivere applicazioni con Tracker; non widget: voglio scrivermi i miei widget senza aspettare sei mesi che qualcuno ne aggiunga uno che mi serve. Perché sono io che scrivo applicazioni per GNOME, non “gli utenti”; e se io non sono in grado di scrivere applicazioni per GNOME usando Tracker vorrà dire che sarò costretto a reinventarlo tra sei mesi.

Giuro, mi basta qualcosa che mi dia un GObject a cui far eseguire un match, e abbia segnali che mi dicono cosa la mia richiesta ha trovato. Perché non c’è ancora? Perché gli sviluppatori e chi contribuisce a Tracker ha deciso di perdere il suo tempo per scrivere front-end per la Deskbar applet, mantenere branch parallele di Nautilus e violentare il Search Tool invece di permettere ai maintainer di questi progetti di fare il loro lavoro?

</rant>

Comments (8)

Overdrive/1

Un recap sui progetti a cui sto lavorando al momento.

Clutter

Nei commenti al blog precendente mi si chiedeva di Clutter. Per chi non seguisse Planet GNOME (o per chi lo seguisse ma non avesse comunque la più pallida idea di cosa si tratti), Clutter è un toolkit che ho contribuito a realizzare più o meno da quando sono stato assunto alla OpenedHand (settimana più, settimana meno).

Clutter è un toolkit basato sulle stesse librerie usate per le GTK+ (GLib, GObject, Pango) ideato per scrivere applicazioni con un’interfaccia grafica mono-finestra - ad esempio: media box, personal video recorder, etc. - in ambienti (embedded e non) dotati di grafica accelerata (tramite OpenGL oppure OpenGL ES). Clutter fornisce un canvas, rappresentato dal singleton ClutterStage, e alcuni widget, chiamati ClutterActor. I widget forniti sono (volutamente, al momento) pochi: non solo perché siamo alla release 0.2.0, ma soprattutto perché vogliamo vedere di cosa necessitano gli sviluppatori prima di implementare ClutterActor nel modo sbagliato o del tutto inutili.

Hello, World - Come funziona Clutter? Ecco un semplice “hello, world” che sfrutta buona parte delle nuove API. È scritto in Python - avrei preferito scriverlo in Perl, ma conoscendo la quantità di pythonisti in “ascolto” ho scelto altrimenti; la versione in Perl è disponibile a richiesta. Se volete, potete scaricarla e farci quello che volete - è nel public domain, come dovrebbero essere tutti gli “hello world” di questo mondo. Se cliccate dopo il link, smonto il codice in blocchi per spiegare come funziona.

Read the rest of this entry »

Comments (16)

Cast no Shadow

Questo è ancora il blog di un geek che sviluppa su GNOME, quindi ogni tanto vi tocca. ;-)

Con un grassissimo anticipo di trentacinque (si, 35) secondi sull’ora della deadline per effettuare una release, ieri notte ho impacchettato la version 2.17.1 delle GNOME Utilities, nome in codice Cast no Shadow. Dalle undici di sera fino al momento in cui make distcheck ha completato il suo lavoro, ho implementato una delle due feature richieste per questo ciclo di sviluppo per l’utility che prende screenshot del desktop (l’altra, ovvero la nuova finestra di dialogo per il salvataggio dell’immagine, ahimé, dovrà attendere GNOME 2.20, dato che non l’ho completata in tempo - penso che finirà in una branch, dato che è quasi finita e manca solo il codice per il drag and drop):

GNOME Screenshot
La cosa buffa è che ho catturato l’immagine di gnome-screenshot usando gnome-screenshot.

Questa finestra di dialogo apparirà solamente se gnome-screenshot verrà invocato dal meno oppure usando lo switch --interactive da linea di comando; ovviamente, la finestra di dialogo terrà conto delle opzioni da linea di comando, quindi:

$ gnome-screenshot --window --delay=5 --interactive

modificherà il RadioButton selezionato e il valore nello SpinButton. Purtroppo non sono riuscito ad infilare dentro una ComboBox per l’effetto (bordo o ombreggiatura), e dato che siamo in UI freeze dovrò chiedere il permesso prima di inserirlo. In più, c’è un bug: non appare l’icona dell’applicazione nella parte sinistra della finestra - probabilmente, l’icona non è installata correttamente grazie a Dennis Cranston, il bug è stato rimosso.

Riassumendo, le feature mancanti in questo ciclo di gnome-utils sono:

  • usare GtkPrint nel dizionario [da fare];
  • supporto per dizionari locali [includere il parser e il backend];
  • speller nell’applet del dizionario - o rimozione dell’applet in toto, in favore di deskbar-applet; [da fare]
  • plug-in nel visualizzatore di log - e, in generale, pulizia del codice [quasi completo, da pulire];
  • nuova finestra di dialogo per il salvataggio degli screenshot [quasi completo];

Adesso che GNOME è passato a SVN potrei finalmente sfruttare l’occasione e aprire qualche branch per gli esperimenti.

Comments

Climbing the Wall

Ieri sera ho deciso di provare Xgl+Beryl (il fork di Compiz) sul portatile. L’installazione su Ubuntu Edgy sarebbe anche andata a buon fine, e il sistema sembra reggere - non fosse che devono esistere delle incompatibilità tra Xgl e l’ultima release delle librerie per la gestione dei layout della tastiera che fanno entrare in un loop infinito gnome-settings-daemon (consumando tutta la CPU). Mi ritrovo, quindi, con una tastiera mappata US e il tema di default delle GTK+, niente tasto Compose mappato su Caps Lock e niente impostazioni.

Beryl desktop

Ma ho le wobbly windows (queste), ombre in alpha blending e quattro workspace mappati sulle facce di un cubo (tra l’altro, è uno shock piuttosto pesante per il sottoscritto, abituato a dodici workspace - mi sento lievemente castrato nell’utilizzo del computer).

Update 20061031T19:22Z: Beryl è stato tolto dopo un giorno continuato di utilizzo. Molto bello, molto figo, sorprendentemente stabile e non così affamato di risorse; tuttavia, mi mancavano la mia tastiera inglese con il tasto compose e i miei dodici workspace. Se future versioni non faranno inchiodare gnome-settings-daemon e mi ridaranno il maltolto, allora tornerò sicuramente a utilizzarlo (magari con il driver open source e Aiglx, e non con quello della ATi e XGL).

Comments (9)

… and back again/2

Come promesso, ecco il resoconto del GUADEC 2006, su OSSblog.

Comments (7)

… and back again

Di nuovo a casa da quel di Vilanova. Il GUADEC è stato meraviglioso: a presto un resoconto di questi cinque giorni di conferenze, risate (molte), alcool (molto) e discussioni più o meno tecniche.

Lacosa che più mi ha lasciato dell’amaro in bocca è stata sicuramente l’assenza di italiani (oltre a me, solo Andrea Ambrosioni della Nokia era presente - e, cosa strana, nessuno di noi due risiede più in Italia); davvero un peccato. La Fondazione GNOME ha speso molti dei soldi degli sponsor per portare quanta più gente possibile al GUADEC: in totale più di quaranta persone che altrimenti non avrebbero potuto permettersi di venire a Vilanova hanno avuto viaggio e alloggio pagati. Ribadisco: davvero un peccato.

Il mio tutorial è andato bene: ci sono state domande e suggerimenti e spero di aver dato risposte sensate.

Nel leggere la posta, ho notato un paio di commenti in coda di moderazione; il primo è stato inviato al mio precente post sul GUADEC da parte di qualcuno che mi chiede una mano per una transizione andata male da windows 2000 a windows xp, il che mi fa pensare che l’incauto richiedente non abbia poi capito granché né di quanto scrivo sul mio blog né di quanto ho scritto in quel particolare post. Il secondo è un commento di insulti di bassa lega (dovrai mangiarne di pasta, ragazzo mio) ad un mio vecchio post di due anni e mezzo fa. Poi dice perché sei misantropo. Ovviamente, casserò entrambi: sono assolutamente off topic il primo e assolutamente infantile il secondo; gli autori possono contattarmi in privato, anche se al primo consiglio una visitina sulla Knowledge Base di Microsoft, mentre al secondo consiglio una revisione al cervello perché può darsi sia ancora avvolto nella plastica da imballaggio e quindi non funzioni bene.

Comments (9)

GUADEC/2

Da Vilanova i la Geltrù, sulle onde dell’ammore.

Il GUADEC quest’anno è meraviglioso: se non ci siete vi state perdendo una manifestazione epocale. L’organizzazione ha davvero alzato lo standard: l’anno prossimo, sia che Lione oppure Birmingham vinca la competizione per ospitare l’ottava edizione, si dovranno fare miracoli.

Comments

Interview/2

Dopo OSSblog, adesso anche GNOME Journal decide di intervistarmi. Va da sé che li ho avvisati di quanto io sia noioso se lasciato parlare.

La quantità di crack espressa dal sottoscritto è da prendersi con le molle: non avevo ancora bevuto il mio caffè mattutino.

Comments (4)

ChangeLog/N

ho perso il conto…

GtkRecent: Il codice per GtkRecent è finalmente stato incluso nelle Gtk: comincia il bug fixing e l’implementazione in giro per Gnome. C’è voluto un anno di lavoro, ho dovuto convincere una valanga di persone e sperare che tutto non si inceppasse, ma alla fine (e grazie all’aiuto di molti per consigli, feature e correzioni) è andato tutto in porto.

Gtk 2.10: il feature freeze della nuova versione delle Gtk sarà a metà aprile, in tempo per includere le funzioni di stampa (che rendono obsolete libgnomeprint e libgnomeprintui); il lavoro per rendere asincrono il selettore di file; una valanga di patch, aggiunte e correzioni in fase di sperimentazione.

Planet: context switch è stato aggiunto a Planet GNOME, quindi il mio faccione è sindacato pure lì.

Giocattoli: è in arrivo un giocattolo dall’Inghilterra. Spero giunga sano e salvo.

Talk: Il mio capo mi ha chiesto se volessi parlare di qualcosa al GUADEC di quest’anno (che si tiene a fine giugno, a Vilanova ì la Geltrù, vicino a Barcellona). Dopo aver scartato l’idea di parlare di Fantacalcio e di gnocca, ho optato per qualcosa di più semplice e in linea con la conferenza. Speriamo venga accettata.

Comments (2)

Include

Da un paio di giorni è stato incluso nelle GTK un piccolo widget da me scritto, GtkLinkButton; niente di particolare, solo un bottone associato a una URL e con uno stile “link” (blu, sottolineato). Insomma, un contributo molto modesto da parte del sottoscritto.

È, a tutti gli effetti e scopi, un altro chiodo nella bara di libgnomeui - una delle librerie che verranno rese obsolete dalla versione 3.0 delle GTK (nome in codice: Project Ridley) e dall’equivalente release di GNOME (nome in codice: Topaz).

Tutto questo in attesa che il mio contributo più consistente, l’aggeggio per i file recenti, venga sottoposto a revisione e incluso prima della release 2.10 delle GTK (prevista per questa estate).

Comments

Interview

Nonostante i miei avvertimenti su quanto io possa essere noioso, sono stato intervistato da ossblog: si parla del mio lavoro su GNOME, della nuova release e di come contribuire ad un progetto F/OSS.

Comments (7)

Release Night

Ieri sera dovevo fare la release di gnome-utils. Dopo averla fatta, ho fatto pure la release di gnome-terminal, dato che il (nuovo) maintainer doveva uscire e non avrebbe avuto tempo materiale di farla (le release devono essere fatte in un giorno prestabilito all’inizio del ciclo di sviluppo, entro un’ora prestabilita).

In un attimo di follia, ho anche accettato di fare una release di emergenza di altri tre pacchetti - i fondamentali libgnome, libbonoboui e libgnomeui. Questo a due ore dalla scadenza del termine.

Divertito, mi sono divertito. Ma è stata una follia che desidererei non rifare - almeno, non per i prossimi sei mesi.

Apropòs: se usate Ubuntu Dapper (6.04), aggiornate domani o dopo; c’è stato un lieve cambiamento nelle API di libgnome, e i pacchetti che fanno uso della classe GnomeProgram devono essere ricompilati contro le nuove release di libgnome, libbonoboui e libgnomeui, altrimenti si rompono in maniera abbastanza spettacolare.

Comments (4)

GUADEC Live!

Un saluto (sulle onde dell’ammore) dalla sala Bertha, dove Owen Taylor sta mostrando come funziona Cairo.

Meraviglia delle meraviglie.

Update 2005-06-01@11:29: ecco il sottoscritto durante l’hackfest di lunedì:

GUADEC 2005 Hackfest
Hacking, do not disturb

Update 2005-06-01@12:55: ed ecco cosa ho scritto durante l’hackfest, dopo una chiaccherata al bar (dove non ci servivano mai) con Federico Mena Quintero.

Comments (11)

Leaving New York/2

Di nuovo in partenza…

La valigia è pronta, il portatile pure, i progetti da portare sono pronti, l’inglese parlato è stato rispolverato, io sono carico e pronto (pure la fiancée è carica e pronta).

Domani, dopo il lavoro, si parte.

Destinazione: Stuttgart, per il GUADEC sesta edizione.

Si torna in Italia lunedì - in orario da definire. Mille chilometri tra andata e ritorno.

Ci sarà da divertirsi.

Comments (5)

Travelling

Dal 29 al 31 maggio, il sottoscritto sarà qui.

Comments (4)