>Yes, but the expectation is that someone majoring in CS is going to be a
>professional programmer, and Java, C, and C++ are the languages of choice
>for a professional.  For a hobbyist, or for someone who only programs
>occasionally, I maintain that Python or Ruby is a much better choice.
I don't see why Python or Ruby would be a better option than Java, C++ or the other languages I mentioned before. I mean, yea, you could use anything to do stuff, but the amount of information, tutorials and help (which are *VITAL* especially for someone who doesn't program in a regular basis, like a hobbyist) is a lot more extensive for Java and C/C++ than for any other language (except maybe HTML, but well, most people don't consider HTML as real programming, me for example). Java is fairly easy to learn, you can do a lot of stuff with it, it is harder to run into problems that a newbie would run into using C/C++, the Java documentation and the tutorials are IMHO probably the *BEST* documentation out there (yes, better than PHP's and cppreference.com), and knowing Java prepares you fairly for learning other languages too.
Also, I don't see a clearly defined divisory line between what is professional programming and "just hobby" programming. I mean, if i'm playing around with programming, most likely i'll be trying to make something cool that "looks" professional. If I want to do scientific programming, then I still hold that Java and C/C++ make an excellent choice. Maybe Matlab and its clones should be considered too in that case (which again, it's pretty much interpreted C). Maple and clones are just Fortran. I mean, I don't see why you would want to get away from the traditional Java/C/C++-like languages unless you are doing things like natural language processing or AI, fields in which something like Lisp or Prolog are a better choice, but then, that is not "hobby" programming.
 
>And I'll second the statement that Swing, SWT, and AWT are pathetically
>slow.  You can bog down GTK all you want with a heavy theme, and it still
>runs faster than Swing or SWT.  Java's a nice language, but it's gotta
>improve the toolkit.  Good thing we've got gtk-java.
 
Totally agree with this. That is why Java is mainly used in the market for server applications and not for desktop applications. Java GUI applications are slow and kind of a pain to program (though I think it is very good that they use Swing in CS 142 as a way to show why inheritance and polymorphism is useful in an illustrative and visual way). GTK and Qt rock (probably GTK more than Qt), and I hope the Mono Team improve Monodevelop to the point in which it can compete with VS.NET at making GUIs.
 
One thing to add: I know Mono is still at an early stage (first stable release), but I think C# is a pretty neat language that should be considered as well. It unifies in one language a lot of the nice features of several languages and and fixes a lot of the very annoying things you can find in Java and in C++. It is a shame that M$ came up with it first, but we will still have it for Linux :)
Chris Alvarez
[EMAIL PROTECTED]
ext. 1-3837
IS&T Web Applications Services
Novell, Inc., the leading provider of information solutions
http://www.novell.com
_______________________________________________
newbies mailing list
[EMAIL PROTECTED]
http://phantom.byu.edu/cgi-bin/mailman/listinfo/newbies

Reply via email to