Regarding IronRuby... How true it sounds from this blog

Hi,

I was just referring a blog from Charles Nutter about his thinking on
IronRuby and future implementations for Rails.

Here’s the link…

Just wondering, how true it sounds… I do not agree on many points.
Looking forward to read more comments on this.

Thanks

2008/4/28 Rahil K. [email protected]:

Headius: Promise and Peril for Alternative Ruby Impls

Just wondering, how true it sounds… I do not agree on many points.
Looking forward to read more comments on this.

It seems to be a rather good overview of the status to me. I mostly
agree, except for the accusation that “Microsoft would never back an
OSS web framework like Rails in preference to its own”.

Sanghyeon S.:

It seems to be a rather good overview of the status to me. I mostly
agree, except for the accusation that “Microsoft would never back an
OSS web framework like Rails in preference to its own”.

He also gets a number of important technical details wrong about
IronRuby, I’ll respond later today.

Thanks,
-John

On Sun, 27 Apr 2008 23:31:21 -0600, Sanghyeon S. [email protected]
wrote:

Just wondering, how true it sounds… I do not agree on many points.
Looking forward to read more comments on this.

It seems to be a rather good overview of the status to me. I mostly
agree, except for the accusation that “Microsoft would never back an
OSS web framework like Rails in preference to its own”.

Hmmm… I think that’s a pretty fair statement from Charlie. If I’m
understanding his point correctly, Microsoft will never turn away from
ASP.NET in favor or Rails, and instead will continue to push ASP.NET in
the various directions necessary to keep up with the trends (e.g.
ASP.NET
MVC Framework.) They’ll certainly put the money into providing support
for Rails, whether that be through IronRuby, or directly through MRI via
the IIS7 FastCGI layer. But it will never become the [email protected].
Nor
should it. ASP.NET is a kick a$$ web application framework. And
regardless of the popularity of Rails in the OSS communities of the
world,
it will be a VERY long time – if ever – before the installed Rails
developer base surpasses the installed ASP.NET developer base.

Plus, the installed ASP.NET developer base is actually willing to spend
money on development tools and related products, something the installed
Rails-base is only partially willing to do (e.g. TextMate). And, in the
end, it’s the products that find ways to generate revenue that continue
to
both survive and thrive. That’s not to suggest Rails isn’t going to
survive and/or thrive. The free-as-in-speech Rails project is funded by
the profit making 37 Signals and its various not-free-as-in-gasoline
products in the same way the free-as-in-beer .NET/ASP.NET/etc. projects
are funded by the profit making Microsoft and its various
not-free-as-in-gasoline products. And when you throw the
free-as-in-speech IronPython/IronRuby/DLR/ASP.NET MVC/etc. projects into
the mix, it’s tough to criticize MSFT’s intentions and contributions to
the OSS ecosystem.

Of course the Mono Project – which in and of itself provides not only
the
web framework support that Rails represents, but the entire language and
platform that MRI represents (and then some!) – represents a MASSIVE
OSS community that the Rails community pales in comparison to. So it’s
tough to take on any type of stance that suggests that .NET/ASP.NET and
related frameworks are the wrong overall direction for us developer
types
to be placing focus on, regardless of our preference towards OSS and
proprietary platforms.

That said, I most definitely agree with Charlie’s thoughts regarding the
overall community collaboration and contributions as it relates to the
IronRuby project. But I’m less inclined to put the blame entirely on
MSFT’s shoulders. The door has certainly been open for the community to
contribute, and several folks have taken advantage of that. And John
and
company have certainly proven a willingness to rapidly inject the
various
contributions into the source tree as soon as these same contributions
seem viable enough to be injected into the source tree.

I don’t want to put the burden entirely on the communities shoulders,
but
there certainly needs to be at least some recognition to the fact that
this is a completely different situation than was JRuby when it came
into
the good graces of Sun. JRuby was a living, breathing, viable open
source
implementation of the Ruby language with a living, breathing, and active
OSS community backing it up long before Sun came into the picture. On
the
other hand, IronRuby was a resuscitated proof-of-concept project that
I’m
not even sure really ever saw the light of the OSS-day before being
brought into the MSFT fold. So while Charlie is correct: The IronRuby
project needs to become more community oriented, that community
orientation needs to come from not only MSFT’s direction, but the
communities direction as well.


/M:D

M. David P.
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: [email protected] | [email protected]
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm |
M. David Peterson

On Mon, 28 Apr 2008 08:05:02 -0600, John L. (IRONRUBY)
[email protected] wrote:

He also gets a number of important technical details wrong about
IronRuby, I’ll respond later today.

I can point out at least one: “IronRuby really has its roots in the
Ruby.NET project from Queensland University of Technology” is incorrect.
The IronRuby parser/scanner was bootstrapped by the Ruby.NET
parser/scanner, but has since removed all signs of the Ruby.NET
parser/scanner in favor of a from-the-ground-up implementation written
entirely by – I believe – Tomas M… Of course, as Charlie points
out somewhat correctly in his opening paragraph,

IronRuby was still Wilco Bauer’s IronRuby, a doomed codebase and project
name eventually to be adopted by Microsoft’s later Ruby implementation
effort.

… which is at least partially correct, if not a bit misleading given
that for all intents and purposes the IronRuby project of today is a
from-the-ground-up implementation of the Ruby language and runtime based
on top of the from-the-ground-up Dynamic Language Runtime code base and
architecture.


/M:D

M. David P.
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: [email protected] | [email protected]
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm |
M. David Peterson

Well to be fair, IronRuby /does/ have it’s roots in Ruby.NET in that
it was the first Microsoft supported CLR implementation. And I
believe Charles is referring to the /name/ of Bauer’s IronRuby being
adopted by Microsoft, not the codebase.

On Mon, Apr 28, 2008 at 10:52 AM, M. David P.
[email protected] wrote:

IronRuby parser/scanner was bootstrapped by the Ruby.NET parser/scanner, but

Co-Founder & Chief Architect, 3rd&Urban, LLC


Michael L.
[Polymath Prokrammer]
http://blog.prokrams.com

On Mon, 28 Apr 2008 09:00:04 -0600, Michael L.
[email protected] wrote:

Well to be fair, IronRuby /does/ have it’s roots in Ruby.NET in that
it was the first Microsoft supported CLR implementation.

Fair enough.

And I
believe Charles is referring to the /name/ of Bauer’s IronRuby being
adopted by Microsoft, not the codebase.

That would make sense.


/M:D

M. David P.
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: [email protected] | [email protected]
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm |
M. David Peterson

M. David P. wrote:

That said, I most definitely agree with Charlie’s thoughts regarding the
overall community collaboration and contributions as it relates to the
IronRuby project. But I’m less inclined to put the blame entirely on
MSFT’s shoulders. The door has certainly been open for the community to
contribute, and several folks have taken advantage of that. And John
and company have certainly proven a willingness to rapidly inject the
various contributions into the source tree as soon as these same
contributions seem viable enough to be injected into the source tree.

I disagree, and you need look no further than this mailing list to see
the truth. Of the perhaps 40 threads I see started since Apr 3, I see
only 8 that were started by folks from Microsoft…all John L…two of
those SVN update emails. So perhaps 6 substantive threads where the
initiator is someone from the IronRuby team.

In order for an OSS project to work, any core team needs to be having
conversations in the open. Since this is clearly not happening, it would
be the first thing to change. I don’t know if it’s Microsoft policy or
just an oversight by the IronRuby team.

And obviously not tossing SVN bundles over the wall would help foster a
bit more dynamic community. It’s far more difficult (maybe impossible)
to run an OSS project well if the community members can’t update their
working copies to exactly what the core team sees day-to-day. This one
is most likely an MS issue.

  • Charlie

M. David P.:

It’s far more difficult (maybe impossible) to run an OSS project well
if the community members can’t update their working copies to exactly
what the core team sees day-to-day. This one is most likely an MS
issue.

It’s absolutely 100% an internal MSFT issue. Can it be fixed?

While meta-level discussions are interesting, they generally don’t offer
much in the way of concrete guidance. So let me ask this question to the
larger community:

Has working on the SVN sources (with the attendant delays in propagating
to / from our version of ‘the truth’) blocked you from working on a
contribution?

Thanks,
-John

On Mon, 28 Apr 2008 09:02:56 -0600, Charles Oliver N.
[email protected] wrote:

I disagree, and you need look no further than this mailing list to see
the truth. Of the perhaps 40 threads I see started since Apr 3, I see
only 8 that were started by folks from Microsoft…all John L…two of
those SVN update emails. So perhaps 6 substantive threads where the
initiator is someone from the IronRuby team.

Oh, I don’t disagree with this, just that I don’t see any physical
obstacles keeping the community from becoming more involved. Mental
obstacles, for sure… And maybe that’s really where the focus needs to
be: Finding ways to remove the mental obstacles that keep people from
contributing more aggressively.

I know how you guys have done it and are continuing to do it. But
putting
yourself in IronRuby’s Red Slippers for a moment, how would you do it if
you were starting from scratch (or as close to scratch as you can get
w/o
literally starting from scratch) and had to find ways to first, sell the
overall idea to the community to then get that same community to
actively
participate in the process while at the same time making attempt to
convince that the once proprietary-only giant really is committed to
building OSS into their overall software ecosystem?

In order for an OSS project to work, any core team needs to be having
conversations in the open. Since this is clearly not happening, it would
be the first thing to change. I don’t know if it’s Microsoft policy or
just an oversight by the IronRuby team.

I can’t say I really know the answer, but I do agree with your point.
From my own perspective I would suggest it’s a combination of the
internal
culture at MSFT attempting to change how they go about the business of
courting the developer coupled with the size of the internal IronRuby
team
that still have to meet deadlines and expectations that are unrelated to
IronRuby (e.g. integration with the DLR team, MIX and other high profile
events, typical corporate culture stuff such as performance reviews,
etc.) That’s not an attempt to provide an excuse as to why they can’t
be
more open. Just an attempt at understanding there are more forces
involved than are immediately obvious from the outside looking in.

And obviously not tossing SVN bundles over the wall would help foster a
bit more dynamic community.

Absolutely 100% agree. One of things I was curious to see when John
first
announced that IronRuby would be hosted on RubyForge was whether or not
he
could actually pull it off. From what I assume is both of our
perspectives, thus far it hasn’t worked out as well as it both could and
should have.

It’s far more difficult (maybe impossible) to run an OSS project well if
the community members can’t update their working copies to exactly what
the core team sees day-to-day. This one is most likely an MS issue.

It’s absolutely 100% an internal MSFT issue. Can it be fixed?


/M:D

M. David P.
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: [email protected] | [email protected]
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm |
M. David Peterson

On Mon, Apr 28, 2008 at 8:35 AM, John L. (IRONRUBY)
[email protected] wrote:

Has working on the SVN sources (with the attendant delays in propagating to / from our version of ‘the truth’) blocked you from working on a contribution?

I have a large block of code that is based on the long-ago RubyCLR
bridge John implemented. I am very excited to get that onto native
.NET. My impression is that IronRuby is not far enough along to
support much of my codebase, but it’s a moot point. I cannot access
RubyForge’s SVN repository from behind my employer’s ISA firewall (it
blocks certain HTTP headers SVN uses). I did manage to spider the
latest release at one point using WGET but it wasn’t an effort I’d
repeat regularly. Another method for getting the codebase would make
it easier for me to see what IronRuby is capable of so far.

Justin

On Mon, 28 Apr 2008 09:27:53 -0600, M. David P.
[email protected] wrote:

But putting yourself in IronRuby’s Red Slippers for a moment,

To put this another way, JRuby was a successful OSS project FIRST
which
– because of this fact – attracted Sun to bring the project and its
two
core contributors (at that time – if not mistaken, didn’t Ola really
begin his core involvement after the acquisition?) in house. The
community didn’t have to be convinced of the overall JRuby idea. That
had
already happened long before Corporate America began it’s lust → love
fest with the project, gaining not only the already successful OSS JRuby
project, but access to the best and the brightest minds/talent the Java
development community had to offer as a result.

MSFT, on the other, went out and found the best and brightest
minds/talent
the .NET development community had to offer – at least as far as
experience with the Ruby language was concerned – and then tasked them
with building not only an OSS Ruby implementation for the .NET platform,
but in building an OSS community as well > Both – for all intents and
purposes – from scratch.

Two different situations. Two different scenarios. You’ve done it
successfully from the outside in. How would you do it – again
successfully – from the inside out?


/M:D

M. David P.
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: [email protected] | [email protected]
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm |
M. David Peterson

On Mon, 28 Apr 2008 09:35:24 -0600, John L. (IRONRUBY)
[email protected] wrote:

Has working on the SVN sources (with the attendant delays in propagating
to / from our version of ‘the truth’) blocked you from working on a
contribution?

No.


/M:D

M. David P.
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: [email protected] | [email protected]
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm |
M. David Peterson

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Charles Oliver N. wrote:

And obviously not tossing SVN bundles over the wall would help foster a
bit more dynamic community. It’s far more difficult (maybe impossible)
to run an OSS project well if the community members can’t update their
working copies to exactly what the core team sees day-to-day. This one
is most likely an MS issue.

I don’t usually like to criticize open source projects but I must say
that I wholeheartedly agree with you on this point. The development
process behind JRuby and Rubinius is very open, while IronRuby’s one is
not nearly enough so. The end result is that JRuby and Rubinius appear
to be improving really fast, while IronRuby seems to proceed at a
glacial pace. Behind the scenes, this may not be the case, but by
looking at the repository this is the impression that one gets.

According to ohloh, IronRuby has 2 contributors who made commits, JRuby
has 22 and Rubinius 152. JRuby and Rubinius get several commits on a
daily basis, while IronRuby’s commits are rare and 1 year after its
announcement there still hasn’t been a single release, the trunk is at
version 96 and x = 2 in interactive mode is still broken.

While granted IronRuby may appeal to less people than Rubinius or JRuby,
I still feel that the development process could benefit a lot from
incremental/daily commits, more transparency and a greater deal of
control handed to the community.

As Charlie mentioned somewhere else, JRuby is not Sun’s, it belongs to
the community. That statement is entirely backed up by facts, but I’m
afraid that, at this stage, it isn’ possible to claim the same for
IronRuby. This, coupled with the fact that ASP.NET and languages like C#
are clearly Microsoft’s main interest, lead me to believe that IronRuby
is not living up to its full potential.

Microsoft has the resources and brilliant minds (e.g. John L.) to
seriously reconsider its approach to this project, in order to really
let it take off.

Just my 2 cents,
Antonio


http://antoniocangiano.com - Zen and the Art of Programming
http://stacktrace.it - Aperiodico di resistenza informatica
http://math-blog.com - Math Blog: Mathematics is wonderful!
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.8 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkgV8PIACgkQqCqsu0qUj9SOrgCgww8tFRi03AQG0nnj6iE2MCuo
KboAn0hzVO97RQgJIALx07e1j4px1iOl
=Y1aM
-----END PGP SIGNATURE-----

On Mon, 28 Apr 2008 09:43:29 -0600, Justin B. [email protected]
wrote:

Another method for getting the codebase would make
it easier for me to see what IronRuby is capable of so far.

Like? Is there another SCC/wire protocol that would work? If yes,
there
are plenty of bridges out there that are 1-to-1 compatible (meaning they
retain 100% of the meta-data and related versioning/check-in info) with
SVN both forwards and backwards. Tailor comes to mind. I know there
are
others.


/M:D

M. David P.
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: [email protected] | [email protected]
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm |
M. David Peterson

Hi,

All I can say is… The Progress is slow.

Refer to this thread in this forum only.

One of the community member shouts, since there is no beta around even
after one year.

Here’s the link…
http://www.ruby-forum.com/topic/144090#new

All I can say clearly is…There is Lots of Delay in the progress.

Thanks

I have not personally been affected by the long time periods between the
code drops. I doubt it has had a serious impact on many other
contributors.
Although there have certainly been a few issues highlighted in the
mailing
list around the hosting API and some other internal chunks of code that
have
delayed people trying to work on top of IR - the SaphireSteel guys come
to
mind, I still believe this has not really been a problem, since even in
a
totally open environment, people would need to wait on the core team to
deliver API’s anyway, no?

I think the main problem with the current wall-tossing arrangement is
that
it creates a feeling of, “this is a their (Microsoft) project” rather
than
“this is our (community) project”. Contributors feel no ownership of
the
code they contribute, let alone the project as a whole. What gets
people
excited, and encouraged to contribute, to a project is the feeling that
they
own some part of it or have some responsibility in the direction and
decision making.

Bug fixing patches and fleshing out code stubs is very important but not
too
exciting for many developers. It would have been an interesting
exercise to
break off self-standing components of the Iron Ruby libraries and set
them
up as independent OSS projects of their own that are primarily stored in
SVN
and imported into MS Team repositories on occasion rather than the other
way
around. Obvious candidates are the YAML processor, the Regex engine,
and
any other components that require substantial C# code to be written, and
design decisions to be made.

It is not too late to implement something like this. If a bit of work
could
be done on loading external IR libraries then projects could begin to be
setup independently. This would have the multiple benefit of getting
people
to work on interesting and challenging projects, potentially creating
alternative options to the IR community but also those people working on
the
projects are more likely to pickup bugs and add in the smaller patches
to
the core that are not getting people excited at the moment.

My two pennies.

Pete

On Mon, 28 Apr 2008 09:45:46 -0600, Charles Oliver N.
[email protected] wrote:

And answer carefully, friends, because you could help correct this
policy.

I answered honestly. No, it’s not getting in the way. But that doesn’t
mean I believe that process isn’t broken. It is without a doubt. I’m
just not 100% sure – taking in all considerations to the challenge at
hand – how to “fix” it from a truly ideal OSS community perspective.

Don’t give an answer you think John wants to hear, because a little
community pressure could go a long way toward improving the situation.
I’m sure John would agree with me there…

I dom’t know if he will agree or not, but whether he does or doesn’t,
the
fact of the matter is that there are two options,

  • Do nothing and wait for something to happen on its own.
  • Do something and see what happens as a result.

I’m 100% the notion of applying pressure. Where’s the best place to
start?


/M:D

M. David P.
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: [email protected] | [email protected]
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm |
M. David Peterson

On Mon, 28 Apr 2008 09:44:50 -0600, Antonio C.
[email protected]
wrote:

As Charlie mentioned somewhere else, JRuby is not Sun’s, it belongs to
the community. That statement is entirely backed up by facts, but I’m
afraid that, at this stage, it isn’ possible to claim the same for
IronRuby. This, coupled with the fact that ASP.NET and languages like C#
are clearly Microsoft’s main interest, lead me to believe that IronRuby
is not living up to its full potential.

Nicely stated! Of course, as per my previous argument, I do believe
consideration needs to be made as to the difference between the outside

in approach that JRuby represents and the inside > out approach
represented by IronRuby. None-the-less, there needs to be some faith
building exercises coming from the direction of MSFT that help bring a
better sense of community ownership to the project, that’s without a
doubt!

Microsoft has the resources and brilliant minds (e.g. John L.) to
seriously reconsider its approach to this project, in order to really
let it take off.

Absolutely!


/M:D

M. David P.
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: [email protected] | [email protected]
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm |
M. David Peterson

John L. (IRONRUBY) wrote:

Has working on the SVN sources (with the attendant delays in propagating to / from our version of ‘the truth’) blocked you from working on a contribution?

And answer carefully, friends, because you could help correct this
policy. Don’t give an answer you think John wants to hear, because a
little community pressure could go a long way toward improving the
situation. I’m sure John would agree with me there…

  • Charlie