Gradle
I’ve been an Ant user for a long time. Ant has many flaws as a build tool but it does have the advantage of being simple, predictable and reasonably well documented. Maven has been around for a long time however while I liked the fact that it gives you lots of functionality out [...]
Oracle Breaking Old Links
This is sad to see. Oracle really should be putting more effort into preserving links to the old pages from Sun. Searching for this:
Provides a link to this:
Bleh!
Fun with Clojure
I really like playing around with new languages but usually I don’t stick with them too long. My day job is coding Java/Javascript and there are few opportunities at work to play around with other languages. As a result most of my experimentation ends up being after hours. Once Ive learned a [...]
Nested Ant Properties
Ant doesn’t support nested properties (directly). After some searching I came across this solution. I’m putting it here mainly as a reminder to myself if I ever need to do this gain.
Just to define the problem… say I want to set the version number to be dependent on the project. Naturally you might think to [...]
IntelliJ Idea Community Edition
The company I work for have been slow approving my upgrade license for Intellij Idea so I was forced to choose between going back to the older version or trying out the free open source community edition.
The community edition doesn’t include most of the J2EE features that ultimate includes so I was expecting the downgrade [...]
Google Chrome
I’ve been using Google Chrome recently. For the most part it seems to be a stable and fast browser. I have had a problem at home with it importing my bookmarks. The real killer for me at the moment is the lack of plugins. If they come out with delicious, adblocker [...]
Double Checked Locking
After warning someone about the problems of double checked locking I discovered it’s been fixed in Java 5. Simply add the volatile keyword and it’s all good.
See Wikipedia for all the details.
The Rule of Silence
The book The Art of Unix Programming outlines some of the conventions that good Unix programs often follow. One of these is the Rule of Silence:
Rule of Silence: When a program has nothing surprising to say, it should say nothing.
When most Unix command lines run, you know they worked because they don’t spit out [...]
Assertions with assertThat
I like to think I’m reasonably up-to-date with Java technologies but then I discovered something today that shows up that I’m still ignorant of a lot of available technology that’s out there. Today I ran across hamcrest which is now apparently part of junit 4.4 and above.
Basically it replaces the old assertEquals() & variants [...]
DSL
Just a link though to an article by “Pragmatic Dave” about DSL’s and natural English.