The Life of RubenV - Wolkjesblauw!
GSoC Infosessie aan K.U.Leuven volgende week

Korte announcement voor Belgische studenten die willen meedoen in Google Summer of Code 2010. Volgende week (9 maart) gaat er een infosessie door in het departement Computerwetenschappen van de K.U.Leuven (200A, auditorium 00.225) van 12:00 tot 13:00.

Summer of Code 2010
Google Summer of Code 2010


Bram Luyten (mentor bij DSpace) en Vincent Verhoeven (2 jaar als student) zullen het meest aan het woord zijn, maar aangezien ik daar werk zal ik (2 maal als student en nu GSoC admin voor GNOME) ook aanwezig zijn en kort wat uitleg geven over GSoC en GNOME. Uiteraard zal er ook voldoende tijd zijn voor vragen.

Als je de volgende GNOME rockster wil worden is dit je kans! Kom gerust langs voor een praatje!

Meer info

gnome, summerofcode | Saturday 6 March 2010 13:18 | Reacties (0)
Summer of Code 2009

GSOC 2009 is al drie weken gedaan en ik heb er nog steeds niet over geblogd. Foei! Deze zomer heb ik gewerkt aan RAW handling en processing in F-Spot. Op lange termijn is het de bedoeling om een volwaardige image processing tool te worden, zoals Adobe Lightroom. Met mijn GSOC project was het de bedoeling om een stapje dichter in de buurt van dat doel te komen.

Er zijn drie belangrijke zaken die hiervoor opgelost moeten worden:



RAW decoding and loading
RAW files worden over het algemeen opgeslaan in ongedocumenteerde, proprietary, formaten, die vaak zelfs verschillen naargelang he cameramodel. Deze files decoderen was iets dat F-Spot nog niet deed. Tijdens deze zomer heb ik de image loading infrastructuur van F-Spot refactored naar een nieuw model, waarin ik een nieuwe RAW loader heb ingehaakt, gebaseerd op LibRaw.

Dit betekent dat F-Spot elk type RAW file dat ondersteund wordt door dcraw (waarop LibRaw gebaseerd is) kan laden en weergeven. Zowat alle types dus.

RAW processing
Een grote taak bij het behandelen van RAW files is processing: de pure sensor data omzetten naar RGB pixels, witbalans en gamma correcties uitvoeren, ruis-onderdrukking etc. Dit gebeurt allemaal in een hoge bitdiepte (10, 12 of 14 bit), voor optimale kwaliteit. Hiervoor waren drie opties: de dcraw routines herbruiken, GEGL and zelf wat ineenhacken.

De dcraw routines herbruiken was een goede manier om te ontdekken wat voor een horror de dcraw code wel niet is. Veruit de meest onleesbare bizarre code die ik al gezien heb. Een bijkomend nadeel is dat deze routines niet herbruikbaar zijn voor JPEG, wat betekent dat we zaken als witbalans dubbel zouden moeten implementeren.

Plan B was het gebruik van GEGL, de geweldige image pipeline die in The GIMP gebruikt zal worden. Veelbelovend, maar nog veel te traag om bruikbaar te zijn (minuten om een enkele RAW file te laden).

Plan C was zelf wat knutselen. Dit zou onder andere inhouden dat GdkPixbuf aangepast moest worden om hogere bitdepths aan te kunnen en een berg complexe algoritmes schrijven.

Uiteindelijk heb ik de wijze beslissing gemaakt om geen pipeline te bouwen en me op de andere taken te richten. Voorlopig laat ik LibRaw de initiele processing doen, tot het punt waarop we een RGB afbeelding hebben, die dan doorgegeven wordt aan F-Spot voor verdere processing.

Repeatable (non-destructive) editing
De derde taak was repeatable editing. Om de volledige Lightroom experience te kunnen bieden, met alle knoppen en sliders om aan te passen, hebben we een repeatable editing framework nodig. Zij die F-Spot wat kennen weten dat elke edit destructief is: elke operatie creeërt een nieuwe JPEG, met het bijhorende kwaliteitsverlies. Ik heb de eerste versie gebouwd van een non-destructief image processing framework en heb alle kleuroperaties er naar omgezet.

Het wil zeggen dat we gaan van:
original --> editA --> editB --> editC

naar:
original + adjustment settings --> result

Wat goed is, want elke pijl betekent mogelijk kwaliteitsverlies.

Fish!
Paarse vis? Groene vis? Experimenteren toegestaan!


En nu?
Deze code is nog niet in de master branch, er zijn namelijk nog enkele zaken die opgelost moeten worden. Wie het wil proberen (denk er aan: backups maken, de database wordt aangepast!) kan het vinden in de libfspotraw branch op Gitorious. Alerte lezers hebben gemerkt dat we het einddoel nog niet bereikt hebben, wat waar is, maar het is een eerste stap in de juiste richting. Meer informatie en details kunnen gevonden worden in mijn final report email.

Ondertussen ben ik beginnen hacken aan een andere belangrijke F-Spot issue. Maar jullie zullen moeten wachten tot ik terug ben van Lissabon (ik vertrek morgen en kom 18 september terug) voor meer details.

f-spot, gnome, mono, summerofcode | Wednesday 9 September 2009 17:34 | Reacties (1)
F-Spot: Alive and kicking!

Een paar dagen geleden vroeg iemand in het #f-spot kanaal op irc.gnome.org:

"is f-spot development still active, or is it just the occasional patch here and there?"


Gelukkig is het antwoord ja, F-Spot is springlevend. Het is waar dat we een tijdje op een laag pitje gestaan hebben, voornamelijk omdat iedereen met andere verplichtingen zat. We zijn echter stilaan weer op snelheid aan het komen en daar gaat deze post over.

Build problemen: opgelost
F-Spot was vrij lastig te bouwen de afgelopen maanden, dankzij de vereiste voor gtk-sharp uit SVN. Daar kwam nog bij dat dit tot bugs leidde voor sommige gebruikers. Twee weken geleden heeft sde in 1 beweging alles opgelost.

F-Spot compileren zou moeten werken op alle moderne distributies, zonder dat er libraries van source gebouwd moeten worden. Verkrijgbaar op git://git.gnome.org/f-spot.

F-Spot en Git: DVCS in hoogste versnelling
We hebben een automatisch gesynchronizeerde kopie van F-Spot git opgezet op gitorious.org. Hierdoor kan iedereen branches maken en zijn/haar werk publiceren, op zo'n manier dat we het kunnen opvolgen. Dit bleek de moeite te zijn, zoals je hier kan zien: http://gitorious.org/f-spot/. Er is een heleboel activiteit aan de gang, met vele coole branches onderweg. We houden van git, dikke merci aan de mensen die het mogelijk gemaakt hebben, het maakt ons werk zoveel aangenamer!

Work in progress
Een kort overzichtje van wat er gebouwd wordt (hou in het achterhoofd dat dit allemaal heel experimenteel en beta is, dus geen garantie dat het ooit uitgebracht gaat worden):


Vele handen maken licht werk
Het is waar dat F-Spot verre van perfect is en we zijn ons daar ook zeer bewust van. Er zijn ook zoveel coole features die we erin willen, maar we hebben de tijd nog niet gevonden om die te bouwen. Wat we wel allemaal willen is de fijnste foto applicatie bouwen die er is.


We want you to write code for F-Spot!


En daar kan jij bij helpen! Als je kan programmeren, kom dan eens langs op IRC, je mag me gerust lastigvallen. Vele handen maken licht werk en die van ons zijn momenteel al overbelast. We hebben al meer dan genoeg feature requests, dus tenzij je ze zelf gaat programmeren zal je waarschijnlijk gewoon moeten wachten.

UPDATE: Omdat ik gitorious.org verkeerd las heb ik onterecht Lorenzo vermeld als degene die het Tabblo werk doet. Hij helpt om het te mergen, maar het is Wojciech die alle eer verdient voor de ontwikkeling. Sorry daarvoor!

f-spot, gnome, mono, summerofcode | Wednesday 10 June 2009 12:53 | Reacties (18)
F-Spot 0.5.0

Extra! Extra!


We've just released the most awesome f-spot so far: 0.5.0! It features a countless amount of enhancements, polish and bugfixes. Here's some appetizer, but you'd better taste it by yourself:

- New Sidebar context switching
- Extendable Editors
- New Metadata display
- Color profile support
- Duplicate detection at import time
- Reduced and faster db access, faster queries on big collections
- Light speed tagging
- FullScreen mode enhancements
- New extensions distributed by default
- Updated documentation
- Updated translations
- Hundreds of bugfixes
- New contributors

We'd like to thanks everyone involved in that release cycle, bug reporters, triagers, testers, developers, translators. So thx, and keep up the hard work.

The minimal dependencies should be as they were for 0.4.4. But if you want to build for gnome 2.24, you'll probably need gtk-sharp 2.12.3

f-spot, gnome, summerofcode | Friday 19 September 2008 00:02 | Reacties (2)
F-Spot Sidebar Editors + Histogram

Vers van de pers: De nieuwe sidebar editors in F-Spot zijn geland. Op de color tool na (en wat layout wijzigingen) is het zo goed als af.

En ook: F-Spot heeft nu een histogram in de sidebar.


Sidebar + Histogram


Einde bericht.

PS: F-Spot had al een histogram. Het was gewoon heel goed verborgen.

f-spot, gnome, summerofcode | Tuesday 12 August 2008 22:52 | Reacties (5)
F-Spot performance verbeteringen

Op het vlak van snelheid is F-Spot niet altijd de beste in zijn categorie. Een deel van mijn Summer of Code heb ik besteed aan het oplossen van deze pijnpunten. Tijdens het herwerken van de editors (die er binnenkort aankomen) heb ik deze problemen aangepakt, waarna mijn mentor nog een stapje meer verbeteringen heeft aangebracht.

Om het verschil te tonen heb ik een kleine onwetenschappelijke benchmark gemaakt. Hieronder zie je de tijd die nodig is om 2 tags toe te voegen aan 1000 foto's. De gebruikersinterface blokkeert dan.


Twee tags toevoegen aan 1000 fotos


Merk op hoe, met de huidige release, de hele UI zo'n 20 seconden volledig blokkeert. In de SVN versie merk je amper dat er iets gebeurt. Dit is een verbetering met een factor 44.5!

Gelijkaardige verbeteringen vind je overal terug. Ik ben het meest gesteld op het feit dat de afbeelding niet meer herlaad na het toevoegen van een tag. Dit betekent dat type-to-tag (de t-sneltoets) nu volledig instant is en daardoor heel fijn in gebruik.

Dit alles zit in SVN en zal beschikbaar zijn bij de volgende release.

f-spot, gnome, summerofcode | Tuesday 29 July 2008 19:14 | Reacties (14)
Summer of Code Update

Google Summer of Code
Veel F-Spot activiteit tegenwoordig. Aangezien er een heleboel mensen nieuwsgierig zijn naar wat ik aan het doen ben heb ik een kleine sneak preview screencast gemaakt.

In de screencast toon ik eerst de oude editing tools onderaan, die vrij moeilijk te vinden zijn. Daarna toon ik hoe de nieuwe tools er zullen uitzien.

Editor sneak preview
Klik voor screencast (Ogg Theora)


De gebruikers interface is nog heel ruw, aangezien mijn GTK+ kunstjes niet heel geavanceerd zijn.

F-Spot performance verbeteringen
Tegelijkertijd zijn zowel Stephane Delcroix (mijn mentor die dringend meer moet bloggen!) en mezelf bezig aan grote patches om de performance van F-Spot te verbeteren. Binnenkort kan je een veel vlottere gebruikservaring verwachten!

f-spot, gnome, summerofcode | Tuesday 1 July 2008 19:12 | Reacties (9)
F-Spot 0.4.4 & Eerste GSoC werk

Groot nieuws uit F-Spot land!

F-Spot 0.4.4 uitgebracht
Eerst en vooral is F-Spot 0.4.4 zonet uitgebracht (dankzij Stephane Delcroix, die echt meer zou moeten bloggen).

In de release notes valt te lezen:

About a month after 0.4.3.1, we've released F-Spot 0.4.4. It features
some new blinky features, a better gnome and gnome2.22 integration,
updated translations and tons of bugfixes.

Major changes since 0.4.3.1:
- theme switcher
- reduced startup time
- migration to gio started
- sort tag by popularity
- rating with hotkeys
...and more

And, as this release is a pre-Soc one, more fun stuffs are coming.


Meer info hier, downloads ook op de website. Dit wil meteen ook zeggen dat ik vanaf nu mijn GSoC werk in trunk kan beginnen duwen. Zonder verder oponthoud:

Google Summer of Code werk begonnen
Een van de grote problemen met F-Spot is de plaats-verkwistende balk opzij:

Oude sidebar (1)
Oude sidebar (1)


Zoals je kan zien toont het ding wat informatie en een boom met tags, om foto's te zoeken. Niet zo slecht eigenlijk. Als je naar een foto overschakelt krijg je het volgende:

Oude sidebar (2)
Oude sidebar (2)


In deze view is de boom met tags vrij nutteloos (tenzij dan om tags toe te kennen, als je de geweldige tag-to-type 't' toets niet gebruikt). Onderaan het scherm is een minuscule rij tools om je foto's te bewerken. Mijn Summer of Code werkt is erop gericht om de F-Spot gebruikerservaring te verbeteren, deels door deze bewerkingstools naar de sidebar te verplaatsen, waar ze makkelijker te gebruiken zullen zijn (en minder plaats zullen verkwisten).

Ik heb net de eerste stukken code opgestuurd, gebaseerd op een verouderde patch. Deze maakt de sidebar wisselbaar. Momenteel zijn er drie schermen, die er zo uitzien:

New sidebar
Nieuwe sidebar


De code heeft echter nog een heleboel problemen. Zo is het infogebied onderaan links weg. Geen zorgen, dat komt terug. De zomer is, op zijn gemak, begonnen, met veel coole dingen in aantocht. Stay Tuned!

f-spot, gnome, summerofcode | Wednesday 28 May 2008 23:42 | Reacties (9)
Summer of Code

Het is nu officieel, ik ben geselecteerd om mee te doen aan de Google Summer of Code. Ik ga werken aan F-Spot, een programma om foto's te beheren. Mijn mentor is Stephane Delcroix, die nu al aan het proberen is om mij te overhalen om hem ontbijt te brengen.

De voorbije jaren ben ik zowel in F-Spot als in Banshee af en toe actief geweest. Nu Banshee totaal fantastisch geworden is wordt het tijd om F-Spot te doen blinken.

F-Spot
F-Spot


Ik ga werken aan de Sidebar en in het bijzonder het integreren van de editing tools. Mijn voorstel vind je hier. Dit is gebaseerd op Jimmac's geweldige mockups.

Dit is jullie kans om je favoriete feature toe te voegen: Ik zou iedereen willen uitnodigen om zijn favoriete features die in de sidebar moeten komen aan mij te laten weten. Deze zomer ga ik me aan mijn voorstel houden, maar ik wil graag weten waar jullie op zitten te wachten. Dus e-mail mij, of plaats een comment, als het echt geweldig is duw ik het er misschien wel ergens tussen!

f-spot, gnome, summerofcode | Tuesday 22 April 2008 09:55 | Reacties (11)
GSoC, ZF & Doctrine

Paar updates van de voorbije week:

Summer of Code
Ik heb mijn Google Summer of Code voorstel, voor een Banshee project opgestuurd naar het Mono Project. Misschien stuur ik er nog eentje in naar GNOME (voor de zekerheid), maar enkel als ik het in voldoende detail kan uitbreiden. Ik wil geen reviewers tijd verspillen met een half voorstel.

Zend Framework & Doctrine
Na een tijdje Zend Framework (een PHP Application Development Framework) en Doctrine (een Object Relational Mapper voor PHP) gebruikt te hebben heb ik een artikel geschreven om de twee te combineren: Integrating Zend Framework and Doctrine (enkel in het engels beschikbaar). Als je met twee van de leukste PHP technologieën van het moment wil spelen, neem dan zeker eens een kijkje!

Oh en dit is waarschijnlijk mijn eerste bericht dat op planet.grep.be zal verschijnen. Hallo iedereen!

doctrine, gnome, php, summerofcode, zendframework | Saturday 29 March 2008 21:35 | Reacties (37)
The author:
RubenV
Ruben Vermeersch
Computer Scientist (Software Engineering), GNOME Hacker, PhD Researcher, Photographer, Earthling
More info | Tweets
You are here:
I speak:
More:
The past: