LWN.net Logo

On the nature of bloat

On the nature of bloat

Posted May 23, 2005 9:11 UTC (Mon) by pontus (guest, #3701)
In reply to: On the nature of bloat by tjc
Parent article: What the Linux Desktop Needs (OS Views)

In open source, we wouldn't even have good word processors etcetera without the high level toolkits, as there are simply not enough developers. If ditching the toolkit means we wouldn't have got the software we find useful (Mozilla, OpenOffice, Emacs), it's not at all a step in the right direction.


(Log in to post comments)

On the nature of bloat

Posted May 23, 2005 10:11 UTC (Mon) by eru (subscriber, #2753) [Link]

In open source, we wouldn't even have good word processors etcetera without the high level toolkits, as there are simply not enough developers.

Except for Emacs, those projects (Mozilla, OpenOffice) you mentioned basically first wrote their own GUI toolkit before doing the actual application! Ditto for Gimp and some others. Emacs started life without any GUI at all, it was grafted on later, and until fairly recently, the Emacs GUI used just the bare X11 facilities, no toolkit.

It seems to me your argument about the excessive amount of work involved does not hold water.

To be clear, I am not arguing for trying to do without any GUI toolkit at all. What is needed is an "appropriate-level" thin toolkit for X11 that balanges performance and programmer convenience better.

On the nature of bloat

Posted May 23, 2005 23:22 UTC (Mon) by njhurst (guest, #6022) [Link]

Well, except for the fact that except for emacs, those projects all have good, consistent guis. emacs only got a gui via other projects, and would never have got a gui at all otherwise. Trying to add a gui after the fact seems to result in poor interaction, commercial apps that have tried this invariably end up rewriting for a good gui.

I think arguing for a 'thin' gui is backwards. We want a 'thick' gui that encapsulates much of the interaction, and then convince people to spend some serious time optimising things. For example, the gtk tree view widget seems to spend a lot of time allocating and deallocating little blocks, if effort were put into optimising that then every app that used it would immediately improve.

On the nature of bloat

Posted May 24, 2005 2:40 UTC (Tue) by tjc (guest, #137) [Link]

We want a 'thick' gui that encapsulates much of the interaction, and then convince people to spend some serious time optimising things.

Who is "we?"

Speaking for myself, I would rather have a thinner GUI toolkit than what is commonly used nowdays, and let people make their own decisions as to its suitability for their particular needs.

I find it odd that it takes 10 seconds to start a web browser on my 3 GHz system with 1 Gb of RAM. If it took that long for a program to start 15 years ago, I would have thought that DOS had crashed...

On the nature of Mozilla's toolkit

Posted Jun 2, 2005 12:45 UTC (Thu) by markhb (guest, #1003) [Link]

If you look back at the start of the open-source Mozilla project, they didn't start with their own toolkit; they started with the original Navigator architecture of a common backend and various platform-specific front ends: one for Win32, one for Mac, one for Unix, each using it's native widget set (the original Unix versions used Motif, which meant that you had to have a Motif license to build the app in the early days). This had two problems:
  • The obvious Motif-related difficulty, and the fact that Lesstif was rudimentary at the time, and
  • The fact that most open-source developers were on Linux, while the most important platform from a user-acceptance perspective was (and is) Win32, which required Visual C++ to build.
Those, coupled with the fact that pulling out everything NSCP couldn't release had left the codebase unbuildable, led to a realization: since the difference in implementation between various platforms meant they essentially had to build widgets for HTML form controls, why couldn't they use those same widgets for the entire UI, cross-platform. That was the origin of Xptoolkit, and it was the coupling of that with the nglayout component (which became Gecko) that was the genesis of the original Mozilla 1.0 / Netscape 6.

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds