[#144186] Re: array of object insert polices — "Pe, Botp" <botp@...>

dave [mailto:dave.m@email.it] wrote:

14 messages 2005/06/01

[#144206] Implementing a Read-Only array — Gavin Kistner <gavin@...>

Right up front, let me say that I realize that I can't prevent

14 messages 2005/06/01

[#144224] Method Chaining Issues — "aartist" <aartist@...>

try this:

28 messages 2005/06/01
[#144231] Re: Method Chaining Issues — "Phrogz" <gavin@...> 2005/06/01

This is a FAQ, though no page on the RubyGarden wiki seems to address

[#144240] Re: Method Chaining Issues — Nikolai Weibull <mailing-lists.ruby-talk@...> 2005/06/01

Phrogz wrote:

[#144230] ternary operator confusion — Belorion <belorion@...>

I don't know if this is "improper" use of the ternary operator, but I

19 messages 2005/06/01
[#144233] Re: ternary operator confusion — "Phrogz" <gavin@...> 2005/06/01

true ? a.push(1) : a.push(2)

[#144257] Re: ternary operator confusion — "Marcel Molina Jr." <marcel@...> 2005/06/01

On Thu, Jun 02, 2005 at 01:40:23AM +0900, Phrogz wrote:

[#144263] Re: ternary operator confusion — Eric Mahurin <eric_mahurin@...> 2005/06/01

--- "Marcel Molina Jr." <marcel@vernix.org> wrote:

[#144453] RubyScript2Exe and GUI toolkits — Erik Veenstra <pan@...>

13 messages 2005/06/03

[#144487] Building a business case for Ruby — Joe Van Dyk <joevandyk@...>

Hi,

29 messages 2005/06/03

[#144535] ruby-dev summary 26128-26222 — Minero Aoki <aamine@...>

Hi all,

11 messages 2005/06/04

[#144579] Package, a future replacement for setup.rb and mkmf.rb — Christian Neukirchen <chneukirchen@...>

29 messages 2005/06/04

[#144672] newbie read.scan (?) question — "Bruce D'Arcus" <bdarcus.lists@...>

Hi,

16 messages 2005/06/06

[#144691] making a duck — Eric Mahurin <eric_mahurin@...>

Regarding duck-typing... Is there an easy way make a "duck"?

27 messages 2005/06/06

[#144867] ruby-wish@ruby-lang.org mailing list — dave <dave.m@...>

19 messages 2005/06/08
[#144870] Re: [PROPOSAL] ruby-wish@ruby-lang.org mailing list — "Robert Klemme" <bob.news@...> 2005/06/08

Austin Ziegler wrote:

[#144890] RubyStuff: The Ruby Shop for Ruby Programmers — James Britt <james_b@...>

Announcing the formal grand opening of Ruby Stuff: The Ruby Shop for

36 messages 2005/06/08

[#144966] python/ruby benchmark. — "\"</script>" <groleo@...>

I took a look at

78 messages 2005/06/09
[#144967] Re: python/ruby benchmark. — gabriele renzi <surrender_it@...> 2005/06/09

"</script> ha scritto:

[#144974] Re: python/ruby benchmark. — Lothar Scholz <mailinglists@...> 2005/06/09

Hello gabriele,

[#144977] Re: python/ruby benchmark. — Kent Sibilev <ksruby@...> 2005/06/09

Java is an order of magnitude faster than Ruby. The development of a

[#144980] Re: python/ruby benchmark. — Lothar Scholz <mailinglists@...> 2005/06/09

Hello Kent,

[#144983] Re: python/ruby benchmark. — "Ryan Leavengood" <mrcode@...> 2005/06/09

Lothar Scholz said:

[#145196] Re: python/ruby benchmark(don't shoot the messenger) — ptkwt@... (Phil Tomson) 2005/06/12

In article <9e7db91105061106485b68d629@mail.gmail.com>,

[#145207] Re: python/ruby benchmark(don't shoot the messenger) — Steven Jenkins <steven.jenkins@...> 2005/06/12

Phil Tomson wrote:

[#145212] Re: python/ruby benchmark(don't shoot the messenger) — Austin Ziegler <halostatue@...> 2005/06/12

On 6/12/05, Steven Jenkins <steven.jenkins@ieee.org> wrote:

[#145219] Re: python/ruby benchmark(don't shoot the messenger) — Steven Jenkins <steven.jenkins@...> 2005/06/12

Austin Ziegler wrote:

[#145223] Re: python/ruby benchmark(don't shoot the messenger) — Austin Ziegler <halostatue@...> 2005/06/12

On 6/12/05, Steven Jenkins <steven.jenkins@ieee.org> wrote:

[#145240] Re: python/ruby benchmark(don't shoot the messenger) — Steven Jenkins <steven.jenkins@...> 2005/06/12

Austin Ziegler wrote:

[#145241] Re: python/ruby benchmark(don't shoot the messenger) — Austin Ziegler <halostatue@...> 2005/06/13

On 6/12/05, Steven Jenkins <steven.jenkins@ieee.org> wrote:

[#145000] RDoc

Hi, I have a question. When I compiled ruby-1.8.2

13 messages 2005/06/09
[#145003] Re: RDoc — Eric Hodel <drbrain@...7.net> 2005/06/09

On 09 Jun 2005, at 13:55, Jesffffas Antonio Sfffe1nchez A. wrote:

[#145238] finding Hash subsets based on key value — "ee" <erik.eide@...>

Hi

17 messages 2005/06/12

[#145304] PDF::Writer 1.0 (version 1.0.1) — Austin Ziegler <halostatue@...>

= PDF::Writer

21 messages 2005/06/13
[#145411] Re: [ANN] PDF::Writer 1.0 (version 1.0.1) — Jason Foreman <threeve.org@...> 2005/06/14

No love from PDF::Writer on Mac OS X 10.4.1. I hope to get this fixed

[#145420] Re: [ANN] PDF::Writer 1.0 (version 1.0.1) — Austin Ziegler <halostatue@...> 2005/06/14

On 6/14/05, Jason Foreman <threeve.org@gmail.com> wrote:

[#145432] Re: [ANN] PDF::Writer 1.0 (version 1.0.1) — Jamis Buck <jamis@37signals.com> 2005/06/15

On Jun 14, 2005, at 5:11 PM, Austin Ziegler wrote:

[#145339] survey: what editor do you use to hack ruby? — Lowell Kirsh <lkirsh@...>

I've been having a tough time getting emacs set up properly with ruby

62 messages 2005/06/14

[#145390] Ruby and recursion (Ackermann benchmark) — ptkwt@... (Phil Tomson)

14 messages 2005/06/14

[#145586] How to make a browser in Ruby Tk — sujeet kumar <sujeetkr@...>

Hi

13 messages 2005/06/16

[#145636] Super-scalar Optimizations — "Phrogz" <gavin@...>

I was looking over the shoulder of a C++ coworker yesterday, when he

14 messages 2005/06/16

[#145677] Truth maintenance system in Ruby — "itsme213" <itsme213@...>

Anyone know of any kind of truth-maintenance system implemented in Ruby (or,

12 messages 2005/06/17

[#145720] Frameless RDoc template ('technology preview') — ES <ruby-ml@...>

Hi!

17 messages 2005/06/17

[#145779] Newbe questions... — "Chuck Brotman" <brotman@...>

In Ruby Is there a prefered (or otherwise elegant) way to do an inner &

17 messages 2005/06/18

[#145790] GC.disable not working? — Eric Mahurin <eric_mahurin@...>

From what I can tell, GC.disable doesn't work. I'm wanting to

37 messages 2005/06/18
[#145822] Re: GC.disable not working? — ts <decoux@...> 2005/06/19

>>>>> "E" == Eric Mahurin <eric_mahurin@yahoo.com> writes:

[#146024] evaluation of ruby — "Franz Hartmann" <porschefranz@...> 2005/06/21

Hello all,

[#145830] preventing instantiation — "R. Mark Volkmann" <mark@...>

What is the recommended way in Ruby to prevent other classes from creating

13 messages 2005/06/19
[#145831] Re: preventing instantiation — Gavri Fernandez <gavri.fernandez@...> 2005/06/19

On 6/19/05, R. Mark Volkmann <mark@ociweb.com> wrote:

[#145879] x==1 vs 1==x — Gavin Kistner <gavin@...>

I'm against _premature_ optimization in theory, but believe that a

19 messages 2005/06/20
[#145880] Re: x==1 vs 1==x — ts <decoux@...> 2005/06/20

>>>>> "G" == Gavin Kistner <gavin@refinery.com> writes:

[#145943] Chess Variants (II) (#36) — James Edward Gray II <james@...>

I don't want to spoil all the fun, in case anyone is still attempting

12 messages 2005/06/20

[#146038] 1. Ruby result: 101 seconds , 2. Java result:9.8 seconds, 3. Perl result:62 seconds — Michael Tan <mtan1232000@...>

Just new to Ruby since last week, running my same functional program on the windows XP(Pentium M1.5G), the Ruby version is 10 times slower than the Java version. The program is to find the prime numbers like 2, 3,5, 7, 11, 13... Are there setup issues? or it is normal?

47 messages 2005/06/21
[#146044] Re: 1. Ruby result: 101 seconds , 2. Java result:9.8 seconds, 3. Perl result:62 seconds — "Florian Frank" <flori@...> 2005/06/21

Michael Tan wrote:

[#146047] Re: 1. Ruby result: 101 seconds , 2. Java result:9.8 seconds, 3. Perl result:62 seconds — Jim Freeze <jim@...> 2005/06/21

* Florian Frank <flori@nixe.ping.de> [2005-06-22 05:40:14 +0900]:

[#146050] Re: 1. Ruby result: 101 seconds , 2. Java result:9.8 seconds, 3. Perl result:62 seconds — "Ryan Leavengood" <mrcode@...> 2005/06/21

Jim Freeze said:

[#146132] Re: 1. Ruby result: 101 seconds , 2. Java result:9.8 seconds, 3. Perl result:62 seconds — "Mark Thomas" <mrt@...> 2005/06/22

Florian Frank wrote:

[#146064] rubyscript2exe — Joe Van Dyk <joevandyk@...>

Hi,

14 messages 2005/06/21

[#146169] spidering a website to build a sitemap — Bill Guindon <agorilla@...>

I need to spider a site and build a sitemap for it. I've looked

17 messages 2005/06/22

[#146178] traits-0.4.0 - the coffee release — "Ara.T.Howard" <Ara.T.Howard@...>

15 messages 2005/06/22

[#146328] string to Class object — "R. Mark Volkmann" <mark@...>

How can I create a Class object from a String that contains the name of a class?

15 messages 2005/06/24

[#146380] Application-0.6.0 — Jim Freeze <jim@...>

CommandLine - Application and OptionParser

22 messages 2005/06/24

[#146391] ASP.NET vs Ruby on Rails — Stephen Kellett <snail@...>

HI Folks,

21 messages 2005/06/24
[#146457] Re: ASP.NET vs Ruby on Rails — "Dema" <demetriusnunes@...> 2005/06/25

Hi Stephen,

[#146425] speeding up Process.detach frequency — Joe Van Dyk <joevandyk@...>

Is there any way to speed up Process.detach? The ri documentation for

14 messages 2005/06/25

[#146483] I saw the beauty of Ruby Re: 1. Ruby result: 101 seconds , 2. Java result:9.8 seconds, 3. Perl result:62 seconds — Michael Tan <mtan1232000@...>

22 messages 2005/06/26
[#146485] Re: I saw the beauty of Ruby Re: 1. Ruby result: 101 seconds , 2. Java result:9.8 seconds, 3. Perl result:62 seconds — "Florian Frank" <flori@...> 2005/06/26

Michael Tan wrote:

[#146504] Re: I saw the beauty of Ruby Re: 1. Ruby result: 101 seconds , 2. Java result:9.8 seconds, 3. Perl result:62 seconds — Brad Wilson <dotnetguy@...> 2005/06/26

For comparison, the port of your code to (less than elegant) C#.

[#146515] Re: I saw the beauty of Ruby Re: 1. Ruby result: 101 seconds , 2. Java result:9.8 seconds, 3. Perl result:62 seconds — Florian Gro<florgro@...> 2005/06/26

Brad Wilson wrote:

[#146491] What do you want to see in a Sparklines Library? — Daniel Nugent <nugend@...>

This is sort of an interest gauging/feature request poll.

17 messages 2005/06/26
[#146506] Re: What do you want to see in a Sparklines Library? — Daniel Amelang <daniel.amelang@...> 2005/06/26

See what's already been done before you get too far.

[#146517] Re: What do you want to see in a Sparklines Library? — Daniel Nugent <nugend@...> 2005/06/26

Yup, seen the stuff on RedHanded, I was planning on writing a little

[#146562] RCM - A Ruby Configuration Management System — Michael Neumann <mneumann@...>

Hi all,

22 messages 2005/06/27

[#146630] yield does not take a block — Daniel Brockman <daniel@...>

Under ruby 1.9.0 (2005-06-23) [i386-linux], irb 0.9.5(05/04/13),

48 messages 2005/06/28
[#146666] Re: yield does not take a block — Daniel Brockman <daniel@...> 2005/06/28

Yukihiro Matsumoto <matz@ruby-lang.org> writes:

[#146680] Re: yield does not take a block — Yukihiro Matsumoto <matz@...> 2005/06/28

Hi,

[#146684] Re: yield does not take a block — Eric Mahurin <eric_mahurin@...> 2005/06/28

[#146779] Re: yield does not take a block — "Adam P. Jenkins" <thorin@...> 2005/06/29

Eric Mahurin wrote:

[#146700] Anything in new Eclipse for Rubyists? — "jfry" <jeff.fry@...>

Hey there, I know that a number of folks on the list use Eclipse as

14 messages 2005/06/28

[#146773] Programmers Contest: Fit pictures on a page — hicinbothem@...

GLOSSY: The Summer Programmer Of The Month Contest is underway!

18 messages 2005/06/29

[#146815] shift vs. slice!(0) and others — Eric Mahurin <eric_mahurin@...>

I just did some benchmarking of various ways to insert/delete

12 messages 2005/06/29

Re: Building a business case for Ruby

From: Jim Freeze <jim@...>
Date: 2005-06-03 21:20:43 UTC
List: ruby-talk #144499
* Joe Van Dyk <joevandyk@gmail.com> [2005-06-04 05:33:07 +0900]:

> I asked this question a little bit ago, but wanted to bring it back up.
> 
> I work for <insert huge company that makes really big expensive things
> here>.  We have "computing standards" that define what's allowable for
> usage internally and externally.  Technology evaluation boards, etc.
> 
> Here's an evaluation of Ruby:
> 
> "XXXX already has Product Standards for Python and Perl as
> Scripting/Dynamic languages. And for Java as a full programming
> language.
> 
> Ruby offer nothing significant not found in these XXXXX Standard
> languages, and an addition language just adds variation."

So, you're saying they are making judgements about Ruby without actually
even investigating it yet? ;)

> We've got mountains of unmaintainable perl stuff here, and I haven't
> really seen much in Python.  I'm in charge of developing some new
> software and would like to use Ruby.  Actually, the software is
> finished (very quickly) and I just need to get Ruby on the allowed
> list.  :(
 
> I don't need arguments about Perl vs Python vs Ruby.  I would like to
> see a discussion of:
> 
> 1)  Why one additional language isn't a bad thing
> 2)  Examples of existing Ruby usages in large scale applications
> 3)  How Ruby can benefit this place
 
This language stuff reminds me of religious conversion activities.
If you aren't the king and can't make declarations like: "Ala or die!"
(read "Ruby or your fired!") then you are forced to play the part
of the humble wizard who has develops a method for alchemy and
uses it to build up his portion of the kingdom along with anyone
else who will join in.
But, in the case of Perl, you probably feel more like Noah, knowing that
Perl usage is going to bring (financial) destruction to the company and
using the direct approach you will probably be as successful as Noah. ;)

I just wrote a long message to a friend about this issue. I quote 
here what I can:

> Why would I want to switch from PERL to Ruby?
 
Short Answer: 
  Because Ruby is better and Perl is harmful. Or better
  yet, because Perl cannot match what Ruby has to offer.
  But, this needs more explanation.

Long Answer:

No amount of physical evidence (or particular 
attribute of the language) is going to make or break the 
decision. You make the decision by your gut and then find 
evidence to support that decision. The only trick is to 
get others to make that same 'gut' decision. :)

Most everyone I know using Ruby is doing so because 
they were looking for a good scripting language or 
one better than Perl. If a person is happy with Perl, 
then it would be interesting to know why, but I would 
not try to convince them to use Ruby, they have much 
bigger problems. ;) However, because an organization 
uses Perl, that doesn't mean that the organization is 
happy with the outcome. It usually is because that is 
all it knows.

However, there are definite reasons why Ruby is an optimal
language for the type of scripting work that is done
in the XYZ industry. But, I don't think that just
listing these here is going to help you make a case
of why to switch.

At YYYY, I have been asking myself questions similar
to your original question[1]: 

  "If I were my boss (or anyone at YYYY), why would I 
  use Ruby (over Perl)."
and
  "Why should I listen/believe this Jim Freeze guy about
  Ruby being better than Perl or Python?"

Well, my current belief is that I can only answer this 
question by action. Words alone won't do it. So, in an 
effort to do this, I have been translating some existing 
code from perl to Ruby. My experiences, I believe, are 
equivalent to what you will find. Let me itemize a few:

  1) Perl scripts (PS) are not centralized in their location
  2) PS are not uniform in handling command line arguments
  3) The PS use one primary data structure, the Hash (the array is second)
  4) Converting the Perl code to Ruby without thinking reduces code size
     by about 30%
  5) Refactoring the converted code usually yields a 50-60% reduction in
     file size with an increase in readability.
  6) The PS's have no unit tests
  7) It is difficult to debug the PS's, even with printfs. (Perl doesn't have
     the Ruby's equivalent of inspect)
  8) The Object Oriented system of Perl is primitive - all methods are class methods.
  9) The concept of IP library as we had at YYY has never occurred
     to anyone I have talked to at ZZZZ.
 10) Code sharing has never occured to anyone at YYYY. This is a direct
     result of using Perl. Yes you can share packages with perl, but it is 
     not usually done in a corp environment. The language does not
     encourage it. For some reason, pointing this out is not a strong 
     convincing point. For most, the response seems to be, well we can 
     do better and we should. But, they never do.
 11) Only one Perl package was being used that did not exist in Ruby, the
     GDS parser. I am in the process of porting it to Ruby now.

In the process of converting the Perl code and adding unit tests,
I have found bugs (some innocuous, some not) and design flaws and
weaknesses. The design flaws and weaknesses are mainly related to 
the Hash centric nature of the Perl code and the lack of a true OO 
system in Perl.

The logic bugs are mainly due to lack of tests. The scary part is
that some of these apps have been around for a while and are considered
to be working bug free.

The best way to convince someone (to at least listen to you) is to port 
some code and look at the results.

Before the port I can say:

  Your Perl code most likely has bugs, you should switch
  to Ruby which is easier to debug and maintain. (not very convincing)

After the port:

  Your perl code has bugs. The Ruby port has fixed those bugs and has
  unit tests to ensure the correctness of the application. Which would 
  you rather use and maintain? (more motivation now to listen and
  see the benefits of Ruby with a testing and IP sharing framework.)

> We have a large base of PERL code already.
> I need good reason to overcome the inertia.

The important thing to realize is that a large amount of Perl 
code does not mean there is any inertia in the corporate 
development or runtime environemnt. We have a lot of perl code
at YYYY, but it is scattered and often teeters between
being broken and running without any issues. I personally would
not describe this as having inertia, more like a house of cards. :)

Stepping up to a better language and phasing in a better way of 
doing things does not take away existing value.[2]
So, even if some inertia exists, the only inefficiency is in not
adopting the better method. So, possibly, the better question
to pose is, Can Perl meet what Ruby offers? For a number of
issues important in a corporate setting, the answer is clearly no.

  - support for unit testing and unit-test framework exists
  - code is easy to read
  - code is easy to maintain
  - code is readily sharable
  - code is scalable to multiple developers
  - code is scalable in speed - easy to drop down to C code

BTW, I have created OptionParser, Application and project_config
and am releasing them open source. These will definitetly help 
you in your deployment efforts.

Footnotes:
  [1] At YYYY, I was told they had a recent experience with Python
  where they tried to get it installed throughout the company
  and replace Perl, and that effort failed. I was asked how is 
  Ruby different than Python and why would it succeed. The question
  at the time was mostly rhetorical, but the point here is that
  successful deployment is more based on user support than language
  features. You just need to make sure that you have a language
  that does not irritate the users (both Perl and Python have
  proven themselves capable of irritating the majority).
  But the reason Python failed at YYYY was not because of the
  language but because of the deployment strategy and user support.
  Consider that John Doe and others tried for a total of three times 
  to get a scripting repository deployed at ZZZZ and failed, whereas
  Ruby and the IP library has succeeded. I knew we would succeed
  because we gave the engineers what they wanted.

  [2] Only a few organizations understand the imperfection of humanity.
  There is probably not a single line of text in this email that
  I have not had to use the backspace key to correct a mistake.
  The same goes for code. It is unlikely that there exists a single script
  greater than 100 lines of code that does not have an undiscovered
  logic bug.


> Off the top of my head:
> 
> 1)  C extensions allow us to easily integrate with external existing
> software, but I don't know how Perl or Python does in that respect.

Perl is difficult. I have heard the same for Python, maybe more so.
> 
> 2) Built-in support for unit testing.
> 
> 3)  Extendability / maintainability, but I can't think of anything
> objective to say here
 
Depends upon the hostility of the person you are talking to.
Take two programs - one in Perl and one in Ruby - create a
five question quiz of various aspects of each program and
have non-programmers take the quiz. This will give you some
numbers of readability.

> 4)  DRb is very useful in developing distributed applications.  I'd
> imagine Perl and Python have similar features, but don't know anything
> about them.

Good luck. Let me know if I can be of more help.

-- 
Jim Freeze
Theory and practice are the same, in theory. -- Ryan Davis

In This Thread