I just suddenly felt an urge to write right about KDE after reading troy’s recent post (Troy, your marketing fever and ideas are contagious!!). I will probably be writing about something that has been written over and over again, but let me give it my own personal flavor. So…
Why use KDE?
A. Integration done right (TM)
KDE has to be the most correctly integrated environment I’ve seen. Everything just fits and works perfectly with one another. Now, users coming from Windows are probably still traumatized from the Internet/Windows Explorer fiasco and ditch/bash KDE (specially Konqueror) because of that. I’ve seen it happen. What I would like to tell them is, “Give it another look.” KDE has triumphed where Microsoft failed. And one of the things that make this possible is KParts.
You will hardly find any user guide or handbook about KParts, because it isn’t a separate visible application. The magic of KParts happens behind the scenes. KParts is KDE’s component framework (for you techies out there, it is somewhat similar to GNOME’s Bonobo and Microsoft’s OLE). What this basically means is that parts (components ) of one application can be embedded in another application to take advantage of its features, without reinventing the wheel. No, you don’t put the whole application inside another application. You only put a part of the application, usually the core part which has the basic functionalities and features of that application. So what does this mean for the user? Lots!
1. Your favorite features in just one app
Let’s say you love Kate’s syntax highlighting and automatic indentation. Let’s also say you love Konsole’s schemas and notifications. Or let’s say you really like how Konqueror renders web pages. But you also need a great IDE for programming, or a web editor for creating those kool web pages. Do you need to give up those features that you love just to use these apps? With KParts, you don’t have to. KDevelop, KDE’s premiere development environment, the superb text editing/coding features from Kate and gives you an easy to access embedded Konsole, all through KParts.
2. Reduce, reuse, recycle
KParts also help make apps smaller. By embedding small reusable parts of another program, the developer shaves off from the total size of the application. Imagine if you had to write dozens and dozens of lines of code just to implement a feature that’s already in another app. Smaller, more robust, less resource intensive. What user wouldn’t want that?
3. Stable and Secure
KParts is integration done properly. It seems that one of the fears of users is that with all these integration, crashing one app, such as Konqueror, will bring down the whole system. Perhaps their fear is based on Konqueror resembling Internet Explorer. But such is not the case in KDE. Aside from a few background processes (lovingly called daemons in the *nix world), which are absolutely necessary to have a running system (every operating has some of those right?), there is no single point of failure or crashing. The integration that KDE implements doesn’t literally tie one app to other apps. It also doesn’t mean that if the KPart falls, so does the app that uses it. For example, if you were previewing a text file in Konqueror while Kate is open, crashing one app doesn’t crash the other. And Konqueror, just because it is the file manager, doesn’t crash the whole desktop if a web page or an embedded media player happens to take it down. So you get the best integration without the system crash.
B. Access anywhere from here
Network transparency is touted as one of the major features of KDE. Big words, but what do they mean? To put it simply, allows you to access and use files found on remote servers or locations (across a network) as if they were located in your own computer (transparent). The guy behind this magic is called KIO, or KDE Input/Output. And the little guys that implement this are called kioslaves. Kioslaves are small programs that implement network transparency for different types of protocols, such as HTTP/HTTPS (for the web), SSH (secure shell), FTP (file transfer), and lots more.
Sounds fun! But how does it work? Let’s say you have a text file in your web server that you want to edit. Usually, you would have to either login to your account in the web server, say, through SSH, and edit from the command line. Or you would download the file, edit it, and upload. Using kioslaves, you don’t have to use anything else except your text editor. Simply open up Kate, go to the Open File dialog box, type in your account’s URL in the web server with the appropriate kioslave (for SSH, you have a choice of sftp:/ or fish:/), login when it asks for you username and password, and open the file. Edit it. Save it. And you’re done! All within Kate. Convenient, isn’t it?
But wait, there’s more! Kioslaves doesn’t just do remote filesystems. It also allows you to access what I call pseudo-filesystems, allowing you to view and use certain filetypes, media, and locations as if they were regular files. Want to view your Audio CD as individual files and rip them in different formats? Put in you CD, type audiocd:/ in Konqueror, and drag & drop away! Want to view a tarball or a ZIP file right within Konqueror? Just use the tar:/ or zip:/ kioslaves. Want to see your drives, mounted or unmounted? Head on over to media:/ and see them. In fact, your Trash can is easily accessed through a kioslave!
And the fun doesn’t stop there. kioslaves have also other interesting and useful uses not directly involved with files. You can view man and info pages right inside Konqueror with the man:/ and info:/ kioslaves. Some distributions have added their own brand of ingenuity by creating customized kioslaves. openSUSE has sysinfo:/ which gives you useful system information and links to your devices at a glance. Kubuntu has an apt:/ kioslaves which gives users a quick and graphical way to search for packages, both offline and online. You can even view your K Menu (applications:/) and system settings (settings:/) right inside Konqueror if you want to. Now that’s funky!
C. Go krazy with choices
Like it or not, KDE gives you tons of choices. There’s a setting for almost every option under the sun! We could always argue that the choices are not presented in a pleasing manner, the fact is that they are there. You, as the user, have power. You, as the owner, have control. You can almost do anything in KDE, set it up any way you like to. Beautify it. Simplify it. Fill it with panels and icons. Use only one with a clean desktop. Set up different wallpapers for each desktop. Use only one desktop. Install glossy widget styles, funky window decorations, and shiny icons. Stick to more simplistic and non-distracting themes. Control your media player with simple commands from your IRC client. Create right-click menus that automate your tasks. Send control messages to an application with a keyboard shortcut.
And that’s only the tip of the iceberg. Every KDE application has its own load of settings. Dig through them like you would digging for gold. Who knows, you might find a valuable treasure.
D. Amazing Apps
KDE has in its arsenal a wide variety of utterly incredible applications. Conqueror your files and the web with Konqueror. Rediscover your music with Amarok. Burn with K3b. Communicate with Konversation and Kopete. Organize your life with Kontact and the whole KDE PIM team. Dump your brain in Basket. Launch yourself with Katapult. Be productive with the lightweight, versatile, ODF-compliant KOffice. Paint stunning images with Krita. Manage your photos with Digikam. And many, many more.
And the best thing about these wonderful apps is that they are constantly evolving. They are getting better and better, thanks to the wonderful people helping make these wonderful software. And they could always use a helping hand. So if you can help in anyway, please do. (But more on that later)
Seamless integration, network transparency, amazing software, and more. All these make KDE the perfect desktop. Well, almost.
But not all is fine and dandy
It would be complete arrogance to say that KDE is absolutely perfect. It definitely isn’t. KDE has some rough edges of its own, which, in a way, is also good. It means there’s room to grow, improve, and innovate. Perfect is stagnant, boring, and impossible. At least there’s chance for some more exciting adventures.
One of the most popular criticisms of KDE is in the area of usability. KDE has too many options. Either that or it doesn’t display them quite properly. A cursory glance at the configuration options of some KDE apps seems to confirm this. And indeed, it’s like a jungle out there. Looking for the correct option can be a daunting task. It may be that the option is placed in the correct group or location. But the configuration window that slaps you in the face the first time you see it can be a daunting experience. First impressions are never to be underestimated. But at the same time, do we really want to get rid of those options, or the easy access to them that we have? Are we amenable to stripping off “non-essential” options and dumping them all in some configuration file, accessible through some database-type of application? It’s a battle between the simple and the powerful. Fortunately for us, KDE is taking the steps to make sure that it ends up with a win-win solution. Responding to the growing needs of users, KDE has setup the Human Computer Interaction Working group, or the KDE HCI WG (I love these acronyms!). The group will ensure that for next lifecycle, usability will play an important part in KDE in delivering the best user experience KDE has to offer.
Another rough edge that KDE has, in my opinion (opinion being the operative word), is that it is missing the human aspect. Sure KDE is great and all, but so far, I’ve seen that it appeals more to the technically literate. KDE reflects more its technological prowess more than its human dimension. I think this is the field where GNOME excels a bit more: human relations (not to say that developers are inhuman). Advertisement, community, PR, etc. Some say this is the effect of culture, GNOME being more US-based and KDE being more European. Again, fortunately, that will not stay true for long. Thanks to the efforts of the KDE Marketing people, KDE can reach out to more diverse audiences, through more diverse media. Hopefully, we can show them that the gearhead does have a human face.
Last, but not the least, is a problem that KDE shares with most other FOSS projects: human resources. Yep, KDE could use more helping hands. We have quite a number of active developers, but there will always be some forsaken areas that needs some loving attention. And there are definitely other ways to help KDE if you don’t know how to code. Contributing to KDE means more than just programming. There are lots of areas that users can help with. And the KDE community is very welcoming and helpful. You’ll be up on your feet contributing to this awesome project in no time. So yes, KDE needs you. So get involved!
The wonderful world of KDE
Awesome features, user empowerment, a great community, multiple venues of contribution, and a potential for innovation and growth. There can be many reasons to use KDE. But the biggest reason will be your choice. So come in, into the world of KDE.
… if you’re a former user and have strayed far away, come back for a visit. You might rediscover an old friend.
… if you’re a new user, explore every nook and cranny. You might discover hidden delights.
… if you haven’t used KDE before, jump in! The water’s fine.
See you around the korner… along the road to KDE 4.