Ask Havoc Pennington
This week's interview victim ... er, guest ... is Havoc Pennington of Debian and Gnome fame. He's one of the world's most stalwart open source developers, and has recently written a book called GTK+/Gnome Application Development. Please post your questions below. Assorted Slashdot moderators, editors, and hangers-on will select 10 - 15 questions and forward them to Havoc via e-mail Tuesday. Per usual, the complete Q&A session will appear Friday.
I hear a lot of good things about OpenDoc. They say it was the future of document editing. They say it was the glue that made a collection of small applications into an infinitely flexible document creations system. They say it was a work of brilliance, and, better than that, the Right Thing.
Should it be reimplemented? Should it be part of Gnome?
--
Xenu loves you!
I like Gnome/GTK+ a lot, but find it too slow to use for the most part. What do you think about XFce, which is a leaner, meaner "desktop" environment (assuming you've even heard of it, let alone played with it). -Roy
With the sucess of the open source movement do you ever wish back for the obscurity of the good old days ?
Vidi, vici, veni. (I saw, I conquered, I came)
Okay, another question:
For a long time, I've soul searched over the dilemma fo whether to use Qt/KDE, GTK+/GTK--/Gnome for an app I'll be developing. In particular, I don't want to commit to what will be a dead-end technology and have to switch later. After sitting on the fence for a long time, I've finally decided that there probably won't ever be a dominant, winner-take-all GUI API for Linux, which seems to me to be okay, or even a Good Thing.
What's your take on the whole matter? Please feel free to babble a bit.....
Hello, I like both KDE and Gnome very much, but still something worries me: What if a company wants to release software (e.g. Borland releasing Delphi) for Linux and they want their stuff to interoperate with other applications (like cut and paste or DND)... It looks like they are going to have to implement both KDE and Gnome stuff to operate with all popular applications. Or is there any effort to fully standardise things like application interoperation? (I once submitted this as an Ask Slashdot question for more general discussion, but I think it looked too much KDE/Gnome war provoking..) Greetings, Ivo
--Jamin Philip Gray
jamin@DoLinux.org
Celebrate the finer things in life
What are the technical (and legal?) obstacles that need to be overcome for this to succeed? How does the KDE and Gnome developers feel about such a merger? Is there currently any work being done to further this goal at present (by either camp)?
--
Thus, while it would be neat to have a whole lot of those "little applications," if it's Rather Difficult to write them, they may not be as little as you'd think/hope.
The document CORBA and You alludes to this somewhat indirectly, indicating that
If you're not part of the solution, you're part of the precipitate.
I now have an AMD K62-450, and GNOME still feels sluggish, about the same speed as Windows 95 on my P75. That has to be wrong. Yes, GNOME probably does more than W95, including things like network transparency, and the like, but even taking that into account, along with Gtk, CORBA and X itself, you shouldn't be looking at more than, say, reducing performance by half, and that's being pessimistic. In reality, you're looking at GNOME being 3 or 4 *times* slower than it ought to be. Simple question: why?
"The invisible and the non-existent look very much alike." -- Delos B. McKown
What i'd like to see in GTK/Gnome & other such open source projects is : [1] Better collaboration between the desktops. [2] Standard ways for an application to add its icon to the menu of the WM at install time. [3] Standard help systems so the application can add its help at install time. [4] Standard package formats or a simple one click install of *any* package type. In other words, standardisation and interoperability. I consider anything less to be suicide. So, what do you think about standardising everything ? As a GTK/Gnome developer are you biased towards gnome or willing to work for common standards under linux ?
"There is no surer way to ruin a good discussion than to contaminate it with the facts."
Havoc, how did you find the process of writing a book? Can you tell us more about the process? How long did it take? How did you find the time? What were some of the hurdles you had to overcome? Are you as pleased with the final product as you imagined when you began? Would you do it again?
--
Marc A. Lepage
Software Developer
Given the amount of work that one has to put into coding/encapsulating KDE-specific and GNOME-specific routines for multi-environment applications, what future do you see in the development of multi-environment frameworks like wxWindows? In your opinion, are these frameworks the best way to create KDE-enabled *and* Gnome-enabled applications for the forseeable future?
Let's try not to let fact interfere with our speculation here, OK?
Is it possible to use Gnome and GnuStep at the same time AND adding the advantages of both application framework, and this for the user point of view (well, when GnuStep will be at this evel at least) and from the developper point of view (being Gnome aware and using some GnuStep facilities).
Of course in this question Gnome could be replaced by KDE if a KDE developper want to discuss about it.
"The obvious mathematical breakthrough would be development of an easy way to factor large prime numbers." Bill Gates,
With your book being released under the Open Publication License, I was wondering how responsive New Riders seems to the idea of actually publishing updated versions of the book instead of just updating the publicly available version?
It's a great book by the way, very valuable to GNOME/GTK coding newbies like myself. Thanks.
-- just some language freak ;-)
...has got to be the coolest I ever heard. You ARE the man! Does the name have a story behind it? Do you have a sibling named "Chaos"? Or maybe twins named "Pain" and "Panic"?
Admit nothing, deny everything and make counter-accusations.
I am a strict GNOME user and am interested in knowing what is done to stablize GNOME.
I found your book very helpful in understanding GTK+. Will you be doing a similar book or tutorial for gtk--, the object oriented version of GTK+? The argument I read is that understanding gtk-- is simple once you learn GTK+, but I think it would be nice to be able to learn gtk-- directly since most of my projects are in C++. Are you seeing gtk-- used widely, or is GTK+ used the most by far? -Derrick
(OK, this message may be a little provocative)
:
I want to compare current status of Gnome and KDE. So I open two Netscape windows, one on www.kde.org, the other on www.gnome.org, and I read what's going on in Desktopland.
KDE : "Well, we've just finished reimplementing Visual Studio from scratch (the last beta is shipped with Mandrake 6.1), and we're almost done with Office, but you'll have to wait a little because KWord still flicks every now and then"...
Gnome : "Well, we've got a woooonderful spreadsheet and a nifty little editor, and we're currently working on getting together every piece of productivity software we find to set up some kind of office suite (boy, they call it a 'meta-project' !) and as for develoment tools, well, Emacs is fine after all, isnt'it ?"
Admittedly, the last sentence is forged. But the rest is painfully true. So far, in massive projects as well as in little funny tools, KDE has the lead and doesn't seem anything like close to lose it.
This is even becoming a point in the Oh-So-Holy-War of knowing whether Linux should be called "Gnu/Linux" : The day KDE 2.0 ships (and that seems to be very soon), talking about "KDE/Linux" systems will make much more sense for a significant proportion of Linux users who will spend almost all of their time using KDE tools.
So the question is
When are you going to remember that you're actually making a desktop environment - not an academic project - and that this time, unlike older GNU success-stories, you have a tough competitor that stands exactly in the same niche as you ?
Emacs took almost ten years to become more or less usable by novice users without spending days and nights trying to figure out how to configure X or Y parameters. I'm afraid Gnome won't have as much time as its glorious predecessor to break through. In ten years, people will already have chosen their side. So far, Gnome quite doesn't look like the winner.
Thomas Miconi
Can I do all my development on Linux using GTK and re-compile it on Windoze so that PHBs and desk slaves can run cool programs on their computers.
Perhaps it's not GNOME itself you're finding slow, but enlightenment? You might try it with a faster window manager (icewm, perhaps.)
Corel's dumb move is just one recent example of companies overlooking or deliberately ignoring the GPL. As free software penetrates further into different areas, especially traditional companies, do you see this as an increasing problem? Given that legal action is expensive, and that there is probably no single entity that could afford to prosecute many infractions, what do you think should be done to address the problem?
Cheers,
Duane.
- "I never could learn to drink that blood and call it wine" - Bob Dylan (Tight Connection to my Heart)
Ok, here's another question: why does Gnome subjectively feel so slow? It's not something you need benchmarks to prove -- it really does seem slower than it "ought to".
Are there any ideas from other such environments that you think are really neat? Any ideas that you would like to be part of Gnome, or even plan to try yourself?
So Gnu/Linux is also valid even if people spend all day in KDE :)
I've been doing this for a few apps. It works fairly well, but is not without its problems (largely stuff as minor as warnings, info and the like coming up to an ugly DOS box... just doesn't help my app's look/feel).
The pthreads port to win32 isn't yet considered fully stable, so you need to be careful using glib threads.
Otherwise... as the subject says... It Works For Me!
Dear Havoc
could you tell me if the port to Windows of GTK(Gimp Tool Kit) is valued by the core team ?
I feel it should be. I understand that a company is porting Gimp to BE O/S and has ported GDK as well so that the great unwashed useing GTK may compile on the BE system (my thanks to you).
Why care about Windows O/S ?
well while the Qt widget set is free on linux and *nix, it IS NOT FREE under windows the Trolls want your Money for it.
Now GTK is GPL and a kind sole (appologies I can not remember your name) ported GTK to windows this ment in my understanding that GTK apps may be recompiled under windows with ease (cygwin for named threads and suchlike)
this means that GTK is more likely to be used as a cross platform toolkit where before I had to try and embed a TCL/TK interpreter(so people may not change the scripts) I may now use GTK.
companys are looking for cross platfrom applications now and could GTK be that for them ?
how do you feel about this situation and what do you think will happen ?
regards
john
p.s. have ordered the GTK/GNOME book look forward to a nice rainy day !
a poor student @ bournemouth uni in the UK (a deltic so please dont moan about spelling but the content)
Is there room in the Open community for a commercial GUI vendor?
Would a commercial GUI, OpenSourced, galvanize the focus of Linux at the desktop level?
At what point do all the pioneers unhitch their penguins from the Linux train and settle on one winner GUI?
Are there any past commercial GUI's if Opensourced you'd consider "good" for Linux?
-Rex Riley
One of my pet peaves with GNOME is the lack of an integrated window manager. Sure there are many window managers that play pretty well with GNOME, but I don't know of one that plays PERFECTLY with GNOME. I use icewm right now, but even it has some annoying hiccups w.r.t GNOME. What are the most GNOME compliant window managers out there right now? Has there been any progress on GNOME adopting a default window manager (now that E has kind of gone its own way)?
I hear things about Glade getting sucked into core GNOME libraries as a way of dynamically reconfiguring applications (an ambitious goal!) How much planning has been done for this, and is it expected to impact application performance?
So I tell you this, no matter what is tried, neither KDE nor Gnome can loose.
And this isn't about Unix Desktops but it is about free software in general. Software is better when it cooperates. Let us be friends then.
--
What's up with this rancid comment of yours? Havoc's not out to get you, he's just working on Gnome! It's not like KDE has anything to fear from Gnome, (does it?) I like to think of the 2 projects as *complimentary*.
I think the Gnome word processor and spreadsheet are a lot farther along than you give them credit.
Quite usable, and I think both OpenParts and Bonobo will be exciting tools to work with.
KDE is slightly farther ahead in development than Gnome (2 months is my estimate.) But Gnome is ahead of it in 2 important departments.
1) QT. Calling yourself the "defacto Linux desktop" is quite presumptious when you've built the entire project on a devel library that a significant chunck of the community (think mindshare) is not interested in using.
2) Gnome is more innovative. Gnome had a CORBA ORB first. (yes, Gnome had themes first, too, but I'm talking about innovations that *increase* productivity!) Gnome takes the best features from many UI's and wraps them up into one slick, usable package. KDE is just a win95 rehash for X11.
So please stop your childish taunting of the Gnome crowd. You're reflecting poorly on the KDE community. (There, I've fed the troll. Bah.)
I was wondering, of all the things Gnome does well, what do you think separates Gnome from from everything out there? Why do you think someone should use Gnome as their Unix desktop enviroment?
Thanks for your time,
Kevin Holmes
"extrasolar"
klh@sedona.net
--
KDE was using Corba (Mico) and KOM/OP in KOffice before Gnome was even started! It was not used in the 1.x series of KDE itself because that was supposed to be stable and the Corba stuff wasn't up to par yet.
You have listened to Gnome marketing too much. KDE had a Corba object model first in KOffice (KOM was actually considered for use in Gnome but rejected because Miguel did not like Mico and decided to write his own), KDE looks and feels *much* slicker and less clunky, and as far as productivity it at least has it's own web browser, klyx, a much further advanced office suite, a advanced IDE, etc... If a significant amount of people aren't intrested in coding for it who the hell is writing all this software? A significant amount of people just don't care. It's all free software. All Gnome has above KDE is FUD and lies.
Hi,
I was just looking through the KDE mailing list archives, and couldn't find any references to MICO or CORBA in the months preceding GNOME, and the KOffice list only starts in December of 1998. Do you have a URL or something talking about KDE's first use of CORBA? I am just curious as to why it didn't get into 1.0.
Thanks.
The first thing absolutely ANY user of Gnome should do to improve responsiveness and performance is to run either imlib-config (console) or imlib_config (X) and notch up the imlib caches FAR higher then they are set by default. (No, maximum (100Mb/10MB) on both does not hurt at all on a box with 64MB) Save the global or user settings, restart X, and watch even the most intensively pixmapped desktop FLY.
The improvement is SO stunning it astonishes me every time. Say goodbye to disk access and say goodbye to three second desktop changes.
My question for Mr. Pennington: Despite using the absolute latest libraries (save for the tragic GTK+1.2.4), ORB, panel, core, and all that song and dance, panel (or perhaps gnome-session) gets a little sick in the head and the panel segfaults. Frequently preferences for many things will be damaged and destroyed upon restart of Gnome or panel. I have rebuilt my panels over several distributions more than I care to count and it takes my X uptime from months to mere days. Documentation is sparse about this problem. Is there help in store, or should I be doing more? Thanks much to both the Gnome-people and the KDE-people!
Let me add my voice to the choir of app developers who want their app to run under KDE/Gnome/Any/None desktop environment without major changes. Are there any architectural design rules you can suggest that would make that possible? Are there any libraries/toolkits which provide an abstract desktop API without forcing the choice of a widget set or programming language? I'm not just talking about drag&drop. I'm talking about e.g. writing an applet or standalone app that can be ./configured --enable-kde or --enable-gnome, and have it Just Work on KDE, Gnome, or any future compliant desktop.
I agree with you: KDE is ahead of GNOME. However, the way you describe the superiority of KDE is unfair to both the KDE project and the GNOME project. You make it sound as if KDE and GNOME are still fighting like they were in the pre-QPL days when in actuality they are cooperating more and more each day (consistent standards for Drag and Drop, Desktop files, and I've heard that they're working on standardizing the sound daemon for both environments as well).
Koffice is ahead of GNOME's Office app projects (GNOME Workshop), but at this point it is very difficult to try out KOffice because the KDE 2 libraries and KOffice are a moving target and they require gobs of memory and processing speed to compile in your lifetime.
On the other hand, there are RPM's available for GNOME's spreadsheet and it is usable right now.
We will see in about three months which environment and Office suite is the best...the KDE Krash (1.89) release will at least give you alpha-level KDE 2 software to play with (and it will hopefully come in binary packages!) and I'm sure the GNOME folks wil have made a lot of progress on their projects too.
KDE and GNOME have different ways of implementing CORBA functionality and use different ORB's. Is there any way to get the Bonobo and KOM/Openparts working together so, for example, I could embed a KDE part into a GNOME part? (for example: embedding a KDE text editor into a GNOME mail client) Are there plans to add this functionality in the future if it is not already there? Is this sort of interoperability difficult or impossible?
And that was based on even earlier threads I can't find...1
http://lists.kde.org/?t=88666675400004&w=2&d=1&r=
But he has been saying that for 6 or 7 months...
what inspired u to write gnome ?
It really does not matter dude. Dude, GNOME deployed CORBA in March, 1999. I do not see any CORBA deployed in any recent KDE release. The Dude
I believe every living thing on earth deserves to be loved. From the smallest and to the biggest elephand. Including you dude.
Now, lets get some straight facts here:
1. MICO is a resource hog. Yes, a pig. Not even Windows NT is this bad. ORBit has a working set of 30k-50k, while MICO has a working set around the 4.5 megs. Dont take my word. Go measure it yourself. Go, go, go!
2. Where is this KOffice thing you talk about? Where is this finished thing? Where is the code? Where are the features? Have you checked things side by side and compared the features of them?
Can you write a detailed analysis comparing features, or you are just not ready?
3. GNOME has more advanced development tools. I am sorry for breaking this to you, but that is a fact. It might hurt, you might feel the pain, but it is going to be good for you.
4. Which specific "FUD" and "lies" are you refering to?
the Dude.
Are there plans for another book covering things like libglade, CORBA/GOAD/Bonobo/Baboon, libXML? I loved the first, and would shell out again for a book on the more advanced GNOME topics.
I have two questions:
1> What is the future of guppi? There wasn't any release since a long time and Miguel said he will begin something else.
2> Why gnome people do always thing different: sgml (latex exist), OrBIT (mico), GtkPix (imlib), a new window manager (enlightenment and Window maker), etc. Rewrite everything seems crazy to me.
Don't take it bad, I am a gnumeric user.
Havoc, You just finished writing a book, you write the Gnome weekly news, regularly post on the newsgroup, you code, are involved in Gnome and Debian, and work for RedHat. Man, where do you find the time? Do you have 36 hour days or what? Please share you organizational/motivational tips. grek
Dear Havoc and fellow /.RS,
:)
...
Maybe it's just me, but it seems that lately everything on the acme of OpenSource movement for desktop integration revolves around this (otherwise marvellous) concept named CORBA. I'm a programmer myself and can appreciate more or less any means which can help standardizing and reusing code. But still, I think that should be done paying maximum attention to the possible performance loss.
Programmers often come up with things like OOP and such to make their life easier. I'm not saying AT ALL that OOP or CORBA are bad, but I don't think Joe User has the slightest interest in the CORBA foundation of his spiffy PIM. All that he cares about are stability, speed, and, if possible, looks (at least that's what I imagine).
Those being said, I would very much like to know what is your view on this subject. How much does CORBA integration affect the performance of Gnome ? Would it have been better to let CORBA come into play at the time where the (affordable) hardware will make little difference with respect to the sheer software performance ? Is it just some hype born from some kind of Programmers Pampering Themselves movement or is this the real Wave of the Future - or, like they say, A Good Thing(TM) ? Will we live the day in which a newer version of a piece of software will actually be smaller and maybe have fewer features, but will need less resources and run faster ?
(OK, the last two questions here have nothing to do with Gnome, but I had to ask them anyway)
Last but not least, I must say that I really like Gnome and, in case some war is (or will be) going on, I'm definitely joining the army of gnomes. And kudos for the great book
Well, I hope this gets in time for the submission
- ciuli
You'll have to search the archives. All I did was do one for Corba and find the earliest post. Mailing lists can be a pain in the butt when looking for something based on date...
1) KDE would rather fix Mico than rewrite it.
2) CVS, and yes KOffice supports a hell of a lot more (kword has better column support, frame based manipulation, etc...). Check it out.
3) Name one. Glade? Ha! KDevelop is *far* more advanced. Name one devel tool project that is more advanced.
4) Your statements 1-3.
I don't have to write a detailed analysis. Anyone who has actually tried the KDE stuff can see this. Why don't you do so?
And if you count applications that are still alpha quality as "missing" compared to KDE you can add a decent mail client, and IDE, an office suite (Gnome office/Abi is *far* behind), etc...
They decided to use existing free software projects like Mico and improve them. It's funny but the first three things you mention were either only used temporarily or forked from existing free software projects instead of helping out the original one.
KOffice uses KOM/OP which is more advanced... It would seem better to port that to Gnome.
My panel is always segfaulting on DEC and Gnome is slow as hell. I am running CVS. KDE runs fine.
This person's reply was just cluelessness.
It's in KOffice. Just because KDE has higher standards for what get's in their official releases does not mean it wasn't first or that it's not available to users.
All of those programs are still used. Try using gnome without esound, imlib, or ORBit. I wouldn't describe any of them as forked also.
I know I will be moderated down for this, but . . . Vincent
"The GNUStep folks are looking for folks to volunteer to help in that effort."
I haven't contributed to any Free Software project yet but plan to do so soon but I have a little problem: I am in a foreign country for my studies and I don't have a Linux box around. I may have an account to use some X terminal but I'm not sure of that neither of when.
So, the way I could contribute would be either to write some documentation (I'm not sure i have the skill) or to do some localisation/translation in French (my language). Is there some need for these kind of skills on the gnuStep project right now or is it too early right now?
"The obvious mathematical breakthrough would be development of an easy way to factor large prime numbers." Bill Gates,
You work for Red Hat Software in their Advanced Development laboratories and you are Debian Developer. How is this possible? What people in Red Hat Software and Debian think about this situation?
Juhapekka "naula" Tolvanen - http://iki.fi/juhtolv