During the LinuxTag 2003 conference, KOffice hackers Ariya, Norbert and Phillip had a chance to meet and discuss the current state of KSpread as well as the future direction of the project. Plans include an Excel export filter as well as switching to the OpenOffice.org Calc format -- read on for the full KSpread Development Roadmap that resulted from the discussions.
kspread development roadmap
Ariya Hidayat, Norbert Andres, Phillip Müller
July 12, 2003
During LinuxTag 2003, we had a
chance to meet and discuss KSpread developments. This is a
summary of what we have discussed.
what we have done
We are now close to the release of KSpread 1.3 (as part of KOffice
1.3). Beta 3 will be soon available, and release date is expected to be
Since the latest KSpread 1.2, we have done several important things
- styles support
- performance improvement, as well as reduction in memory usage
- addition of many built-in functions
- better support for foreign file formats, including OpenOffice.org
- WYSIWYG enhancement, with real zoom and high-resolution printing
- bugfixes and other improvement (templates, conditions,
drag-and-drop, and many others)
Until now, KSpread has been maintained by Laurent Montel. Core
developers are Norbert Andres, Ariya Hidayat, Phillip Müller, with support
from other active KOffice hackers like David Faure and Lukáš
Tinkl. Documentation is mainly written by Pamela Robert. Although we do not
have an official QA team, Ferdinand Gassauer is always very helpful
in reporting various annoying bugs.
where we are going
Our goals for the next release are:
- more efficient memory consumption, necessary for working with
- full support for OpenOffice.org Calc document format
- near 100% compatibility for Excel formula functions
- bidi support
- better and smarter handling for calculation dependency
- allow support for up to 4 milllions rows
- real-zoom for the chart component
Following are a few things which will be developed or are already
being worked on.
- Macro recorder
- New format storage data structure, necessary to avoid storing
format information in each cell. Cache, tree, and other solutions for
optimization might be required but have to be researched first.
- Format parser to speed up painting routine. In short, all
information for painting a cell can be looked up very fast and thereby
avoid any painting bottleneck.
- Formula engine which will replace KoScript. It will be a
interpreter for faster and efficient expression evalution. All built-in
function will need to be modified but then we will have the possibility
for external function definition (say, in Perl). via plug-in. There
will be also support for localized function names.
- Source code clean up, to make it easier for new developers to
jump in and avoid unncesseary clutterness. This will include: adding
more documentation for core classes,
redoing user interface parts into .ui files, moving dialog box code
into dialogs/ sub-directory, introducing namespace (KSpread::Cell
instead of KSpreadCell).
- Revision support
- Excel export filter.
- Faster document saving and loading. One possibility is using
experimental SAX-based document loader (vs the current DOM
approach) which has the advantage that no intermediate step (i.e
constructing DOM tree) is performed.
- Website rework. The current content of KSpread website is already
too ancient. Some new
screenshots (like KSpread using colorful Keramik style, or KSpread
running on HP-UX) will be additional bonus.
- Maintainership. As agreed, for future release Ariya will
co-maintain KSpread with Laurent.
- Switch to OpenOffice.org Calc file format. Somehow this
should be done in a coordinated manner with other KOffice applications.
how you can help
Since we are relatively busy with other things and KSpread has no
full-time developer, any help will be appreciated. Among others, here
are some things which you might want to have a look:
- File bug report to bugs.kde.org. Check first that it has not been
- Test and report problems with filters, especially Excel filter.
- Write and update KSpread documentation. Make sure to contact Pamela first.
- Provide regressions tests for many built-in functions.
KSpread still has a future. We love it, and we will always improve it!