I like to use this column to write about some newsworthy happening or disturbing trend. It lets me write to a captive audience about things that move me. Today, I deviate from the standard format. Today, I need to vent my frustrations about the Limewire team’s choice of Java as a programming language.
I’ll begin by using the best analogy I can think of to describe how running Limewire makes me feel. Those of you who live in the Northeast (like I do) know how much it sucks to drive during the winter months. You have to leave the warmth and comfort of your home to venture out into frigid temperatures. Battling fierce winds and cold, you make your way to your car. Invariably, you slip and fall or at least come closer than you’d like. You struggle to line up your key with the lock whose cooperation level always seems to plunge with the temperature. Finally, you get inside your car. You start her up. And then, you wait. And wait. And wait, for your car to finally warm up.
When someone asks me to drive somewhere during the winter months I groan due to the above unless it’s absolutely necessary. Today, I realized that this is exactly how I feel when I need to use Limewire. When a friend is over and asks me to download a song I feel the same pit of dread that follows being asked to run out to the store and buy my Mom some smokes in the midst of snowstorm.
Double-clicking the green lime can best be thought of as taking that first step outside into a blizzard. With that click everything else that’s already in progress on the PC is subjugated to Limewire rule. AIM chat windows freeze. Music playing in iTunes stops. The Start menu refuses to open. And of course, that Java runtime machine hits the Snooze button a couple times before deciding to wake up.
This all continues for some unspecified period of time until, finally, Limewire gets nice and settled into the memory. But the slowdown doesn’t stop there. Basic PC tasks keep a glacial pace for the length of Limewire’s usage. The thought process of the user becomes “How can I avoid minimizing and maximizing unless I REALLY need to?” Then, when whatever was so important as to necessitate this hell is downloaded and resident on the PC, you click “Close.” And, much like the driver whose momentary joy that his car is warmed up takes a backseat to the realization that he must now drive atop ice, the user is made to wait for 10-20 seconds while a hideous “Limewire is closing” progress bar takes center stage and halts all else.
Why am I bitching about this here? Because I want to know if there is any legitimate reason for using Java in this setting. I myself cannot think of one. I cannot think of any good that outweighs so much bad. Limewire is a terrific P2P platform but the end-user experience is atrocious. Can anyone who frequents this website or develops P2P software tell me why they think this is going on?
Related
- Limewire 2.8.6 Released!!
- MP3 Licensing Restrictions on Java
- JAVA-Game mobile filesharing
- LimeWire 2.3.1
- LimeWire 3.9.12 Beta


Java while slow is very versatile and portable plus it’s easy to learn and use. Is that enough or do you need more.
As to why someone from this site would still be using limewire that leaves me scratching my head.
Heh I’m from Northern NH I certainly do understand our New England winters!
That’s why I’m so glad we have a heated garage
Basically Limewire is a solid “All-purpose” P2P app. In spite of the awful user experience the network itself is pretty reliable for what I need it for. I just wish it weren’t such a hassle to use. Thanks for the explanation though.
I would hate to have your P.C
I thought the same thing back in my 233 mmx days maybe an upgrade is in your future.
I hear you buddy I had the same problem with Limewire and Azeureus and a fast PC only hides the fact that the open Java runtime is taking a good deal of resources from the system. Windows PCs make Java look bad because it’s not a native language on Windows ‘C’ is. That’s one of the reasons that µtorrent is so responsive it’s a small program in C and optimized for Windows.
What is a good Windows program for Gnutella these days? I’m thinking of Bear Share Lite or maybe Shareaza.
you can get around the 20 to 30 second wait by using control alt delete and closing the process
2.0GHZ Athlon 512DDR etc. It’s not a terrible system really.
Simple dont use it. Gnutella and any p2p app that are on the network sucks. You get the same garbage as all the other clients. Its not like BT where you can simply be plugged in to some of the best sites and use a client that works for you.
Try a few other clients. ZP has a whole list of them. And as for your PC if you want to keep running the resource hog progs an extra 512 MB DDR might help. I use Bit Comet for my large downloads and for hard to find single mp3s I hop on Overnet through edonkey 2000.
Thanks for all the suggestions I appreciate them.
I guess what really keeps me with Gnutella is that it lets me just search. BitTorrent is great at what it does but when you need something immediately it can be burdensome to have to manually find your download source. I’m sort of stubbornly clinging to the convenience of being able to search P2P networks like I search Google. Maybe I shouldn’t complain about the tradeoffs
Hahaha Java isn’t a native language on any OS. As for C it’s a language that gets compiled assembled and linked into binary code which is the native language of every OS. Java tries to use its own binary code emulated over a virtual machine and that ends up resulting in a kind of isolationist strategy; since it can’t assume anything about the surrounding system it has to take it over indiscriminantly and hog all the memory for itself. If you’re using Gnutella protocol I recommend most any client besides Limewire try one that can be compiled instead of “byte coded”. For Bittorrent python’s virtual machine still beats java in spades so Bram’s client or one of the derivatives usually work better. µtorrent seems the most efficient for Windows currently. Unfortunately there are a lot of smart people wasting their time expanding on Azureus though so you won’t be able to benefit from their smarts if you don’t use Azureus.
teto Why be so negative about azureus? last I checked utorrent isn’t open source and Last I checked utorrent is a windows program. I would love to see another multiplatform project developed for gnutella or bittorrent that doesn’t use java. But my bets are that it won’t happen
LimeWire runs fine for me.
You need to upgrade your PC but I do agree with you on how dreadful limewire is on your system resources. Java appz suck but I love Azureus to death. Limewire… eh.. if you want to download music and you just want single songs use Piolet. You can the latest version are epirate.net or nsane.tk it’s faster than limewire and has a bigger single-selection w/ riaa-copyrighted tunes. underground i haven’t had as much luck with but then there is always dmusic.com for that.
oh and to the fellow who said to drop gnutella and us BT BT doesen’t have a lot of single mp3 files so it’s really not for what the author appears to have been looking for. I do agree w/ you tho BT is awesome.
how bout ares? http://www.aresgalaxy.org very few fakes in my experience and open source
Sounds like your PC doesnt have enough RAM to run all the programs you were running at once. Because of that your programs have to use virtual memory on the harddrive which is much slower and is what causes the slow down. If you turn off some of the programs you arent using or get more RAM then it should improve preformance. Also you might want to download the latest verison of the Java Runtime Edition from Sun if you have a really old verison it will likely be inefficient. If it was a problem with the program itself alot more people would have noticed by now so its likely a preformance issue with your PC.
Also if you just started using the program or just added new files to host it may be hashing those files which if you are hosting large files can take a long time to hash and use alot of memory. I know this happens with other gnutella cilents and i suspect its the same here. After it finishes hashing then it will be much faster and use alot less CPU and memory.
You will likely encounter slow downs with other programs as well so all the recommendations on switching are kind of side stepping the real problem.
Java is a good language if you want a quick ROI and cross platform code. It’s virtual machine allows the same code to work on several differernt OSs without any special porting and it’s object Oriented nature allow deveolpers to write and update the code very quickly and easily. The disadvantage of Java is obviously the speed and the memory usage. It seems that for many of the larger Java apps you need a fast processor and a lot of RAM. Probably 1GB would be enough to keep an app like Limewire happy if you want to run a lot of other stuff at the same time. And this is one of those rare cases where an HT-enabled processor will acutally do some good but a dual-core is better if you can afford it. Otherwise my advice is switch to Linux. Linux manages your memory much more efficently and has a better process scheduler in it’s kernel.
As far as Python vs. Java. Both are subject to slow runtimes and there are some ways to optimize the code on each. For example I use Pyscho w/ all my scripts now. But Azureus is a great application and the speed on my computer is just as good as Bram’s. It’s hard for me to find torrents that can max out my 15Mbit download no matter which client I use and I’ve tried a lot.
Since winmx went down i bin using limewire not had many probs but all the different versions perform differently i find the later the version the more unreliable it is im using 4.9.33 Pro at the mo and its the most reliable if u can ignore the random freezes (which do come back) but dont stop the downloads. if anyone else knows a better version please let us all know.
I use 4.10.9 it works good.
I use to use all the above but now I use in windows MP3 Rocket it looks and feels like Limewire and is faster nd better then the rest mentioned above as for other OS’s I use what ever is available as for loading JAVA my computer you can’t even notice it is running I use Avast Virus Scanner and Spywere Terminater and I don’t add any tool bars to my web browser at all I know that Norton Virus scanner misses a lot of viruses and I find limewire is a good progrm to obtain viruses but not always Norton will slow down your system and I think you must have norton installed right and if not AVG or Antivir any ways to speed it up try Avast and do the updates after you register it it is free and detects better the the others and then try again if not like I say try MP3 Rocket it is faster downloading and etc.. and utorrent is good if you added a bunch of good sites in it and yes you can download one song in it insted of a album just take the check marks off the songs you don’t want or simply just to start out with just put the name of the song and thats all you will get if you put in some good sites in it the computer is only as good as the user and the programs you decide to use… PS. I love Linux and other OS’s but ya I have tried different windows as well Vista Basic sucks with more then one user adn Vita Premium is good for windows that is as for Linux Ubuntu is good and Puppy linux is okay.. I am going to try the JAVA OS it is free as well and I believe that if your running a Java OS and a program requires Java it wouldn’t take as much memory because you are alread in java no need to emulate right…