From miguel@gnu.org Received: (qmail 2750 invoked from network); 22 Jan 2000 07:30:45 -0000 Received: from mail.redhat.com (199.183.24.239) by lists.redhat.com with SMTP; 22 Jan 2000 07:30:45 -0000 Received: from erandi.helixcode.com (dialup-63.210.136.227.Boston1.Level3.net [63.210.136.227]) by mail.redhat.com (8.8.7/8.8.7) with ESMTP id CAA19654; Sat, 22 Jan 2000 02:30:37 -0500 Received: (from miguel@localhost) by erandi.helixcode.com (8.9.3/8.9.3) id UAA09338; Fri, 21 Jan 2000 20:19:54 -0600 Date: Fri, 21 Jan 2000 20:19:54 -0600 Message-Id: <200001220219.UAA09338@erandi.helixcode.com> From: Miguel de Icaza <miguel@gnu.org> To: gnome-list@gnome.org, gnome-devel-list@gnome.org, gnome-hackers@nuclecu.unam.mx Subject: Gnome Status and Future. X-Windows: It could be worse, but it'll take time. Hello guys, Many people have asked the GNOME team, where is GNOME headed in the future? When is a new version of it coming out? What are the new features that are going to be included in the new GNOME? What can we expect from it? Is GNOME 2.0 the final GNOME? * The GNOME state. There are many areas into which the GNOME project is expanding; You have to keep in mind that GNOME is an umbrella project which is made up of various components: * The Foundation libraries: these are programming libraries that simplify a programmer's task of creating powerful applications: The glib C utility library, the gnome-xml library, the gdk-pixbuf image loading and manipulation library, the gnome asyncronous virtual file system library. * The Application Framework libraries: these are set of libraries that unify the look and feel of GNOME GUI applications. * The Bonobo component system and compound document system. This is a CORBA-based component system which is used to create reusable componets: either process-based or shared library based. The actual being resolved at runtime. * The GNOME printing architecture: which provides a PostScript-like imaging system, while providing native drivers, previews, and metafile handling. * The GNOME desktop: A set of programs that provide a desktop abstraction as well as various desktop-tools built on top of the above technologies. * The GNOME productivity applications: A set of productivity applications written using the GNOME foundation libraries. Dia, Gnome-pim, Gnumeric and others fall into this category. The various components of the GNOME project have their own release schedule, which lets users upgrade to the latest versions of their favorite component as soon as it becomes available. From time to time the GNOME team organizes a "major" release of GNOME, and the various packages are put together and released as a set of packages. The most recent package release was called "October GNOME". Although many of the components were available independently in a tested and released form, a special effort was made by Elliot Lee (The October GNOME release coordinator) to address all of the problems that could be reproduced from the GNOME bug tracking data base. As you might have heard, a number of new technologies have been developed for GNOME, and have not been released as "stable" software, as they are not yet finished and application programmers are still working on it. Nonetheless, these components have been available sometimes in the unstable directory in the GNOME FTP site and they are available from the GNOME CVS repository (and also from the public Anonymous CVS repository). We are happy that all of these components are quickly reaching maturity. The various new components (liboaf, gtkhtml, bonobo, gnome-vfs, gconf, gnome-print) will be integrated into the GNOME core libraries in some way: either they are directly included, or they are made pre-requisities for installing the GNOME core libraries. Some of those new components have been made available to the programming community for some time to provide us with feedback and to develop various new applications that depended on them. An example of this is the gdk-pixbuf library which is the new imaging system for GNOME and the gnome-print library. Both are being used in existing applications. * The Short Future of GNOME We have been doing a lot of work infrastructure-wise and sometimes we have failed to be very communicative about it. It is our fault, and we need to do a better of job at telling people what we have been up to. Ideally, we want to make GNOME perfect, easy, small, intuitive, resource friendly, portable, maintainable, funnier, entertaining, productive, and the ultimate of the ultimates. We will ideally try to get the following features in the next major release of GNOME: * The new gnome-core toolset which contains a number of new features: multi-size panel, smoother icons, more panel types, nicer art work. * A new file manager/desktop handler replacement; This is basically a bonobo-based shell that can be used to "view" the information in your system in many different ways. * A better integration with the window manager: The wm-spec team is almost ready with their new window manager specification which is unified across GNOME and KDE. Various people have expressed interest in making sure that Sawmill (a new user's favorite window manager) integrates perfectly with GNOME. Also we hope to have Evolution done on time for this "bigger" release. Evolution will supercede gnome-pim and include a mail reader. The various components of GNOME Office (http://www.gnome.org/gnome-office) of course are released under their own schedule and will be integrated into this release. Various foundation improvements might make it or not to the next release: we do hope that a new gnome-vfs based file selector will be part of the new code base, as well as a fully tested and released Bonobo. Glade is being used in more and more in applications as it reduces the ammount of code you have to write; Some effort to integrate this in a full development environment has been done, but we would like to see a fully integrated development environment for people to use and build applications. We obviously want to get a new version of GNOME out as soon as the above described components are ready for use. * The Long Term Future of GNOME We obviously want to make GNOME the desktop that will bring free software (Open Source for those that like the term) into the desktop. And to make this happen we will need the help from many of you in upgrading our current infrastructure and working on the infrastructure of the future. The recent announcement of Apple included some very amazing screenshots of what they could do with their technology. I was impressed by it for the first two hours, until I realized how easy it would be for us to actually pull a hack like that. Although the fully-transparent system can be done with little effort (as we have a very powerful infrastructure to achieve it: Raph Levien's libart) a lot of work has to go *first* into making GNOME easier to use, more intuitive and more easy for newcomers. As Maddog likes to say, lets not think about the little percentage of people who have chosen an operating system so far. Lets think about the rest of the population that has never used a computer: we need to make GNOME accessible to them, and make it their desktop of choice. * How can you help As usual, I have included a list of general tasks that people interested in cooperating can do. In general you can check http://developer.gnome.org/helping/ for a quick overview. Helping is not limited to hackers, but to any kind of GNOME enthusiast out there: * Translating GNOME to your language. GNOME includes pretty good support for translating the applications to various languages, thus enabling all sorts of users around the globe to become GNOME users. Although we do have very good support for it, as GNOME is a constantly evolving system, the translations need to be updated in a pretty frequent basis. If you are interested in helping your regional team, check out: For a quick status report: http://www.gnome.org/i18n For joining the teams: http://developer.gnome.org/ * Documenting GNOME We do need help writing documentation for existing GNOME applications in Docbook format. Please check: http://developer.gnome.org Or contact docs@gnome.org if you are interested in cooperating. * Bug fixing GNOME. If you are interested in doing some detective work, and helping other people. This is also a great way of learning about the various GNOME framework libraries: it will expose you to real problems in real applications (boy, I sound like Microsoft hiring material). The GNOME team keeps a database of bugs in applications, together with comments and information on the problem at http://bugs.gnome.org. Pick your bug, fix the bug, submit the fix to the gnome-devel-list@gnome.org list, or contact the maintainers directly. * New Web Pages Joakim at Simplemente (http://www.simplemente.com.mx) has done the new set of web pages for GNOME; They are available on the gnome-wml module, but they are lacking content. The content from the existing site needs to be integrated and organized into the new infrastructure. Please get in touch with joakim@styx.net and sopwith@redhat.com if you are interested in helping with this project. * FAQ The current FAQ is pretty small; We would like to create a longer FAQ that includes programming information, more user information, more historic information, more information about GNOME applications, the GNOME Office suite, the features of GNOME and so on. The current maintainer is: julian@linuxpower.org, please get in touch with him if you want to help. * Helping in concrete projects. There are various ongoing projects right now, you can pick the most interesting to you: Project: MegaTheme Description: Polishing the Theme-ball selector/chooser Contact: hestgray@ionet.net Project: GtkHTML engine. Description: fixing, improving, finishing, polishing Contact: Ettore, ettore@helixcode.com Project: Nautilus file manager/shell Description: Lots of work left to do. Contact: contact me, I will put you in touch with the hackers. Project: New GNOME help browser Description: To write it. Contact: Elliot, sopwith@redhat.com Project: Docbook/{SGML,XML} loading, parsing, HTML rendering. Description: Write a program that can load a Docbook/SGML or XML and generate .man or .html files (this engine can then be plugged into a "live" viewer). Contact: miguel@helixcode.com Project: Gnumeric improvements Contact: gnumeric-list@gnome.org Project: Gnome Print native drivers Description: Writing the native driver basics and real drivers Contacts: notzed@helixcode.com, miguel@helixcode.com Project: Bonobo touch ups Description: Test libefs, finish streaming/persistance, finishing Glade support. Contacts: miguel@helixcode.com Sri is also keeping a project list, but I lost the URL; I hope he will post a follow up here. Currently GNOME lacks a bit of polishing when it comes to the end desktop because we do not ship a good set of presets for it. Shipping good presets and revamping the user interface (as suggested by our user interface team at http://www.gnome.org/gnome-ui) is a really important task. Currently Justin (justin@debian.org) has been doing some work on revamping the user interface for the control center, but there is still work that needs to be done if we ever want to replace the Macintosh. [Appendix: Miscelaneous status reports] > This is a status report on the various activities I am aware of > that have not been discussed in this list, but has been done in other > lists (calendar-list, gnome-mailer-list, evolution, private mail, > gnumeric-list and a lot of IRC). > > * Bonobo > > Michael Meeks has a patch for Glade that will let users design > forms using Bonobo components as part of his Helix work. > > Nat has worked on providing "Controls", these are just simple > widgets that have menu/toolbar merging as well as properties that > can be saved and restored. > > Michael Meeks has been working also on finishing the Toolbar code > in Bonobo (code is already on cvs). > > We are waiting on Paolo (or someone else that knows what is needed > from the API point of view) to make sure that the Bonobo API can > be exported to scripting languages. I remember Paolo mentioned > that we needed _full version of functions, but that is all. I need > help. > > A new release of Bonobo should be done this week. Promised. I > just need to twist Nat's arm hard enough. > > Besides that, the Bonobo API looks pretty reasonable now, and it > can be used to build applications (it is currently used by the > graph gnumeric component, nautilus and Evolution). > > * GNOME Basic > > Jody Goldberg and Michael Meeks have worked a lot on getting good > Excel support in Gnumeric, as a side effect of this, they started > work on a GNOME implementation of Visual Basic for Applications. > > Yes, the framework will include a non-lame security system. > > The work is currently the most advanced free Visual Basic > implementation. There is a list: gb@helixcode.com to discuss it. > > * Gnumeric > > Jody Goldberg got shi Undo/Redo architecture into Gnumeric, and > various commands currently support Undo/Redo as a result. You > will be able to get this on the next Gnumeric release. > > Michael Meeks has significantly speeded up and optimzied the > dependencies code in Gnumeric. This speeds up computation, > loading and simplified the code. > > The whole Gnumeric team is amazgin, and there are way too many > features to describe, but those are the highlights. > > My next task in Gnumeric (in about 4-6 weeks) will be to finish > the graphics component to do the plotting. Shortly after that > Workbooks and Sheets will be splitted correctly in model/view > fashion to support correctly Bonobo embedding and support headless > Gnumeric operation. > > * The GNOME-VFS > > The GNOME VFS is currently being used by Nautilus, and will be > soon incorporated into Evolution for pretty much all of the tasks. > > The FTP file system is known to lack proper locking for threaded > operation. > > Elliot implemented a loadable-module support for gnome-vfs, so the > decision between the corba backend and the threads backend can be > done at run-time. > > Future direction for the GNOME-VFS includes: fixing the ftp file > system and writing a WebDAV file system > > I do not know what the status of cancellations are, but it seems > they are pretty robust. > > * gnome-xml > > Daniel Veillard has finally finished his work to change the > structure of his XML and HTML parsers on gnome-xml, so that > clients can drive the parsing process instead of the clients > driving the parsing process. > > * gnome-pim/gnome-pilot > > Eskil has been maintaining the Pilot integration of Gnome-Pim and > has done two public releases of the code. Another one should > appear shortly on your favorite FTP server. > > Pilot integration is extremely good these days; Intuitive, nice > and works. Eskil has done an amazing job. > > * gnome-libs/stable release. > > A new release containing the various fixes accumulated over the > next few weeks is in testing currently, and as soon as it passes a > few more tests, it will be made the official release. > > * Evolution > > Evolution is the platform work that we are developing at Helix > Code. Evolution provides an integrated client for mail, news, > calendaring, tasks and contact management. > > The focus is on having an extremely pretty user interface, and > good user interface. > > Evolution is a platform for developing groupware applications on > top of the services exposed by the client. So a WebDAV-based > server will provide the features for network colaboration (yes, > Mail can still be accessed trough IMAP, and yes, the local file > system mail format is mbox). > > Helix has hired various GNOME hackers to work on this recently and > we are beginning to assemble the team in Boston. The Evolution > team at Helix includes Bertrand, Chris, Damon, Ettore, Federico, > Jacob, Joe, Matt, Michael, Nat and myself. A few other people are > joining the team on February. > > We are working hard to get the shell into place and starting to > glue the various components very soon now and commiting all > pending work that has been held until the shell can integrate > them. > > * Gdk-Pixbuf > > A new release will be done this week. It supports animation and > progessive animation loading (Thanks Jonathan!) and contains the > new scaling functions from Owen and should be shortly released. > > Before the release, we are twisting Federico's arm to clean up his > canvas-item based on gdk-pixbuf API to make sense. > > * Other stuff. > > Helix wants to help improving the user interface of GNOME, so we > have hired Justin to work part-time on implementing the new user > interface for the control center as suggested by the gnome-ui team > lead by Jim Cape. > > Best wishes, > Miguel.