Vince Huston has a clever set of pages for "Gang of Four" patterns in the form of an interactive quiz.
Tuesday, April 17, 2007
Thursday, April 12, 2007
Good temporary files in Ant
I was reading this nice post on unsigning jars with Ant when this line caught my eye:
<tempfile destdir="${java.io.tmpdir}" prefix="unsign-" property="temp.file"/>
I was struck by an Aha! moment—using ${java.io.tmpdir} is clearly the Right Thing for creating temporary files in Java. Why not also in Ant?
Wednesday, April 11, 2007
The fallacy of soft coding
Today's Worse Than Failure has a brilliant post on soft coding.
It begins with a strong exposition answering "what is soft coding?" — the example business method is just about ideal for what a business method should be. I wish I could hire him!
The moral is simple: don't be a soft coder; in some respects it is worse than hard coding.
Most used tool
What is the most used tool in my daily work life? The Java compiler? IntelliJ IDEA? Perl?
Actually it is Mark Edgar's PuTTYcyg, a PuTTY patch for Cygwin terminal. This runs BASH from Cygwin inside a PuTTY xterm-ish window, making my daily work on Windows rather more productive.
You see, I'm a command-line sort of guy. And BASH is indispensable to my habits; hence Cygwin. And the default DOS box terminal is lame.
Using PuTTYcyg is a cinch. Download, unpack and add a shortcut to your desktop for C:\puttycyg-20070320\putty.exe - (or wherever you unpack to; the important part is the trailing solo hyphen). I usually change the icon to the Cygwin one (%SystemDrive%\cygwin\cygwin.ico, YMMV).
Tuesday, April 03, 2007
Google's excellent code coloring
This looks like fun:
<html> <head> <title>Example</title> <link href="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.css" type="text/css" rel="stylesheet" /> <script type="text/javascript" src="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js"></script> </head> <body onload="prettyPrint()"> <h1>C</h1> <pre class="prettyprint">void main(char* argv[]) { printf("Hello, Bob.\n"); }</pre> <h1>Java</h1> <pre class="prettyprint">public class Main { public static void main(final String[] args) { System.out.println("Hello, Bob."); } }</pre> <h1>Shell</h1> <pre class="prettyprint">echo "Hello, Bob."</pre> </body> </html>