n/a wrote:
hi, newbie so please be tolerant…
You can count on it.
i need to start to learn a programming language to be able to develop
custom aps to be applied to a variety of purposes but mainly 1) financial
data modeling–including graphics and data handling via database queries,
etc.; and 2) more general business-type aps.
my feeling is that i hate BLOATED sluggish programs (like some Java
program running on older JVM’s and perhaps not written in an optimal
way…u get the idea.)
I have rather a lot of experience with Java, and it’s not easy to avoid
the
bloated aspect, if the program has a GUI. The problem is the GUI, not
the
code. It is made worse when the GUI code is written in java, nearly
always
true.
Ruby, by contrast, uses native-code GUI libraries, so it tends to be
faster
as a GUI based language. It is certainly easier to modify and debug than
Java is, because of its transparent syntax.
if i need to make a choice between fancy and efficient,
speed, etc., then it’s an easy choice 4 me of efficient.
which is why i have just started w/ c++.
C++ is only efficient when it is running. It is not efficient when you
have
a deadline to finish a project and deliver working code.
The basic idea is this – if the program is only written once and is to
be
used by millions of people, then definitely use C++. If the same program
is
to be written in a million variations over a period of years and only
used
by a handful or people, then definitely Java or Ruby.
The middle cases require more experience to decide. In such cases, I
sometimes prototype in Ruby, because development is so fast, and then
translate the result from Ruby into C++ once I have a working program,
so
the delivered program will be fast.
however, speaking to one my programmer friends who is a top level Java
programmer (the stuff he writes is very efficient and fancy as
well–great balance), he is telling me that 1) c++ is being phased out
(except 4 real low level stuff like drivers, etc.) in favor of languages
such as Java or Ruby.
This viewpoint would be very difficult to defend. C++ isn’t remotely
being
phased out. C++ has its niche, as does Java and Ruby, etc. etc…
he recommends i switch from learning c++ to learning
Java or Ruby.
You will most likely learn more about programming in a shorter time by
taking his advice, but remember that the reasoning behind his advice
isn’t
sound. Both Java and Ruby will show you object-oriented concepts, a
“good
thing”, and later on, you might want to learn C++ for those applications
that require more speed and/or closer coupling to the machine. C++ is
less
object-oriented than either Java or Ruby, which means (IMHO) that the
latter two languages are a better choice for learning programming
principles.
i wd hope to be able to choose the best path and not have to
switch tack in the middle as my IT capablity is not a full time activity,
but more of a support 4 my main one–finance.
Oh, I thought you were going to become a well-rounded programmer. Oh,
well,
in that case, either Ruby or Java will suit your goals much better than
C++
would. You will be able to create and maintain 95% of the applications
typical in financial institutions using either Ruby or java, or both.
of course, learning curve is to be taken into consideration as well…
Your learning curve will be much faster with Ruby or Java than with C++.
Guaranteed. I personally think Ruby and Java are much better tutorial
languages than C++ is.
'd love some comments that might help me consider my options and pick a
path (c++, java or ruby) w/ a higher level of confidence… i know that
people here will be biased towards Ruby, but that is fine: i want to hear
about it…
I don’t think you will see much in the way of bias for or against any
particular language, at least from the regular posters here, because
most
have come from a background of many other languages.
It’s not like we’re all Macintosh owners, or Scientologists, or Mensa
members, if you get my drift.