Lucene offers great full text search capabilities. It is based on an index, which is maintained by Lucene. With Luke, the Lucene Index Toolbox (http://www.getopt.org/luke/) you can analyze your index and let explain queries.
After startup, you have to select your index. For this example, I created a test index with one file. It’s content is “this is a lucene test”. I used the StandardAnalyzer, which uses the WhitespaceTokenizer and filters out all tokens less than 3 characters and stop words. This will result in an index of the terms “lucene” and “test”.

Java
Java, Lucene
There are times, where people ask you questions, which can directly be found on Google. This kind of questions are mostly boring. But hey, there is a nice solution for responding to those people:

On the website Let me google that for you you can enter any search query and send the generated link to the person, who asked you something. Perhaps, this person will learn something and will google the next question before he will ask you…
Methodology
Fun, Google
Ant offers some XML features like the xslt task, which transforms XML files into other files. But unfortunately, with Ant you can’t make simple XPath Queries on a specific XML file.
Luckily, there is a nice open source solution called XmlTask, which offers many possibilities to work with XML files.
- Download the latest version of XmlTask from http://xmltask.sf.net

Java
ant, Java, XML
Wrong use of the memory options can cause serious performance problems. To optimize the right memory size of the JVM or to find some critical memory issues, the GC log of the JVM can be very useful. Simply start the Java application with the option -Xloggc:<file>. Every GC action gets logged into this file.
To analyse this log file, there is a nice tool called GCViewer, which can be downloaded from http://www.tagtraum.com/gcviewer-download.html. GCViewer is able to display the memory usage of the application based on time and old/young generation heap space.


Java
GC, Java
There are some kind of tasks, which Ant won’t do. One of them is the loop. There is no simple way to implement a dynamic for or while loop in Ant. What do i mean with dynamic? Let me make an example. Ant reads out a number of iterations from a property file (we call it the number x) and should perform a loop x-times to call another Ant task. And this can only hardly be done with Ant.
But fortunately, there is Groovy. Groovy is a scripting language, which runs in a Java Virtual Machine. And because of that, it can be easily integrated with Ant.

Java
ant, Groovy, Java
Yesterday, I visited an interesting presentation from Tudor Girba. He showed us several ways for visualize code. One of the most interesting visualization was Code City.
(ArgoUML from http://moose.unibe.ch/tools/codecity)

Java
Code City, Java, Software Engineering
Source Control like CVS or Subversion is used almost in every software project. As a developer, it’s your responsibility to be up to date with the current version from the source control system. In Eclipse there is a nice feature to schedule such synchronizations. This means, you get regularly informed about all updates and you have less merging problems!

Software
eclipse, Java
Since a week I am using Windows 7 and until now, I am really satisfied. Windows 7 feels much faster than Vista and it’s something like a fine tuned Vista.
Here you can read the most notable new features:
http://blogs.msdn.com/tims/archive/2009/01/12/the-bumper-list-of-windows-7-secrets.aspx
For further information, you will find here a good walkthrough:
http://www.howtogeek.com/howto/the-geek-blog/what-you-should-expect-from-the-windows-7-beta/

Administration, Software
Windows7