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?
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.
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.
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.
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
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.