Tip: Defragmenting disks on Windows XP
Having troubles with Windows XP speed after a while? Did you remember to defrag the drives every now and then? Here's a quick tip: If Windows Defragmenting tool complains about not enough free space to perform the defragmentation, close all programs and disable Hibernation and virtual memory on your computer. That will free space on your disk instantly for at least the amount of RAM you have, maybe even more. Then re-run the defragmenting tool again. This is a fast way to free disk space so Defrag can run without complaining, and you can turn Hibernation and Virtual Memory back on after your disks are defragmented.
Categories : General
Debunking Bruce Eckel
By now everyone must have read what Bruce Eckel had to say about Java (or rather, about Java enthusiasts) on Artima, especially after the article was picked up by Slashdot yesterday. I must confess I read the article several times, and I still don't see how Bruce's comments lead to the conclusion that Java enthusiasts have moved to something else. Let's recap:
when I read it a long time ago. But I guess that’s why books have editors, reviewers and such. I also think that his focus is totally lost, since Java is way more than just web applications. Java is being used in a lot of places, from the smallest cellphone to the largest cluster of servers. I also think Java on the desktop is coming back with a blast, especially with some 3D applications and games like Tribal Trouble. The fact that Java is a mature language might turn down people who want to be on the bleeding edge, but a lot of enthusiasts are here (to stay, I might add).
- According to him, Bruce Tate wrote a book called Beyond Java
, which is more a book about how cool is Ruby compared to Java; then Bruce (Eckel) goes to criticize the contents on the book and how everything is said twice and how the author condemns other languages just for not being Ruby. This is clearly a mistake according to him, but somehow this validates that Java enthusiasts are gone?
- Then, he tells us how Martin Fowler has moved to Ruby (from Python, not from Java) and how Martin criticized Java's List implementation (an argument he also refutes by mentioning LinkedList).
- He then mentions a Harold fellow, who criticized Ruby's list library design, only to get flamed by "howls of protest at Harold's opinion". This is where he thinks the hyper-enthusiasts are now in Ruby, based on the "faith-based flavor" to the comments. So, because Ruby has hyper-enthusiasts now, they must have migrated away from Java? I guess you can only have a constant pool of hyper-enthusiasts at a given time.
- After that he goes to ramble about how Ruby is better than Python, even though it seems to have some bastardizations from Perl. He praises Rails and makes it responsible for a lot of (Python) programmers deserting over to Ruby. He thinks Ruby (and Rails) is making contributions to the programming community, and thinks he will actually try Java-on-rails to make web applications. Wait, isn't part of a hyper-enthusiast community the fact that there are people who see an innovation and bring that innovation to his preferred language? Doesn't the fact that people are working on a Rails-alike implementation for Java imply that enthusiasts are still here?
- Lastly, he mentions how people moved from C++ to Java never to look back, but now people are rather trying to improve Python instead of going all the way to Ruby. He finishes his long "dissertation" with these words: "I think we've mostly been hearing from people who have come from Perl and found Ruby to be a 'better Perl, with objects that work,'". Wait, I thought the article was about Java hyper-enthusiasts leaving, not Perl enthusiasts.
In need of an internal IM server? Try Wildfire
At work, we use an IM server from Microsoft that uses the Windows Messenger app as a client, and only works for internal communications. Since last week and for reasons unknown, the server is not responding (the person in charge didn't reply to my emails). As a group of developers separated by geography, IM tools are a must-have. That got me thinkning, isn't there an easy alternative that we can use? what about a XMPP (Jabber) server installed on a linux development environment, and some jabber-compatible client?
Well, after a quick search I found a very good XMPP Server, which by chance is made in Java (OK, not by chance. I chose it precisely because of this reason). Wildfire IM Server (Formerly Jive Messenger) is an ideal solution for us, since its small, free, and most of all, has support for LDAP-based accounts, which means we can use it with our LDAP-enabled development server (I'll post later how I set up the server to use LDAP for things like unix shell, svn access, etc.).
In less than 15 minutes I got Wildfire set up to use MySQL as the Database for storing data, and LDAP for authentication. Instantly every developer that has access to the development environment is now able to connect to the IM server, and it even shows the LDAP groups for the different projects.
I just saw how Wildfire was profiled to improve performance, and I'm sure it will get faster (not to mention better) as they move forward. Now I only need to pitch it to upper management in hopes of replacing the old IM server.
Well, after a quick search I found a very good XMPP Server, which by chance is made in Java (OK, not by chance. I chose it precisely because of this reason). Wildfire IM Server (Formerly Jive Messenger) is an ideal solution for us, since its small, free, and most of all, has support for LDAP-based accounts, which means we can use it with our LDAP-enabled development server (I'll post later how I set up the server to use LDAP for things like unix shell, svn access, etc.).
In less than 15 minutes I got Wildfire set up to use MySQL as the Database for storing data, and LDAP for authentication. Instantly every developer that has access to the development environment is now able to connect to the IM server, and it even shows the LDAP groups for the different projects.
I just saw how Wildfire was profiled to improve performance, and I'm sure it will get faster (not to mention better) as they move forward. Now I only need to pitch it to upper management in hopes of replacing the old IM server.
New Google Firefox extension lets you see comments
Tired of going to a website and think 'what are other people thinking about this site?' Well, thanks to the great minds of people working at Google, you need to wonder no more! They have come up with a new FireFox extension that will search blog posts from around the blogosphere to find what people is saying about the sites you visit.
Now, I'm sure you'll say 'But I've seen this technology before!' 'Even Internet Explorer has a feature to discuss about a page!'. But wait! What we're dealing here with is something completely different! It's from Google so it's gotta be! This new and improved extension lets you see what people has already commented about or linked to, from all the blogs floating around.
OK, enough sarcasm... The idea isn't new, but the fact that Google is using blogsearch.google.com to search for comments, means that you'll see whatever comment or post someone has done about a website, and you can even add your own comments (if you own a blogger account, that is). I have mixed feelings about this extension, as I think it can be abused of pretty easily (the revenge of the spam comments). What do you think? Oh, and it only works on FireFox 1.5+, so that means you'll have to upgrade if you haven't done so.
Now, I'm sure you'll say 'But I've seen this technology before!' 'Even Internet Explorer has a feature to discuss about a page!'. But wait! What we're dealing here with is something completely different! It's from Google so it's gotta be! This new and improved extension lets you see what people has already commented about or linked to, from all the blogs floating around.
OK, enough sarcasm... The idea isn't new, but the fact that Google is using blogsearch.google.com to search for comments, means that you'll see whatever comment or post someone has done about a website, and you can even add your own comments (if you own a blogger account, that is). I have mixed feelings about this extension, as I think it can be abused of pretty easily (the revenge of the spam comments). What do you think? Oh, and it only works on FireFox 1.5+, so that means you'll have to upgrade if you haven't done so.
Categories : General
If it's good enough for Linus...
On the Gnome Usability mailing list, Linus Torvalds replied to a mail from Till Kamppeter asking about PPD options removed from the printing dialog, by actively saying that he (Linus) encourages everyone to switch or use KDE. He then goes to criticize Gnome developers as 'interface Nazis', which care more about dumbing down the user interface than they care about implementing new features.
I personally have been using KDE since 1.x, and I've always preferred it to Gnome, but time to time I come in contact with Gnome, mainly because the distribution I'm testing comes with Gnome by default (like Ubuntu, which I tested last month). And I've seen how features that were in one release suddenly disappear in the following one. And I don't mean the are hidden in an 'advanced' mode. They simply just aren't there anymore. It is really a shame that many popular projects are using Gnome (or GTK+, rather) as their windows toolkit, like Firefox (which by the way, just released 1.5) or even Eclipse.
It's good to hear other people say they prefer KDE, but when it comes from the guy who invented the Linux kernel, my respect for KDE just went up a couple of notches (My respect for Gnome is already too low to lose points). I saw this story at OSNews (sent to me by a friend).
I personally have been using KDE since 1.x, and I've always preferred it to Gnome, but time to time I come in contact with Gnome, mainly because the distribution I'm testing comes with Gnome by default (like Ubuntu, which I tested last month). And I've seen how features that were in one release suddenly disappear in the following one. And I don't mean the are hidden in an 'advanced' mode. They simply just aren't there anymore. It is really a shame that many popular projects are using Gnome (or GTK+, rather) as their windows toolkit, like Firefox (which by the way, just released 1.5) or even Eclipse.
It's good to hear other people say they prefer KDE, but when it comes from the guy who invented the Linux kernel, my respect for KDE just went up a couple of notches (My respect for Gnome is already too low to lose points). I saw this story at OSNews (sent to me by a friend).
Categories : Linux
Why I dislike Websphere
At work, I've been working on a project that uses Websphere Application Server (WAS) 5.1. Part of the development setup is to use Websphere Studio Application Developer (WSAD) 5.1, because it is tightly integrated with WAS.
One of the problems this represents is that WSAD 5.1 is based on Eclipse 2.1.3. After working with Eclipse 3.x for so long, I find it really hard to use an older version, that doesn't provide many of the features I've come to expect, like showing a list of defined keyboard shortcuts (Ctrl-Shift-L), or getting the latest plug-in for subversion (Subclipse).
Another problem is that Websphere uses its own JVM, made by IBM, which although it's supposed to be 100% compatible, I still think there are some 'hidden features'. And I've never seen eclipse (or other java programs running with Sun's JVM) give me this kind of error:

There's no stack trace, no reason given. It's almost as bad as a Microsoft product.
One of the problems this represents is that WSAD 5.1 is based on Eclipse 2.1.3. After working with Eclipse 3.x for so long, I find it really hard to use an older version, that doesn't provide many of the features I've come to expect, like showing a list of defined keyboard shortcuts (Ctrl-Shift-L), or getting the latest plug-in for subversion (Subclipse).
Another problem is that Websphere uses its own JVM, made by IBM, which although it's supposed to be 100% compatible, I still think there are some 'hidden features'. And I've never seen eclipse (or other java programs running with Sun's JVM) give me this kind of error:

There's no stack trace, no reason given. It's almost as bad as a Microsoft product.

SourceForge cvs servers down
I was trying last night to update my CVS copy of the Spring Rich Client project, which is in its early alpha stages (more about this project on a later post). Since 10pm CST I kept retrying every now and then, to no avail. Apparently SourceForge's CVS servers were down yesterday. I tried again this morning, before coming to work, but the server was still down.
What happens when so many projects that depend on sourceforge get stalled because the servers aren't working? Who is to blame? I know that sourceforge provides a free service, and as such we shouldn't complain, but since when free means bad service? With Java projects being the most popular on sourceforge, I wonder if there aren't better options.
I'm already considering other options for project hosting at the moment, since sourceforge doesn't have subversion repositories. Right now I'm looking at JavaForge, but the site also seems a little flaky to me (not what you would call a version 1.0 release). Java.net is also another choice, but they don't provide subversion repositories either. Another one is codehaus, but they seem to be an invite-only setup, since there's no way to create an account or a project there (at least not easily).
What other project hosting solutions are there for java projects? Is self-hosting the better choice now?
What happens when so many projects that depend on sourceforge get stalled because the servers aren't working? Who is to blame? I know that sourceforge provides a free service, and as such we shouldn't complain, but since when free means bad service? With Java projects being the most popular on sourceforge, I wonder if there aren't better options.
I'm already considering other options for project hosting at the moment, since sourceforge doesn't have subversion repositories. Right now I'm looking at JavaForge, but the site also seems a little flaky to me (not what you would call a version 1.0 release). Java.net is also another choice, but they don't provide subversion repositories either. Another one is codehaus, but they seem to be an invite-only setup, since there's no way to create an account or a project there (at least not easily).
What other project hosting solutions are there for java projects? Is self-hosting the better choice now?
Categories : Java
Unit Testing with Mock Objects (and Spring)
I was looking into some information on how to do unit testing using mock objects. Since I'm using Spring, I'm also considering this into the equation.
So far, I have found some nice articles, like this one linked from TheServerSide, which talks about unit testing and mock objects in general, and provide some examples.
I have also found several mock object libraries:
I'm wondering what people have done in this area. It seems that using mock objects is an ideal match for unit testing, and something that should be more thoroughly integrated.
So far, I have found some nice articles, like this one linked from TheServerSide, which talks about unit testing and mock objects in general, and provide some examples.
I have also found several mock object libraries:
I'm wondering what people have done in this area. It seems that using mock objects is an ideal match for unit testing, and something that should be more thoroughly integrated.
Categories : Java