I like R.J.’s explanation of how to properly use asserts in Java code. He provides some good code samples and rationale around why and how. Unfortunately I think too much Java code is plagued with NullPointerException’s and adhering to these coding conventions around parameter checking is a good thing. In large C/C++ projects like Notes/Domino we use asserts all through out the code with a lot of extra information in the debug builds. It would be nice if Java supported this teer level of available information between production and debug builds. I know our automation tools could actually run Lotus Notes in a mode where the debugger could immediately be launched on any asserts. This is an invaluable tool for developers and testers.