Opinion: Ruby + OpenOffice.org

Hi guys,

I’ve been thinking about the idea of Ruby bindings for OpenOffice.org. I
am thinking that:

  1. This might benefit OOo, by making OOo programming easier. Especially
    if the bindings are well designed. Hopefully, this would attract more
    programmers.

  2. If (1) happens, that would benefit Ruby. OOo is one of the most
    popular open source programs. It is widely used in Linux, Windows and
    there is a Mac OS X port in progress. If OOo comes with a copy of Ruby,
    then there would be millions of users with Ruby installed. Furthermore,
    OOo is growing at an impressive rate. Last year Munich got 14,000 copies.
    Later on China ordered a few millions. Last week an Indian copany ordered
    another 15,000.

So there might be a growing market for OOo-related applications, which
Ruby could capitalize on. This could spark interest in Ruby as well.

I would like to hear some opinions on this. Do you guys think that Ruby
bindings for OOo would be worth it? Do you agree with my hypothesis?

I’m trying to figure out if this is a project worth doing. I’d like to
hear your thoughts on this.

Cheers,

···


Daniel Carrera | No trees were harmed in the generation of this e-mail.
PhD student. | A significant number of electrons were, however, severely
Math Dept. UMD | inconvenienced.

do you mean something related to UNO ?
I’d love to see that, if my opinion matters :slight_smile:

···

il Tue, 10 Feb 2004 06:58:36 +0900, Daniel Carrera dcarrera@math.umd.edu ha scritto::

Hi guys,

I’ve been thinking about the idea of Ruby bindings for OpenOffice.org.

Check the latest issue of The Linux Journal. James Britt wrote an article
“Manipulating OOo Documents with Ruby”

···

Hi guys,

I’ve been thinking about the idea of Ruby bindings for OpenOffice.org. I
am thinking that:

  1. This might benefit OOo, by making OOo programming easier. Especially
    if the bindings are well designed. Hopefully, this would attract more
    programmers.

  2. If (1) happens, that would benefit Ruby. OOo is one of the most
    popular open source programs. It is widely used in Linux, Windows and
    there is a Mac OS X port in progress. If OOo comes with a copy of Ruby,
    then there would be millions of users with Ruby installed. Furthermore,
    OOo is growing at an impressive rate. Last year Munich got 14,000 copies.
    Later on China ordered a few millions. Last week an Indian copany ordered
    another 15,000.

So there might be a growing market for OOo-related applications, which
Ruby could capitalize on. This could spark interest in Ruby as well.

I would like to hear some opinions on this. Do you guys think that Ruby
bindings for OOo would be worth it? Do you agree with my hypothesis?

I’m trying to figure out if this is a project worth doing. I’d like to
hear your thoughts on this.

Cheers,

Daniel Carrera | No trees were harmed in the generation of this e-mail.
PhD student. | A significant number of electrons were, however, severely
Math Dept. UMD | inconvenienced.

I agree.
Doesn’t any project already exist for allowing such a thing?

Lio

Daniel Carrera wrote:

···

Hi guys,

I’ve been thinking about the idea of Ruby bindings for OpenOffice.org. I
am thinking that:

  1. This might benefit OOo, by making OOo programming easier. Especially
    if the bindings are well designed. Hopefully, this would attract more
    programmers.

  2. If (1) happens, that would benefit Ruby. OOo is one of the most
    popular open source programs. It is widely used in Linux, Windows and
    there is a Mac OS X port in progress. If OOo comes with a copy of Ruby,
    then there would be millions of users with Ruby installed. Furthermore,
    OOo is growing at an impressive rate. Last year Munich got 14,000 copies.
    Later on China ordered a few millions. Last week an Indian copany ordered
    another 15,000.

So there might be a growing market for OOo-related applications, which
Ruby could capitalize on. This could spark interest in Ruby as well.

I would like to hear some opinions on this. Do you guys think that Ruby
bindings for OOo would be worth it? Do you agree with my hypothesis?

I’m trying to figure out if this is a project worth doing. I’d like to
hear your thoughts on this.

Cheers,

In article 20040209215829.GA3876@math.umd.edu,

···

Daniel Carrera dcarrera@math.umd.edu wrote:

Hi guys,

I’ve been thinking about the idea of Ruby bindings for OpenOffice.org. I
am thinking that:

  1. This might benefit OOo, by making OOo programming easier. Especially
    if the bindings are well designed. Hopefully, this would attract more
    programmers.

  2. If (1) happens, that would benefit Ruby. OOo is one of the most
    popular open source programs. It is widely used in Linux, Windows and
    there is a Mac OS X port in progress. If OOo comes with a copy of Ruby,
    then there would be millions of users with Ruby installed. Furthermore,
    OOo is growing at an impressive rate. Last year Munich got 14,000 copies.
    Later on China ordered a few millions. Last week an Indian copany ordered
    another 15,000.

So there might be a growing market for OOo-related applications, which
Ruby could capitalize on. This could spark interest in Ruby as well.

I would like to hear some opinions on this. Do you guys think that Ruby
bindings for OOo would be worth it? Do you agree with my hypothesis?

I’m trying to figure out if this is a project worth doing. I’d like to
hear your thoughts on this.

Seems like a great idea. The only way you’re going to find out if it’s
worth doing is to build it. “If you build it, they will come” :wink:

Or, maybe your question is: “If I build it, will they come?”

Phil

Check the latest issue of The Linux Journal. James Britt
wrote an article
“Manipulating OOo Documents with Ruby”

Yup, also thanks to James for:

http://ooo4r.rubyforge.org/

Yours,

Tom

Yes, that is exactly what I’m talking about. UNO.

UNO bindings could be used to add filters and write GUI programs that
could run along-side OOo. Let’s say you think that OOo should have a
calendar, or a dictionary that uses the dict protocol to extract
definitions from the web. You could do that in Ruby and turn it into an
OOo add-on through the UNO bindings.

I think that’s cool.

But ultimately, I’m not just interested on whether it’s cool or not, but
also on whether this would bring developers to OOo and/or Ruby.

Cheers,

···

On Tue, Feb 10, 2004 at 07:55:00AM +0900, gabriele renzi wrote:

I’ve been thinking about the idea of Ruby bindings for OpenOffice.org.

do you mean something related to UNO ?
I’d love to see that, if my opinion matters :slight_smile:


Daniel Carrera | No trees were harmed in the generation of this e-mail.
PhD student. | A significant number of electrons were, however, severely
Math Dept. UMD | inconvenienced.

Yes, I know James. I’ve talked to him several times. In fact, if you
take a look at the website you just gave me, you will see my name on it.

I wrote a simple tool called OOoExtract which inspired James to do his
(much superior) work.

But this is not what I am talking about here. James’ work is for
manipulating SXW files. I am talking about using the OOo API (UNO) to
write plugins, filters and and even GUI applications based on OOo.

Cheers,

···

On Tue, Feb 10, 2004 at 08:43:40AM +0900, Tom Copeland wrote:

Check the latest issue of The Linux Journal. James Britt
wrote an article
“Manipulating OOo Documents with Ruby”

Yup, also thanks to James for:

http://ooo4r.rubyforge.org/


Daniel Carrera | No trees were harmed in the generation of this e-mail.
PhD student. | A significant number of electrons were, however, severely
Math Dept. UMD | inconvenienced.

Daniel Carrera wrote:

But ultimately, I’m not just interested on whether it’s cool or not, but
also on whether this would bring developers to OOo and/or Ruby.

Hi!
I actually use OOo and ruby, but it is as they belonged to two different
worlds. There is already a binding for python distributed with OOo. But
I don’t use it as I don’t like python enough to do that. If only OOo
could offer ruby scripting, I’d certainly use it! :slight_smile:

Lio

Daniel Carrera dcarrera@math.umd.edu writes:

But this is not what I am talking about here. James’ work is for
manipulating SXW files. I am talking about using the OOo API (UNO) to
write plugins, filters and and even GUI applications based on OOo.

Not only would this be useful, I’d even be willing to help! I spent
more time futzing around with the OOo java interface to write a doc to
sxw batch converter than I did with the Ruby scripts to convert sxw to
(my preferred form of) HTML, so the Ruby code was 80% of the project,
and Java the other 80% (grrr!!). I looked at the UNO stuff at the
time, but it gave me a serious headache; it just seemed unnecessarily
complicated to me, especially given the simple task at the time: load
…doc file, save as .sxw .

I would add batch applications to your list above, only because that’s
been my primary focus of OOo automation, unless that’s your definition
of ‘filter’.

d.k.

···


Daniel Kelley - San Jose, CA
For email, replace the first dot in the domain with an at.

But this is not what I am talking about here. James’ work is for
manipulating SXW files. I am talking about using the OOo API (UNO) to
write plugins, filters and and even GUI applications based on OOo.

Not only would this be useful, I’d even be willing to help!

Yay!

Needless to say, the project is complicated. And I’m not entirely sure
how to go about doing that. Why don’t you join the following mailing
lists:

dev@api.openoffice.org
dev@udk.openoffice.org

To subscribe: send an email to dev-subscribe@api.openoffice.org , etc.

I understand that writing UNO bindings is easier if the language in
question has a Java implementation, and Ruby does. But you pay the
penalty in speed.

Perhaps we should ask at these lists how one can do this. We can try to
do Java-based bindings first. This would help us see:

(a) How difficult C++ based bindings would be.
(b) The level of interest in UNO bindings.

So we can figure out if it’s worth going to extra mile for the C++
bindings.

I looked at the UNO stuff at the time, but it gave me a serious
headache; it just seemed unnecessarily complicated to me, especially
given the simple task at the time: load …doc file, save as .sxw .

I agree. Part of what I’d like to see in Ruby bindings is a much
simplified interface. The bindings could do a lot behind the scenes to
provide an easy to understand interface.

I would add batch applications to your list above, only because that’s
been my primary focus of OOo automation, unless that’s your definition
of ‘filter’.

What is a batch application? When I say “filter” I just mean the ability
to read a new kind of file format.

Cheers,

···

On Tue, Feb 10, 2004 at 11:35:04PM +0900, Daniel Kelley wrote:

Daniel Carrera | No trees were harmed in the generation of this e-mail.
PhD student. | A significant number of electrons were, however, severely
Math Dept. UMD | inconvenienced.

Daniel Carrera dcarrera@math.umd.edu wrote in message news:20040210192656.GA1738@math.umd.edu

···

On Tue, Feb 10, 2004 at 11:35:04PM +0900, Daniel Kelley wrote:

But this is not what I am talking about here. James’ work is for
manipulating SXW files. I am talking about using the OOo API (UNO) to
write plugins, filters and and even GUI applications based on OOo.

Not only would this be useful, I’d even be willing to help!

Yay!

Needless to say, the project is complicated. And I’m not entirely sure
how to go about doing that. Why don’t you join the following mailing
lists:

dev@api.openoffice.org
dev@udk.openoffice.org

To subscribe: send an email to dev-subscribe@api.openoffice.org , etc.

I understand that writing UNO bindings is easier if the language in
question has a Java implementation, and Ruby does. But you pay the
penalty in speed.

Perhaps we should ask at these lists how one can do this. We can try to
do Java-based bindings first. This would help us see:

(a) How difficult C++ based bindings would be.
(b) The level of interest in UNO bindings.

So we can figure out if it’s worth going to extra mile for the C++
bindings.

Why couldn’t you just swig their C++ libraries?
http://www.swig.org

Swig would probably do about 80% of the wrapping work for you.

Phil

Daniel Carrera dcarrera@math.umd.edu writes:

···

On Tue, Feb 10, 2004 at 11:35:04PM +0900, Daniel Kelley wrote:

What is a batch application? When I say “filter” I just mean the ability
to read a new kind of file format.

Essentially an application w/o a GUI (like the old days!). For example, my
command line doc-sxw converter.


Daniel Kelley - San Jose, CA
For email, replace the first dot in the domain with an at.

I would have no idea of how to do this.

If I go the other route at least I can ask for help from the OOo
developers.

Cheers,

···

On Wed, Feb 11, 2004 at 08:24:59AM +0900, Phil Tomson wrote:

So we can figure out if it’s worth going to extra mile for the C++
bindings.

Why couldn’t you just swig their C++ libraries?
http://www.swig.org

Swig would probably do about 80% of the wrapping work for you.


Daniel Carrera | No trees were harmed in the generation of this e-mail.
PhD student. | A significant number of electrons were, however, severely
Math Dept. UMD | inconvenienced.

As another possibility I read in some place that it’s possible to
comunicate with OpenOffice trhough tcp socket connection, probably
that will be the easy way and can be done in pure ruby !

Aparently OpenOffice has a server hearing in a tcp port waiting for
requests.

If you go the other route (writing the extension/embedding yourself), you
will make it much more difficult getting help from ruby-talk.
I bet this will also make it more difficult for an OOo developer to
understand.

Please use SWIG.

···

On Wed, 11 Feb 2004 08:32:03 +0900, Daniel Carrera wrote:

On Wed, Feb 11, 2004 at 08:24:59AM +0900, Phil Tomson wrote:

So we can figure out if it’s worth going to extra mile for the C++
bindings.

Why couldn’t you just swig their C++ libraries?
http://www.swig.org

Swig would probably do about 80% of the wrapping work for you.

I would have no idea of how to do this.

If I go the other route at least I can ask for help from the OOo
developers.


Simon Strandgaard

domingo@dad-it.com (Domingo Alvarez Duarte) writes:

As another possibility I read in some place that it’s possible to
comunicate with OpenOffice trhough tcp socket connection, probably
that will be the easy way and can be done in pure ruby !

I can guarantee that it’s not easy, although I would also be happy
to be proved wrong. A look at the OpenOffice.org python bindings
may help convince you.

Aparently OpenOffice has a server hearing in a tcp port waiting for
requests.

That it does.

···


Daniel Kelley - San Jose, CA
For email, replace the first dot in the domain with an at.