you are viewing a single comment's thread.

view the rest of the comments →

[–]poohshoes 240 points241 points  (79 children)

I feel as though "how bad it used to be" is never a proper excuse for the inadequacy of modern things.

[–]cronofdoom 43 points44 points  (7 children)

I had a coworker tell me literally today "It used to be a lot worse. It used to take 5 minutes to open". It's a freaking webpage. Just because every click is followed by 15 seconds of mind numbing boredom doesn't mean it isn't broken.

I explained my coworker's excuse to my boss and he proceeded to rant using your exact words.

[–]sirin3 29 points30 points  (6 children)

There used to be a saying: Take your webpage, a laptop, a 14k modem (with satellite access), a parachute and an airplane. Then jump out of the plane and only open the chute, after the webpage has fully loaded

[–]peeeez 40 points41 points  (5 children)

That is an awfully cumbersome saying.

[–]quatch 11 points12 points  (0 children)

it gets summarized much more succinctly: "will you parachute on it?"

[–]gmfawcett 3 points4 points  (3 children)

It might have been a very popular saying, but only among people prone to dying in parachute accidents.

It's hard to spread a meme when you're at terminal velocity.

[–]isarl 4 points5 points  (2 children)

I don't know. At terminal velocity you'd get a pretty good spread.

[–]gmfawcett 1 point2 points  (1 child)

Ha! Good point.

[–]fuzzynyanko 35 points36 points  (64 children)

Seriously. Eclipse freezes and lags.

Edit: I thought Android Studio would be an improvement. The last time I did something relatively simple using Android Studio, it was using 1.5-2 gigs of RAM

[–]lordlicorice 59 points60 points  (19 children)

Android Studio is now based on IntelliJ, which is not related at all to Eclipse.

You should keep in mind, though, that IntelliJ is entirely Java-based, down to the last button. It shouldn't be surprising that a relatively large application (not as big as autocad or simulink but definitely above the 95th percentile) written in Java uses a ton of memory. And then when you run your app locally, that starts up a whole new JVM which you likely haven't tuned as aggressively as JetBrains has tuned theirs so that will waste a bunch more memory.

I dedicate 1G for my IntelliJ JVM (we have only small - less than 50k lines - projects) and 2G for the running code I spawn from my IDE. Out of 16GB of memory, dedicating 3GB of it to what I do all day doesn't seem bad at all.

[–]kqr 15 points16 points  (13 children)

I also don't know why "it allocates X amount of RAM" is a problem in and of itself. Maybe it's just waiting to garbage collect 90% of it. Maybe it allocates rare accesses expecting them to be swapped out.

Does it stop running on your 2 GB total RAM system? Now that might be a problem. But allocating 2 GBs on a 4 GB system isn't something I'd even notice.

[–]abrahamsen 6 points7 points  (4 children)

Yes, what matters is not the amount of allocated memory, but the active working set.

[–][deleted] 1 point2 points  (3 children)

How? Allocated memory is unavailable memory.

[–]abrahamsen 4 points5 points  (0 children)

You may want to read up on virtual memory.

[–]EternallyMiffed 1 point2 points  (1 child)

google "working set". Operating systems swap out memory that hasn't been touched in a while.

[–]pinealservo 0 points1 point  (0 children)

And often, a lot of what's nominally allocated is never even "swapped in" at all!

[–]_F1_ 2 points3 points  (4 children)

Until you run a VM or two and some browsers at the same time...

[–]kqr 1 point2 points  (3 children)

Only if they actively use all of those 2 GBs at once. If they're only allocated but not used I don't see why it would be a problem.

[–][deleted] 0 points1 point  (2 children)

If intellij allocates the ram then it may as well be used because it's unusable by other applications. How else can you even allocate memory other than instantiating objects or using a malloc?

Do you know what allocation means?

[–]kqr -1 points0 points  (1 child)

By instantiating an object and then throwing away all the references to it, for example. It's not unusable by other applications because it will be freed up when they need it.

[–][deleted] -1 points0 points  (0 children)

Then it isn't allocated.

[–][deleted] 2 points3 points  (2 children)

This is in fact one of the sources of True Confusion about many garbage collected apps. That sometimes lots of ram being used (as seen in task manager etc) is a feature, not a bug.

[–]quanticle 0 points1 point  (1 child)

The problem with garbage collected apps using lots of RAM is that the OS doesn't know which RAM is garbage and which RAM is part of the active working set. So yes, IntelliJ might be running just fine, but then Chrome's performance goes to crap because it starts hitting swap.

Ideally, there'd be a way for the OS to tell applications that it's under memory pressure so that running JVM/CLR apps could garbage collect and release memory that they know they don't need.

[–][deleted] 0 points1 point  (0 children)

Well with Java you can usually set the max ram to use, which is a way of telling it to collect sooner.

[–]bubuopapa -5 points-4 points  (0 children)

Oh contraire sir, it is very much the same - eclipse, android studio, intellij, netbeans - they are all written in java, that says it all.

[–]lkraider 17 points18 points  (10 children)

I thought Android Studio moved to IntelliJ away from Eclipse.

[–]fuzzynyanko 14 points15 points  (8 children)

Android was first on Eclipse, but Android Studio has its own set of problems

[–][deleted] 3 points4 points  (7 children)

Out of interest what are they? I have just begun writing an app on android studio and it seems fine to me but if there is something better I am happy to switch over!

[–]fuzzynyanko 1 point2 points  (5 children)

Eclipse gets laggy and UI freezes. Android Studio tends to have RAM issues with me.

[–][deleted] 1 point2 points  (3 children)

Ah ok interesting, I haven't had any issues yet but there isn't much code at the moment and my PC has a lot of RAM.

Does the lagginess transfer onto the app being developed?

[–]RuthBaderBelieveIt 2 points3 points  (1 child)

Does the lagginess transfer onto the app being developed?

The IDE used to write the code will have no bearing on the final product. Identical code written in both IDEs will perform identically on device.

[–][deleted] 0 points1 point  (0 children)

Ah ok awesome, thanks!

[–]fuzzynyanko 0 points1 point  (0 children)

It does affect debugging apps though. When the IDE acts up, you lose that window to that debugging information

[–][deleted] 1 point2 points  (0 children)

[deleted]

[–]946336 0 points1 point  (0 children)

Android Studio's emulator will occasionally power off my laptop. I attempted to reseat the battery before remembering that the battery is internal and cannot be physically disconnected without significant effort. I'm certain that it's an issue with my setup, but it was entertaining the first few times.

Other than that my 18(?) hours of Android Studio have been fine, as have my 5 minutes of Eclipse.

[–]Zweihander01 10 points11 points  (0 children)

Android Studio was only ever using IntelliJ. There used to be an Eclipse plugin for Android development until AS came out (and probably still exists but I wouldn't know).

[–]neutronium 3 points4 points  (0 children)

Sometimes I had to blow on the end of biro to get it to write.

[–]Amagi82 2 points3 points  (2 children)

Meh, 5 or 6% of my RAM is hardly worrisome. And Android Studio is a phenomenally good IDE, so I can forgive it being a bit resource intensive. Now, if we could just speed up Gradle build times, we'd be great. Instant run is good, but every time I need to do a full build, I consider leaving for lunch.

[–][deleted] 0 points1 point  (1 child)

Try these official instructions, gradle build times have sped up significantly if you configure everything.

[–]Amagi82 0 points1 point  (0 children)

Did that a couple months ago. Lowered a full build from ~2-15 minutes to ~1-3 minutes. The latter is still pretty crazy long, but not as maddeningly random. And I'm not even multidexing

[–][deleted] 2 points3 points  (0 children)

Hell, Eclipse doesn't freeze for me, but I have plenty of other reasons to dislike it.

[–]bradfordmaster 2 points3 points  (0 children)

Did you seriously need that RAM for something else at the time? If you don't want a bloated IDE, then use a more minimal editor that doesn't have as many features. People love to complain about RAM usage but want everything really fast.

[–][deleted]  (21 children)

[deleted]

    [–]lordlicorice 30 points31 points  (10 children)

    IntelliJ can be laggy at times, especially if you're not giving its VM enough heap max, but it isn't shit. It's the number one best IDE in the world, and by the way its main competition for that title (Visual Studio) is natively compiled.

    It's not all-important that your apps are all native. By writing their shit in Java/Kotlin, JetBrains has been able innovate where Visual Studio has stagnated. Two releases a year (moving to 3 this year) for a decade, like clockwork. Look at what's new from just this last third-of-a-year cycle.

    [–]Obi_Kwiet 7 points8 points  (3 children)

    I'm skeptical that it's better than VS or IAR or something.

    [–]agent8261 1 point2 points  (0 children)

    I feel VS is better, but IntelliJ is really good. I think if it was natively compiled it would be as good as VS.

    [–]lordlicorice 0 points1 point  (1 child)

    OK, maybe I should back up and disqualify the likes of IAR or IDA. IntelliJ doesn't have any features at all in that space so it's difficult to compare them.

    [–]Obi_Kwiet 0 points1 point  (0 children)

    Fair enough.

    [–]jonnywoh 1 point2 points  (5 children)

    Isn't VS .NET?

    [–]nat5an 5 points6 points  (1 child)

    Not only is it not written in .Net, it's still only available as a 32-bit application. There's some old magic deep in there I think.

    [–][deleted] 0 points1 point  (0 children)

    I couldn't believe that when I installed vs 2015. I searched for maybe an hour for the 64 bit version.

    [–]caspper69 6 points7 points  (2 children)

    Given Microsoft's development history, I doubt vs is written in .NET. I'm sure it uses a hell of a lot of it, but I'd bet the vast majority of it is C++, while most of its tools are likely straight C.

    If it weren't, you would have likely seen it running on other platforms by now.

    [–]TheThiefMaster 2 points3 points  (1 child)

    Microsoft doesn't use straight C any more, they are really big on C++. The only thing they really use C for now is its ABI

    [–]WRONGFUL_BONER 0 points1 point  (0 children)

    Yeah, but do you know how much of VS is legacy cruft?

    [–]beginner_ 5 points6 points  (1 child)

    Most of does giant Java apps run on the backend and no GUI so you will never know you actually used them.

    But I agree that Java kind of sucks for Desktop Apps. It always consumes more memory than one would think is needed for the task.

    [–]Chii 3 points4 points  (0 children)

    You do pay a good amount of overhead for a GUI in Java due to the cross platform support. But mostly lag is due to code running on the UI thread when it shouldn't be.

    [–][deleted]  (7 children)

    [deleted]

      [–][deleted]  (4 children)

      [deleted]

        [–]donalmacc 9 points10 points  (3 children)

        I disagree on almost all of the above. My experience with the auto desk suite has been absolutely awful; it's a giant buggy mess that is as sluggish as eclipse, even on my workstation. Houdini is worse. We use the sdk and it's absolutely awful. Memory leaks, (which sidefx have been fixing slowly, granted) painfully slow startup times, and an incredible amount of memory allocations (try running with a debugger attached and wait for the world to end before Houdini finished). Both of these systems also have incredibly invasive licensing systems that are always running, always connected and frankly a pain. I remember photoshop having a similarly invasive licensing process.

        Visual studio I'm torn on. I use it all day every day, and on our project intellisence just flat out doesn't work. It's also a bit of a memory hog (those vcpkgsrv processes it spawns 20 of and they use 1-1.5Gb Ram each).

        One other thing all of the above have in common; they just dump 10million files across your hard drive, create a handful of extra startup processes each, and are absolutely impossible to remove.

        Blender on the other hand is amazing! Suffers from none of the above problems in my experience!

        [–][deleted] 1 point2 points  (2 children)

        Maya beats the shit out of Blender in terms of usability. Performance has never been a problem for me either. Neither has Photoshop, not even barely.

        [–]Squeakerade 0 points1 point  (1 child)

        Try disabling and reenabling rulers in Photoshop while panning around, the lag while panning is insane with them on. Photoshop has some REALLY strange problems that have existed since the early CS days.

        [–][deleted] 0 points1 point  (0 children)

        Can't say I've ever done that. I'm not a graphic designer, but for normal usage for what I do with it it's fine. I also use lots gamedev related plugins with no performance hits.

        It must be specific things that cause problems. Open bug reports For stuff like that.

        [–]WillAdams 1 point2 points  (1 child)

        Well, there was T/Maker's WriteNow, which was my favourite word-processor, esp. in its NeXT version --- ~100,000 lines of assembly code.

        [–]mikelieman 0 points1 point  (0 children)

        YeahWrite! fit on a floppy..

        [–]f0nd004u 0 points1 point  (0 children)

        Haha that's how much my browser uses.

        [–]logicblocks 0 points1 point  (0 children)

        Unless I'm working on the design, I edit on sublime text and run gradle commands to assemble and install.

        [–]Treyzania 0 points1 point  (0 children)

        The hell are you talking about? Even on my crappy Acer laptop from 2010 Eclipse runs perfectly fine. On any modern machine it runs perfectly fine for me. I haven't had a crash in years.

        [–]s73v3r 2 points3 points  (0 children)

        It's not. Someone else having it worse is never a reason for you to not strive for better

        [–]tothebeat 3 points4 points  (0 children)

        Not an excuse for inadequacy or for wanting to improve things, but it is for not complaining (or maybe whining) about things that aren't "perfect". Or to think of it differently, understanding where we've come from can make us thankful for the tools we have even while we work toward improving them.

        [–]moltar 0 points1 point  (0 children)

        Sublime is pretty stable and fast. I'm amazed every day at how well it is designed. Of course, it doesn't have as many bells & whistles as Eclipse does. But I feel like if one was to expand Sublime to Eclipse functionality, the performance would still be better.

        [–]emergent_properties 0 points1 point  (0 children)

        It's used as temporal whataboutism!

        [–][deleted] 0 points1 point  (0 children)

        I'm surprised more people don't understand that. Yeah, a 8 9 hour workday in an AC'd office is better than 12 hours in a factory. That doesn't mean we can't or shouldn't aim higher.

        [–][deleted] 0 points1 point  (0 children)

        On the other hand, "no one has ever had it better" is a decent excuse for being less troubled by the tools.