Hamish Rodda

A Short Intro

  • Age: 27
  • Located in: Melbourne, Australia
  • Occupation: Doctor (in my second year out now, I'm planning to specialise in Emergency Medicine)
  • Nickname on IRC: blackarrow
  • Blog: http://www.kdedevelopers.org/blog/56

The Interview

In what ways do you make a contribution to KDE?

Mostly I concentrate on coding... kate, kdevelop, and kdeui. In the past I have also contributed webdav support to kio_http, and krandr (X resize + rotate support).

In addition, I am the official/press contact for KDE in the Oceania region, and a member of the KDE e.V.

When did you first hear of KDE?

I believe it was on Slashdot in 2000, although I had previously seen KDE a few times on friends' computers but not known it at the time.

How and when did you get involved in KDE?

I was running Gnome for a short period (being the default for Red Hat), but then KDE released version 2.0, and I was hooked. I started hacking at the end of 2000, and my first commit was in January 2001.

What was your most recent commit to KDE?

This past fortnight I have been working on kdevelop, and have contributed many crash fixes, made the multithreading fairly robust, improved the definition-use chain builder (see my blog for details) and resultant code highlighting, and have used valgrind/callgrind/kcachegrind to improve the performance of the c++ parser by well over 100%.

Are you being paid to work on KDE?


How much time do you usually spend on KDE?

This depends on how much work I'm doing at the hospital. On an average week, I spend a few hours a night. Currently I'm on annual leave, and am spending way too much time on it, probably because I'm being so productive at the moment :).

Which section of KDE is underrated and could get more publicity?

The underlying technologies have always been underrated... kio is the traditionally underated technology. However, the situation seems to be improving, especially with our new frameworks such as Solid, Phonon, etc.

What do you think is still badly missing in KDE?

Solid, reliable, maintained and used language bindings. There were frustrations aired at KDE Four Core about the difficulty in attracting new developers, especially since life is moving along for the current developers including new commitments to work, family etc. For KDE to survive it needs to be in a position to attract today's (and tomorrow's) developer, and they are taught languages like Java, C#, etc., so we need to make it easy for them to contribute. Qt Jambi (Qt for Java) is an exciting development and with any luck will enable us to take the next step. KDevelop 4 already has solid C++, C# and Java parsers, so it's well on track to being an IDE which can accommodate these developers, which is also important.

Do you have any plans for KDE 4?

Yes, several...:

  • KDevelop version 4 in a functional state, at least up to the standard of KDevelop 3.4.
  • LiveUi, a planned replacement for XMLGUI, implemented and major apps ported.
Some information about liveui is here: http://wiki.kde.org/tiki-index.php?page=KDE%204%20GUI%20framework

Already I've committed bidirectional text support to Kate (although it's not been well tested, I'd appreciate users familiar with bidi doing some testing for us), arbitrary highlighting and improved api to the KTextEditor interfaces, and ported KAction to be a subclass of QAction. Some of these changes need more work too.

What motivates/keeps you motivated to work on KDE?

Partially the community, we have some fantastic developers who create novel features, and others who have the uncanny ability to stay motivated to fix important issues with the core code that I don't find that interesting.

On a personal level, seeing my code come to life is a big part of it. Also, I'm driven by the thought of creating my own novel features (many of which will be in KDevelop 4).

Another motivator is having a great platform for my other interest, which is medical informatics (creating electronic health records / electronic medical records (EMR)). My ultimate aim in my career is to create an open source EMR which not only attracts open source developers, but involves doctors and other health professionals in its creation. Part of the difficulty in creating an EMR is providing the system with the vast amount of medical information that it needs to be able to offer value to health professionals above + beyond what they get with current paper based systems. In order to solve this, I'm writing software that allows non-technically minded doctors to input this information, and share it around - a kind of open source for computerised medical understanding. However, this project has been sidelined for some time by the amount of work that I want/need to put into KDE itself. I'm planning to take a year off work sometime soon to get the project going; it was going to be next year, but I was successful in applying for a particular job that was hard to get so I'm taking that. Maybe 2008.

What chances do you see in your country for KDE as a desktop platform?

Certainly KDE should have a role in Australia. We don't really have much organisation around KDE here though, but there are a few who are starting to do some promotion - we hope to be present at linux.conf.au in Sydney this January. Unfortunately I can't know whether I'll be able to attend yet.

Which text editor do you use? Why?

I use Kate, because I simply don't have the patience to learn either Vim or Emacs (or any other, for that matter). Therefore I've been improving Kate to make it do everything I want it to do.

Which distribution do you use? Why?

I just switched to SUSE from Debian, because there were continual breakages in Debian, and when X broke, that was the last straw. Serves me right for using the unstable branch, but that's what I needed to get the packages required for KDE development. So, I switched to SUSE, and apart from the Zen stuff it's been fine. In fact, it's nice having power management and network connectivity just taken care of.

What is KDE's killer app? Why?

From a developer's point of view, I'd have to say Valgrind and KCachegrind. They provide functionality which I haven't seen anywhere else, and turn hard tasks in software development into easy ones. KDE has benefited enormously from valgrind, we can't thank its developers enough.

What makes you develop for KDE instead of the competition?

Put simply: Qt. To me it is a toolkit without equal.

What does your desktop look like?


What type is your laptop/desktop? What is it named?

Laptop is a Dell XPS M1710 named glow. My desktop is an AMD X2 3800+ named sleek. Both have 2gb ram (needed for valgrind / gdb), and I have 2x 24" dell LCDs – great for programming.

If you were shipwrecked and had to share an island with a KDE contributor who would it be?

Zack Rusin, with his mind around there's never a moment's dullness.

What is your most brilliant KDE hack?

Smart cursors and ranges for KTextEditor. These things are just way cool. Link.

What is your most embarrassing KDE moment?

I committed a new error reporting framework to KIO immediately prior to the KDE 3.0 feature freeze (with lots and lots of i18n). It was undercooked, not reviewed, and this prevented it from being what it should have been. Which reminds me, I want to re-do it for KDE 4.0 and get it right.

Did you go to Akademy in Ireland this year?

Unfortunately no, work prevented me from attending. My code was there ;)

What do you hope to get out of it?

If I was going, I'd enjoy meeting more developers (I had a great time at KDE four core), and picking their brains. The latest KDevelop work only happened because I met Roberto Raggi face-to-face. It just facilitates good communication.

Personal Questions

First things first. Married, partner or up for adoption?

Up for adoption.

If you have a partner or children, how do they cope with a KDE addict?

Well, I still live at home (... I know), so my family copes with it by understanding when I disappear to my room for long periods at a time.

Do you have any pets?

We have 6 chooks and a rabbit. No names though. Also, there's plenty of native wildlife - kangaroos, echidnas and the occasional koala. Even a few kookaburras...


If someone visits your country, which spot is a must-see?

The great barrier reef. It's gorgeous, and from all reports on the decline.

Which book is on your bedside table?

I have Paul Clitheroe's "Investing in Property", along with several other investment and taxation books. They represent intention more than something that I'm actually reading, though.

Who or what in your life would you say influenced you most?

I moved to Melbourne High School, a government school with a great track record in leadership, education and extra-curricular activities, in year 9. The opportunities and learning there were very special.

Richard Stallman or Linus Torvalds?

Linus. To me, leadership in the programming world comes from providing quality code.

How would you describe yourself?

I'm a highly principled, and dedicate myself thoroughly to most things that I do. I value family and friendships, and am outgoing in social interactions.

I also enjoy sports (running and cycling) – one day I hope to meet up with the other Kate devs who are also into cycling, maybe we can go for a ride :)

What do you get passionate about?

My Australian Rules Football team, the Geelong football club (http://gfc.com.au/). This year they showed great promise, but then failed to deliver. Maybe next year.

You're stuck on a train for 6 hours and are bored out of your skull. What do you do to amuse yourself?

Hack, of course :) I hacked on the flights to and from Norway; I was quite productive then, except for when the batteries ran flat ;)

What is your favourite t-shirt?

At the moment, my red Hong Kong t-shirt. The Google "I'm feeling lucky" t-shirt I was given at linuxworld NY is a close second.

What is your favourite place in the world?

Anywhere with internet access and a KDE terminal, of course...