In several podcasts the future of the Java language is discussed. People look at new(er) languages like Scala, Ruby, Groovy etc. And people argue that the Java language is not moving forward.
I am in software development about 25 years and learned about 12 languages so far. I developed with RAD tools in times when nobody knew about such tools. So I know about the pros and cons of different languages. I am quite new to Java, but I looked at different languages for quite a while before I have definitely decided to switch to Java (despite the fact that most people in my near want to convince me to .NET) for new projects. 1. The language itself is just one part that is important, but there are other major "players" here: The IDE and it's stability, the core libraries, other 3rd-party libraries available and the community to name a few. For me NetBeans was the clear winner here over the MS Visual Studio for example. 2. Introducing too many different idioms to the language itself makes it more difficult to learn and creates boilerplate thinking when writing and reviewing code. So I can understand if people think many times before adding some new stuff to the Java core language. Having said that I don't understand why I can't do a switch on strings - this is something really missing (was one of the first things I noticed really, really missing). 3. The .NET introduced the option to write in any language - although basically just VB.NET and C# is around. Whenever I attended .NET events at Microsoft everybody told me that I should use C# over VB.NET because that is also where Microsoft is focusing. And I could understand this very well because having different components written in different languages makes it harder to read through the whole project - it is good to have one standard. Software development is not fashion industry. Different styles are more annoying than nice here. In the extremer cases a developer needs to be familiar with at least 3 languages when joining a project. With the rising of so many different languages for the Java platform I worry about a jungle of different languages that will be around in a few years. 4. My experience showed that you can be much more efficient and productive if you use a language you are already familiar with and already have written your own helpful tool classes/methods/libraries than using "the optimal language for the particular requirements". Switching main daily-use-language is a big effort. This is not something you want to do often. Therefore: I have chosen Java because it seems that I can implement every software project (that I would probably work on - I am not going to develop a hardware driver) using Java. And the good point is also that when I need JavaScript I at least remember to put the semicolon and can use other familiar syntax. I wrote a lot of MS Office macros in the past and knowing that I can use Java also for writing Open Office addons makes me feel good. 5. In one of the latest podcasts there was the discussion of Google missing the point focusing too much on the Java language. When I heard that GWT tries to help me in the way that I can keep writing Java code for AJAX style development I become happy. Why: I did not do much JavaScript in the past and I really appreciate having a homogeneous project without mixing too many languages. So if I can keep writing Java code that sounds great. 6. The importance of good GUI design tools for me seem to be somehow forgotten sometimes. For me it is a mission critical thing because without a good GUI design tool a very lot of effort goes in the GUI design/development. This is something why I love Swing and Matisse - that seems to work good (at least until now) and it even produces clean code (even configurable). My experience with Eclipse, SWT and Visual Editor was awful on the other hand. Talking about all the web development frameworks the availablility of GUI design tools is sometimes forgotten. 7. I don't think that Java should be considered as "dead" because not evolving any more / so much. One of the reasons I switched to Java was my impression that this is a mature thing. I am working at a small company and we don't have the time and money to struggle around with things being the early adopter. So I do consider Java as being good and mature. From what I have seen so far from C# is that Microsoft has just (again) copied something that has been invented by others and knowing to be successful. Thanks to you all - I am happy to be with you, Martin. P.S.: It seems to me that there are very few people today deciding to switch to Java now. Maybe just an impression.... --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to javaposse@googlegroups.com To unsubscribe from this group, send email to javaposse+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/javaposse?hl=en -~----------~----~----~----~------~----~------~--~---