19.12.12

Lazy intervista Marco Martin (Notmart) sviluppatore di KDE

Lazy:"Ciao Marco,innanzitutto direi di iniziare con una breve presentazione,quanti anni hai,e cosa fai nella vita, oltre a sviluppare per KDE?"
Marco:"Ho 31 anni, abito vicino a Torino e in questo ultimo anno ho avuto la fortuna di occuparmi di KDE come lavoro a tempo pieno.
Lavoro in una piccola startup fondata da Aaron Seigo sullo sviluppo di Plasma Active. Dopo tanti ritardi il prossimo anno rilasceremo in vendita finalmente il primo tablet equipaggiato con Plasma Active."
Lazy:"Come hai scoperto Linux, e quale è stata la tua prima distro?"
Penso fosse attorno al 2000, e fosse una Red Hat 6.2.
A quei tempi le riviste cartacee erano ancora importanti, anche perche' scaricare un'intera distribuzione con il buon vecchio modem 56k non era molto fattibile. Quindi la storia e' piuttosto standard: cd allegato ad una rivista, che prometteva meraviglie di questo "Linux", quindi ho pensato perche' no, proviamo ;)
Lazy:"Oltre a KDE hai usato altri DE in passato,quali?"
Marco:"Ho cominciato ad usare KDE quasi subito, era appena uscito KDE 2.0 mi pare..
Prima di quello avevo usato Gnome per un po': era Gnome 1.x, che a quei tempi aveva Enlightenment come window manager ufficiale, il risultato era di due desktop mischiati a caso fra loro. Confrontato con lo stato di tutti i desktop oggi c'era ancora molta strada da fare ;)
Lazy:"Come è stato il tuo primo approccio all'interno di KDE come sviluppatore?Cosa ti ha spinto?
Marco:"Per diversi anni mi ero limitato a sviluppare alcune cose per conto mio (uno stile, chiamato polyester, un plugin per il pannello, chiamato tasty menu) senza avere molti contatti con la comunita'.
Quello che mi ha spinto ad entrare piu' ufficialmente nel team di sviluppo sono stati i primi sviluppi di Plasma, e il fatto che a quei tempi (un po' prima di KDE 4.0, quindi fine 2007) c'era molto lavoro da fare e la qualita' lasciava molto a desiderare, semplicemente non era un prodotto finito.
Questo ovviamente ha spinto via molti utenti, ma cosa curiosa ha avuto l'effetto opposto su molti sviluppatori: molti altri come me hanno cominciato a contribuire poco prima o poco dopo 4.0
Lazy:"Attualmente qual è il tuo ruolo all'interno di KDE?Di cosa ti occupi?"
Marco:"Sono maintainer di Plasma Active e co-mantainer del resto di Plasma assieme ad Aaron. quindi del workspace del desktop e della libreria su cui sia Plasma Desktop che Plasma Active si basano. Quindi sia implementazione di nuove feature che bugfix, o coordinazione del lavoro di altre persone."
Lazy:"Qual è la sfida più importante che deve affrontare Plasma nella ormai prossima convergenza desktop-mobile? (design/interfaccia/software/...)"
Marco:"C'e' molto lavoro da fare: nuovi dispositivi richiedono un'interazione (quindi un'interfaccia utente) completamente diversa, cosa che significa che il piu' delle volte un'applicazione desktop non funzionera' molto bene su un dispositivo mobile (e viceversa).
Non penso che un'approccio in stile Windows 8 "one size fits all" funzionera' molto bene a lungo termine, ma allo stesso tempo bisogna resistere alla tentazione di riscrivere tutto da capo per dispositivi touch: quello che bisogna fare e' condividere la tecnologia, condividere il 90% del codice tra diversi dispositivi, ma separare quel 10% che e' l'interfaccia, la presentazione dell'applicazione.
Questo puo' essere visto come un'opportunita': in generale separare la "logica" delle applicazioni (quello che effettivamente fa" e la loro interfaccia, conduce ad una migliore qualita'.
Inoltre in questo periodo stiamo andando incontro ad un cambio di tecnologia, con l'imminente uscita di Qt5, che porta diverse migliorie, anche questo significa molto lavoro ma e' una grande opportunita'."
Lazy:"Dovendo affrontare i "soliti" colossi, quale spazio kde/plasma dovrebbe provare a riempire?
Marco:"Sia nel caso del desktop che di dispositivi mobili bisogna cercare di fare un gioco diverso dai soliti colossi..
Non si riuscira' a vincere il gioco di "chi ha piu' applicazioni".
ma si possono riempire nicchie molto importanti, verso cui c'e' una vera domanda a cui grosse aziende commerciali semplicemente non sono interessate, perche' contro i loro interessi economici.
  • verso dispositivi completamente aperti.. facili da modificare, facili da studiare. basti vedere il successo di Raspberry Pi o Arduino
  • verso un sistema operativo/software completamente controllabile, che renda grossi deploiment controllabili nel piu' piccolo dettaglio
  • sistemi operativi che non dipendono da nessun servizio online in particolare, ma in cui sia chiaro che i tuoi dati sono solo *tuoi*
Lazy:"Sei soddisfatto di come le distribuzioni forniscono kde? In tal senso quale distribuzione ti soddisfa di più o meno e, cosa eventualmente dovrebbe essere fatto per migliorare?
Marco:"A dir la verita' non e' una cosa di cui ho molta esperienza..
al momento uso openSuse di cui mi piace abbastanza il sistema di base, ma siccome KDE lo uso sempre compilato da Git per poter sviluppare sono anni che non lo uso come fornito dai pacchetti di una distribuzione.
In generale apprezzo distribuzioni che tentano di fornire un'esperienza il piu' possibile vicina a quella "intesa" cioe' pacchetti compilati con tutti i moduli opzionali, e testati in modo che tutte le feature che dipendono in qualche modo dall'integrazione con altre componenti del sistema funzionino.
Preferisco anche distribuzioni che non "customizzano" l'ambiente troppo e che limitino le patch nei pacchetti al minimo indispensabile, perche' questo rende spesso piu' difficile la risoluzione dei bug."
Lazy:"Cosa pensi di una distribuzione come Chakra che focalizza i propri sforzi unicamente su kde e che adirittura cerca per quanto possibile di fare a meno di usare librerie gtk e programmi  che ne fanno uso?L'hai mai provata?"
Marco:"L'avevo provata solo brevemente un annetto fa.
E' uno sforzo che ammiro molto. Se c'e' una cosa che e' un po' mancante al momento in KDE in generale e' una miglior comunicazione tra gli sviluppatori del software e la comunita' di packager delle distribuzioni. Chakra e' una buona mossa in tal senso.
Apprezzo la scelta del software di default incentrata su KDE, per dare una buona "prima impressione" di ambiente elegante e coerente.
Anche se di solito se mi serve un'applicazione cerco quale sia la migliore, non importa se Qt o Gtk, il nostro ecosistema e' troppo piccolo per potersi permettere di escluderne meta'.
Quel che e' vero e' che c'e' scarsa integrazione tra i due ambienti; avrebbe dovuto esserci molto piu' lavoro in questo senso.. troppo orgoglio in entrambi i campi suppongo ;)
Lazy:"Ultimamente si parla spesso di Gnome OS, credi che in futuro potremmo aspettarci qualcosa di simile da KDE? Questa eventuale tendenza che ripercussioni avrebbe sulle attuali distribuzioni?"
Marco":Qua ci vuole la sfera di cristallo immagino.. non so se ci sara' una "distribuzione preferita", dipendera' se c'e' gente che vuole lavorare in quel senso (in fondo e' quello che sta capitando con Plasma Active in ambito mobile).
Comunque penso che la cosa piu' importante rimanga essere "buoni cittadini" e non escludere nessun'altra comunita', quindi non escludere nessuna distribuzione."
Lazy:"Abbiamo assistito di recente alla dipartita da Compiz di Spilsbury. Hai mai avuto l'impressione, da contributor di un progetto molto importante, che fosse tutto inutile? Hai mai sperimentato lo sconforto totale? In caso affermativo, cosa ti ha riportato sulla "retta via"?"
Marco:"E' di sicuro una scelta che posso comprendere, e che ho visto capitare molte volte.
Spesso viene da chiedersi se il lavoro che facciamo sia veramente apprezzato, se sia veramente "utile".
Forse sono stato abbastanza al sicuro da questi pensieri essendo riuscito ad avere lavori spesso collegati con il mio lavoro in KDE. Quello che dovrebbe capitare piu' spesso e' trasformare il lavoro su software opensource in una scelta economicamente sostenibile, che abbia senso nella societa' di oggi senza essere visto come bizzarra cosa da "hippie", molto divertente all'inizio, ma che dopo un po' ti logora."
Lazy:"Tra le prime bozze di KDE 4 particolare interesse destava Raptor Menu, un launcher nuovo, semantico e più in linea con la nuova visione di KDE. Che fine ha fatto? Oltre al progetto è pure tramontata l'idea? E' realistico aspettarsi un qualcosa di simile in futuro?"
Marco:"Il suo problema probabilemnte e' stato essere un progetto molto ambizioso, e di poche persone. Voler fare troppo e subito... E' stato comunque un'insegnamento.
Ora ci si orienta di piu' in avere queste feature integrate dappertutto (basti pensare al lavoro su nepomuk e le activity), non avere un singolo oggetto, il launcher che vuole implementare troppe cose...
Non so quale aspetto avra' in futuro questa parte dell'interfaccia, al momento ci sono molte discussioni sull'argomento, quindi e' molto "aperto"... vedremo ;)
Lazy:"Una delle attività principali di cui ti occupi attualmente è il porting di Plasma in qml, quali sono i reali vantaggi?Io ho sentito dire che il vantaggio principale riguarda la semplificazione del codice soprattutto rispetto alla quantità, ma in termini di prestazioni ci sono dei reali benefici?Ho sentito pareri contrastanti a riguardo."
Marco:"Si', il codice diventa molto piu' mantenibile, quindi anche la qualita' in generale dovrebbe migliorare.
In termini di prestazioni, una confusione probabilmente sta nel suo utilizzo di javascript.
Il linguaggio QML e le parti in javascript hanno piu' che altro una funzione descrittiva, ma il lavoro "pesante" viene comunque fatto da parti c++ (ad esempio se si imposta un'animazione, questa verra' comunque eseguita in codice nativo).
Questo permette di astrarre il sistema grafico. Se al momento il sistema grafico usato e' lo stesso che in precedenza (QGraphicsView, che usa rendering software).
In Qt5 verra' utilizzato il nuovo motore grafico per visualizzare QML, SceneGraph, completamente acelerato in OpenGL, che dovrebbe portare ad un aumento di prestazioni considerevole."
Lazy:"Cosa ne pensi di Windows 8? Non pensi che per certi versi, in alcune funzioni, ricorda o possa dare spunto su come sfruttare (o evolvere) le "attività " di KDE?"
marco:"Windows 8 e' un'esperimento interessante. Come ho detto non sono sicuro che utilizzare la medesima interfaccia su sistemi desktop e tablet sia una buona idea, infatti sembra non essere accolto molto bene dagli utenti.
Penso comunque abbia alcuni dettagli dell'interfaccia piuttosto interessanti, specialmente su sistemi touch, come il suo utilizzo globale di gesture e un'aspetto piu' "tipografico" che "skeuomorfico", come accade nel caso di Apple."
Lazy:"E' previsto un rework del tema di sistema? Personalmente mi piace molto lo stile delle finestre di Plasma Active, più morbido ed arrotondato."
Marco:"In KDE 4.10 ci sara' un nuovo tema di Plasma, piu' che altro un'evoluzione del precedente (disponibile da RC1 in poi).
Per quanto riguarda il tema delle applicazioni, per il momento non ci sono piani specifici, ma c'e' sicuramente un desiderio di un restiling grafico nelle prossime versioni, anche se non nell'immediato futuro."
Lazy:"Proprio mentre scrivo è stato annunciato su Planet KDE, Krita Sketch, sicuramente un bell'esempio di come si possano creare diversi tipi di interfacce con QML. Sketch è per Windows 8 ed è pensato per dispositivi touch, ma comunque ha un interfaccia colorata, curata e moderna, cosa te ne pare?Ultimamente va molto di modo seguire uno stile “pulito e “minimalista” ma se invece la soluzione per differenziarsi dal resto fosse proprio una cosa di questo tipo, con una bella "botta di colore", vitalità e freschezza a tutto il DE?
Marco:"Si', Krita Sketch e' un'ottimo esempio su come separare l'interfaccia dalla logica del programma.
Per quanto riguarda lo stile, in quel caso l'obiettivo era quello di integrarsi bene con l'interfaccia metro di Windows8.
In generale quello che reputo importante in KDE e' l'integrazione tra le varie applicazioni. Non escludo che in futuro si possa seguire un approccio ai temi piu' "colorato", ma penso che anche in questo caso continuerebbe ad essere importante che le diverse applicazioni siano coerenti le une con le altre."

Lazy:"Visto che tra le altre cose ti occupi pure dei temi di Plasma, volevo chiederti cosa ne pensi del lavoro di alcuni utenti appassionati come ad esempio, Caledonia o Helium, che sono tra i due più bei temi di plasma attualmente disponibili.
Marco:"Sono entrambi molto belli. Lo scopo del sistema di temi di Plasma era quello di permettere alla gente di essere creativa, e sembra che in questo caso abbia funzionato ;)
Lazy:"Una volta provai anch'io a cimentarmi con la modifica di un tema di plasma, ma non riuscii a fare molto, pensi che in futuro troverete soluzioni per facilitare la creazione di questo tipo di temi? Rendere la cosa più accessibile a tutti?
Marco:"La prima cosa e' probabilmente il primo problema dei progetti opensource in generale: buona documentazione. Abbiamo qualcosa sul wiki  ma potrebbe essere decisamente migliore.
Riguardo ai tool, un po' di tempo fa avevo scritto una piccola estensione per Inkscape per aiutare a rinominare gli elementi nel file svg.
Anche li' contributi sono ben accetti immagino ;)
Lazy:"Attualmente, KDE può essere considerato il DE più maturo del panorama Linux, l'avvento di Gnome 3 con la conseguente nascita dei vari Unity,Cinnamon,Mate etc. ha, da una parte frastagliato l'utenza che usava Gnome 2, dall'altra, vista la poca maturità di tutti questi nuovi ambienti grafici, ha fatto sì che molti utenti Gnome siano passati all'uso di KDE e con grande soddisfazione, la critica che però fanno i più è la seguente:
"KDE è il DE più maturo e completo che ci sia ad oggi in circolazione, peccato che il design non sia curato come su Gnome" . Che spiegazione o risposta diamo a queste critiche?"
Marco:"Penso sia una cosa di cultura. Da una parte siamo ad un buon livello riguardo al design nel senso di artwork, come icone, wallpaper e temi grafici.
Dall'altra molte applicazioni sono poco curate nell'aspetto di interaction design, anche se con alcune notevoli eccezioni come Gwenview, Dolphin, Okular e (spero ;) il workspace.
Spesso gli sviluppatori anche se molto esperti nel loro campo, non hanno la minima esperienza nel campo dell'interaction design. Quello di cui ci sarebbe bisogno e' coinvolgere esperti di usabilita' nel processo, e collaborare con loro in un modo che non si sentano respinti.
A quanto ne so storicamente Gnome ha avuto spesso esperti sponsorizzati per lavorare sul design delle applicazioni da ditte come Red Hat o Canonical.
La sfida e' attirare piu' nella comunita', che storicamente e' composta da una stragrande maggioranza di programmatori."
Lazy:"I Wallpaper di default di KDE sono sempre bellissimi e sicuramente molto più usabili rispetto ad esempio a quelli viola di Ubuntu, detto ciò non ti pare che anche con uno sguardo all'usabilità si potrebbero usare colori un po' più vivi? La scelta di usare tonalità di colori poco "intense" è una cosa voluta e motivabile rispetto al "gusto" del designer?"
Marco:"Si' penso che questo rifletta i gusti dei designer al momento ;)
e' anche vero che di solito l'utilizzo di tinte piu' tenui rappresenta scelte piu' "sicure" (come la predominanza del colore blu, che sembra il colore statisticamente meno odiato)
21)Ora ti mostro tre screenshot di come si presentano alcune applicazioni di KDE al primo avvio:
Impostazioni di Sistema




Amarok

Quassel

Il problema riguarda le Qt, KDE, Oxygen , le applicazioni, oppure è giusto che si comportino in questo modo?
Marco:"Probabilmente e' un problema in parte di qt in parte delle applicazioni. Servirebbe piu' attenzione a come si presentano al primo avvio (semplice motivo... e' la cosa meno testata).
Lazy:"L'intero progetto di KDE 4 è nato e si è sviluppato su quelli che sono stati definiti "i pilastri di KDE", come ad esempio, giusto per citarne alcuni, Plasma, Nepomuk e Phonon. Adesso che lo sguardo è sempre più rivolto a KDE 5 ritieni che questi abbiano raggiunto la loro piena maturazione e soddisfatto gli obiettivi che vi eravate posti raggiungessero in questo preciso momento? Partendo da queste basi KDE 5 punterà a consolidare ed innovare questi pilastri o ci dobbiamo aspettare qualcosa di nuovo?"
Marco:"Non so se ci sara' un "KDE5" propriamente detto.
Al momento la direzione del lavoro e' quella di modularizzare il piu' possibile, e avere ogni pezzo il piu' indipendente possibile.
Riguardo ai pilastri, ai framework, ci sara' nel 2013 una release della nuova versione, chiamata ora "Frameworks 5"
Sara' una release puramente delle librerie e ci saranno alcune novita':
  • piu' modulare, uno sviluppatore potra' usare anche solo una minima parte delle librerie KDE senza molte dipendenze
  • basato su Qt5, che uscira' anch'esso nel 2013
Sara' una release separata dal desktop o dalle applicazioni, che verranno dopo (quello che vogliamo evitare sono strappi brutali rispetto al passato come nel caso di KDE 4.0).
Per quanto riguarda Plasma, l'architettura cambiera' e anche lui diventera' piu' piccolo e leggero, oltre ad usare il nuovo motore grafico accelerato."
Lazy:"Sia in ambito Desktop che in ambito Mobile vediamo sempre più attenzione rivolta verso il Cloud, verso i Social Network e la connettività tra diversi tipi di dispositivi, potrebbero essere questi alcuni dei concetti attorno ai quali sviluppare KDE 5?
Marco:"Anche in questo caso le novita' arriveranno gradualmente. Alcune cose su cui stiamo lavorando:
  • un framework centrale per la gestione degli account verso i web service: basta configurare in un singolo posto i login ed ogni applicazione che vuole accedere ad un servizio usera' quel'account.
  • un framework centrale per accedere a microblog, facebook e in futuro altri servizi simili. Anche in questo caso condiviso da ogni applicazione che lo vuole usare
  • migliore integrazione con OwnCloud per lo storage, sia sul desktop che su Active
Una cosa molto importante: per ognuno dei punti precedenti, l'utilizzo dei servizi web rimarra' sempre "opt-in", per fare in modo che non ci siano problemi di privacy o fuga di dati personali quando l'utente non ne e' specificatamente al corrente."
Lazy:"Tutti i nuovi Sistemi Operativi , sia mobili che Desktop si avvalgono di un tool per facilitare l'installazione di applicazioni ed altro(Ubuntu Software Center,Apple Store,Android Market ma ora anche Firefox etc.), KDE ha da diverso tempo un sistema molto simile, per installare plasmoidi,icone e temi vari. In futuro si potrebbe raggruppare tutto in un unico software center che sia valido sia per Plasma Desktop che per Plasma Active?
Marco:"In Plasma Active 3 ha debuttato un piccolo store, che permettera' sia di installare applicazioni (eventualmente integrandosi con i repository della distribuzione) che scaricare contenuti come libri o wallpaper. Sia la parte client che la parte server sono open source. 
Per il momento e' limitato e sperimentale ma arrivera' anche sul desktop."
Lazy:"Per concludere innanzitutto ti ringrazio, perchè mi rendo conto che le domande sono state molte, probabilmente troppe, ma in effetti c'erano moltissime cose di cui parlare"
Marco:"Beh, grazie per avermi dato l'opportunita' di parlare di qualcosa a cui tengo ;)
Quindi per finire ti chiedo, se ad oggi pensi ad una tua personale idea di ciò che sarà KDE 5 a cosa pensi?E comunque ci regali qualche chicca finale su KDE 5?
  • Non una rivoluzione ma un'evoluzione dei concetti che abbiamo ora
  • Miglioramento nell'"user experience": semplificare parecchio, ma senza perdere feature
  • Finalmente mantenere promesse fatte da tempo riguardo a tante tecnologie come Activity, Nepomuk, Akonadi... soprattutto che funzionino bene a sufficienza da diventare totalmente invisibili.
  • Poter utilizzare KDE su qualsiasi tipo di dispositivo: desktop, mobile, media center...
Bene ragazzi, l'intervista si è così conclusa, devo dire di essere veramente soddisfatto di ciò ch ene è venuto fuori ed ovviamente ringrazio marco martin per l'incredibile disponibilità concessa ed al contempo per il lavoro che lui e gli atrli ragazzi di KDE fanno ogni giorno con passione, spesso dimentichiamo che il Desktop che usiamo ed amiamo senza il contributo di queste persone non esisterebbe.
Inoltre vorrei ringraziare gli amici di Gplus Marco Giannini, Alessio Biancalana ,Giuseppe Calà e Giuseppe Pennisi per avermi dato una mano con le domande in generale, oltre ad avermi suggerito a loro volte qualche domanda.
Ovviamente questa intervista è completamente opensource quindi siete liberi di riportare qualsiasi cosa su qualsiasi blog, anzi siete pregati di farlo, magari citando la fonte, ma soprattutto diffondendo il sapere che è  la cosa più importante,alla prossima.....