Sun hires JRuby developers.

O

Ola Bini

For those of you who haven't seen this yet:
Sun hires JRuby developers Charles O Nutter and Thomas Enebo with a
mandate to work fulltime on JRuby and also think about developer tools
for Ruby developers.

This is obviously great news both for JRuby and the Ruby language.

More info can be found in Tim Bray's Ongoing:
http://www.tbray.org/ongoing/When/200x/2006/09/07/JRuby-guys
and Charlies blog (where he has collected links to other places about this):
http://headius.blogspot.com/2006/09/jruby-steps-into-sun.html

--
Ola Bini (http://ola-bini.blogspot.com)
JvYAML, RbYAML, JRuby and Jatha contributor
System Developer, Karolinska Institutet (http://www.ki.se)
OLogix Consulting (http://www.ologix.com)

"Yields falsehood when quined" yields falsehood when quined.
 
F

Farrel Lifson

For those of you who haven't seen this yet:
Sun hires JRuby developers Charles O Nutter and Thomas Enebo with a
mandate to work fulltime on JRuby and also think about developer tools
for Ruby developers.

This is obviously great news both for JRuby and the Ruby language.

More info can be found in Tim Bray's Ongoing:
http://www.tbray.org/ongoing/When/200x/2006/09/07/JRuby-guys
and Charlies blog (where he has collected links to other places about this):
http://headius.blogspot.com/2006/09/jruby-steps-into-sun.html

--
Ola Bini (http://ola-bini.blogspot.com)
JvYAML, RbYAML, JRuby and Jatha contributor
System Developer, Karolinska Institutet (http://www.ki.se)
OLogix Consulting (http://www.ologix.com)

"Yields falsehood when quined" yields falsehood when quined.

I wonder if Sun plans to push Ruby on the JVM now that IronPython 1.0
has been released?
 
C

Charles O Nutter

I wonder if Sun plans to push Ruby on the JVM now that IronPython 1.0
has been released?

For what it's worth, Sun's HR crew isn't any faster than any other HR
crew...so this process has been in the making for weeks. It was just
an interesting coincidence that IPython had their 1.0 release this
week (although they've been right on the cusp for a month or so).

Tim Bray's FAQs are helpful, and I answered a couple more on my blog
just now...check those out too.
 
R

Richard Conroy

I wonder if Sun plans to push Ruby on the JVM now that IronPython 1.0
has been released?

I think they are just hedging their bets. Sun have always been about keeping
java interoperable. They like people doing language hybrid solutions
as long as one of the languages is Java. JNI was there from the start,
RMI was altered to run over IIOP, and the industrial strength XML support
means you can talk to any other system if its got some kind of schema.

Ruby is especially appealing to Java developers. Its a good syntax fit
as it is directly applicable for a lot of things that you might use Java for,
and addresses a lot of things that are a nuisance in Java.

A lot of the .NET stuff like C# just isn't different enough to warrant learning,
PHP/Perl can be a bit limited in applicability, and Python, while a good
equivalent to Ruby has a syntax style that is less of a fit. Python has been
around a while and so has JPython, and they have swiped some mindshare,
but Ruby is really appealing to a Java mindset, and Sun is betting on
Jave/Ruby being the next Big Language Hybrid for Java.

JRuby has some impressive ideas too. Its early days yet, but the language
penetration is pretty significant. Its not just Ruby code calling Java code, or
deeper stacks, or exception propogation, IIRC you can derive Ruby classes
from Java types (even interfaces) and possibly even do Ruby style aspect
oriented programming things like add behaviour & alter java types at
runtime ... interesting stuff indeed.

Still JRuby has a bit to go. They got some startup performance issues,
and you can't use it everywhere that you would use the regular Ruby
interpreter, hence the sponsoring.
 
J

James Edward Gray II

For those of you who haven't seen this yet:
Sun hires JRuby developers Charles O Nutter and Thomas Enebo with a
mandate to work fulltime on JRuby and also think about developer
tools for Ruby developers.

Congratulations Charles and Thomas!

This really feels like another milestone Ruby has passed. It has
finally attracted the interest of a big computer company.

Very exciting stuff.

James Edward Gray II
 
L

Logan Capaldo

Congratulations Charles and Thomas!

This really feels like another milestone Ruby has passed. It has
finally attracted the interest of a big computer company.

Very exciting stuff.
+1

James Edward Gray II
 
C

Charles O Nutter

And it's worth saying that everyone I've spoken with about Ruby,
JRuby, and dynamic languages in general seems to have the greatest
respect for the communities and applications that have sprung up
around them. In many cases, as with Tim Bray's series of blogs, it's a
pretty Java-agnostic attraction...Ruby the language is Ruby the
language, and they recognize that it's the language that's most
important.

Of course I'm the wide-eyed innocent new employee, but there really
seems to be a lot of excitement about the JRuby move and about dynamic
languages in general at Sun. I think it's going to be a very
interesting year...and if my impressions about this move are off the
mark, I'll do my damnedest to move the mark.
 
R

Rick DeNatale

And it's worth saying that everyone I've spoken with about Ruby,
JRuby, and dynamic languages in general seems to have the greatest
respect for the communities and applications that have sprung up
around them. In many cases, as with Tim Bray's series of blogs, it's a
pretty Java-agnostic attraction...Ruby the language is Ruby the
language, and they recognize that it's the language that's most
important.

Of course I'm the wide-eyed innocent new employee, but there really
seems to be a lot of excitement about the JRuby move and about dynamic
languages in general at Sun. I think it's going to be a very
interesting year...and if my impressions about this move are off the
mark, I'll do my damnedest to move the mark.

Well Charles, we're pulling for you. It's not the first time that Sun
has 'invested' in dynamic languages. They hired David Ungar and his
Self team back in 1991, but that seems to have been a side-show, The
Self page at Sun Research talks about the team in the past tense.
David still seems to be at Sun Research but hasn't been very active
lately.

Another case is Microsoft, their recent interest in dynamic languages
is not the first. They too hired talent years ago from the dynamic
language community, for example George Bosworth, who was the CTO of
Digitalk. George is no longer there, having left not long ago with the
sense that they weren't buying his 'wild ideas' of making COM more
dynamic.

Let's hope that the corporate environment really IS different now.

--
Rick DeNatale

My blog on Ruby
http://talklikeaduck.denhaven2.com/

IPMS/USA Region 12 Coordinator
http://ipmsr12.denhaven2.com/

Visit the Project Mercury Wiki Site
http://www.mercuryspacecraft.com/
 
C

Charles O Nutter

Let's hope that the corporate environment really IS different now.

I like to think that open source may be the missing part of the
equations in the examples you cited. With Ruby (and to a lesser extent
with JRuby) there's already an existing, vibrant community...many of
whom have expressed great interest in having a JVM-based option for
deploying Ruby applications. In those other cases, it could be argued
that while the ideas were solid they were too far ahead of their
time...solutions looking for a problem. Perhaps this time we really
have the critical mass to make something great happen. Can you imagine
what it would be like if in five years 90% of developers are writing
in languages like Ruby across *all* the major platforms? Do you know
how many therapists and tech schools we'll put out of business? It
boggles the mind.
 
R

Rich Morin

At said:
I like to think that open source may be the missing part
of the equations in the examples you cited. ...

I've been following Sun's activities for years. It's been
sad to see them hobble wonderful technology with egregious
licensing terms. Had they acted differently, NeWS might
have replaced X11 (or at least provided the incentive for
someone to replace it with something reasonable), the Java
libraries might have been Open Source from the start, etc.

Recently, however, Sun has begun to show strong signs that
they "get it" about licensing technology to encourage its
adoption across the industry. I don't know how this will
play out financially, but I wish them well in the effort!

-r
--
http://www.cfcl.com/rdm Rich Morin
http://www.cfcl.com/rdm/resume (e-mail address removed)
http://www.cfcl.com/rdm/weblog +1 650-873-7841

Technical editing and writing, programming, and web development
 
G

gwtmp01

I've been following Sun's activities for years. It's been
sad to see them hobble wonderful technology with egregious
licensing terms. Had they acted differently, NeWS might
have replaced X11 (or at least provided the incentive for
someone to replace it with something reasonable), the Java
libraries might have been Open Source from the start, etc.

The whole javascript/Ajax movement causes me to have deja vu
with respect to NeWS. Almost twenty years ago, NeWS was all
about crafting code and sending it to a client/browser for
execution in order to offer a rich-gui in a networked environment.

It is a wonder that the IT industry can be productive at all
when it spends most of its time re-inventing things.


Gary Wright
 
J

James Moore

-----Original Message-----
Of course I'm the wide-eyed innocent new employee, but there really
seems to be a lot of excitement about the JRuby move and about dynamic
languages in general at Sun.

So I have to ask - is JRuby a good thing for the Ruby community, as opposed
to the Java community? To me - admittedly, someone without a huge depth of
Ruby experience - it's not an obvious good idea.

The JVM is great for running client apps. On the server side it's less than
useful; it's just another layer on top of the operating system. Servers
have a well-understood interface, and putting something like .Net or the JVM
on them just gets in the way. Sure, it may be handy for some very strange
edge cases, but Ruby runs on all the environments that the mainstream cares
about - Unix variants. (OK, and you can run Ruby on Windows, but almost no
one will for production servers.)

I'm guessing that for embedded devices Ruby isn't going to be a player, but
maybe I'm wrong and JRuby on something like a phone would be a huge plus.

Adding a JVM layer means you can interface to Java libraries, sure, but how
important is that? Most of the time things provide interfaces in C, and
Ruby will accumulate ways of using those. Seems like a time-limited problem
here that would lock Ruby into a Java-centric world.

Running on the JVM will mean that anything coded in C won't run, no?
Libraries that need screaming performance for particular carefully chosen
optimized bits aren't going to work with the JVM, and it strikes me as
bizarre to code in Java for performance.

- James Moore
 
K

Ken Bloom

So I have to ask - is JRuby a good thing for the Ruby community, as opposed
to the Java community? To me - admittedly, someone without a huge depth of
Ruby experience - it's not an obvious good idea.

The JVM is great for running client apps. On the server side it's less than
useful; it's just another layer on top of the operating system. Servers
have a well-understood interface, and putting something like .Net or the JVM
on them just gets in the way. Sure, it may be handy for some very strange
edge cases, but Ruby runs on all the environments that the mainstream cares
about - Unix variants. (OK, and you can run Ruby on Windows, but almost no
one will for production servers.)

I'm guessing that for embedded devices Ruby isn't going to be a player, but
maybe I'm wrong and JRuby on something like a phone would be a huge plus.

Adding a JVM layer means you can interface to Java libraries, sure, but how
important is that? Most of the time things provide interfaces in C, and
Ruby will accumulate ways of using those. Seems like a time-limited problem
here that would lock Ruby into a Java-centric world.

Running on the JVM will mean that anything coded in C won't run, no?
Libraries that need screaming performance for particular carefully chosen
optimized bits aren't going to work with the JVM, and it strikes me as
bizarre to code in Java for performance.

These are old issues about Java performance. The Java VM has driven a lot
of research into faster VM's, and modern VM's use JIT compilation, which
frankly does a better job of ammortizing the cost of compilation over time
on a server (where the same VM runs the same code for a long time) than on
a client. Besides, even if this comparison is true, that's only when
comparing it to C or C++.

When comparing to Ruby, you have to realize that Ruby is interpreted, and
isn't even compiled to byte code (the interpreter lugs the program's parse
tree around) so Ruby can get a big speedup if it's compiled into Java
bytecode. I hope this is what they're doing, but maybe if they're not
there yet, then Sun's support can help them get there faster.

--Ken Bloom
 
R

Rich Morin

Adding a JVM layer means you can interface to Java libraries,
sure, but how important is that?

There are a large number of interesting (IMHO) frameworks that
have been written in Java. Here are two examples:

The Pentaho Business Intelligence Platform
http://www.pentaho.org/

The Protege Ontology Editor and Knowledge Acquisition System
http://protege.stanford.edu/

Both of these are written in Java, which I have no interest in
learning. The ability to interact with and/or extend these
frameworks from Ruby is very much on my wish list.

Most of the time things provide interfaces in C, and Ruby
will accumulate ways of using those.

Even discounting the work involved in setting it up, I doubt
that any C wrapper will provide a seamless connection between
Java and Ruby. Why not talk "directly" between these OO-based
languages?
Seems like a time-limited problem here that
would lock Ruby into a Java-centric world.

No more than, say, Parrot and Cardinal would lock Ruby into a
Perl or Python-centric world. Basically, the name of the game
is seamless connectivity. If JRuby allows me to work in Ruby,
while accessing libraries developed in other languages, more
power to it!

-r
--
http://www.cfcl.com/rdm Rich Morin
http://www.cfcl.com/rdm/resume (e-mail address removed)
http://www.cfcl.com/rdm/weblog +1 650-873-7841

Technical editing and writing, programming, and web development
 
R

Robert Klemme

I fully agree to what Ken and Rich have said. Some more comments below.

James said:
So I have to ask - is JRuby a good thing for the Ruby community, as opposed
to the Java community? To me - admittedly, someone without a huge depth of
Ruby experience - it's not an obvious good idea.

The JVM is great for running client apps. On the server side it's less than
useful; it's just another layer on top of the operating system. Servers
have a well-understood interface, and putting something like .Net or the JVM
on them just gets in the way.

If the requirement is that a piece of software must run on a variety of
different platforms a VM definitively helps in getting there.
Sure, it may be handy for some very strange
edge cases, but Ruby runs on all the environments that the mainstream cares
about - Unix variants. (OK, and you can run Ruby on Windows, but almost no
one will for production servers.)

I wouldn't be so sure of that. I don't have current statistics (I
believe they are out there somewhere on the web) but there are certainly
Windows hosted production servers out there.
Running on the JVM will mean that anything coded in C won't run, no?

There is JNI in case you need to interface with C.
Libraries that need screaming performance for particular carefully chosen
optimized bits aren't going to work with the JVM, and it strikes me as
bizarre to code in Java for performance.

While that may be the case Java's performance is definitively
competitive. Also, success of a software project is more often than not
determined not by the ultimate speed that a platform provides but by the
time it takes to implement it.

Kind regards

robert
 
D

David Vallner

James said:
So I have to ask - is JRuby a good thing for the Ruby community, as opposed
to the Java community? To me - admittedly, someone without a huge depth of
Ruby experience - it's not an obvious good idea.

Very few things are. If it gets support and ends up being Done Right -
e.g. with good bidirectional integration. I'm thinking along the lines
of Nemerle in .NET - one of the few non-MS .NET languages that a)
actually adds new features instead of just rephrasing C#, and b) very
nicely transparently both consuming the framework, and creating
interoperating assemblies.

The best I can say is that I expect that it will be a good thing for
someone. Since Java pays my bills, I wouldn't complain if JRuby brought
benefits on that side of the fence. And then again, you get things like
very decent support for newer W3C standards in Java libs soon, and being
able to at least bite your teeth on them earlier -and- using a language
you prefer is good for Rubyists too.

(PS: For those looking for a new language to play around with, and
partial to ML-likes, or those that want to learn some functional
programming from the lighter side of things, I can strongly recommend
Nemerle. The optional indentation-based syntax I find easier to
understand than Haskell's, the OO is more familiar than OCaml's take on
that, AND you get the whole of .NET thrown in for good measure for
instant "real-world" programming possibilities. No, I'm not a member of
the project ;P)
The JVM is great for running client apps. On the server side it's less than
useful; it's just another layer on top of the operating system. Servers
have a well-understood interface, and putting something like .Net or the JVM
on them just gets in the way. Sure, it may be handy for some very strange
edge cases, but Ruby runs on all the environments that the mainstream cares
about - Unix variants. (OK, and you can run Ruby on Windows, but almost no
one will for production servers.)

You also obviously don't have great experience with with Java either.
J2EE - mostly server-side computing is the single most successful
application of the language bar none.

Desktop Java started out on the wrong foot and only barely caught on
lately. The GUI toolkits are to blame for a lot of it. First came AWT,
which was a pretty sub-par "smallest common denominator" GUI toolkit; to
add insult to injury, AWT saw use with the earlier VMs which gave birth
to the low speed myth - that one was quite justified then. Then came
Swing. I have a strong love / hate relationship to Swing - I learned GUI
coding on it, the Bean-structure API is still by far my favourite
approach, and it has a great structure to code UIs in in source code as
opposed to using a visual window editor. (I never quite got the hang of
those, and am very willing to enter into long-winded flamewars with
Visual Studio monkeys on how a good handcodable GUI is useful and how my
preference is not a flaw.) However, Swing looked horribly for very long
before Sun realised users want integration with their existing setup -
AFAIK, only the upcoming Java 1.6 will actually use native APIs to draw
controls to get a native look. 1.5s Swing looks passable until you
heavens forbid change font resolution in Windows to Large fonts, when
you get pixelated hell. And the fact subpixel font antialiasing isn't
get annoying too.

Another problem with that is that Sun should have done one thing - added
native binary emit features to javac. The part of the tutorial that says
you have to call "java some.silly.class.Name" to run an app is just
laughable, and just emitting a simple binary that would use JNI to start
a VM in the process and start the program wouldn't hurt. This is where
NET frankly obliterates it, none of its idioms look out of place.
I'm guessing that for embedded devices Ruby isn't going to be a player, but
maybe I'm wrong and JRuby on something like a phone would be a huge plus.

I think someone ported Ruby to a Nokia tablet PC. For quick glue jobs
and batches, it might be workable.
Adding a JVM layer means you can interface to Java libraries, sure, but how
important is that? Most of the time things provide interfaces in C, and
Ruby will accumulate ways of using those. Seems like a time-limited problem
here that would lock Ruby into a Java-centric world.

The Java-centric world is HUGE. You also get instant binary
compatibility on all platforms and your only native dependency becomes
the JVM, which is fairly well supported on all manners of stuff. Sure,
Ruby works most of the time if you get all your dependency maintainers
to provide Windows DLLs and your deployment boxes have gcc and devel
libs to compile extensions.

Except not all native Ruby extensions have Windows ports available, and
not all deployment boxes have GCC, and if deploying on a Debian box,
odds are you won't have devel libs for everything installed, and then
you're screwed. Most Java deployment is copying a JAR / WAR / EAR around.
Running on the JVM will mean that anything coded in C won't run, no?
Libraries that need screaming performance for particular carefully chosen
optimized bits aren't going to work with the JVM, and it strikes me as
bizarre to code in Java for performance.

As I said. Everything and its mum has a Java version these days, it's
improbable you couldn't find an equivalent. Or ten. For screaming
performance, there's always JNI to make a fast implementation - the
Subversion bindings for Java do this for example.

David Vallner
 
I

Ilan Berci

David said:
The best I can say is that I expect that it will be a good thing for
someone. Since Java pays my bills, I wouldn't complain if JRuby brought
benefits on that side of the fence. And then again, you get things like
very decent support for newer W3C standards in Java libs soon, and being
able to at least bite your teeth on them earlier -and- using a language
you prefer is good for Rubyists too.

David, that whole response was simply fantastic and hit the nail on the
head as to why Java's has a strong hold on the server. If I could add
anything, it would be to say that I think there are a great number of us
who are dissatisfied with the language itself (especially after
tinkering around with Ruby) but are so accustomed to the wonderfull
tools (jboss, apache, objectweb, hibernate, spring, struts, etc...) that
we just stick it out.

Secondly, it's always an uphill battle trying to win over management due
to most being set in their ways and not seeing the value of taking a
calculated risk in order to drastically reduce
maintenance/delivery/support/development times/cost. They tend to wait
until they see others adopting it and will only then stroll on over to
discuss it.

Once Sun is supporting Ruby on the JVM (which I hope/believe is their
goal), it will be far easier to adopt it into existing frameworks and
the sell to management will be much easier.

One of the things that I am wondering about now is the potential
conflict between Yarv/rite and JRuby's JVM implementation. My guess is
that yarv is capitalizing on Ruby's strengths while the jvm model is
focussing on getting it to work in the Java way of doing things. (On
JRuby's homepage, the limitations of the adoption of Ruby onto the JVM
are noted) Anyways, I hope that this will be a non issue and won't deter
Yarv's (or JRuby's) success in any way but would love to hear more about
it if anyone has something to add.

ilan
 
P

Paul Battley

Another problem with that is that Sun should have done one thing - added
native binary emit features to javac. The part of the tutorial that says
you have to call "java some.silly.class.Name" to run an app is just
laughable, and just emitting a simple binary that would use JNI to start
a VM in the process and start the program wouldn't hurt. This is where
.NET frankly obliterates it, none of its idioms look out of place.

On a related topic, I'd be content if the java executable could
actually recognise a jar file instead of requiring me to add the
'-jar' switch every time. Perhaps there's some very important reason
why it has to be this way - and I'm sure that someone will tell me if
that's so - but it just seems lazy and weak to me.

Paul.
 
S

Stephen Kellett

David Vallner said:
from the lighter side of things, I can strongly recommend Nemerle. The

Looks quite interesting. Definitely a huge improvement over Java and/or
C# by the brief look at the project pages.

Stephen
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,756
Messages
2,569,535
Members
45,008
Latest member
obedient dusk

Latest Threads

Top