And the GIMP, whatever its shortcomings, has a large and dedicated user base. So the development team could be forgiven, perhaps, for simply giving up on usability. But just the opposite is happening. The latest development release incorporates a number of enhancements aimed at improving usability. These changes alone will probably do little to attract new users or discourage existing ones. But beyond the incremental improvements, the GIMP project seems committed to finding a better design process.
I will have more to say about process issues shortly. But first, let's examine some of the user interface improvements in GIMP 2.3.4. This release is a preview of GIMP 2.4.
There have been several changes for better compliance with the GNOME Human Interface Guidelines. These are mostly minor alterations like changes in capitalization of menu items and the labeling of buttons with appropriate action verbs instead of "OK." Menus have been reorganized; particularly noteworthy is that the Script-Fu menu has been merged into the Filters menu, eliminating a long-standing source of confusion.
There is also a new rectangle selection tool which, rather like the current crop tool, uses a two step process where the user creates a "proposed selection" that can be resized either with the mouse or by entering numerical parameters before finalizing the selection. Also like the crop tool, the unselected area is dimmed for improved visual feedback.
Drag and drop capability has also been enhanced, both internally and between the GIMP and other applications. It is now possible, for example, to select a brush, pattern, or gradient by dragging it from its palette to a Script-Fu dialog. With the addition of XDS (Direct Save Protocol) support, you can save images by dragging them to any file manager that supports XDS, as shown in this image.
Finally, developers are addressing one of the most common interface gripes: the multitude of separate top-level windows. It is now possible to set "helper" windows--palettes and dialogs--to be transient to the image window. This means that if you minimize an image window, all the helper windows, and the main toolbox, are minimized with it. This behavior becomes problematic when there are multiple images open, but given that users have widely varying expectations for window behavior, there is probably no perfect solution to this problem.
But what does this all mean for the user experience as a whole? Not much. The changes are in my opinion, mostly useful. Yet the new usability fixes do not represent a unified vision of the GIMP experience (before anyone starts writing nastygrams, let me point out that I don't consider the GIMP team particularly at fault here--but more on that in a moment).
I believe that there are two larger issues that need to be resolved. One of these is inconsistent UI behavior. Take drag and drop, for example. Suppose you have discovered that you can save an image by dragging its thumbnail from the GIMP Image dialog to a ROX-filer. Knowing this, you might expect to be able to open an image by dragging it from ROX to the Images dialog, but ... no such luck. It turns out you *can* open an image with drag and drop, but you have to drag it to the main toolbox.
There are other issues with drag and drop, not necessarily the fault of the GIMP, but nonetheless problematic for GIMP users. For example, you can open an image in the GIMP by dragging it from Firefox or Epiphany, but not other way around. XDS support is nice, but there are few file managers that support it.
Another sore point is the tradeoff between functionality and simplicity, and there appears to be no consistent approach here. Some of the changes in the new GIMP tend towards simplicity, such as combining the Script-Fu and Filters Menus, while others introduce complexity, such as the new rectangle selection tool. What underlies both of these issues, I suspect, is that up to now there has been no real vision of who the users are and what they need.
Enter OpenUsability.org. OpenUsability is a Web-based project portal that "... brings Open Source Developers and Usability Experts together." The site provides a structure and tools for gathering usability data and discussing design issues; a growing number of projects are participating, some of the more prominent ones being Wikipedia, WordPress, Anjuta DevStudio, and a number of KDE projects.
Simply registering your project at a portal guarantees nothing, of course, but the GIMP team appears committed to really using the process. Among the forty-plus registered participants for GIMP-OpenUsability are lead developer Sven Neumann and at least 6 other active GIMP developers. Moreover, in less than two months the GIMP forums have racked up about 350 posts; based on a quick non-scientific survey of the projects at the site, these numbers make the GIMP by far the most active project at OpenUsability.org. Looking at the content of the discussions, we find a bit of the perennial "Why can't GIMP be more like Photoshop?" complaining, but also a good deal of thoughtful consideration of what a more usable GIMP would look like, and how to improve the design process.
Those who are hoping for revolutionary changes in GIMP will have to wait a bit longer. Based on the current release, GIMP 2.4 will offer some significant improvements, but the overall experience will be more or less unchanged. For the long term, who knows? OpenUsability is an experiment, and there is no proven model for integrating user-centered design into an open source development process. Nonetheless, it is encouraging to see the GIMP team take this initiative. If the effort succeeds, we may have a new model for open source development.
Clusters and Gridshas been released. "Java Parallel Processing Framework is a set of tools and APIs to facilitate the parallelization of CPU intensive applications, and distribute their execution over a network of heterogenous nodes. This release [adds] 2 major features, related to integration with existing applications." We will likely have a few more candidates before publishing 1.0 "final." The software is considered feature complete for 1.0 (although many more features are planned for post-1.0), but we would love to have 3rd parties test the software in their own environments and send feedback on their results."
Database Softwarehave been announced. "In order to address several issues identified since our last Point Releases, we have just released the following new versions of PostgreSQL: 7.3.11, 7.4.9 and 8.0.4."
Printingis out. Here is the change notice: "Many small bugs were fixed. The documentation was greatly improved, as well as translations. The Web site now contains a WiKi, which amongst other things contains an ever-growing list of supported printers."
Calendar SoftwareCalCore is an advanced, flexible calendaring component for Python. It allows the Python developer do write advanced calendaring applications either using their own event storage or integrating with external calendar servers."
Desktop EnvironmentsThe first point release of the stable 2.12.x series of Gnome has been released. This release includes the latest bugfixes and other improvements such as updated translations and is the first in a series of point releases."
ElectronicsFlowDesigner has been released. "FlowDesigner is a free (GPL/LGPL) data flow oriented development environment. It can be used to build complex applications by combining small, reusable building blocks. In some ways, it is similar to both Simulink and LabView, but is hardly a clone of either. FlowDesigner features a RAD GUI with a visual debugger. Although FlowDesigner can be used as a rapid prototyping tool, it can still be used for building real-time applications such as audio effects processing. Since FlowDesigner is not really an interpreted language, it can be quite fast." XCircuit, an electronic schematic drawing package, is available. Changes include several bug fixes.
Financial ApplicationsSQL-Ledger, a web-based accounting system, is out. See the What's New document for details.
Gameshas been announced. Changes include bug fixes, new features and more.
GUI PackagesDogtail is a GUI test automation framework written in Python that uses Accessibility (a11y) technologies to communicate with desktop applications. Dogtail scripts are written in Python and executed like any other Python program."
InteroperabilityWine Traffic is out with new Wine project articles. Topics include: Wine-20050930, Stabilizing for Wine 0.9 Release, Summer of Code Update: MSHTML, Thinking Toward Future Releases, QA & Bug Triaging, Font Issue (Fixed), Lotus Notes 6.51 on Wine 20050930, Test Harness for winedbg, Undocumented API Reference.
Mail Clientshas been announced. "This release does not contain any major new features since Beta 1. Improvements to mail auto complete (sorting the results based on how popular the recipients are), automated update system, performance, and several security fixes are included in this release."
Multimediais out. LMMS is a Pygame-based window manager with a joystick interface, it is useful for games, movie players and more. "This release fixes a few bugs and changes the message system. A front end for the NGPC emulator NeoPocott is now available. The documentation is up-to-date."
Music ApplicationsSmack is a drum synth, 100% sample free. It's built with LADSPA plugins and the Om modular synth. New in this release are Noise and resonate filter based metallic percussion, ring modulation based drums, velocity sensitivity, control ports for all drums and random other goodness." WhySynth, as in 'Y'-synth, the super-sized, frankensteinized, evolved and mutated, still rather dorky younger sibling of Xsynth-DSSI. WhySynth, as in (I sometimes ask), "_why_ am I working on another softsynth instead of on paying gigs?""
Office Suitesannounced the release of KOffice 1.4.2. This version features improved support for the OASIS OpenDocument file format and interoperability with OpenOffice.org. See the change log for more details. (Found on KDE.News)
Scienceis available. "GDBI is a genealogy program integrator. It includes an editor and the lifelines report language. It interfaces to 3 GEDCOM databases: phpGedView, GenJ, and jLifelines. At the core is a common Java API to simplify adding more databases and editors. This release adds an import feature for reading in another GEDCOM. It also has fixes for the merge feature added in the previous release."
Web Browsersmentions the new Flock browser project. "Here we go again. Another ground-breaking IT development coming from the general vicinity of Stanford University -- and it's being built in a garage, just like HP was. This one is a new open source browser called Flock. It's built on the Mozilla Gecko HTML rendering engine, like Firefox. However, Flock's intended user market isn't just anybody -- it's designed for bloggers." has been released. "Also known as the 1.8 Beta 5 milestone, this is the last beta release of the next major Firefox update and is aimed at testers, extension/theme authors and Web developers. The final release of Firefox 1.5, which will be widely promoted to end-users, is scheduled for later this year." has been released. "SiteBar is an online bookmark manager intended to be used as a general bookmark server with versatile browser and import/export support. Keep your bookmarks on your server and access them from anywhere! SiteBar can now serve (using an XBELSync plugin) as a backend for Bookmarks Synchronizer - a favorite Firefox bookmarks extension".
Languages and Tools
Javaintroduces Spring, a Java lightweight container. "In this first of a two-part series excerpted from Spring: A Developer's Notebook, authors Bruce Tate and Justin Gehtland help you understand how you can use Spring to produce clean, effective applications. In part 1, they take a simple application and show you how to automate it and enable it for Spring."
LispThis major version provides many new features including support for 64-bit mode on G5-based systems, an improved "Demo Cocoa IDE", better ANSI compliance, and more." Peter Seibel has released the source code of the formatting tools he used for writing his book "Practical Common Lisp". The tools, which are written in Common Lisp, can generate HTML, PDF and RTF output from a custom markup language."
PythonPyflakes is out with minor bug fixes. "Pyflakes is program that analyzes Python programs and detects various errors. It works by parsing the source file rather than importing it, so it is safe to use on modules with side effects. It's also much faster."
RubyRuby Weekly News looks at the latest discussions from the ruby-talk mailing list.
Bug Trackershas been announced. "ALM Works announces the availability of Deskzilla 1.0, a desktop client for the Bugzilla bug tracking system. Deskzilla delivers features for greater productivity and an improved working environment for the users of Bugzilla."
Miscellaneoushas been released. SWIG interfaces C and C++ with numerous high-level programming languages. Changes include: "New language modules: Lua, CLISP, and Common Lisp with UFFI. A big overhaul to the PHP module. A change to the way 'extern' is handled. Minor bugfixes specific to the C#, Java, Modula3, Ocaml, Allegro CL, XML, Lisp s-expressions, Tcl, Ruby, and Python modules. Other minor improvements and bugfixes."
Page editor: Forrest Cook
Next page: Linux in the news>>
Copyright © 2005, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds