Runtime vs Development

Discussion in 'Ruby' started by gwtmp01@mac.com, Jun 22, 2005.

  1. Guest

    Assume some-other-language is 10x faster than Ruby.

    If a project implemented via some-other-language
    requires 5 dedicated systems @ $2,000/each
    ($10,000 total), then Ruby requires 50 dedicated
    systems and $100,000 worth of equipment to accomplish
    the same task.

    Now assume a Ruby programmer is 3 times more efficient
    than some-other programmer and assume a programmer salary of
    $80,000/year (including overhead). And assume that the
    programming task will take three man-years to develop
    in some-other-language.

    So this hypothetical project implemented via Ruby costs:
    $80,000 in labor and $100,000 in equipment for $180,000.
    The same project implemented in some-other-language costs
    $240,000 for labor and $10,000 in equipment for $250,000 total.

    So Ruby is 10 times slower than some-other-language but
    you've got $70,000 more in your pocket when your done.

    Moral: Hardware is cheap, people aren't.

    Gary Wright
    , Jun 22, 2005
    #1
    1. Advertising

  2. Hello gwtmp01,


    gmc> So Ruby is 10 times slower than some-other-language but
    gmc> you've got $70,000 more in your pocket when your done.

    gmc> Moral: Hardware is cheap, people aren't.

    You forgot the cost of maintaining 50 dedicated systems also energy
    resources and other things. Also it is not sure that it scales well
    - easy for web applications but maybe difficult to impossible for other
    application domains.

    Moral: We need a faster language implementation.



    --
    Best regards, emailto: scholz at scriptolutions dot com
    Lothar Scholz http://www.ruby-ide.com
    CTO Scriptolutions Ruby, PHP, Python IDE 's
    Lothar Scholz, Jun 22, 2005
    #2
    1. Advertising

  3. Kent Sibilev Guest

    Or moral: Every language has its own application domain. :)

    Kent.

    On 6/22/05, Lothar Scholz <> wrote:
    > Hello gwtmp01,
    >=20
    >=20
    > gmc> So Ruby is 10 times slower than some-other-language but
    > gmc> you've got $70,000 more in your pocket when your done.
    >=20
    > gmc> Moral: Hardware is cheap, people aren't.
    >=20
    > You forgot the cost of maintaining 50 dedicated systems also energy
    > resources and other things. Also it is not sure that it scales well
    > - easy for web applications but maybe difficult to impossible for other
    > application domains.
    >=20
    > Moral: We need a faster language implementation.
    >=20
    >=20
    >=20
    > --
    > Best regards, emailto: scholz at scriptolutions d=

    ot com
    > Lothar Scholz http://www.ruby-ide.com
    > CTO Scriptolutions Ruby, PHP, Python IDE 's
    >=20
    >=20
    >=20
    >
    Kent Sibilev, Jun 22, 2005
    #3
  4. Guest

    On Jun 22, 2005, at 12:33 AM, Lothar Scholz wrote:
    > gmc> So Ruby is 10 times slower than some-other-language but
    > gmc> you've got $70,000 more in your pocket when your done.
    >
    > gmc> Moral: Hardware is cheap, people aren't.
    >
    > You forgot the cost of maintaining 50 dedicated systems also energy
    > resources and other things. Also it is not sure that it scales well
    > - easy for web applications but maybe difficult to impossible for
    > other
    > application domains.
    >
    > Moral: We need a faster language implementation.


    A: I don't think Ruby is 10x slower for most applications (i.e more
    savings)
    B: For applications that really need speed, code the critical
    parts in C and use Ruby to control it all (i.e. more savings)
    C: $2000/headless system is pretty generous.
    D: My Ruby employees are happier than the other-language employees.
    E: I probably have the application finished sooner which opens
    up more opportunities (time is money).
    F: Once you've figured out how to maintain 5 systems efficiently, you've
    solved the hard part. The remaining 5, 10, or even 45 systems are
    much cheaper to maintain per/unit.
    G: I've still got $70,000 to spend on other things, even if you don't
    like A, B, C, D, E, and F.

    I tried to fudge the numbers in my example away from Ruby or for that
    matter any language X being compared to language Y based on some
    perceived
    run-time performance factor.

    What I was trying to point out with my simplistic example is that
    using a raw runtime performance metric to argue in favor of this
    language
    or that language is naive when building a system in which language
    performance is just one part of the cost consideration. Performance
    issues
    can be addressed with hardware. Development time can only be addressed
    with better people or better tools.

    Of course any project needs to consider all these things including
    the things
    that you mentioned. But assuming a priori that the ability to compute
    prime
    numbers is the *critical* factor it just a waste of time.

    And of course, I think better Ruby implementations would be a good
    thing.



    Gary Wright
    , Jun 22, 2005
    #4
  5. Matthew Berg Guest

    On Wed, 2005-06-22 at 12:06 +0900, wrote:
    > Assume some-other-language is 10x faster than Ruby.
    >
    > If a project implemented via some-other-language
    > requires 5 dedicated systems @ $2,000/each
    > ($10,000 total), then Ruby requires 50 dedicated
    > systems and $100,000 worth of equipment to accomplish
    > the same task.
    >
    > Now assume a Ruby programmer is 3 times more efficient
    > than some-other programmer and assume a programmer salary of
    > $80,000/year (including overhead). And assume that the
    > programming task will take three man-years to develop
    > in some-other-language.
    >
    > So this hypothetical project implemented via Ruby costs:
    > $80,000 in labor and $100,000 in equipment for $180,000.
    > The same project implemented in some-other-language costs
    > $240,000 for labor and $10,000 in equipment for $250,000 total.
    >
    > So Ruby is 10 times slower than some-other-language but
    > you've got $70,000 more in your pocket when your done.
    >
    > Moral: Hardware is cheap, people aren't.


    You forgot a _lot_ of costs - network (switches, cabling, punch downs),
    racks, colocation space, power, air conditioning, etc.

    And programming is largely an initial cost, whereas administration,
    monitoring and maintenance are on going concerns.

    --
    Matthew Berg <>
    Matthew Berg, Jun 22, 2005
    #5
  6. Corey Lawson Guest

    On 6/22/05, Matthew Berg <> wrote:
    <snip>=20
    > You forgot a _lot_ of costs - network (switches, cabling, punch downs),
    > racks, colocation space, power, air conditioning, etc.


    ...but a lot of those costs are one-time costs, or they scale well. It
    does not cost 10x to administer 50 boxes vs 5 (unless they're Windows
    boxes... *:eek: ).

    > And programming is largely an initial cost, whereas administration,
    > monitoring and maintenance are on going concerns.


    Programming also includes upgrades and software maintenance, and the
    time involved with those. The simpler language platform will cost less
    to do this than the more complex language platform.

    >=20
    > --
    > Matthew Berg <>
    >=20
    >=20
    >
    Corey Lawson, Jun 22, 2005
    #6
  7. Matthew Berg Guest

    On Thu, 2005-06-23 at 02:04 +0900, Corey Lawson wrote:
    > On 6/22/05, Matthew Berg <> wrote:
    > <snip>
    > > You forgot a _lot_ of costs - network (switches, cabling, punch downs),
    > > racks, colocation space, power, air conditioning, etc.

    >
    > ...but a lot of those costs are one-time costs, or they scale well. It
    > does not cost 10x to administer 50 boxes vs 5 (unless they're Windows
    > boxes... *:eek: ).


    Power, cooling, and leased space are a huge cost. Especially if you
    want an kind of reliability; i.e. conditioned power (preferably multiple
    battery backed circuits) and redundant cooling systems.

    And I never said administration was 10x higher. :) I don't quantify
    that sort of thing without knowing the specifics of the deployment.
    When we're talking about _that_ much of a discrepancy in hardware
    requirements, though, the requirements are almost certainly going to be
    significant. Five machines may be enough for an existing administrator
    to absorb, whereas fifty new machines is likely to require additional
    staffing.

    (Personally, I think both the 10x and 3x are both somewhat exaggerated
    from what you'd see in the real world, anyways. :)

    > Programming also includes upgrades and software maintenance, and the
    > time involved with those. The simpler language platform will cost less
    > to do this than the more complex language platform.


    Oh, certainly. This would also be variable from project to project, of
    course. It seems like a lot of developers subscribe to the idea that
    "hardware is cheap" without really understanding the costs involved.

    --
    Matthew Berg <>
    Matthew Berg, Jun 22, 2005
    #7
    1. Advertising

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

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Kevin Spencer
    Replies:
    2
    Views:
    439
    John Saunders
    Aug 6, 2003
  2. Akhlaq Khan
    Replies:
    4
    Views:
    761
    =?Utf-8?B?Q293Ym95IChHcmVnb3J5IEEuIEJlYW1lcikgLSBN
    Sep 27, 2004
  3. Replies:
    0
    Views:
    474
  4. Replies:
    2
    Views:
    790
    dar7yl
    Jan 15, 2005
  5. Replies:
    5
    Views:
    972
    H. S. Lahman
    Jan 15, 2005
Loading...

Share This Page