No Longer Fun to Develop Free Software?

Sorry to hear that Peter Penz is leaving the Dolphin project in August, with the release of Dolphin 2.1 (and KDE 4.9).

KDE-Dolphin (Photo credit: Wikipedia)

Penz originally wrote Dolphin in 2006 as a “small and fast” version of the Konqueror file manager that shipped with KDE 3.x and earlier (as he explains in this blog post announcing his “retirement”). The KDE development team soon invited him to join them in working on KDE 4.0. Since that release, Dolphin has been the default file manager for the KDE desktop (now known as the KDE Software Collection).

In his June 26, 2012 post, Penz offers a few reasons for leaving the Dolphin/KDE project:

  • He really wasn’t expecting to be working on this project for six years running (always a fair point)
  • “The time required to keep Dolphin in good shape increased during the last years. I’m doing this project in my spare-time and usually have spend around one evening per week on Dolphin. Especially during the last 2 years this time has increased.”
  • As a user, he suggests that desktops from Apple and Microsoft have now become at least as “efficient and comfortable” as the KDE  desktop. KDE is “not competitive anymore.”

In reporting this story for Phoronix, Michael Larabel focuses on the latter point, and his story falls into the “dying KDE” trap I’ve discussed here before.

To my mind, however, it’s the point about the complexity of development that may prove more significant for the free/libre/open source model generally, and certainly not just KDE. He writes:

  • The user interfaces tend to become simpler and easier to the eye, while the functionality of the application itself has increased. Hiding a complex functionality behind an easy to use interface are not known strengths of “typical” developers 😉
  • The complexity of the non-user-interface-parts of applications has increased a lot. Web-browsers are a good example: While the interface got simplified during the last years, the engines showing web-pages got really complex and are maintained mostly by fulltime-developers in the meantime.

Now beyond a little PHP code now and again, I’m no software developer. I just explain the fruits of software developers to the rest of us mere mortals. But it’s long been a truism in the industry that “the simpler the interface, the more complex it is underneath.” Penz is restating that truism here.

Earlier in the post, he talks about the next big project he sees for his brainchild: giving Dolphin a face lift using a new “view engine” called QtQuick2. The problem is that “porting Dolphin to this components will be a very time-consuming and boring task: All the settings-pages, the URL-navigator, the information-panel, the search-interface, the tooltips, … – this is just not doable anymore in my spare-time.”

Maybe what he’s really trying to ask here is whether there are any more “fun” projects for the volunteer developer. If there aren’t any such projects, there’s a reason to worry about the long-term health of the “scratch a personal itch” FLOSS model.

Working on the non-user-interface parts of applications can be challenging and this is not something that most freetime-contributors are striving for. But if there are not enough contributors for the complex stuff behind the scenes and if no company is willing to invest fulltime-developers to work on this… – well then we are losing ground.

Penz admits that “Probably my explanation/guess/theory is nonsense and utterly wrong.” Maybe I’m reading too much into this as well. One reason to doubt the theory from the beginning is that one reason that openSUSE 12.2 is going to be late is that more volunteers are showing up and making contributions.

As a user of free and open source software, I hope there’s still room for the coding hobbyist in our movement. Please tell me I’m wrong, or losing my mind. Or answer these questions in the comments:

  • If you participate in free-software development, especially for desktop apps, is it still as much fun as when you started?
  • If you’re just starting out in free-software coding, is it easy to find a project that’s both fun and challenging?