Do as I say, not as I do. Trev's Blog

Wednesday Dec 12, 2007

As a campus evangelist, one of the most common complaints I hear about Netbeans is that it hogs memory.  While it is true that the IDE does have a moderate memory requirement, I think there are several underlying issues that affect this misconception.    Unfortunately, most students do their development on a laptop, usually with a gig or less of physical RAM.  This in itself is not a problem, unless you have too many other processes running.  From java-tips.org:

"If your Java process requires more memory than underlying OS can provide it can cause swapping of pages from/to disk. This results in significantly degraded performance.  It is sometimes useful to increase amount of memory available to the application to allow it manage memory more effectively and this can reduce the time spent during garbage collection cycles." 

Netbeans does not "hog" memory; it uses what it needs, and sometimes the OS isn't able to provide that.  I run Netbeans 6.0 on a Vista laptop with an Intel 2.0 GHz chip and 1GB RAM.  Fairly good specs, although these days one gig of RAM isn't that much.  I do notice increased memory consumption when running Netbeans, but only experience performance issues when building web apps and running Glassfish, usually.  Why?  Well let's start at the bottom.  Windows Vista and the Aero desktop consumes a large amount of memory in and of itself.  Now run the most comprehensive IDE in the world AND an application server AND the JavaDB database server, all on a laptop.  It shouldn't surprise you if things get a bit sluggish.    

Another issue: I/O operations.  From java-tips.org:

"During some tasks the IDE is performing many I/O operations. With a slow device this can cause slowdown of the whole application. Typical examples are resources accessed on network drives or plugable drives like USB disk, storages using compression or encryption and anti-virus applications guarding all accesses to files.  Notebooks running on batteries have slower I/O too."

It's also important to realize that Java's memory footprint is lower than you might think.  It's not as simple as adding up the numbers for all the javaw.exe processes in Task Manager.  You have to account for shared bytes; a lot of memory is shared between multiple processes, but the "Mem Usage" field adds that shared space to every process that uses it.  More on this here.

Sunday Nov 04, 2007

Wow, I close my eyes for just a second and two months go by. Here at UNL we're already starting to think about final exams and classes for next semester. Some of the progress made by both Sun and the Campus Ambassadors this semester has been astonishing. First of all, I'd like to point out that the UNL Open Source User Group has been steadily growing and is excited about all the new features and enhancements in Netbeans 6.0. I've been doing a lot of word-of-mouth evangelism with peers and professors lately, and all have been very impressed. Personally, I think that the Ruby support in Netbeans is phenomenal; just another example of how this IDE is so powerful and yet so flexible. It's amazing how many different technologies the Netbeans IDE actually supports. And they're constantly adding more (a PHP plugin is on its way!).

It's also not a bad time to mention that Project Indiana is already turning heads. We're still a few months from the final release, but a developer preview is out and is said to be worlds better than previous versions of OpenSolaris. Traditionally as a non-Linux/Unix user, I'm excited that Sun is making the Solaris operating system easier to use and more developer-friendly. I'll keep you posted when I get it installed.

Thursday Sep 13, 2007

Today I realized that my iPod is old... and so are the 5000+ songs on it. By the way, I'm glad I didn't overpay by $200 on an iPhone only to get $100 back from Apple while the wiser point and laugh. Anyways I've often found the need for portable music, and more and more I'm thinking that sites like ProjectPlayist and Deezer are the way to go. You wouldn't think that music streaming sites are in the same market as MP3 players, but for the past year I've turned to the internet over the iPod almost every time. Obviously this isn't yet practical when you're out for a jog or at the gym, but the more accessible the internet becomes, the closer we're getting to that reality. Look at phones... they almost all have the ability to get music and video, right when you want it. But back to the point: entertainment has leaped into the on-demand age, and we're redefining "portable". Of course, your stereo setup now needs to include a computer, but hey, isn't that becoming the standard now anyway? Now I can log in from any computer anywhere and have all my playlists instantly at my fingertips, ready to go. It's the same with TV shows and movies. The pace of technology is almost sickening, and it reminds me of all the stuff I have that I don't use. But hey, as long as technology can satisfy my "I want it now" mindset, I'll be happy.