SPREADSHEET:
BEST-OF-BREED

Gnumeric is a spreadsheet of choice for businesses and schools that, in 29 languages, speaks volumes via columns, numbers, analytics, and software libre.

   
 
by Nancy Cohen

February 17, 2004
     
     
  Fans of the Open Source Gnumeric spreadsheet program are rather proud of their project. Being Open Source, Gnumeric enthusiasts can point to yet another community project that demonstrates how free software can engender best-of breed applications. Gnumeric, part of the GNOME desktop environment, is good enough to say, ‘See? Excel and Lotus are not the be all and end all.”

Beyond that, Gnumeric's leader, as the following interview reveals, doesn’t like any inference that it should be seen as a second-best freebie for those who don't want to spend the bucks on proprietary spreadsheets. The idea was never to create a clone of programs like Excel, but to surpass Excel in a number of ways.

Gnumeric can be extended via a plug-in system, adding functions, I/O formats, and real-time data capabilities. Complex functions are defined via Python, Guile, and Perl plug-ins. As well as being able to read and write files in MS Excel format, Gnumeric can read files in additional formats including Lotus, Applix, Quattro Pro, OpenCalc, XBase, DIF, SYLK,  HTML, Psion, MPS, oleo, sc, and XML. Gnumeric can also generate LaTex documents.

Talking to Open, Gnumeric development team leader Jody Goldberg reviews the progress of Gnumeric from its birth in 1998 to its progression from 0.x state to 1.0x, and reasons for its popularity around the globe.

How important is Gnumeric to the overall GNOME project?

Goldberg: The project, which is now in its fifth year, is a reasonably important part of the GNOME project in that it provides a large-scale application to drive the platform. 

In tracking Gnumeric’s milestones, how significant is the jump from 0.x 1.0?

Goldberg: We didn't brand it as a stable release until it had been in feature freeze for several months with nothing but compatibility testing and bug fixing. The payoff was that there were relatively few point releases necessary in the 1.0.x line.

What brought you to Gnumeric, anyway?

 

Goldberg: I was working on Wall Street, developing custom analytics for various investment banks and wasting far too much time working around problems in various spreadsheets as we released the custom routines. Contributing to the Gnumeric project seemed to offer the best possibility of getting something that worked. Eventually, when my son was born I decided to work from home and develop something that seemed socially redeeming. Ximian, now part of Novell, employs me to work on other pieces of GNOME. It’s nice when those pieces support Gnumeric but that is a bonus, not the norm.


    
     
  We see your application has been translated into 29 languages. What attracts the global business user to Gnumeric? 

Goldberg: For real spreadsheet users, it's a project that cares about the accuracy of its analytics and the ease of extension.  People writing custom code in MS Excel find it much easier to work in our plugin system than XLLs. For other users, stability and compatibility combined with support and price make the difference.

Any hard numbers available on how many users have downloaded Gnumeric? Any stats on how many businesses use Gnumeric?

Goldberg: Actually, no.  Bug reports are relatively rare, but mailing list subscriptions and word of mouth suggest that we're in use within a lot of organizations: a large number in finance and insurance, lots of academic, and some accounting.

Does Gnumeric get any kind of self-supporting funding or commercial support?

Goldberg: Early on, Ximian funded some development but hasn't in several years. We've received a grant from Mitch Kapor to create a set of compatibility test files. There have also been some requests for extensions or support. So every now and again we get support requests for things like file conversion, or for feature additions, but nothing that would fund significant development.  It would be nice to get some funding to expand the project. It would certainly speed development to be able to work on things during business hours.

The Gnumeric project doesn't seem to apologize for being second-rate free alternatives to Excel. It seems to say it is just as good.

Goldberg: Woooah.  I would definitely take issue with the notion that Gnumeric is 'second rate.' Our goal is to produce the best possible spreadsheet. That will take time. There are many things that MS Excel does better than we do just now, but we've pulled past them in several instances. We are not attempting to write an MS Excel clone. We need good interoperability to help ease the costs of transition to Gnumeric. As with all software, there is lots of room to improve existing spreadsheets, proprietary or otherwise. 

Then can you describe the typical business environment leveraging Gnumeric?

Goldberg: Given my background, I tend to focus on investment banks, the traders, quants, and software folk writing their custom analytics and spreadsheets to support their new deals. Gnumeric's focus on calculating the right numbers and the ease of writing external plugins make it a great platform for them.

All the Linux talk for 2004 is about 'Linux on the desktop.' What role do you think Gnumeric will play?

Goldberg: Gnumeric is the first spreadsheet as far as I know to provide full compatibility with all of the obscure features of MS Excel's evaluation engine. From implicit iteration for array functions to external dependencies—we now support it all.  Add to that our support for every worksheet function in the North American version along with Gnumeric's additions. People have done their PhDs on providing improved auditing in spreadsheets using Gnumeric.  We've added things like calculated dependencies, which take spreadsheets in new directions.

You mentioned in your e-mail note that "new development is happening again." What's that about?

Goldberg: A significant short-term target is a win32 version. It is a critical feature for several reasons. 1) Windows users vastly outnumber Linux users right now. 2) It's easier to transition/test an application on your current platform than to jump applications and platforms at the same time. Gnumeric has been excluded from consideration from several potential sites because there was no Windows port. We're looking forward to fixing this.

What else are you planning?

Goldberg: There are several things planned during the next cycle. We've started by porting to the latest version of Gtk+ (to become 2.4) to ensure that the new features can meet all our needs. The next step will be to expand the scripting interface and add the last couple of missing features. Longer term, we're aiming to add the last few high-level MS Excel  features that Gnumeric still lacks: pivot tables and conditional formats.

Pivot tables...conditional formats. What's special about these?

Goldberg: Pivot tables are a cute approach to unflattening a hypercube of data and slicing and dicing it. Think of it as a spreadsheet front end to a very simple database. It's popular in some types of management because it allows a user to easily request summary data from a collection of tables.

Conditional formatting is a nice concept that has been brutally implemented in MS Excel. Users can change the format of a cell based on its value. Microsoft threw a terrible interface onto this and supports at most three conditions. The most common use case is for allocation tables (john == red, bob == blue ...), where three is nowhere near enough. While we have to support the limited form for compatibility, my hope is to add 'calculated formats' too, which could allocate any number of colors from a lookup table.