Ruby is exploding onto the scene as Java did at the end of 1990s

Z

zoat

Java is no longer the answer to every software development problem.
Ruby is exploding onto the scene, just as Java did at the end of 1990s.
Developers are driving the revolution, and the amazing productivity of
Ruby on Rails is fueling it. So who better to talk about Ruby and Rails
than the strongest proponent of Ruby, Bruce Tate.
http://www.puneruby.com/blog/?p=62
 
H

Huw Collingbourne

krf said:
Yes. Do you remember the hype? Statements like "In a few years, 95
percent of all programs will be written in Java"

I remember the hype very well. I was covering the 'Java phenomenon' at
Comdex in Las Vegas that year. We would, it seemed, all be using Java 'thin
clients' instead of PCs and Windows would be a thing of the past within a
year or two. I've seen some hype in my time but nothing to compare with
Java. The plain truth is that while Java has been *quite* successful, it has
yet to come anywhere close to its own hype.

The 'hype' around Ruby, at present, is nowhere near to that. This may be due
to the fact that Ruby does not have a big company (Sun) pushing it. This
quickly brought into the Java fold many other big companies (e.g. Sybase,
Corel, IBM/Lotus, Borland - even, yes, Microsoft).

Personally I think it's much healthier for Ruby to progress at its own
pace - with developers moving things forward rather than PR departments.

best wishes
Huw Collingbourne

http://www.sapphiresteel.com
Ruby Programming In Visual Studio 2005
 
C

Chad Perrin

I remember the hype very well. I was covering the 'Java phenomenon' at
Comdex in Las Vegas that year. We would, it seemed, all be using Java 'thin
clients' instead of PCs and Windows would be a thing of the past within a
year or two. I've seen some hype in my time but nothing to compare with
Java. The plain truth is that while Java has been *quite* successful, it has
yet to come anywhere close to its own hype.

It may well be that the absurd level of hype was intentionally well out
of proportion with any realistic expectation of the future of the
technology: when there is hype (which is what all marketing aims to be),
reality will fall short. That's an almost indisputable truism. The
more hype you can create, however, the more that will get done in that
direction (at least in the short term). If you claim that Java will
replace even operating systems and hardware to a nontrivial degree,
you're far more likely to end up with Java replacing other programming
languages in a lot of cases where it really shouldn't, again to a
nontrivial degree. Thus, by creating absurd, effectively impossible
levels of hype, Sun and friends managed to ensure that Java achieved
absurd, highly improbable levels of success, where "success" is defined
as market share and mindshare.

Thus, for several years, the number of Java jobs, books, and classes
outnumbered the number of jobs, books, and classes for all other
languages in at least most mainstream contexts.
 
M

M. Edward (Ed) Borasky

Huw said:
The 'hype' around Ruby, at present, is nowhere near to that. This may be due
to the fact that Ruby does not have a big company (Sun) pushing it. This
quickly brought into the Java fold many other big companies (e.g. Sybase,
Corel, IBM/Lotus, Borland - even, yes, Microsoft).

Personally I think it's much healthier for Ruby to progress at its own
pace - with developers moving things forward rather than PR departments.
The Java model was a closed-source, proprietary, for-profit model. The
Ruby model is open-source, free as in freedom, and supposedly
profit-agnostic. As was Linux.

Sooner or later (I think probably no later than 2007) someone will do
for Ruby and Rails what Red Hat and others did for Linux -- find a
for-profit way to exploit the power of the language and its "killer app"
Rails and its community.

Curiously enough, Java and Solaris appear to be moving the other way.
Solaris is sort-of open source and Java will also sort-of become open
source, though the details aren't clear yet. Firefox appears to be
following the Linux model, and it wouldn't surprise me in the least if
other major open source projects -- Apache, for one -- followed suit.

My point is that marketing, PR departments, hype, sales skills, the
profit motive and engineering economics are pretty much universal,
except for a few holdout "Communist" nations who "vow their destruction".
 
N

N Okia

I'm not sure I'd call what Ruby is doing an 'explosion' just yet. Lest
we forget, Ruby has been on the scene for a decade now, and while it's
growth in recent years has been quite extraordinary due to the killer
app Rails, there are still a number of stumbling blocks for more
widespread acceptance of Ruby as a platform for application
development.

Personally I love Ruby, and I want to see it continue to flourish.
However, I hate for the hype machine to get geared up and attract a
lot of people who later leave because Ruby wasn't quite what it was
advertised to be.
 
F

Francis Cianfrocca

Curiously enough, Java and Solaris appear to be moving the other way.
Solaris is sort-of open source and Java will also sort-of become open
source, though the details aren't clear yet. Firefox appears to be
following the Linux model, and it wouldn't surprise me in the least if
other major open source projects -- Apache, for one -- followed suit.


Part of what is happening to Java and Solaris is that Sun is flailing
as a company. There isn't really a great deal of rationale for Sun to
remain independent, but they're not an attractive acquisition target
because their book of business is primarily replacement, services and
maintenance, not growth. They are trying to find ways to stay
relevant, and perhaps getting a bigger footprint in the software world
will help them. IBM, which faces business problems of a similar nature
but very different in degree, has been helped a great deal by their
(admittedly self-serving) advocacy of selected open-source
initiatives. (Specifically those where they don't have a competitive
commercial offering.)

Ruby currently faces a totally different market dynamic (and set of
opportunities) because its community is perceived as having a
significant anti-business streak to it, as Linux did in its early
days.

SUNW and IBM shareholders: let the flames begin!
 
P

Patrick Hurley

Ruby currently faces a totally different market dynamic (and set of
opportunities) because its community is perceived as having a
significant anti-business streak to it, as Linux did in its early
days.

Really?, I have never picked up an anti-business vibe from the Ruby
community. I get the impression that most people here are professional
programmers who love Ruby and either use it in business or would love
to do so. The Ruby license (unlike the GPL) is very business friendly.

pth
 
F

Francis Cianfrocca

a compelling business reason to switch from language X, it will start to get
that backing, that PR, and that push into the commercial and enterprise
worlds.<<<

Do you think Ruby offers that compelling business reason today?
 
F

Francis Cianfrocca

Without question. It needs to gain a little maturity, but that will only
come with larger-scale use and onging research and development. I think now
is the time.


And what do you think that compelling business reason is? In Java's
case, Sun used the sudden large-scale acceptance of Java as a
web-development system as a lever to drive an unbelievable amount of
hardware sales, until the bottom fell out in late 2000. (Please note
very carefully that "acceptance of Java for web-development" is far
from saying that the acceptance was justified or that Java is an
appropriate technology for web development. We're talking about
business drivers.)

Microsoft wants to maintain its monopoly platform. IBM is somewhat
confused: they think they want to sell more enterprise services but
that business is stagnant and they are rapidly devolving into a
pre-Gerstner style hodgepodge of product businesses that compete
violently against each other as well as with everyone else. To Oracle,
sales is a blood sport and they want to completely own every bit of
the enterprise computing stack in every company above a certain size.
Sun knows what business they are in, and they also know they need to
find a new business. Google is laser-focused on search, even though to
outside appearances they look like they just want to take over the
world.

How does Ruby help any of these players (or others) achieve their
business goals? (I'm not questioning that there may be a good answer
to this question, nor am I trying to start a flamewar. I do think it
could be helpful if we come up with the answers rather than waiting
for them to come from someone else.)
 
L

Leslie Viljoen

Really?, I have never picked up an anti-business vibe from the Ruby
community. I get the impression that most people here are professional
programmers who love Ruby and either use it in business or would love
to do so. The Ruby license (unlike the GPL) is very business friendly.

I would certainly love to program in Ruby professionally, and so would
the few programmers I know personally who know Ruby. Unfortunately
that amounts to about 5. I have also yet to see a single book about
Ruby in a South African book store.

I think the more hype and marketing Ruby get the better - it changes
it from an unknown quantity into something that deserves
investigation. People are SO slow to explore new possibilities, I
really think that if Visual Studio didn't suddenly come with C# as the
primary .NET platform language, and with all the associated Microsoft
hype, few would have bothered. (Look at 'D' for example - great
language, but has anyone heard of it?)

I don't think Ruby has to go one direction or another, or change to
become more attractive, it's already the most programming fun I've
seen in years - it just needs more publicity so more people get to
know it and take it seriously. Teach it in schools!

My own effort is to prototype a lot of new development in Ruby and
showcase it before rewriting it into the mandated languages. The other
developers are noticing how simple and elegant the Ruby solution
always is! Now if the next Visual Studio could include Ruby...

Les
 
P

pixelnate

Francis said:
Microsoft wants to maintain its monopoly platform. IBM is somewhat
confused: they think they want to sell more enterprise services but
that business is stagnant and they are rapidly devolving into a
pre-Gerstner style hodgepodge of product businesses that compete
violently against each other as well as with everyone else. To Oracle,
sales is a blood sport and they want to completely own every bit of
the enterprise computing stack in every company above a certain size.
Sun knows what business they are in, and they also know they need to
find a new business. Google is laser-focused on search, even though to
outside appearances they look like they just want to take over the
world.

How does Ruby help any of these players (or others) achieve their
business goals? (I'm not questioning that there may be a good answer
to this question, nor am I trying to start a flamewar. I do think it
could be helpful if we come up with the answers rather than waiting
for them to come from someone else.)

Andrew Carnegie once said, " The men who have succeeded are men who have
chosen one line and stuck to it." Look at the success that Google is
experiencing as a result of their "laser focus."

~Nate
 
C

Chad Perrin

I think the more hype and marketing Ruby get the better - it changes
it from an unknown quantity into something that deserves
investigation. People are SO slow to explore new possibilities, I
really think that if Visual Studio didn't suddenly come with C# as the
primary .NET platform language, and with all the associated Microsoft
hype, few would have bothered. (Look at 'D' for example - great
language, but has anyone heard of it?)

I've heard of it, and it sounds nifty, but I'm unlikely to ever pick it
up. It's not simply obscurity that has hurt D: it's also the simple
fact that the creators of D want to maintain strict control over it.
When you don't have the marketing dollars and influence of Sun or
Microsoft, you simply cannot expect your "new" programming language to
take over the world (or even a nontrivial percentage of it) without
making it freely available to anyone who happens by. It's that simple.

The reason D is a marketing failure, for the most part, is simply that
the business model behind it sucks, and the language is inextricably
tied to the business model. Ruby's business model kinda sucks right
now, too, in any sense that it can be said to have a business model
separate from the publishing business. Luckily, Ruby is separate from
its business model because it's open and free, which allows people to do
things like discuss its internals in a more meaningful fashion, create
hype-drivers like Rails, and generally pick up and *fully use* the
language without having to jump through any hoops.

I'm not even sure that Microsoft or Sun could make a language weighed
down by a really bad business model actually work. After all, while the
Java infrastructure developed by Sun has until now always been closed
source, it was still freely available to anyone that was willing to take
it as a black-box whole. In Microsoft's case, the company has never
managed to make a closed source, proprietary, payment-required fully
functional implementation of a language work without embedding it in a
bunch of popular, industry standard applications as a scripting
language. In fact, Microsoft ultimately ended up having to open the
specs for the .NET framework so that open source workalikes could be
developed to help bolster potentially flagging future sales (or, at
least, that's my take on it).
 
E

Elliot Temple

And what do you think that compelling business reason is?

Google is laser-focused on search, even though to
outside appearances they look like they just want to take over the
world.

How does Ruby help any of these players (or others) achieve their
business goals? (I'm not questioning that there may be a good answer
to this question, nor am I trying to start a flamewar. I do think it
could be helpful if we come up with the answers rather than waiting
for them to come from someone else.)

Google thinks Python is useful. Ruby is similar to Python, but
arguably better. Whatever reason Google uses Python is an answer to
your question above.

-- Elliot Temple
http://www.curi.us/blog/
 
F

Francis Cianfrocca

I think there's a short answer that would please almost everyone: Ruby makes
development cheaper, more fun, and more compelling than it has been since
the late 90s.


As interesting as your whole argument sounds, it's light on specific
business drivers. Enterprise IT is in the middle of a secular
transformation that will fundamentally change the playing field for
traditional vendors. You've correctly perceived that an explosion in
development productivity is under way. At the moment it's being spent
in an orgy of wheel-reinventing that Java (through the miracle of
well-focused corporate sponsorship) managed to largely avoid. But
along with the miracle of corporate sponsorship came the horror of...
Java itself, and there is an argument to be made that it couldn't have
turned out any other way.

The right model for Ruby advocacy may not be Java but rather Python
(or Linux). If so, then success will come from organic growth and
slow, steady success, largely in projects far from the enterprise
mainstream (which these days is all bogged down thinking about
governance models for SOA- talk about expending cycles that don't
deliver business value!)

The payoff from the productivity explosion will come to enterprise
environments in time. One thing I'm confident about, however, is that
it won't necessarily accrue to the benefit of traditional technology
vendors. If I'm right, then trying to find a big corporate backer for
Ruby among today's big players may be counterproductive as well as
hard to do.
 
C

Chad Perrin

Folks seem to so quickly forget that before Java came on the scene, most web
development was based on CGI, usually using Perl. The reason Java managed to
almost completely take over that space in a very short time is simple: it
was far, far more consumable than your average large-scale mid-90s
Perl-based web application. I had to maintain a few of those applications,
and man was it a boon to web development and Java (and others like PHP) came
along. Suddenly building web applications wasn't an exercise in pain (or at
least, not as much pain) and the explosion of applications going into 1999
and 2000 demonstrates that others felt the same way.

I disagree pretty strongly with that characterization. Java didn't
really provide much of anything in terms of benefits for web development
over Perl/CGI. Perl/CGI is far more accessible to beginners, both as a
programming toolset and in terms of what's available at common shared
hosting providers; Java applets suck; Perl/CGI is more portable (despite
the Java portability marketing); early server-side Java was a bit like a
spork in the eye in terms of performance and ease of deployment.

The real driver of Java success as a Web programming language was simply
Sun marketing. Paul Graham has suggested that the first step to
choosing the right tool for the job is usually to stand as far back from
the industry practices as possible, far enough back so that the only
thing you see is the big flashing neon sign for whatever toolset gets
the most hype, and discard that: in the case of web development, that
was Java for a long time. The fact Java had that big flashing neon
sign, however, suckered a heck of a lot of people into thinking it's the
only language worth using for web development. *That* is the real
reason Java gained as much traction in the web development sphere as it
did.

I, for one, have never found Perl/CGI development to be painful at all.
Looking at Java web programming code that has about a 30:1 weight ratio
as compared with Perl/CGI code, however, does tend to make the brain
smart a bit.

I think the business motivation for these big players to buy into Ruby is
simple: backing Ruby, funding Ruby projects, and building Ruby domain
expertise will help further the language that is (in my opinion) most likely
to increase demand for the software, hardware, and services that come along
with a really smashing development boom. If any one of those companies could
claim expertise in Ruby, support for running Ruby in concert with their
software and hardware solutions, and services for helping advance Ruby,
build Ruby applications, and support Ruby development work...they'd be
betting on a pretty solid horse.

I don't know that Ruby is the "most likely", but it certainly seems to
be in the top five, and any language in that short list is pretty nearly
equivalent to the others for these purposes at this point in time. Luck
will play a large part in determining what languages end up getting
adopted as the "next big thing", but so too does stuff like a critical
mass of interested developers, books on the shelves of bookstores, and
good business models behind the languages (or, at least, divorcement of
the language's potential success from any bad business models).

Beyond that, assuming this whole Ruby thing pans out, there's the spoils of
early adoption to be reaped. In 3 years, if Ruby is truly the big ticket
that Java has become, and if (for example) Sun can claim they've been a Ruby
backer all that time, people are going to be much more likely to trust that
Sun software, Sun services, and Sun hardware are the most Ruby-friendly on
the market. Google has captured mindshare these days because of that exact
situation: they figured shit out first, and now everyone else is playing
catch-up. All the other companies you listed are suffering from a serious
"boring" complex, afraid to bank on anything but their tried-and-true
stand-bys. If one of them were to break ranks and bet on Ruby...things would
get seriously interesting.

They might get that way, anyway. I see a lot of very successful (so
far) startups leveraging Ruby to good effect, both technically and in
terms of business concerns. We may well see a Java-equivalent marketing
bonanza arising semi-organically from a seething mass of small, "hip",
dynamic business efforts rather than a single, monolithic, 900 pound
gorilla corporate entity. If I had my druthers, that's how it would
happen. I'd like to see a few 900 pound gorillas forced onto some
pretty strict diets.
 
C

Chad Perrin

As interesting as your whole argument sounds, it's light on specific
business drivers. Enterprise IT is in the middle of a secular
transformation that will fundamentally change the playing field for
traditional vendors. You've correctly perceived that an explosion in
development productivity is under way. At the moment it's being spent
in an orgy of wheel-reinventing that Java (through the miracle of
well-focused corporate sponsorship) managed to largely avoid. But
along with the miracle of corporate sponsorship came the horror of...
Java itself, and there is an argument to be made that it couldn't have
turned out any other way.

I'm inclined to agree, re: Java.

The right model for Ruby advocacy may not be Java but rather Python
(or Linux). If so, then success will come from organic growth and
slow, steady success, largely in projects far from the enterprise
mainstream (which these days is all bogged down thinking about
governance models for SOA- talk about expending cycles that don't
deliver business value!)

I'm inclined to agree here, as well -- most thoroughly. I'd rather see
that sort of organic growth, in part because it would likely ensure that
the potential for disillusionment when the realities of the language are
separated from the marketing is minimized. I think that Perl could be
added to the list of examples of the "right" model (it has had strong
successes, after all, and is still used widely and more so every year),
and that Logo should likely be listed amongst the examples of "wrong"
ways to do it (it's a victim of its own success as an "educational"
language: everyone thinks of it as a toy for children, while at least
one implementation of it is an easier-to-learn, truly powerful Lisp
dialect, and hype is what killed it).
 
F

Francis Cianfrocca

Charles, I'm going to let you have the last word but before I do, I'd
just like to ask if you've ever stopped to think what is the common
thread with technologies that have major-vendor support? In general,
they are heavy, difficult, full of committee-driven standards, and very
costly. In other words, no one could love them but a vendor.

Now think about the common thread with technologies that started off
developed by open communities, like Linux (and Ruby). Well, not all of
them are full of sweetness, light, and intelligent defacto standards.
But they all do seem to generate this big question, "what's the business
model?" The few companies that have come up with a coherent answer to
this question (RedHat, JBoss) are, I think, exceptions that prove the
rule.

And your point (expressed repeatedly and forcefully) that Ruby is a more
productive development technology, is precisely why no major technology
vendor is interested. Ruby doesn't create an opportunity to lock
customers into heavyweight commitments in order to force-feed them
terrifically expensive support and services.

So all your protestations notwithstanding, I'm not holding my breath
waiting for a major technology vendor to endorse Ruby. Its heavyweight
backing will have to come some other way.

I think Google can be helpful for the same reason they back Python: it's
one of the things they use internally and they want the community to
stay healthy. But if Python is the model, then Google's support will be
tepid at best. How they build their technology is not where their
business edge comes from, as much as we technologists want to believe it
is.

Microsoft's support will be a double-edged sword. Microsoft's goal is to
enforce their platform lock-in, so they want to make sure they get a
chance to co-opt any hot technology before someone else does.
 
J

John Lam

Jumping in *way* late on this thread:

Regarding Google: I spent some time talking to Alex Martelli of Google
at OSCON and asked him about Ruby at Google. His bottom line was that
Python does the job, it does it rather well and they have no interest
in adding a fourth language to their three--language codebase (Java,
C++, Python). However, I've heard rumors that the Google satellite
office in Seattle has some Ruby stuff happening, largely due to the
efforts of Steve Yegge.

Regarding Microsoft: It's true that MSFT wants to make their developer
platform better than the competition (Java/Sun). It's also true that
there are some balancing forces in the .NET world with Mono - if all
of your code is C#, Mono makes it less painful to switch *away* from
Windows. Remember that Java's WORA also made it easier for folks to
switch away from Sun hardware / OS.

The bottom line is that *dynamic languages* are a key strategic area
for Microsoft's developer platform. They placed their initial bet on
Python and that's working out rather well as IronPython is rapidly
approaching 1.0 (they're in RC1 right now). They're also placing
another bet by returning Visual Basic to its more dynamic roots. I
think it would be a great idea if they made a strong bet on Ruby.

So if Microsoft or Sun made a strong bet on Ruby, the other would
invariably be forced to counter it. And the total amount of money is
relatively small - IronPython was created for probably less than $5MM.
I doubt it would cost that much for Ruby on top of the CLR, especially
since a lot of the groundwork was already done by the IronPython
project.

-John
http://www.iunknown.com
 
F

Francis Cianfrocca

John said:
Regarding Google: I spent some time talking to Alex Martelli of Google
at OSCON and asked him about Ruby at Google. His bottom line was that
Python does the job, it does it rather well and they have no interest
in adding a fourth language to their three--language codebase (Java,
C++, Python). However, I've heard rumors that the Google satellite
office in Seattle has some Ruby stuff happening, largely due to the
efforts of Steve Yegge.
The bottom line is that *dynamic languages* are a key strategic area
for Microsoft's developer platform. They placed their initial bet on
Python and that's working out rather well as IronPython is rapidly


No big surprise about GOOG and MSFT. If I had to guess where Ruby will
make a mark (apart from Rails' stable niche in low-end CRUD websites),
it would be in enterprise integration projects. I think a lot of people
who are trying to do that stuff in Java now will be pleasantly surprised
by Ruby.

That makes Oracle the dark-horse candidate for Ruby's champion. And
*maybe* IBM's Tivoli business unit.
 

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

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,020
Latest member
GenesisGai

Latest Threads

Top