Summer of Tables!

I’m probably one of the last GSoC student to blog after the announcement, but I’m just knee high in school work right now :)

The good news is: Yes! My proposal was accepted and I’ll be working this summer with implementing basic support for tables in KOffice’s text shape. Of course I’m very excited about this and I just wish school was over so I can start hacking.

I’ve been aggregated on the planet for a while now, so maybe some of you have an idea of who I am, though my very infrequent posting surely hasn’t helped. My name is Elvis Stansvik and I’m a 25 year old student from Sweden. A little more about me in my original proposal. I’ve followed the KOffice project with great interest for the past 4 years or so, and when time has allowed I’ve done some bug fixing et.c. I’m looking forward to finally be able to put my heart into the project this summer.

Since support for tables is quite an ambitious task and one that is important to get right, I’m very honored by the confidence put in me by the KOffice mentors and I’ll make sure to work closely with my assigned mentor Thomas and other senior devs within KOffice to bring it to fruition. Don’t be fooled by the word “basic” in my proposal title, tables are a complex thing to implement and although my goals for this summer does not include support for every single detail of the ODF specification of tables, all the requirements of the spec must still be kept in mind in order for my implementation to be able to grow in the future.

As I said, at the moment I’m kind of swamped by school work, but during the little free moments that I actually have, I’m putting my nose in the text layout and loading code of KOffice, and I think that I already have quite a good grasp of how it fits together. School work should ease up a bit in the coming week or two, and during this initial “Community Bonding” period, my plan is to:

  • Read all the relevant portions of the ODF specification and keep my eye out for things that I need to keep in mind that I haven’t thought of already, and maybe create a short list of “requirements” to get a better overview of what ODF demands when it comes to tables.
  • Spend more time reading and maybe even poking at some at the text layout code in plugins/textshape and loading code in libs/kotext/opendocument. No better way to learn than to break stuff.
  • Ask my good’ol mentor quite some questions! :)

In the beginning of June, I’ll also be attending the KOffice meeting in Berlin, where I’ll be able to meet Thomas and the other KOffice devs.

All in all, I think this summer will be a lot of hard work, but a great opportunity, both for me to grow as a programmer and learn more about the KOffice code, but also for KOffice who will finally be getting a proper implementation of tables for the 2.x series, and I’m very much looking forward to it.

Looking for part time work

Shame on me for using the planet like this, but I’m currently looking for a part time / temporary job that I can combine with my studies. I’m a free software hacker (duh) in my spare time, and you can find some patches from me sprinkled about projects such as KOffice, The Gimp, Scribus, libxml2 and FreeBSD.

My previous work experiences are quite varied and include running my own book shop and eventually a book café, working as an IT-technician for a small book publishing company and also being leased out as a programming consultant to other Swedish publishing companies. At the moment I’m studying and doing some part time work as a translator of technical manuals and user interfaces for a Spanish localization company.

I’m an agile worker and good at keeping deadlines and delivering on spec, as well as quickly getting up to speed in large existing code bases in a multitude of programming languages.

If you need an extra hand for your project, or just need an additional part time worker on your staff, please don’t hesitate to contact me! Here’s my CV. I’m not picky about which tools or technologies you want me to work with, or afraid of mundane tasks. And the pay just have to be reasonable, not more :)

Looking forward to hearing from you!

Phone: +46763091545
E-mail/Skype: elvstone [[at]] gmail.com

Cooking

Now, everyone who knows me can tell you that I hate cooking. But see, my hate for cooking is actually two-fold, and I think I’ve been making real progress on overcoming of the hatreds. On the one hand, I hate cooking the way most people do. This is a hatred that comes from the boredom of having to come up with something to cook everyday, and then cook it. It’s dreary. The other hatred springs out when I have to cook for other people, and performance anxiety kicks in. The progress I’ve been making involves the first of these two hatreds, and I think it has a lot to do with me becoming a poor student having to come up new ways to use whatever happens to be in my fridge on a given day &emdash; on a shoestring budget.

Today I added another recipe to my repertoire of improvised dishes, and since I’m sitting here digesting it and thinking it’s at least a 7/10, I thought I’d share.

Veggie stuffed potatoes

Stuffed veggie potatoes

Stuffed veggie potatoes

(Oven: 225 degrees C)

3 big potatoes (1 person)

Stuffing

1/2 Carrot
1/2 Red pepper
1/2 Yellow pepper
1/4 Pack of Quornbitar
1/4 Yellow onion
1/2 dl of Cooking cream
1 wedge of garlic
2 pinches of salt
2 pinches of pepper
3 pinches of basil, thyme, oregano or something else
1/2 teaspoon of lemon juice
1 teaspoon of olive oil

Cut the pepper and onion into small pieces. Grate the carrot. Put all the ingredients for the stuffing in a mixer. Season with salt, pepper, garlic, a little bit of lemon juice, a little olive oil and a spice of your choice. I used a mix of French herbs. Run the mixer for a little while, not too long. Chop the top part of the potatoes off to create a lid. Scoop out some of the inside. You can put it in the stuffing if you don’t want to waste it. Fill the potatoes with the stuffing, put in as much as you can. Put the lids on, rub some butter on the top and sprinkle with a little pepper. Cook in the middle of the oven for about 50 minutes. You can pre-boil the potatoes a bit if you want, for a crispier effect. Serve with salad.

Enjoy!

Small tip for konquering subclassers

To prevent my poor little blog from feeling completely abandoned, I’m hereby making a little post with a small tip for fellow Qt developers about to subclass one of the abstract base classes in Qt for the first time, who might not know the pure virtuals that needs to be re-implemented like the back of their hands.

In Konqueror, when at the Qt documentation page for the ABC in question; Ctrl+F3, check the Regular expressions option and type (\)|const) = 0 followed by Enter. After that, use F3 and Shift+F3 to search back and forth between the pure virtuals you need to re-implement.

Small and trivial tip, but gave me a reason to blog :)

Have a nice weekend and happy Valentine’s Day!

PS. Yes the title of this blog is a very lame attempt at a joke. I’m quite proud. DS.

EDIT: I just realized that the function header in the detailed documentation further the page is followed by “[pure virtual]“, which means just searching for “pure virtual” is probably better and kind of moots the point of this whole post.. oh well.