Why does Java suck so much?

Discussion in 'Programming & Software Development' started by one4spl, Jun 13, 2008.

  1. one4spl

    one4spl Member

    Joined:
    Dec 9, 2005
    Messages:
    427
    Location:
    Jamboree Hts, Brisbane
    I'm not a developer, I'm a sysadmin. I don't write software, I implement and use it.

    Freaking routers, printers and SANs often have Java web based configuration applications, and universally they are slow, glitchy and unreliable.

    I've just spent an hour trying to change a few settings on a printer and have had to restart IE 8 times and its starting to really shit me.

    Why are java apps like this? is it java or the developers that suck?

    If its Java then why do they use it? Why not just do a decent HTML interface?

    Discuss.
     
  2. gibbz

    gibbz Member

    Joined:
    Jan 20, 2004
    Messages:
    1,473
    Location:
    Adelaide, SA
    NFI, but I never install Java on any of my systems anymore. Causes to many issues and I hate it.
     
  3. STIK79

    STIK79 Member

    Joined:
    Jun 21, 2002
    Messages:
    1,056
    Location:
    Adelaide
    developers suck

    and HTML is going interact with a device how? :tongue:
     
  4. SupaGu

    SupaGu Member

    Joined:
    Jun 24, 2007
    Messages:
    468
    Location:
    Adelaide, Australia
    Mostly Java.
    I am a developer and have used Java, I avoid it like the plague. The Problem is its an interpreted language (effectively a fast script language). You need an interpreter to run the code. So this is why you always need to download some java application when running java applications on your PC.

    what gets me is why they put it on mobile phones!!!!!

    btwt: my router and printer have web interfaces :)
     
  5. shift

    shift Member

    Joined:
    Jul 28, 2001
    Messages:
    2,937
    Location:
    Hillcrest, Logan
    Fixed that for you.
     
  6. xsive

    xsive Member

    Joined:
    Jun 29, 2001
    Messages:
    4,335
    Java is compiled. It has nothing to do with scripting languages.
    You need a virtual machine not an interpreter. These are not the same thing.

    Java is so widespread because it's robust, powerful and applications can be optimised dynamically by the many Java compilers running in the background to perform as well as possible given some set of hardware constraints.

    It's also one of the few truly dynamic cross-platform development languages which is why it features everywhere.

    To answer the OP's question: it's not Java that sucks, it's the shitty Chinese developers writing the front-end for your hardware.
     
  7. SupaGu

    SupaGu Member

    Joined:
    Jun 24, 2007
    Messages:
    468
    Location:
    Adelaide, Australia
    thanks for correcting the bytecode and virtual machine, but you didn't need to cross out my "effectively a fast script language" comment :p
     
  8. Kabal

    Kabal Member

    Joined:
    Aug 1, 2001
    Messages:
    1,045
    Location:
    Melbourne

    ^^^^ This is the answer
     
  9. OP
    OP
    one4spl

    one4spl Member

    Joined:
    Dec 9, 2005
    Messages:
    427
    Location:
    Jamboree Hts, Brisbane
    I doubt this somehow, however.

    If you look at the overall shittyness of applications written in C++ (for example) I would guestimate that 20% of them are buggy, slow and use stupid amounts of CPU for no good reason... however with Java I would put this at about 80-90%.

    I am willing to accept that this is in-part due to the accessible and easily distributable nature of Java code.... but not all of it.
     
  10. STIK79

    STIK79 Member

    Joined:
    Jun 21, 2002
    Messages:
    1,056
    Location:
    Adelaide
    Because java is easier to write in you get hobbits coding stuff.
     
  11. hyperstyle

    hyperstyle Member

    Joined:
    May 24, 2003
    Messages:
    1,731
    Location:
    Brisbane
    Java applets suck. But there is nothing wrong with using java on the server side to interact with the hardware.
     
  12. nexx

    nexx Member

    Joined:
    Sep 23, 2002
    Messages:
    6,363
    Location:
    Brisbane
    I assumed because it can be cross platform.
     
  13. vanjastar

    vanjastar Member

    Joined:
    Nov 3, 2005
    Messages:
    228
    Location:
    Perth
    The difference between JavaRE and .NetRE is that .net works on one platform so they have no problems calling the WinAPI functions for window controls. The Win API is done in C and as such is helluva lot faster then the Swing Toolkit or whatever the hell Java uses to draw a User Interface.
     
  14. TMM

    TMM Member

    Joined:
    Mar 29, 2005
    Messages:
    7,488
    Because you don't need to recompile to every architecture? Compile once, and it works on every phone in existence = win.
     
  15. infiltraitor

    infiltraitor Member

    Joined:
    Sep 7, 2002
    Messages:
    3,801
    Location:
    melbourne Donated:$133.70
    more weirdness..
    an app that is in use where i work runs only on a specific version of java.
    which falls AOT when the SOE has a newer version of java and it tries to update.

    no idea why it needs a specific version to run. but it does.
     
  16. broady.nsw

    broady.nsw Member

    Joined:
    Apr 12, 2007
    Messages:
    31
    Location:
    Sydney - North Shore
    Swing sucks, Java does not.
     
  17. yihfeng

    yihfeng Member

    Joined:
    Nov 23, 2005
    Messages:
    1,400
    Location:
    Melbourne
    Because code written in C++ are often less complicated?

    It is hard to scale C++ apps up before the age of the language start to show, you start having memory leak problems etc...

    Because HTML is a mark up language...

    Correction, everyphone which has J2ME...
     
  18. vanjastar

    vanjastar Member

    Joined:
    Nov 3, 2005
    Messages:
    228
    Location:
    Perth
    Still doesn't explain why they don't use some kind of cgi with html.
     
  19. res

    res Member

    Joined:
    Feb 7, 2003
    Messages:
    839
    Location:
    California
    Not true, J2ME is heavily fragmented between devices. Write once run anywhere does not exist in mobile.
     
  20. Kataton1c

    Kataton1c Member

    Joined:
    May 1, 2002
    Messages:
    1,466
    Location:
    Adelaide
    It's the programmers and their code.

    It would be the same for any other language except, in this case, Java is the "standard". Java however, is "slower" when it comes to performance.
     

Share This Page