OpenOffice Coder On StarOffice 6.0's Beta Release
"Release 6 also gets rid of the old Star Office desktop of version 5 which was generally disliked for its annoying tendency to cover up all of the other windows you were working with and make it difficult to interact with your X Window Manager.
The application suite has programable APIs for each of the applications, exposed through a custom object request broker named UNO. In an impressive demonstration, Max showed live update of a spreadsheet with real-time stock data, all under the control of a small Java application. Changed data were reflected throughout the spreadsheet table with each update as the sheet recalculated each cell based on the new input.
Max freely admits that there are still weaknesses in the code. He pointed to the ten year lifespan of the mostly C++ code base, and hopes to see the code improved with the use of more modern C++ features. In browsing through the source tree I don't find that the code is in nearly as bad shape as Max portrayed it. Admittedly I've only seen a tiny fraction of the code (at 3.7 million lines, OpenOffice is by far the largest open source project in the world), but my random sampling showed very good coding practises, like preprocessor guards around each header include to reduce compile time due to reopening headers that have already been processed. Even with these measures in place however, the full system takes upwards of 15 hours and 1.5GB of disk to build on currently available hardware.
System load time for the office suite has been significantly reduced (about 20s on Max's 500MHz laptop with 128MB memory) by removing several libraries from the link process and instead loading them on demand. Over the next year or more Max hopes to see more modularization of the code base with the eventual goal of seperating the monolithic program into seperate applications linked together through an object request broker.
Q&A went on until we got kicked out of our room, so there is a lot more that is new about OpenOffice than I've described here. If you are interested you can pick up a copy at OpenOffice.org, or at one of its mirrors around the world."
The article states that "Release 6 also gets rid of ... its annoying tendency to cover up all of the other windows you were working", but I can't seem to find any screenshots on their website or anywhere else. I have no doubt that the look & feel is similar to Microsoft's Office suite (also Corel's WordPerfect, but I digress) but I'd like to know if they got rid of their start-button oriented interface.
Anybody had this working and would be willing to GIMP a screenshot?
I can't believe that 20 seconds on a 500 Mhz machine is a good load time for a word processor!
This is the sort of thing that will be thrown in my face when I try to tell people to give OpenOffice a shot.
Here's an SAT-style analogy:
StarOffice OpenOffice as
Netscape 6.x Mozilla
It's as simple as that.
If you celebrate Xmas, befriend me (538
... sampling showed very good coding practises, like preprocessor guards around each header include to reduce compile time due to reopening headers that have already been processed ...
Um. Like who doesn't do this? Due to the nature of C++, this is required to avoid redefinitions that would otherwise occur on multiple inclusions. Given this, it has little to do with reducing compile time; for that you use pre-compiled headers (support for which isn't expected in GCC until 3.1 or later).To evaluate coding practices, I would look at
Consistent coding conventions: syntax, identifiers, directory layout etc.
Presence of good comments (German ones don't count ;).
Application of good OO principles (which, contrary to a surprising number of people's opinions, apply to all languages, not merely explicitly OO languages like C++), such as encapsulation, modularization, etc.
Application of good OO patterns (GangOfFour-style).
Use of interfaces ("abstract base classes" in Bjarne terminology) to decouple API interfaces from their implementation.
Presence of unit tests.
Presence of assertions and other kinds of code guards that contribute to "self-documenting" and "self-testing" code.
etc.
(at 3.7 million lines, OpenOffice is by far the largest open source project in the world)
I wasn't sure about this, so I took a look at the linux kernel source:
$ cd
$ find . -name \*.[ch] -exec cat \{\} \; | wc -l
3130679
So OpenOffice is bigger than the Linux kernel, but only by around 15%. I don't know if you can say it's by far the largest.
Yeah, I know I'm being pedantic.
dash dash Chris
From Microspeak Universal Translator at www.OS2HQ.com
Dead
Microspeak: disappeared; no longer in use.
Real Meaning: a product that does not have monopoly market share.
Usage: "It's only a matter of time before Netscape Navigator is *dead*."
Agenda: To make everyone think that as soon as a Microsoft product is leveraged into a high market share, all the alternatives instantly vaporize.
IBM pull more profit from OS/2 then RedHat makes revenue. It is better supported, and was the original inspiration that made Linux possible. I mean, TeamOS2 was the first grass-roots movement that showed that people could move an OS by themselves.
Sure, Linux is based on bits and peices from free UNIX stuff, but there's a lot of OS/2 and TeamOS2 mentality in it.
OS/2 is the future now. If OS/2 dies now, maybe the whole industry dies in five year's time.
And, by the way, it's a pretty narrow-minded person who can only spell a word one way.
OS/2 - because choice is a terrible thing to waste.