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. :) -- Paul Lutus http://www.arachnoid.com