Click here to Skip to main content
15,878,959 members

Welcome to the Lounge

   

For discussing anything related to a software developer's life but is not for programming questions. Got a programming question?

The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.

 
GeneralRe: What's wrong with Java? Pin
markrlondon4-Mar-21 4:31
markrlondon4-Mar-21 4:31 
GeneralRe: What's wrong with Java? Pin
trønderen4-Mar-21 6:57
trønderen4-Mar-21 6:57 
GeneralRe: What's wrong with Java? Pin
Rage4-Mar-21 7:01
professionalRage4-Mar-21 7:01 
GeneralRe: What's wrong with Java? Pin
Greg Utas4-Mar-21 7:51
professionalGreg Utas4-Mar-21 7:51 
GeneralRe: What's wrong with Java? Pin
Gerry Schmitz4-Mar-21 8:38
mveGerry Schmitz4-Mar-21 8:38 
GeneralRe: What's wrong with Java? Pin
Rick York4-Mar-21 9:34
mveRick York4-Mar-21 9:34 
GeneralRe: What's wrong with Java? Pin
Cp-Coder4-Mar-21 14:39
Cp-Coder4-Mar-21 14:39 
GeneralRe: What's wrong with Java? Pin
trønderen5-Mar-21 6:33
trønderen5-Mar-21 6:33 
I grew up with Open Systems Interconnection - communication protocols that are very explicitly designed for being completely independent of any given tool used to generate the protocol elements. One very fundamental protocol principle is that the application, and all lower layers, should relate to the protocol specification, and nothing else.

As OSI was pushed into the darkness, it felt like a rope being tightened around my neck: the protocols replacing the OSI ones more or less demanded that you use specific libraries, specific OS conventions, specific languages - or else you would have to emulate those specific libraries, OSs and languages. But that is troublesome, because new extensions were added all the time, and keeping up with the updates to the libraries, OSs and languages in your emulation was almost impossible.

Sometimes, the binding to specific tools is not immediately apparent. Take the RFC 4506 serialization format (a.k.a SUN XDR): In my archives from the years of the network wars is a "benchmark" of it against OSI BER (Basic Encoding Rules). XDR beats BER by an high factor. What the benchmark documents keep perfectly quiet about is that XDR is more or less a direct streaming of the binary layout of a C struct on a SUN machine; there is hardly any conversion at all. After generating the red tape, you set that byte pointer to the start of the struct and send the following sizeof(struct) bytes out on the line. (Needless to say, this benchmark was run on a SUN.)

I never thought BER would be anywhere as fast as XDR (BER has a lot more flexibility, which can't be realized at zero extra cost). But if you set up a similar benchmark on a non-SUN machine, the serialization cost of XDR might easily raise by a magnitude. Say, if the machine had a different float format. Different byte order. Maybe an old machine wouldn't be byte addressable - my first three university years, I was programming non byte addressable machines exclusively; the Univac even used 1-complement integers, and its proprietary 6-bit character set. (The Decsystem series used 7-bit ASCII, packed 5 to a 36-bit word.) Say, if your language has proper string handling, you will have to explicitly add a C-style terminating NUL at the end (a use of NUL which is in direct conflict the the ASCII / ISO 646 standard). The specification of how to encode a structure is given by how a C declaration of it looks.

And so on. This is typical: As long as you use the "proper" machine, the "proper" language, the "proper" OS, you find it very easy to read the specifications and implement the standards. If you come from a different environment: Not so.

There is so much of "You can have the T-Ford in any color you want, as long as you want it in black".

This is my major objection against Java: It is not just another language that fits in with other languages, under an arbitrary OS. It creates its own world, telling others that you sure can join in -- if you adapt to the Java way. It is your responsibility to adapt to Java, not the other way around. And Java will be the master of the Java environment.

(I have the same objections against Python: It makes a world of its own, trying to monopolize software development completely. Can you compile a Python library, making it callable through a standard calling convention from an arbitrary compiled language? Dream on...)

I like .NET as a language independent, OS independent platform. Java affectionados may claim that JVM is not in principle Java/*nix bound, but with .NET, you see it in practice as well. (But it cannot be hidden that a lot of Windows GUI stuff is based on p/invoke, which really should have been avoided!)

When MFC came on the scene, I rejected it because I felt that it tried to bind me on hands and feet - the philosophy of multi-tier software design wasn't well developed at the time, and MFC most definitely was not designed for such ideas). Java by itself is not that restrictive, but the Java ecosystem creates a similar tie-in that I do not want to live by.
GeneralRe: What's wrong with Java? Pin
Rick York5-Mar-21 6:39
mveRick York5-Mar-21 6:39 
GeneralRe: What's wrong with Java? Pin
NelsonGoncalves4-Mar-21 20:21
NelsonGoncalves4-Mar-21 20:21 
GeneralRe: What's wrong with Java? Pin
Member 133016794-Mar-21 23:03
Member 133016794-Mar-21 23:03 
GeneralRe: What's wrong with Java? Pin
NelsonGoncalves4-Mar-21 23:23
NelsonGoncalves4-Mar-21 23:23 
GeneralRe: What's wrong with Java? Pin
Member 133016795-Mar-21 0:03
Member 133016795-Mar-21 0:03 
GeneralRe: What's wrong with Java? Pin
trønderen5-Mar-21 7:18
trønderen5-Mar-21 7:18 
GeneralRe: What's wrong with Java? Pin
NelsonGoncalves6-Mar-21 3:11
NelsonGoncalves6-Mar-21 3:11 
GeneralRe: What's wrong with Java? Pin
Peter Adam4-Mar-21 21:07
professionalPeter Adam4-Mar-21 21:07 
GeneralRe: What's wrong with Java? Pin
Member 133016794-Mar-21 22:47
Member 133016794-Mar-21 22:47 
GeneralRe: What's wrong with Java? Pin
Martin ISDN4-Mar-21 22:58
Martin ISDN4-Mar-21 22:58 
GeneralRe: What's wrong with Java? Pin
Member 133016794-Mar-21 23:07
Member 133016794-Mar-21 23:07 
GeneralRe: What's wrong with Java? Pin
Martin ISDN5-Mar-21 1:49
Martin ISDN5-Mar-21 1:49 
GeneralRe: What's wrong with Java? Pin
Dan Neely5-Mar-21 2:44
Dan Neely5-Mar-21 2:44 
GeneralRe: What's wrong with Java? Pin
obermd5-Mar-21 3:35
obermd5-Mar-21 3:35 
GeneralRe: What's wrong with Java? Pin
Bruce Patin5-Mar-21 6:02
Bruce Patin5-Mar-21 6:02 
GeneralRe: What's wrong with Java? Pin
Cp-Coder5-Mar-21 6:22
Cp-Coder5-Mar-21 6:22 
GeneralRe: What's wrong with Java? Pin
Bruce Patin5-Mar-21 10:22
Bruce Patin5-Mar-21 10:22 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.