Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Are Java-based Products really trustworthy?

Are Java-based Products really trustworthy?

Scheduled Pinned Locked Moved The Lounge
javacomperformancequestion
33 Posts 21 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • V Vasudevan Deepak Kumar

    Hailing from Microsoft technologies and exposed to an elevated level of user-friendliness, we normally look down on grey-technologies like Java. Today, one of the famous instant messengers from IBM pissed me off like anything. It miserably froze my PC like anything and I had no other go other than to hard boot the PC since even the three fingered salute to Windows was beyond the normal recognition. To that extent, all available memory has been gobbled up this hungry brute. :wtf: I really wonder if these folks really test their products before releasing them to market. Can't they gracefully communicate the message to the user? :mad: :mad:

    Vasudevan Deepak Kumar Personal Homepage
    Tech Gossips
    All the world's a stage, And all the men and women merely players. They have their exits and their entrances; And one man in his time plays many parts... --William Shakespeare

    D Offline
    D Offline
    dmitri_sps
    wrote on last edited by
    #10

    Vasudevan Deepak Kumar wrote:

    all available memory has been gobbled up

    Probably, it was the opposite :sigh: - not all memory was available to it. There is a fundamental difference between Windows and CLR apps and Java - Java JRE runs with a limited heap size. Currently, it "...defaults to smaller of 1/4th of the physical memory or 1GB. Before J2SE 5.0, the default maximum heap size was 64MB..." (quote from Sun documentation[^]). What happens when the app works with large data (in your case, long message lists, probably), is that the smaller available heap memory, the more time is spent on memory defragmentation, de-allocation, etc. Exponentially more time, the closer the heap comes to its limit. This is the effect you can get with non-Java apps, when your PC runs out of virtual memory - machine slows to being almost dead. With Java app though, it stays within its memory limits, but eats all CPU. So, on the topic of being "trustworthy", Java is both better than other languages (not sure any of them supports throws clause), and worse - since in real world it is very hard to write an app that scales on data size (in any language - .NET just has more memory at its disposal). Maybe that is why Java is more popular as server-side framework: it's all pooled and buffered... :) If you have problems with some Java app you use, try increasing the heap size. If there is a command that starts your app, add the -Xmx option; if you just double-click some app.jar file, create a shortcut with the explicit command line, for example:

    javaw -Xmx1024m -jar app.jar

    R 1 Reply Last reply
    0
    • P Pawel Krakowiak

      Christian Graus wrote:

      I guess you've not used Vista yet ? Or VS 2008 ?

      They should have taken you to the Mojave Experiment, you know? It would be funny to see their own computer break and you telling them that Vista sucks even after the experiment. :-D (by the way: "it works for me" ;P )

      L Offline
      L Offline
      Lost User
      wrote on last edited by
      #11

      I still think those people got paid, or maybe Mojave is actually Ubuntu. :rolleyes: Vista never got me saying "it works", no matter how much I wanted it to work. :doh:

      P O 2 Replies Last reply
      0
      • L Lost User

        I still think those people got paid, or maybe Mojave is actually Ubuntu. :rolleyes: Vista never got me saying "it works", no matter how much I wanted it to work. :doh:

        P Offline
        P Offline
        Pawel Krakowiak
        wrote on last edited by
        #12

        sk8er_boy287 wrote:

        Vista never got me saying "it works", no matter how much I wanted it to work.

        It works for me (I've been using it for 14 months), albeit it could be far more efficient... I will see once I buy new hardware, hopefully next month.

        1 Reply Last reply
        0
        • N Nemanja Trifunovic

          Shog9 wrote:

          There are good Java-based desktop products.

          Really? Which ones? I heard IntelliJ was good, but haven't actually seen any good Java desktop product.

          Programming Blog utf8-cpp

          E Offline
          E Offline
          ed welch
          wrote on last edited by
          #13

          eclipse

          T P N 3 Replies Last reply
          0
          • D dmitri_sps

            Vasudevan Deepak Kumar wrote:

            all available memory has been gobbled up

            Probably, it was the opposite :sigh: - not all memory was available to it. There is a fundamental difference between Windows and CLR apps and Java - Java JRE runs with a limited heap size. Currently, it "...defaults to smaller of 1/4th of the physical memory or 1GB. Before J2SE 5.0, the default maximum heap size was 64MB..." (quote from Sun documentation[^]). What happens when the app works with large data (in your case, long message lists, probably), is that the smaller available heap memory, the more time is spent on memory defragmentation, de-allocation, etc. Exponentially more time, the closer the heap comes to its limit. This is the effect you can get with non-Java apps, when your PC runs out of virtual memory - machine slows to being almost dead. With Java app though, it stays within its memory limits, but eats all CPU. So, on the topic of being "trustworthy", Java is both better than other languages (not sure any of them supports throws clause), and worse - since in real world it is very hard to write an app that scales on data size (in any language - .NET just has more memory at its disposal). Maybe that is why Java is more popular as server-side framework: it's all pooled and buffered... :) If you have problems with some Java app you use, try increasing the heap size. If there is a command that starts your app, add the -Xmx option; if you just double-click some app.jar file, create a shortcut with the explicit command line, for example:

            javaw -Xmx1024m -jar app.jar

            R Offline
            R Offline
            Russell Jones
            wrote on last edited by
            #14

            dmitri_sps wrote:

            So, on the topic of being "trustworthy", Java is both better than other languages (not sure any of them supports throws clause)

            While checked exceptions are a great idea in theory, and used well they should make programs more robust, too many people either end up wrapping a whole method in a try-catch to swallow Exception or declare their method like this public void myMethod() throws Exception { //Code that will throw a variety of checked exceptions } Other than that I agree that Java is a great language. I played with it on and off since the IE4 days and since moving my home machines to Ubuntu It's become my language of choice for my personal projects. Russell

            D 1 Reply Last reply
            0
            • V Vasudevan Deepak Kumar

              Hailing from Microsoft technologies and exposed to an elevated level of user-friendliness, we normally look down on grey-technologies like Java. Today, one of the famous instant messengers from IBM pissed me off like anything. It miserably froze my PC like anything and I had no other go other than to hard boot the PC since even the three fingered salute to Windows was beyond the normal recognition. To that extent, all available memory has been gobbled up this hungry brute. :wtf: I really wonder if these folks really test their products before releasing them to market. Can't they gracefully communicate the message to the user? :mad: :mad:

              Vasudevan Deepak Kumar Personal Homepage
              Tech Gossips
              All the world's a stage, And all the men and women merely players. They have their exits and their entrances; And one man in his time plays many parts... --William Shakespeare

              J Offline
              J Offline
              jsc42
              wrote on last edited by
              #15

              Vasudevan Deepak Kumar wrote:

              Today, one of the famous instant messengers from IBM ****** me off like anything

              If it is the one [clue try running it at the Same Time as anything else]that I have to use (company policy), avoid version 7.5.1. On my PC (your mileage may vary) it keeps crashing with Java null pointer exceptions. I have tried loading various JREs but it seems to use its own one. Versions 7.5 and 3.1 are OK. Interestingly, 7.5.1 is the first version that used Eclipse as its development tool (so you get tons of empty folders created when you install it).

              1 Reply Last reply
              0
              • R Russell Jones

                dmitri_sps wrote:

                So, on the topic of being "trustworthy", Java is both better than other languages (not sure any of them supports throws clause)

                While checked exceptions are a great idea in theory, and used well they should make programs more robust, too many people either end up wrapping a whole method in a try-catch to swallow Exception or declare their method like this public void myMethod() throws Exception { //Code that will throw a variety of checked exceptions } Other than that I agree that Java is a great language. I played with it on and off since the IE4 days and since moving my home machines to Ubuntu It's become my language of choice for my personal projects. Russell

                D Offline
                D Offline
                dmitri_sps
                wrote on last edited by
                #16

                I agree: no feature makes code good by itself. You fight memory leaks in Java and .NET alike, thread synchronization, etc. I should have added that using construct in C# is something far better than Java's alternative of using finally blocks - but, who knows, as you said "too many people" might just ignore both of these options But still, an average Java desktop application would fiind it hard to cope with large data... :|

                D 1 Reply Last reply
                0
                • E ed welch

                  eclipse

                  T Offline
                  T Offline
                  toxcct
                  wrote on last edited by
                  #17

                  I second this strongly. In fact, I was about to Post that, and then saw your answer !

                  [VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]

                  1 Reply Last reply
                  0
                  • V Vasudevan Deepak Kumar

                    Hailing from Microsoft technologies and exposed to an elevated level of user-friendliness, we normally look down on grey-technologies like Java. Today, one of the famous instant messengers from IBM pissed me off like anything. It miserably froze my PC like anything and I had no other go other than to hard boot the PC since even the three fingered salute to Windows was beyond the normal recognition. To that extent, all available memory has been gobbled up this hungry brute. :wtf: I really wonder if these folks really test their products before releasing them to market. Can't they gracefully communicate the message to the user? :mad: :mad:

                    Vasudevan Deepak Kumar Personal Homepage
                    Tech Gossips
                    All the world's a stage, And all the men and women merely players. They have their exits and their entrances; And one man in his time plays many parts... --William Shakespeare

                    M Offline
                    M Offline
                    Madhu Cheriyedath
                    wrote on last edited by
                    #18

                    Vasudevan Deepak Kumar wrote:

                    Hailing from Microsoft technologies and exposed to an elevated level of user-friendliness,

                    I am not 100% agree with you on this statement. I have seen Eclipse offering nice (and better) GUI features (and fast too) even before Visual Studio 2005 was doing the same things. In terms of user-friendliness some of the Apple developed software is far superior than Microsoft's (my personal opinion).

                    Vasudevan Deepak Kumar wrote:

                    we normally look down on grey-technologies like Java.

                    Could you please tell me what you meant by 'grey-technologies'? No matter whatever tools/technologies you use, a badly developed application/tool is bad. Nothing more nothing less. I am not supporting Java or Microsoft. As someone else pointed out (about VB programmers), if a person uses only one language for everything, you can see these problems. I think for a company like IBM, it may be cost effective to develop in one language (Java) rather than developing in native languages like C/C++.But if another company chooses .NET for similar reason, they may also end with same kind of issues -Madhu

                    1 Reply Last reply
                    0
                    • E ed welch

                      eclipse

                      P Offline
                      P Offline
                      pboucher
                      wrote on last edited by
                      #19

                      I would add that good products made for Eclipse are excellent. Aptana is one of them. Unless I am mistaken, I is written entirely in Java. Pierre Boucher 'Bien souvent on se rend coupable en négligeant d'agir, et non pas seulement en agissant.' - Marc Aurèle, empereur et philosophe romain.

                      1 Reply Last reply
                      0
                      • J John M Drescher

                        How about openoffice? [EDIT]I see that only parts of it are java based. http://wiki.services.openoffice.org/wiki/Java_and_OpenOffice.org#OpenOffice.org_Base[^] [/EDIT]

                        John

                        N Offline
                        N Offline
                        Nemanja Trifunovic
                        wrote on last edited by
                        #20

                        John M. Drescher wrote:

                        How about openoffice?

                        C++ :)

                        Programming Blog utf8-cpp

                        J 1 Reply Last reply
                        0
                        • E ed welch

                          eclipse

                          N Offline
                          N Offline
                          Nemanja Trifunovic
                          wrote on last edited by
                          #21

                          ed welch wrote:

                          eclipse

                          Slow and a memory hog.

                          Programming Blog utf8-cpp

                          N 1 Reply Last reply
                          0
                          • N Nemanja Trifunovic

                            John M. Drescher wrote:

                            How about openoffice?

                            C++ :)

                            Programming Blog utf8-cpp

                            J Offline
                            J Offline
                            John M Drescher
                            wrote on last edited by
                            #22

                            I thought about that because when I build it on gentoo linux, I know a good bit of time is spent compiling the java part. I have never looked at the source though. Perhaps the reason why it looks this way is that I use distributed building with gcc and I doubt the java compile is doing that.

                            John

                            1 Reply Last reply
                            0
                            • J John M Drescher

                              How about openoffice? [EDIT]I see that only parts of it are java based. http://wiki.services.openoffice.org/wiki/Java_and_OpenOffice.org#OpenOffice.org_Base[^] [/EDIT]

                              John

                              O Offline
                              O Offline
                              Owen37
                              wrote on last edited by
                              #23

                              I HATE OpenOffice! MSOffice just works. I fight with OpenOffice constantly just to get it to do simple things (like newspaper columns, envelope printing, etc). With MSOffice, it just works: no fiddling around with settings, etc. :-D

                              1 Reply Last reply
                              0
                              • L Lost User

                                I still think those people got paid, or maybe Mojave is actually Ubuntu. :rolleyes: Vista never got me saying "it works", no matter how much I wanted it to work. :doh:

                                O Offline
                                O Offline
                                Owen37
                                wrote on last edited by
                                #24

                                Vista works for me. I've got it running on 2 laptops and a desktop. No real issues (of course, the hardware is all 2+Ghz Core-2 with 4G memory! :-\ ).

                                L 1 Reply Last reply
                                0
                                • N Nemanja Trifunovic

                                  ed welch wrote:

                                  eclipse

                                  Slow and a memory hog.

                                  Programming Blog utf8-cpp

                                  N Offline
                                  N Offline
                                  Nemanja Trifunovic
                                  wrote on last edited by
                                  #25

                                  Someone voted:

                                  1.00/5 (1 vote)

                                  But it doesn't change the fact that eclipse is slow and consumes all the memoty it can find ;P

                                  Programming Blog utf8-cpp

                                  E 1 Reply Last reply
                                  0
                                  • D dmitri_sps

                                    I agree: no feature makes code good by itself. You fight memory leaks in Java and .NET alike, thread synchronization, etc. I should have added that using construct in C# is something far better than Java's alternative of using finally blocks - but, who knows, as you said "too many people" might just ignore both of these options But still, an average Java desktop application would fiind it hard to cope with large data... :|

                                    D Offline
                                    D Offline
                                    Dave Buhl
                                    wrote on last edited by
                                    #26

                                    dmitri_sps wrote:

                                    I should have added that using construct in C# is something far better than Java's alternative of using finally blocks

                                    The using construct is a bit different than the try/catch/finally construct, and C# actually does have a try/catch/finally construct as well. The difference is that using will ensure clean-up of resources even when an exception is encountered, it will take no action to handle the exception other than clean up the resources (close files, close database connection, etc).

                                    D 1 Reply Last reply
                                    0
                                    • N Nemanja Trifunovic

                                      Someone voted:

                                      1.00/5 (1 vote)

                                      But it doesn't change the fact that eclipse is slow and consumes all the memoty it can find ;P

                                      Programming Blog utf8-cpp

                                      E Offline
                                      E Offline
                                      enhzflep
                                      wrote on last edited by
                                      #27

                                      Precisely. To compare it to a steaming pile of .... would be perhaps unfair, though to say that eclipse is a nice piece of work worth having is pushing the friendship a bit too far. Linux or Windows, Eclipse is just plain slooooooooow. Shame on you Adobe for adopting it as the IDE for Flex - closing and restarting the whole app because I change active project. :mad::mad::mad::mad:

                                      1 Reply Last reply
                                      0
                                      • N Nemanja Trifunovic

                                        Shog9 wrote:

                                        There are good Java-based desktop products.

                                        Really? Which ones? I heard IntelliJ was good, but haven't actually seen any good Java desktop product.

                                        Programming Blog utf8-cpp

                                        K Offline
                                        K Offline
                                        Kevin McFarlane
                                        wrote on last edited by
                                        #28

                                        What about Eclipse? Yes, I know you're a non-IDE person. I've not used it but people say it's good. However, is it all written in Java?

                                        Kevin

                                        S 1 Reply Last reply
                                        0
                                        • O Owen37

                                          Vista works for me. I've got it running on 2 laptops and a desktop. No real issues (of course, the hardware is all 2+Ghz Core-2 with 4G memory! :-\ ).

                                          L Offline
                                          L Offline
                                          Lost User
                                          wrote on last edited by
                                          #29

                                          Mine is AMD Dual Core 6000+ (that's 3 GHz per core), and I've got SLI configured. I've got no problems running it, but it just doesn't work the way I want it to. It's a piece of crap! ATM, I like Ubuntu more. :rolleyes: Waiting for Windows 7 to make me say "it works" though...

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups