As part of my computer science studies I needed to work on a research project which I finally finished not too long ago – the title: “Planning of 3-dimensional complex cutting trajectories for robot-assisted surgery”. I worked on a program for a robot-assisted laser surgery on bones (in particular the human skull). It’s written in C++ using Qt and VTK. My task was to work on the planning module. The surgeon can mark points on a model of the patient’s skull and then connect them either with straight lines on the skull or create more complex connections. This was then used in another module to calculate positions and movements of the robot that was handling the laser. Laser beams ZOMG! All this will hopefully help make skull surgeries safer and less invasive as well as allow surgeries currently not possible due to tool limitations.
Despite having contributed to KDE for a few years now pretty much all over the place this was my first really big C++/Qt coding experience. I’ve not really touched KDE code in all those years except a few small changes here and there. Unbelievable right? Not really. On the one hand I think that so far KDE was better served with me doing community work – and maybe always will? And on the other hand it was damn scary. Oh and of course there was no pressure to climb that rather huge imaginary mountain and learn all the stuff I’d need to actually be any useful in that area. This university project helped quite a bit with both now 😉 This is btw also one of the reasons why I think GSoC is so invaluable: It gives the needed pressure and incentive to not give up when things get tough that some people (including me) need.
The robot, laser head and a plastic skull:
Cut on the plastic skull:
Cut on a part of a pig’s bone:
And the actual planning program:
Thanks to Jessica, my advisor, for having patience and letting me screw up a few times. Thanks to everyone working on Qt and VTK for letting me do amazing stuff.
Guess it’s time now to find a good KDE project to get my hands dirty on. Be warned 😀
Oh and next time a new contributor vanishes: Nudge them a bit. They might just be standing in front of that huge imaginary mountain and need someone to tell them it’s not actually that huge or give a helping hand. And if you’re standing in front of it yourself right now: Don’t give up! Take it step by step. You’ll get up there.
The Amarok developer sprint in Berlin is at full speed and the Amarokers are having an awesome time
Tuesday started with me being late for my ride to Stuttgart due to a meeting. Finally at 4am on Friday Frederik, Sven and I arrived in Berlin. We had a nice chat with Nuno, Leo and Gerard. Czessi of kubuntu-de organized a really nice flat for us with comfy beds to fall asleep in.
Friday morning we went to the KDAB office in Kreuzberg and where greeted with lots of music and generally everyone having a great day. May 1st is starting as a rather nice street festival here. After playing a first round of table football (note to self: need one at home! need one at home!) we split into two groups, one doing API review of the Amarok codebase and the other one planning the PR part of our world domination plans and talking promo, website and artwork. Todos for everyone 😀 In between being all serious and making Amarok rock even more we went out to get food at a Moroccan restaurant next door (everysone visiting KDAB: get food there – it’s delicious!) and enjoyed the atmosphere. We left Kreuzberg later in the evening right before police closed the U-Bahn station. Fun being in Berlin on May 1st 😉
Saturday was all about discussing ways to make Amarok’s user interface better. We had everything from “awesome but totally un-doable” to “yea this is pretty cool and might work”. Stay tuned for what will come out of this. Leinir and I did some card sorting to improve the context menu that pops up when right-clicking on a track in the playlist. It currently contains 11 items most of which are not the way they should be. Sebas was able to convince Frederik to join him in hacking on the networkmanager applet. We had delicious food around the corner again, Vietnamese and Indian this time. And of course we had a few good table football matches again 😀
Today started with making action items out of the discussions of the previous days, discussing bigger short and long-term plans and going through critical bug reports. After some really good Persian food, Leinir and I evaluated the data we got yesterday and came up with a very nice new context menu for the playlist. Others worked on implementing some of the action items we agreed on earlier like making it possible to remove the context view with a command line option (no option for now as we are in string-freeze). Night ended with a serious table foodball match which Leo, Sebas and Nuno totally rocked 😛
Conclusion: Berlin around the KDAB office and the office itself is the awesome. Thanks to KDAB for providing us with a great location and hosting. Thanks also to KDE eV for helping with funding. Stay tuned for some cool stuff 🙂