is it true that if you develop with Ruby, you have to ship source code to your customers?

looking at using Ruby on Rails for dev project. one guy says don't use it because we will have to ship our source code to our customers. Anyone care to comment on this?

same guy says Ruby is pretty slow compared to Python....true or false?

hoping to get the straight scoop

Umm, no you do not have to ship source code to you users. It's is true that Ruby can be slower in a side-by-side comparison, however, it's up to you to decide what's more important to you, CPU cycles or developer cycles. It seems to me that CPU issues are much easier to solve than development issues.

Could you elaborate on this? If you are developing an application that is to be client-hosted, what do you ship if it’s not the source?

one guy says don't use it because we will have to ship our source code to our customers. Anyone care to comment on this?

Because Ruby is an interpreted language, shipping source code (possibly obfuscated) is the part of the picture. That said, why not do some serious thinking about whether this matters to you, the benefits to the customer of having maintainable code, etc. You don't have to go Open Source, by the way; licensed source code has been around for decades...

same guy says Ruby is pretty slow compared to Python.... true or false?

Current Ruby interpreters are slower than current Python ones, but this should change over the next few years. Also, if your app is scalable, the cost of adding more processors may not be all that much of a burden.

-r

Thanks, that’s what I thought.

There's a ruby gem "rubyscript2exe" which convert all ruby code into an EXE file, so your code can be relatively safe. actually that guy is slow because he can't comprehend the speed of ruby.

asker may also be interested in http://groups.wuyasea.com/group/ruby-on-rails

Dorren

Dorren_was_here_cuz_goog_keeps_losing_my_favorites

shaz wrote:

looking at using Ruby on Rails for dev project. one guy says don't use it because we will have to ship our source code to our customers.   

If the work you're doing would normally require you to ship binaries to customers, then yes, using Rails will require you to ship the source to customers -- Ruby does not produce a compiled form for distribution.

same guy says Ruby is pretty slow compared to Python....true or false?

The current Ruby interpreter is one of the slowest runtimes out there. YARV (Ruby 2.0) and other projects should fix that (dev benchmarks abound on Google). If you're writing performance intensive code in Ruby there are things you can do to speed specific sections up, but if the whole thing is slow then you're probably b

-faisal

Faisal N. Jawdat wrote:

if the whole thing is slow then you're probably b

...etter off not hitting the send button.

you're probably better off with a different language. Where are your actual performance bottlenecks?

-faisal

shaz wrote:

looking at using Ruby on Rails for dev project. one guy says don't use it because we will have to ship our source code to our customers. Anyone care to comment on this?

Ruby on Rails is mainly for server-side development. Thus, the source code is on the web server, in a protected directory that no customer can get to, unless you are sloppy with your administration of your web site or your site gets hacked somehow. Rails itself creates pretty safe websites and encourages good practices, but you can always leave some back door open by mistake, of course. If you use RoR for a client-side application. That is, one application that HAS to run on your customer's computer and not through the web, then yes. You'll have to give them the source code. There's ways to obfuscate the code or have the source code compressed inside an .exe file as others have mentioned, but that source code will still be easier to access than with a compiled language like C++. Overall if you are looking for that kind of protection, currently only static languages tend to offer that (and that's also changing as there are more and better C/C++ decompilers each day).

same guy says Ruby is pretty slow compared to Python....true or false?

Somewhat true. Python in general is faster for most arithmetic tasks, albeit there's relatively not that major difference for other types of operations. Ruby in general is faster for most tasks that involve large OO hierarchies. If you also consider the upcoming ruby1.9 (yarv), the speed differences between both are not worth mentioning. For most applications that are server based, the speed of the application is more often determined by the speed of the network connection and the database used than by the language you use to code it in.

Note also that python also suffers from you having to ship source code. Python can do a very minor built-in obfuscation by shipping byte-codes instead of actual ASCII source code, but the byte-codes are extremely easy to reverse engineer (there are public domain utilities for that) and will give you an almost identical file to your source code (sans comments).

So if you are considering python as an alternative to RoR, the truth is that you won't gain much on improving either of your concerns.