Java performance

Discussion in 'Mac Programming' started by eric_n_dfw, Oct 14, 2005.

  1. macrumors 65816

    eric_n_dfw

    Joined:
    Jan 2, 2002
    Location:
    DFW, TX, USA
    #1
    Spinning a discussion from another thread off to here...


    Microsoft can do that - they have the upper hand - Sun cannot afford to piss off Windows based developers. I'd venture a bet that there is a very miniscule number of Java developers that use Sun machines for develoment (deployment is a different story). If the JDK sucks on the desktop of the majority of developers, they move to .NET, Ruby, PHP, etc...

    Sun may not like it, but that's the way it is.

    (NOTE: Ironicly, I say this while I've been developing on Solaris boxes for the past 5 years... but only because we had to for various reasons. We (my team) just finished a network migration that allows us to develop on our own workstations and it's like heaven!)
     
  2. macrumors member

    teh_pwnerer

    Joined:
    Oct 17, 2005
    #2
    I used to develop Java on Solaris. I didn't think it was bad.
     
  3. thread starter macrumors 65816

    eric_n_dfw

    Joined:
    Jan 2, 2002
    Location:
    DFW, TX, USA
    #3
    Honestly, I think it was a matter of developing remotely, using X windows and/or VNC to a server where the IDE was running. The responsiveness of the GUI is so much slower (even on a good network) than when running on your own machine.

    Also, sharing a development server (quad CPU, 4GB ram) between a dozen or more developers the ant builds can be as much as 8 times slower than when we use our own machines.

    I developed on a large C++ app at my prior job on Solaris with lesser machines and fewer developers and compiles were pretty fast so a lot of it may be our environment.
     
  4. macrumors member

    teh_pwnerer

    Joined:
    Oct 17, 2005
    #4
    Probably your environment. I've never been completely satisfied with X over the network. I'm having flashbacks of a heated debate with a coworker who said I was too picky/demanding when asking for better performance from X on a LAN. I still think I'm right.

    I remember using a Sun Blade 1000, build periods were relatively short compared to the Power Mac and Wintel machines. On group machines, yeah it can get annoying.

    Is it bad etiquette to renice other builds down to 20? Nobody told me.
     
  5. thread starter macrumors 65816

    eric_n_dfw

    Joined:
    Jan 2, 2002
    Location:
    DFW, TX, USA
    #5
    Yeah, none of us developers have renice privileges. (thank heavens! there'd be blood on the walls if someone did that to me!)
     
  6. macrumors 603

    jeremy.king

    Joined:
    Jul 23, 2002
    Location:
    Fuquay Varina, NC
    #6
    Whats wrong with this picture?

    You really develop (as in writing code/builds/etc...) on a shared server? Last I checked it wasn't the early 90s anymore. That would be difficult in ANY environment.
     
  7. thread starter macrumors 65816

    eric_n_dfw

    Joined:
    Jan 2, 2002
    Location:
    DFW, TX, USA
    #7
    ClearCase dynamic views with a Unix server. Dynamic views rock for large development teams, but because of our network topology and corporate security mandates (it's a long story) we cannot mount them to our desktop machines.

    We just started using a new Eclipse plugin (ClearCase Remote Client) that allows us to have the equivalent of a "snapshot" view on our machines - but not everyone is using it yet.

    As for our C/C++ code, yes - it's on shared servers and has to be as it is Solaris specific.

    FWIW: I never said our environment was "good"! :rolleyes:
     
  8. macrumors 603

    jeremy.king

    Joined:
    Jul 23, 2002
    Location:
    Fuquay Varina, NC
    #8
    You can say that again ;)

    For an industry (IT/IS/etc) that is almost entirely focused on productivity, I am surprised your employer chose an environment that seems to provide more obstacles than necessary.
     
  9. thread starter macrumors 65816

    eric_n_dfw

    Joined:
    Jan 2, 2002
    Location:
    DFW, TX, USA
    #9
    It's more of a matter of an old environment from our legacy code base (the C stuff) that got used for the new development. Our small company got bought by a huge company a few years ago and our stuff had to be "fit" into their existing network and security policies. That put our development boxes in a DMZ that could see the WWW but is firewalled off from our desktops. We have ports punched open to get to them, but ClearCase uses RPC calls which are not routable over/through those firewalls. If we want desktop access to our ClearCase we have to relinquish control of the SCM stuff to our outsourced IT vendor (another huge company) that does things is a back-assward way compared to our workflow. So, we deal with it.

    One nice thing about our Java stuff is that, since it has been developed (and still must be unit tested) on the exact same platforms as the QA and production servers, we haven't run into a lot of stupid issues that other people in our "parent company" have when you use Windows to develop and Unix/Linux to ship like case insensitivity file system issues, app server or JDK version differences, etc.
     
  10. macrumors 68040

    plinden

    Joined:
    Apr 8, 2004
    #10
    We are still stuck with five year old Sun Ultra 5s, shared between 3-5 developers. Luckily I'm a Java developer so I use my laptop (but I'm not supposed to) unless there's something OS-specific (not very often) that needs to be looked at. The laptop is five times faster at compiling even with the dopey virus-checker running. That's 2 minutes on the laptop vs 10 minutes on the workstations.

    I really don't know what our managers are thinking. They could buy a single high end Sun workstation for OS-specific work, and each of us a generic Linux box for development. The productivity savings would pay for it all in the first month, but they have a fixed budget for equipment and they would rather buy new laptops for themselves annually - they need them to play Solitaire on cross country flights.

    Edit: This is brought up monthly, sometimes weekly, at our team meetings.
     
  11. thread starter macrumors 65816

    eric_n_dfw

    Joined:
    Jan 2, 2002
    Location:
    DFW, TX, USA
    #11
    Our builds take anywhere from 15 minutes (including a ton of JSP compilation) in the off hours to as high as 80+ minutes in mid-day if you get a bunch of people building at the same time.

    My Linux machine (2.6Ghz P4 I think, 1GB RAM) can do it in 6.
    My poor old G4 500Mhz PowerMac (also with 1GB RAM) can do it in about 15 to 20.

    Edit: Those are "clean" builds, incremental ones are much faster, of course. So it's not like we've all been doing 80 minute builds multiple times a day.
     
  12. macrumors 603

    jeremy.king

    Joined:
    Jul 23, 2002
    Location:
    Fuquay Varina, NC
    #12
    I didn't realize how nice I have it.

    Being a consultant, I have been sheilded (for the most part) from old/legacy platforms since I work almost solely in J2EE technologies. I am fortunate enough to work on engagments where I can use my own company provided laptop or a dedicated workstation. My current client has provided me with a p4 3GHz desktop with 1GB ram and a 19" monitor. Granted many of the apps I work on are "small" in comparison to those 80min build apps but I now realize it is nice to have my own machine that I can do what I want, within reason. My only beef is WSAD/RAD, but that whole a different story.
     
  13. thread starter macrumors 65816

    eric_n_dfw

    Joined:
    Jan 2, 2002
    Location:
    DFW, TX, USA
    #13
    Hehe - our J2EE stuff is pretty much legacy too! Okay, it's not as old as our C stuff, but we're spending a lot of time refactoring "code gone wrong!"

    Our stuff was mostly implemented before Struts was around so it's a home-grown MVC architecture where the lines between the M,V & C have gotten very blurry. :eek:
     
  14. macrumors 603

    jeremy.king

    Joined:
    Jul 23, 2002
    Location:
    Fuquay Varina, NC
    #14
    Even now Struts is considered legacy :) Everyone and their brother is pimping Spring, of which, I have to really read up on.
     
  15. thread starter macrumors 65816

    eric_n_dfw

    Joined:
    Jan 2, 2002
    Location:
    DFW, TX, USA
    #15
    Yep - we've just implemented some Spring injection stuff but we're still moving to Struts with Velocity tiles as that combo works best for our refactoring/redesign efforts.

    Spring is some pretty nice stuff - kind-of one of those, "why didn't someone think of this before" type things.
     

Share This Page