At 8/14/11 08:00 PM, Kammce wrote:
At 8/4/11 05:37 PM, SeeInTheDark wrote:
Pretty much everyone who has a clue has told me that both of these are better than Java.The fact that you just said that makes me think that you are not a Real Programmer. Java, C++, C#, Python, perl, Ruby and all the rest are all tools. They all have their pros and cons. If I need to fix my fan, I do not get out my hatchet or hammer. Those are not the right tools for the job. The right tool would be a screw driver in my case with my fan.
I learned Java first, but I was web designing before that. At this point, I have no need to learn anyone programming language because I know how to program, therefor, I can use any programming language. Hopefully you and many other people will understand that.
Of course they are all tools, and they have their ups and downs, but there are major preferences and stigmas for programming languages because of those ups and downs, just like one brand of screwdrivers versus another. For example, a programmer working in Python gets the job done faster, with more time to optimize his/her code, than a Perl programmer or Java programmer. Because of that, there are web developers whom will pick Python over Perl because they can iterate on projects more quickly.
Also, knowing one language doesn't give you the entire spectrum of all languages. One, just because you learned Java doesn't mean you know Python just as well - there are huge language differences. Two, memory management in Java pales in comparison to C++, but is also far different than Python's or Ruby's. Three, there are multiple paradigms, with each programming language belonging to one or multiple paradigms: procedural, object-oriented, functional and multi-paradigm are just a few, each with their own quirks that will shape much of the syntax, but not all (i.e, Python and C++ are both OOP languages, but there are vast differences in their syntax); programming paradigms also affect the structure and style of your code in a way (you obviously don't program the same way in procedural-programming languages than you do in OOP). These are three clear reasons why learning one language isn't learning all languages, as well as the journey that software engineers take to construct *better* programming languages.