Gnome Status and Future.




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.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]