
Mi sono fatto portare dagli Stati Uniti una confezione di batterie ricaricabili al Nickel-Zinco, marca Powergenix, esattamente questo kit qua, e da qualche settimana le sto utilizzando sul mio Garmin eTrex.
Rispetto alle ricaricabili tradizionali (Ni-MH), le NiZn sono molto più leggere, non hanno effetto memoria ma soprattutto hanno una tensione nominale più alta, 1,6V contro 1,2V, che permette di spremerle fino in fondo anche ai dispositivi elettronici fatti per funzionare con le normali pile usa e getta.
Nonostante le 2400 mAh delle batterie Ni-MH che utilizzavo, dopo due o tre ore di funzionamento il GPS cominciava già a segnalare la carica bassa, mentre le NiZn, di capacità inferiore (circa 1600 mAh) sono arrivate già ampiamente oltre le dieci ore ed ancora non hanno dato segni di cedimento.
Purtroppo ancora in Europa non si trova quasi nulla sul mercato di questo nuovo (vecchissimo) tipo di batterie, e farsele spedire da oltreoceano costa troppo, ma se avete occasione di farvele portare, consiglio vivamente di farlo. Il kit di cui sopra mi è costato meno di 15€.
Ho scritto alla Digifly per sapere se il mio variometro (Flyer 2) potesse sopportare la leggera sovratensione e mi hanno risposto che regge tranquillamente fino a 3V di alimentazione, quindi appena finirò la batteria usa e getta che c’è dentro, sostituirò anche quella con una NiZn.
Domenica siamo tornati a volare a Monterosso.

Io avevo un po’ di dubbi, perchè pensavo che fosse brutto volare e divertirsi sulle teste di gente che aveva subito delle disgrazie, ma l’accoglienza dei locali è stata molto calorosa, addirittura il tassista che ci ha riportato in decollo ha detto che riportavamo un po’ di allegria e di normalità nelle loro vite
L’annuncio della ripresa voli da parte della Federazione, sommato alle ottime previsioni meteo, hanno attirato un sacco di gente da tutta la Toscana, la Liguria e l’Emilia, ad occhio e croce ci saranno state una trentina di vele, tra le quali ho ritrovato con piacere quelle pilotate dagli amici Sergio e Franco da Grosseto.
Il primo decollo l’abbiamo fatto un po’ presto, le condizioni erano ancora deboli nonostante la giornata promettesse bene, e dopo poco più di mezz’ora eravamo di nuovo tutti a terra, tranne come al solito Giovanni.
Dopo un veloce spuntino siamo tornati in decollo col taxi e ci siamo preparati al secondo volo; il mio è stato meraviglioso: ignorando la scelta dei più, che si dirigevano subito a far dinamica su Punta Mesco, dopo aver girato una movimentata termica sopra al decollo sono andato verso sud, ad affacciarmi su Vernazza, per poi tornare indietro e percorrere tutto l’anfiteatro alle spalle del golfo, fino a raggiungere anch’io Punta Mesco ancora in tempo per farci qualche passaggio prima del tramonto.
La soddisfazione di fare un volo senza seguire nessuno, dipendendo esclusivamente dalle proprie decisioni e valutazioni, secondo me è impagabile!
Sto pian piano cominciando ad abituarmi alla mia nuova vela, che mi regala prestazioni molto maggiori di quelle a cui ero abituato, ma con un paio di belle chiusure frontali mi ha anche ricordato di avere molta prudenza e non farmi prendere troppo la mano.
In volo ho fatto anche qualche foto, peccato che avessi lasciato la macchina impostata su macro…
In occasione della migrazione a Windows 7, api – anonima petroli italiana ha consolidato tutta l’infrastruttura dei desktop aziendali (oltre 1000 utenti) sulla piattaforma VERDE di Virtual Bridges – distribuita in Italia da MythosTech) utilizzando le tre modalità di VDI Gen2 fornite dal software di virtualizzazione:
Tutte le workstation sono state sostituite da moderni ed economici thinclient introducendo – oltre a un considerevole risparmio energetico – una decisa riduzione della complessità di gestione dei singoli end-point.
Sono numerosi gli elementi che distinguono VERDE dalle altri soluzioni di virtualizzazione, ma forse il più caratteristico è l’ampio uso di software open-source, compresa l’adozione dell’hypervisor KVM – presente ormai in tutti i kernel Linux di ultima generazione – e l’impiego del protocollo multimediale SPICE per il collegamento lato client (Virtual Bridges è membro dell’Open Virtualization Alliance).
Il deployment realizzato da API SpA prevede l’esecuzione della piattaforma VERDE da un cluster di 5 server IBM ad alte prestazioni (sistema operativo Linux SLES 11) a Roma e 3 server a Falconara. Questa infrastruttura così composta è in grado di erogare tutti i desktop virtuali per gli utenti aziendali, compresi quelli in mobilità. La modalità LEAF di VERDE infatti prevede l’installazione dell’hypervisor lato client per consentire ai laptop di eseguire le macchine virtuali localmente.
Per maggiori approfondimenti, scarica il Case Study (pdf).
.

Partecipando ieri al seminario “Dall’Io al sè – La cerca della felicità e la sua simbolica” organizzato dal Centro Studi Mythos a Bracciano, la relazione di Biancamaria Alberi sugli aspetti sociologici della ricerca della felicità mi ha portato a conoscenza di una stupefacente realtà che in qualche modo accende una luce di speranza nell’oscuro mondo della globalizzazione: l’indicatore Gross National Happiness adottato dallo stato del Buthan.
Il Buthan è un piccolo stato himalayano incastonato tra Cina e India, alle pendici delle vette più alte del mondo che potrebbe rappresentare oggi la realizzazione di quello Shangri-La ideale immaginato da James Hilton nel suo romanzo Orizzonte Perduto.
Nel 1972 il suo re Jigme Singye Wangchuk ideò il concetto di FIL sostenendo che “la felicità interna lorda è più importante del prodotto interno lordo”. Nel suo bizzarro modo di intendere le cose, il FIL (che gli anglofoni chiamano GNH, Gross National Happiness) rappresenta un indice alternativo al PIL, fin qui da tutti utilizzato, per misurare il grado di benessere di una nazione. Il FIL non si limita a valutare il livello di reddito (e di consumo) di una nazione, ma introduce una serie di parametri che lo affiancano arricchendolo, come il livello d’istruzione, l’accesso all’acqua potabile, la sanità gratuita, la percentuale di persone che usufruiscono del sistema fognario, l’aspettativa di vita, la qualità dell’ambiente, il tasso di criminalità. Tutto questo sembrerebbe ovvio, visto che, non necessariamente, un aumento del reddito costituisce di per sé un miglioramento della qualità della vita.
Infatti non sappiamo cosa farne di un aumento di stipendio se poi siamo costretti a spenderlo per difenderci dalla criminalità, o per acquistare medicine per curarci dai danni dell’inquinamento ambientale.
Ma non è solo questa la ragione dell’inadeguatezza del PIL. Il PIL – infatti – annichilisce l’uomo e la sua centralità, riconducendo la figura umana a un’unica dimensione, quella economica. Secondo i parametri occidentali basati sul PIL, il Bhutan risulterebbe essere una delle nazioni più povere della terra; in realtà lì nessuno muore di fame, non esistono mendicanti, né criminalità, il 90% della popolazione ha accesso gratis alla sanità e all’istruzione pubblica.
Anno dopo anno, il Buthan ha messo insieme un indicatore completamente diverso, che ha al centro la felicità, un concetto che certo include anche il benessere economico, ma va ben oltre. “Il FIL si basa su quattro pilastri. – ha spiegato Lyonpo Jigmi Thinley, primo Ministro del Buthan – L’esistenza di uno sviluppo economico equo e sostenibile, che include l’istruzione, i servizi sociali e le infrastrutture, in modo che ogni cittadino possa godere degli stessi benefici di partenza; la conservazione ambientale, che per noi è particolamente importante visto che viviamo in un Paese che solo per l’8% ha un suolo utilizzabile per l’agricoltura; la cultura, intesa come una serie di valori che servono a promuovere il progresso della società; e infine il pilastro su cui si fondano tutti gli altri, il buon governo“.
Nel 2008 il re ha abdicato lasciando il trono al figlio, non più un trono da monarca assoluto, ma costituzionale. Il FIL insomma ha aperto le porte alla democrazia. Questo processo graduale ha portato benessere vero nel Paese: nell’ultimo censimento, infatti, si è detta molto felice il 52% della popolazione, felice il 45%, non molto felice solo il 3%.
“La ricchezza reale del Bhutan è che ci sentiamo umani“, dice Tshewang Dendup, un laureato presso la University of California, Berkeley, che ora lavora al Bhutan Broadcasting Service.” Forse siamo geograficamente un po’ isolati dal mondo, ma ci sentiamo parte di una comunità vivente che non è solo collegata con dei fili. Ecco perché il 95 percento di noi studenti di scambio torna a casa. In generale, dobbiamo ammettere che la gente qui è felice“.
“La ricerca individuale di felicità e di libertà interiore ed esteriore è lo sforzo più prezioso.” ha dichiarato Thinley “Una politica ideale dovrebbe perciò promuovere questa impresa. Ciò che è necessario è chiedersi come i drammatici cambiamenti del 21° secolo influenzeranno le prospettive di felicità e come la tecnologia dell’informazione influenzerà la felicità delle persone“.
.
Annunciato un po’ un sordina e un po’ sulle spine anche, a causa di un piccolo problema di comunicazione (pare che una persona tra quelle che erano state elette originariamente non risponda ancora alle email), sono entrato nel Community Council internazionale!
Gioia e tripudio per tutti, nuovi problemi da risolvere per me!
PS: diciamo che l’ho fatto a posta a non dirlo prima, così evitavo di pagare da bere al meeting!
It has been a busy period, getting ready for various things, and various travels.
Right now I’m writing this post from the Ubuntu-it meeting in Bologna, with a great amount of people from the Italian community. Interesting talks and ideas are coming out from this day, discussion also about the role that our community is playing and what are our bonds with Canonical and the overall international community.
After returning to France, I will be at the fOSSa 2011 Conference, in Lyon (France), with Silvia Bindelli, where we have been invited to talk about our role in leading and managing part of the Italian community. It is an interesting opportunity and conference, also because I’ve never really gave a public talk with slides and everything in English. I’m really looking forward to traveling to Lyon and spending a couple of days there.
After this, I will be leaving for the USA to attend, thanks to Canonical for the sponsorship, UDS-P where as usual there will be a lot of interesting tracks. I do not have yet a schedule for myself, but I know it will be packed, and I will be running from room to room (this year I would also like to follow virtualization and server tracks).
Looking forward to meeting Ubuntu/GNOME people in Lyon and to leave for UDS!
abstract class Generator{
private bool consumed;
private G value;
private SourceFunc callback;
public Generator () {
helper ();
}
private async void helper () {
yield generate ();
consumed = true;
}
protected abstract async void generate ();
protected async void feed (G value) {
this.value = value;
this.callback = feed.callback;
yield;
}
public bool next () {
return !consumed;
}
public G get () {
var result = value;
callback ();
return result;
}
public Generator<G> iterator () {
return this;
}
}
class IntGenerator : Generator<int> {
protected override async void generate () {
for (int i=0; i < 10; i++) {
yield feed (i);
}
}
}
void main () {
var gen = new IntGenerator ();
foreach (var i in gen) {
message ("%d", i);
}
}
Many people asked me at Desktop Summit about the work I’ve been doing recently on implementing the awesome Documents designs from Jon and Jakub; so here it is, I am very happy to announce the first release of GNOME Documents. Here’s the obligatory screenshot.
The application makes full use of the latest 3.0 platform technologies: it’s written in Javascript thanks to the awesome GObject Introspection, it uses Tracker to read and store information about the documents on the system, integrates with GNOME Online Accounts for accounts and credentials, and ships with a Tracker miner for Google Docs, powered by libgdata.
Some of the design features are already in place: searching, grid and list view, the Favorites and Shared categories, document preview, and opening in browser for Google documents.
Of course, on the other hand this is just the very first release of the project, so there’s a lot still missing and rough edges to be fixed. If you want to help, feel free to reach me on IRC!
I am very excited I’ll be flying to Berlin this Friday to drink ice cold german beer attend the Desktop Summit.
If you are interested in theming and the huge improvements GTK3 and CSS have to offer on the matter, make sure you don’t miss my talk Sunday morning at 10:20. Coffee not included.
See you in Berlin!

esistono motivazioni che mi portano a scrivere rimuovendo le maiuscole eccetto per nomi propri.
in più, esitono motivazioni che mi portano a scrivere Gnome non come un acronimo.
tuttavia queste motivazioni non trovano posto nel margine di questo blog — quindi una versione condensata dovrà bastare: questo sarebbe il mio blog, e ci scrivo non solo cosa ma anche come cazzo mi pare.
peace out.
il primo Luglio, contrariamente alle mie aspettative, sono stato eletto insieme ad altre sei persone a far parte della Board of Directors della Fondazione GNOME.

GNOME: Gnu's Not Unix Network Object Model Environment. Well, at least the first thing's still true.
la direzione tecnica del progetto non è tra i compiti della Fondazione: per quello ci si affida ai maintainer dei vari moduli, e al release team per quanto riguarda l’integration and release management; non che si possa dare una qualsivoglia forma di “direzione tecnica” in un progetto complesso come Gnome: come posso costringere i maintainer di — ad esempio — Evince e EoG a cambiare radicalmente l’intento e scopo dei loro due progetti? mica vengono pagati dalla Fondazione.
detto questo, parte della mia “piattaforma elettorale” era, ed è, incentrata sull’idea che Gnome debba crescere e piantarla di essere un desktop environment — cosa che ha cessato di essere se non nel nome da quasi dieci anni a questa parte.
l’idea che si possa scrivere un desktop in isolamento da quanto avviene dal kernel in su, e dalle applicazioni in giù, è ridicola e infantile. esattamente come l’idea che si possano cambiare pezzi a costo zero senza che il risultato cambi, o che tutto quanto debba essere realizzato usando astrazioni per minimizzare l’impatto di cambiare i pezzi. entrambe sono posizioni che non reggono la prova dei fatti — posizioni che possono funzionare se si vive nel mondo dei sogni in cui le decisioni sono interamente dettate da dettagli tecnici; oppure se non si è mai dovuto creare un prodotto. in entrambi i casi, nella stanzetta adiacente, Babbo Natale e la Fatina dai Capelli Turchini vi spiegheranno che il mondo non funziona così, e che essere il nuovo Enlightenmen 17 non garantisce a varia gente di campare.
esistono anche ragioni tecniche, ovviamente, per non voltronizzare un progetto; scrivere astrazioni risulta in perdita di tempo, performance e alla fine risulta in costi di mantenimento superiori: invece di mantenere una sola superficie di contatto tra due pezzi indipendenti (ognuno con i suoi limiti e bug), dobbiamo mantenerne due, con tre pezzi, di cui uno interdipendente. insomma, come fare il giocoliere con tre palle, di cui una piena di nitroglicerina.
tutto questo per quale motivo, poi? per poter garantire “libertà”?
garantire quale libertà? e a chi, poi?
la libertà garantita da una licenza FSF o OSI-approved non implica che qualunque cosa io scriva debba essere interoperabile con qualunque pezzo di codice in esistenza; se scrivo una libreria per leggere e scrivere JSON che usa come base GLib mica devo anche scrivere la parte che funziona con le Qt: sarebbe eminentemente stupido.
scrivere un’interfaccia grafica che permetta all’utente di portare a termine un lavoro ha centinaia di dipendenze: kernel, driver, API per spedire pixel verso il monitor, API per ricevere input da tastiera, touchscreen o mouse; networking, device discovery, color management, graphics system; ognuna di queste si porta dietro le sue richieste e le sue dipendenze — e tutto questo va preso in considerazione come un unico blocco quando si vuole andare a definire una piattaforma per scrivere applicazioni. esistono standard, ma di solito sono troppo a basso livello per essere anche solo remotamente utili per scrivere un sistema operativo moderno. un sistema operativo che riesca a reggere la competizione, che scali verso le piattaforme mobili, e verso il computing condiviso e distribuito.
continuare a guardarci l’ombelico non aumenta la libertà degli utenti; né, ancora peggio, aumenta il numero di utenti — ovvero il pool da cui il progetto trae nuove risorse per scrivere applicazioni e componenti.
ovviamente, perdere i pochi utenti che abbiamo può essere visto come ancora peggio — ma siamo seri: perdere gli hipster per strada non è quasi mai una gran brutta cosa.
tutto questo rambling porta a Gnome OS — ovvero: prendere atto che stiamo scrivendo un sistema operativo; non una distribuzione: dovremmo essere stupidi per scrivere una distro nel 2011. un sistema operativo non è una distribuzione, nonostante alcuni tentino di farlo passare come tale; fare packaging del software è una cosa che esiste solo nel mondo del desktop Linux — e di solito serve solo per dare l’idea che chi impacchetta software stia contribuendo in maniera costruttiva allo sviluppo dell’open source.
intendere Gnome come un sistema operativo significa pensare che i progetti che compongono Gnome, e le loro dipendenze, siano trattati come un’unica struttura; una serie di garanzie per scrivere applicazioni, una developer experience che porti a una user experience consistente e professionale — il tutto sviluppato sotto gli occhi di tutti. il ché non significa “con il contributo di tutti”, bensì “aperto a tutti”.
non è per nulla banale, e la potenziale hubris di questa operazione è probabilmente misurabile sulla stessa scala delle migliori tragedie greche. ditemi, però, che non ne valga la pena. ditemi che bisognerebbe rimanere a fare un desktop environment per quelli che usano l’interfaccia grafica per lanciare trenta terminali e un browser. ditemi che bisogna accontentarsi del 2% degli utenti, oppure che bisognerebbe far diventare tutti quanti dei nerd inveterati.
ditemelo pure. mi scuso in anticipo se me ne andrò ridendo.
While I was in flight over the Atlantic to come back to the old Europe, the awesome gnome release team finally put out GNOME 3. Not only that, www.gnome.org now sports a fresh new look, but most importantly some great new content.
I am of the opinion that the primary measure of success of an open source project is its ability to attract and keep contributors and I think in this regard GNOME 3 is already a success. The changes in the UI – even the controversial ones – managed to revitalize a project that was slowly falling in a drowsy routine, refocusing efforts of long-standing contributors and attracting new forces. At the same time the great efforts spent cleaning up the programming platform provide a future-proof foundation which makes contributing easier and more fun. Time to make patches, GNOME 3.2 is right ’round the corner!
<iframe allowtransparency="true" frameborder="0" scrolling="no" src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.oluyede.org%2Fblog%2F2011%2F03%2F25%2Fphotographic-portfolio%2F&layout=standard&show_faces=true&width=450&action=like&colorscheme=light&height=80" style="border:none; overflow:hidden; width:450px; height:80px;"></iframe>
Lots of blogs/flames/opinions about gnome3 on the web lately… but as they say, there is no such things as bad publicity.
I’ll keep my opinions for myself for now, first of all because I have not yet used gnome-shell enough to make an informed evaluation, but most importantly because if I write them down here, 3 years from now people will be able to point out how wrong I was ;) [maybe I should link some of the blog posts explaining why the spatial nautilus - which is gone in 3.0 - was such a good idea]
With regard to gedit, I am really happy to see how things are coming along… up to a couple of weeks ago I was a bit worried about the stability of the upcoming release, but thanks to the great work of nacho, nud, jesse, gregier, j1mc (thanks for working on the docs!) and to the prompt support of gtk+ and pygobject developers in fixing reported bugs, I am now back to using the devel version of gedit for day to day work and I am confident that it will be a good release. Besides, now that even the dependency on GConf is gone, gedit will fit perfectly in your XFCE, LXDE or EXDE desktop :-)
Coming to more important matters, this blog post after almost an year was mostly an excuse to say that I should be in Cincinnati for about a week starting from the 25th of March… if there is any gnomer who would like to meet for a beer just let me know!
If You want to follow my adventures around Europe subscribe the blog 5ivecities.tumblr.com. I’m out to snowy Stockholm now
<iframe allowtransparency="true" frameborder="0" scrolling="no" src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.oluyede.org%2Fblog%2F2010%2F12%2F04%2F5ive-cities%2F&layout=standard&show_faces=true&width=450&action=like&colorscheme=light&height=80" style="border:none; overflow:hidden; width:450px; height:80px;"></iframe>Hi guys,
I’ve spent the last few days playing with Gtk+ 3.0… you know, next months are going to be reeeally interesting!
After much more than 2000 lines of “git diff”, murrine was successfully ported to the new APIs. But, is there a reason to port an engine without a great theme to run? Of course not! So, I’ve started porting light-themes as well!

I’m planning to make their gtkrc more modular, in order to share common code and add support for dark variations. Do you know that Gtk+ 2.22 and newer lets application developer to load a dark variation of the current theme? A developer could just set the GtkSettings “gtk-application-prefer-dark-theme” to true and Gtk+ will load gtkrc-dark, if present.
That’s great! Imagine totem, shotwell, f-spot, gimp, etc etc using a dark colorscheme!
So, I’m sure you’re wondering: where’s the code?
You can grab the murrine “gtk+3″ branch here: http://git.gnome.org/browse/murrine/log/?h=gtk%2b3
You can grab the light-themes “gtk+3″ branch here: https://code.launchpad.net/~cimi/light-themes/gtk+3
If you want to play with some Gtk+ 3.0 apps, install the official Gtk+ 3.0 examples, or compile my experimental port of the widget factory to Gtk+ 3.0.
If you are lazy and you’re running Ubuntu Maverick 10.10 - and you should, because it’s cool
- I’ve just created a PPA with both packages compiled.
The PPA is available here: https://launchpad.net/~cimi/+archive/theming but remember that you must add the Gtk+ 3.0 PPA by my French friend Sebastien Bacher: https://launchpad.net/~ubuntu-desktop/+archive/gnome3-builds
Now that you have a working (and nice, thanks to murrine and light-themes) Gtk+ 3.0 environment, you can start migrating your app to the new APIs!
Spend a great weekend… and for the guys coming to Orlando, see you next week or at the UDS!
Ubuntu 10.10 is OUT NOW!
Enjoy the new features and the new graphical theme by Andrea Cimitan and Otto Greenslade
See its features and go downloading it!
Warning, long post
With a blogging rate < 1 post/year you will forgive me if the single one I write is a bit long. If you're impatient jump directly to the screencast
.
What happened to gleffects?
You may have noticed the astonishingly cool super awesome effects I wrote for Cheese during my Summer of Code never made their way into Cheese itself.
Writing the effects with GLSL was and still is super fun.
It’s amazing what you can do even with a cheap gpu.
A couple of months ago, thanks to my lovely nvidia gpu heating up to the point of desoldering itself from the mainboard and making my laptop unusable ((Maybe some day I’ll tell you how I did solder reflowing and temporarily fixed the laptop with a heatgun)), I ported most of the effects to work on my little i915 based netbook. It’s quite satisfying to see convolution filters (gaussian blur, sobel edge detector, glow) process 640×480 textures at a nice framerate on such a small and underpowered device.
I believe we definitely need to take advantage of this big power in GStreamer and we’re slowly going towards the right direction.
But…
As cool as it can be, at the moment, gst-plugins-gl is still little more than a hackish proof of concept. It’s difficult to use in an application especially if you want to have mixed gl and normal buffers. Each frame needs to be uploaded to the video memory, processed with GL and downloaded back into ram for further gstreamer processing (e.g. video recording). So you need dedicated code paths that wouldn’t be needed if GL video was a first class citizen in a gstreamer pipeline.
The thing is even worse if you want to use GL in the UI, like we’re finally doing in Cheese. Gst-plugins-gl and Clutter run in separated threads, they use different GLX contexts and although there are ways to share textures (either with glxcontext sharelists or with texture from pixmap) between the two, they are tricky and fragile.
That and, most of all, the little time my studies leave me, kept the effects far away from Cheese all this time.
What changed?
Nothing.
So what?
Some days ago, during one of those moments after an exam when you feel so bored to suddenly have nothing to do but don’t want to start studying for the next one and desperately look for something to hack on, I noticed warptv.
It’s an effect we had in Cheese since the beginning. It applies a time dependent distortion to the image. A distortion, nothing that special, just like some of the funniest filters from gleffects, without gl.
So I went to look at the code and found out it was pretty simple to reimplement all distortion filters in gleffects using GstVideoFilter class.
No gpu, won’t it be slow?
While the shaders in gst-plugins-gl are able to calculate new coordinates for each pixel on the fly, to obtain acceptable speed on the cpu you have to precalculate a distortion map in an outer loop.
That’s all, the end result is the same and probably the cpu one is even faster because you don’t have the texture upload overhead.
There is a minor drawback ((Two actually, the gpu also does out of bound pixel clamping for free)) though: with the gpu you work on floating point coordinates and if your transformed pixel falls at fractional coordinates the hardware will calculate its color interpolating from the four nearest pixels.
With the cpu no one helps you and you have to either map the transformed fractional pixel to the color of its nearest neighbour (fast but jagged and ugly results) or implement bilinear interpolation yourself (nice but slow).
Cool, where I can see the results?
At first I ported all distortion filters from gleffects to a new plugin called cheeseeffects but soon discovered that Thiago already did something similar with geometrictransform plugin. So ported all the filters ((Minus the ones already there: squeeze, there called pinch, and twirl)) to his base class, fixed some of my old math and made effect parameters customizable. Unfortunately geometrictransform only does nearest neighbor interpolation, but I plan to port the bilinear interpolation routine I wrote in the first iteration sooner or later.
Done with distortion ones I also ported the color lookup table effects (heat, sepia, xpro and xray) into a new plugin, coloreffects.
I said see, where’s the screencast?
Okay okay, here’s your obligatory screencast!
Effect live previews from new Cheese effect selector
As you can see the effects look almost like the gl ones, but there is no gl involved. No need for a powerful gpu, no need for good video drivers, no need for GLSL! The screencast is taken on my netbook directly from the new effect selector Yuvi wrote for his Summer of Code and the low framerate is caused only by the recording app. The effect previews run pretty smoothly here.
Where can I get it?
Everything, thanks to Sebastian Dröge for the super quick review, is already in GStreamer Bad Plugins, you can test it if you want from today’s prerelease tarballs and will be for sure in the new Cheese.
PS
As you may have noticed there is a new Donate button in the sidebar.
Quite often someone suggested me to put one, for my work in Cheese, but never liked the idea that much…
Nonetheless, I’m an unemployed student and all the time I spend hacking in free software, albeit fun and exciting, is time subtracted from my studies.
Also as I said earlier, since some month I’m forced to work on a netbook as my laptop is dead and cannot afford a new one at the moment. I definitely wouldn’t mind some help there
So, if you appreciate my work, feel free to donate 
Thank you!
Ho quasi le lacrime agli occhi…
Pur non avendo due monitor.
UPDATE: Leggendo il commento #81 sembra comunque che non sia ancora possibile selezionare immagini diverse. Aspettiamo ancora un po’…
Well, not so lazy… I’ve spent a couple of hours looking into this but didn’t find a solution.
Is there a way to set default size of a widget (or better just of a GtkDrawingArea) without limiting its minimum size?
It seems that the only way to have a drawing area of the size I’d want is to set a size request.
Thanks!
Option "AIGLX" "true"Option "AccelMethod" "XAA"