The Open Road to Qt Code

by Aron Kozak on November 17, 2009

Today we start down the ‘open road to Qt code’ – a series of interviews that showcases real Qt users and uncovers their amazing work and ideas.

Our featured guest today  is Frank Karlitschek, a computer science professional from Reutlingen, Germany who now lives in Stuttgart. Frank has worked for over a decade in management roles within a variety of Internet and IT companies and for three years he was technically responsible for one of the biggest eCommerce sites in Europe.

Frank has been a KDE contributor since 2001 and has worked mainly within artistic teams on organizational and promotional projects. In 2001 he developed and founded KDE-Look.org, which grew quickly to become one of the biggest online communities for Linux. In 2007 he founded the openDesktop.org network with its 35 communities and portals for desktop Linux. Today, openDesktop.org generates over 90 million page impressions and attracts over 2.5 million unique visitors per month. In 2008 Frank also founded the startup company hive01.com to work fulltime with online communities. In 2009 Frank was elected to the board of directors of the KDE e.V. where he now holds the position of Vice President.

Key among Frank’s current projects is ‘Social Desktop’, which was formed with the goal of integrating online communities and web 2.0 principles into both desktop and mobile applications. We spoke to him about his work with Qt from his early experiences through to how he is working with the framework today to develop his current solutions.

Aron: How did you first come to find and use Qt and what did (& didn’t) you like about it initially?

Frank: A friend of mine showed me a beta of KDE 1.0 on Linux and I think this was back in 1997 or 1998. I was immediately impressed by its rich and powerful user-interface, which was built on top of Qt and this was unusual for Linux at the time. I also liked the fact that that Qt ran cross-platform on Linux and Windows and that it used a very ‘clean’ object-oriented API. Qt applications are also very fast if you compare them to other cross platform solutions like Java applications. So for me it was immediately clear that Qt had a bright future.

How does Qt integrate and interplay with the technology roadmaps that you work with most closely?

The most important trends in the coming years will almost certainly be cloud and mobile computing – so our files, contacts and all other data will live somewhere in a public or private cloud in the near future. We will be able to access this data from a mobile phone, home desktop, work desktop or netbook via a rich native client that talks with a web-service in the cloud. You can see examples of this on mobile phones like the iPhone already.

So what we need here is a cross platform development framework which runs on desktops and small devices, can access web-services very conveniently and which makes it easy to create rich user-interfaces very fast. Qt is the perfect framework for this kind of application development, especially if you look at the new features such as its use of declarative UI. Personally, I have no doubt that I will be using Qt for all desktop and mobile developments in the future.

openDesktop.org has such a breadth of different community interests from text editors, admin tools and games right the way through to server software and embedded computing tools. How do you balance such a wide scope of portal content and keep it all relevant?

One of my most important principles I followed from the start is that it is good to a) work on uploaded content and b) proactively communicate with users. But it is even better to build a community-system, which enables the users to work on the content themselves and allow great user-to-user communication. Because of this I am constantly thinking about how to build better tools for every individual to handle all their user-generated content and communication.

We really have great users and developers on openDesktop.org and they do a great job of creating and improving all the content. My job now is to develop the right tools for these users and create the right conditions so that the people feel comfortable on openDesktop.org and are motivated to develop great applications and other content.

Your experience with open source computing is extremely far reaching, covering more than a decade. In your opinion, what keeps both developers and the users themselves coming back for more?

Development has to be fun. I think the freedom to do whatever you want to do with the code is critical for that. Software development is a very creative process so the most frustrating thing is if you can’t realize your thoughts and bring your crazy new idea to life because you hit a wall. These so-called ‘walls’ could be license restrictions, the inability to use code from other sources, problems associated with learning how a different piece of software works or the inability to understand an API because the documentation is poor and you can’t study the code. Qt is the only framework with such a big feature set and great documentation readily available under the LGPL. This makes working with Qt unique and really fun.

Another important aspect for developers here is that there is a friendly and supportive community around a software product. Qt has the KDE community, which is one of the biggest free software projects. So it is always easy to find somebody who is an expert in the topic you are interested in. The KDE community is very open and has a friendly approach towards new people who want to join the project or need help. Having this kind of ecosystem around Qt is a very valuable thing.

Your work to establish http://hive01.com has seen you pay particular attention to the way online communities interact and flourish. What are the key drivers for a successful online community and how do you think these virtual user ecosystems will have a greater impact on the way we all use technology in the future?

People, especially developers, like to work together in groups to exchange ideas, share code or just chat about hobbies or other stuff. The Internet is a great tool in terms of its ability to enable people to work together and communicate and it is also the base technology that enabled the free software movement from its first inception. I also think that classic technologies like email, chat and even simple web pages are only just the beginning. Social networking sites and new ideas like Google Wave will enable users and developers to collaborate and communicate on a much higher-level altogether. I think websites based on tried and tested social networking principals will enable developers to be way more productive in the future compared to today.

Another interesting new trend is real time collaboration on the same document or project. I think that the Social Desktop project, which combines the power of social networking and web 2.0 with rich desktop applications, can improve the productivity for a lot of users and developers. Qt is the perfect technology to implement the Social Desktop’s ideas and concepts on all platforms because it is easy to build rich user interfaces, it is cross platform and it provides powerful tools to access online content.

Your work with hive01.com also sees you involved with the Open-PC project to develop a powerful, high quality Free Software based PC in an open fashion; tell us about the progress made so far here.

To my mind, the Linux and KDE community are not satisfied with the current Linux-based PCs from OEMs such as ASUS or Dell. Users do not have influence on the hardware or software so they are basically getting a closed product and most of the pre configuration is not very user friendly. A lot of existing Linux PCs also rely on closed source drivers which is not ideal.

The true concept of the Open-PC is that the community builds and designs its own open and Linux-based PC. All the software is available in a public repository and everybody can improve it. We only use hardware which is fully documented and which is fully supported by free device drivers. We will also bundle this with end user support and part of the income goes back to the used inside free software projects like for example KDE. We still aim to ship the first Open-PC soon and I am really looking forward to seeing how this idea evolves over time. I think a crowd sourced and free product will always be better than a product developed secretly inside a closed company.

KDE-Look.org and KDE-Apps.org have both seen over half a decade of sustained growth. During their existence, how have you witnessed the nature or style of user-generated content to have progressed or changed?

In the early days of the web it was difficult to share your content with others. You basically had to be able to code your own homepage to do it. I launched KDE-Look.org in 2001 and it was immediately very successful because it was very easy to upload and share your work with others. Nowadays a lot of web 2.0 sites allow easy sharing of content, but with this reality we also see that the quality of the user generated content goes down. Because of this we use a sophisticated voting system to enable filtering for higher quality content. Additionally if the score of an upload drops below 20% the content is automatically deleted. By doing this we still allow uploads from everybody without using a non democratic moderation system and still guarantee high quality content.

Now that Qt is being developed under the LGPL, how do you feel the total offering will benefit from enhancements that originate from the community – and how will you yourself promote Qt?

I have the impression that Qt is getting more and more attention from free software at the same time as it is also enjoying greater interest from proprietary software developers. This is especially so right now since Qt has been made available under the LGPL and because of the fact that Qt will be the shipped on millions of Nokia devices in the future. This makes an already really great development platform even more attractive for developers. I am sure a lot of developers and companies will use Qt and even contribute to it in the future. Qt is the only framework I know of under the LGPL that allows contributions from everybody and also offers high quality documentation and support – and I am sure a lot more developers will use Qt in the future because of this.

{ 2 comments }

Dev Days – done and dusted

by David Stone on November 17, 2009

Dev Days 2009 has been run and won, and it was fantastic to see such big turnouts both in Munich and San Francisco.

The numbers are impressive – Over 1000 attendees, 450 people trained (sold out – up 300% on 2008), one Qt-powered coffee machine, strong attendance at Qt in Education sessions…the list goes on.

Many Trolls made an appearance at one or both events, and we gained a huge amount from getting up close with our partners, customers and the broader Qt community.

Events like this take a huge amount of work, and we thank our speakers (both our customers and partners, as well as our fearless developers who took time out of their busy schedule to create the great presentations) and our own Janine, Kathy, and the rest of the Dev Days crew for their logistical efforts in making it such a success. We also thank all attendees for making the event the valuable collaboration that it was.

Slides of the keynotes are now available for viewing or download.

Next year Dev Days will be back – bigger and better. For those who missed out this year, here’s a taste of what went on. Thanks to Eeva Venta for the video (which is what we have been waiting for in order to publish this posting):

PS – You may have noticed I am a new blogger…I’m David Stone, Qt’s new Communications Manager. I’ll be taking the Qt story out to the world from now on, and I’m looking forward to contributing to this blog.

{ 0 comments }

Avid readers of the blog on Qt Labs will already know about today´s twin Qt Creator 1.3 and Qt 4.6 release candidates.  What our Qt Release Manager Jason didn´t mention in his post, however, was the fact that we are packaging Qt and Qt Creator pre-releases together into a combined Release Candidate SDK for the first time.

What does this mean for Qt users, you ask?  Our aim with releasing an SDK is to make it as fast as possible for developers to get up and running with the Release Candidates, and to make it as easy as possible to provide feedback that we can incorporate into the final releases.

The Release Candidate SDKs are available for download now.  Enjoy!

{ 1 comment }

Prestigious Decoration for Matthias

November 11, 2009

Last Friday (yes… again we’re amazingly slow in the Marketing department in Oslo) Matthias Ettrich received the German Federal Cross of Merit for his work on Free Software in general and KDE in particular. We are impressed.
There is not much more to say than: Congratulations, Matthias, it’s well deserved.

Read the full article →

About a Cuddly Bear and an SDK

November 3, 2009

Winter has shown it’s frosty face for the first time now, and while a lot of us were on their way to warmer places the unhappy rest had to prepare their minds for the cold and dark days to come. Which made us a bit slow, I have to admit.
We did notice however that Canonical [...]

Read the full article →

Gluon Development Sprint

October 28, 2009

Something good has happened in the world of Gluon. Twelve game developers dedicated to creating free software gathered at our office in Munich from the 9th to the 11th of October. These programmers came with a mission; a mission to push forward progress on the Gluon Player and Creator and enhance its power so [...]

Read the full article →

Calling all exterminators

October 27, 2009

Do you enjoy finding (and squashing) bugs?  If so, today´s announcement that the Qt Bug Tracker is now open to the public should get you eagerly firing up your debugger.
The Qt source code has been open on http://qt.gitorious.org for a few months now, and through the Qt Contribution Model Qt users have contributed over 400 [...]

Read the full article →