I got up early this morning to get some coding done. Instead, I am
writing this blog.
Something in NetBeans has become unstable, and it pops up this
Clicking on "Show Details" reveals
What's wrong with it?
Why do I have to report the error? It wasn't my fault in the first
place. NetBeans should offer to report it on my behalf. It is ok to give
me a manual...
on Aug 23, 2006
Let's establish some facts right away:
My first introduction to the Aspect Oriented Programming paradigm was the article
Aspect Oriented Programming and Internationalization by Stephen B. Morris, who is probably very knowledgeable about AOP.
I know practically nothing about AOP, I am not an AOP guru, and I don't even play one on java.net.
Now that the disclaimers are out of the way, I'll just...
on Jul 31, 2006
Okay, Generics are old news. But since NetBeans was still targetting JDK 1.4 until a few months ago, and most of my coding is NetBeans plug-ins, I'm just starting to really appreciate them. In particular, I'm finding they have a very nice effect on the things I choose to write and how I write them.
Of course the basics are quite convenient - just being able to eliminate casts and get type...
on Jul 22, 2006
One of the most tricky parts to learn Object Orientation is the concept of classification.
The task of separating entities of the real word in groups and then enumerating the
characteristics of each group seems quite simple for experienced programmers but could be messy
for novice students. The discussion about the fundamentals of classification is very important
to establish a baseline about...
on Jul 17, 2006
In fact, last time I checked, I wasn't a 'mock' anything. I get 'mocked' a lot for my photograph above, but that's the maximum 'mocking' in my life sadly.
So why does Javablogs.com classify me as a mock Sun employee?
If Sun would like to offer me a position, I will be more than happy to call myself a mock Sun employee. Or whatever. But then I wouldn't be 'mock' anymore so that may defeat the...
on Jun 30, 2006
Last month I blogged about Literate Programming with jMock, and also about using anaphora to avoid repetition in the tests. (An anaphor is a word like it that refers to something previously referred to.)
This got me thinking: is it possible to use anaphora more widely at the language level? Would such constructs be useful? Before trying to do this in Java I looked at more dynamic languages,...
on Jun 29, 2006
I read Ethan Nicholas' blog about intern'd strings with great interest. I agree with his assessment that using '==' to compare String objects is almost never correct. He suggests that String's equals method is superior. His description of the intern method is excellent, and I wouldn't want to detract from his comments. He is right on...the equals method is the right way to compare many strings....
on Jun 28, 2006
So, would it come as a...
on Jun 27, 2006
on Jun 19, 2006
I thought I knew web forms. Atleast I thought I have a working knowledge of how forms work. I didn't realize the number of surprizes I found on the way.
My quest started with an innocent inspiration. I like words and their origins. I wanted to put a look up for dictionary.com on my web log. The form was simple enough with a single text field that takes a word or a phrase and then look up its...
on Jun 19, 2006
My personal digital assistant (PDA) provides contact information for friends, family, and coworkers. The PDA allows me to find a person's phone number easily by searching on that person's name. The information is sorted according to standard dictionary-sort order for the contact's name. That is, the name MichÃ¨le comes before Robert in the list. Without this sort order, I would have difficulty...
on Jun 6, 2006
How many times have we heard or preached (or both) the important lesson of not having our business logic "leak" into the client tier. Each time we hear it, we nod our heads and say "how true," and get serious for a moment.
The idea of logic leaks applies to other aspects of development, not just the client tier. For example, the Hibernate project is very concerned about not leaking persistence...
on May 2, 2006
Why Code Rewrites Don't Always Work.
Give an engineer some code and one of the first things crossing through the mind of some engineers is, "Should I rewrite or re-factor that code?". The logic being that the new version will be ultimately be better in some way than the original.
However simply rewriting or re-factoring an application doesn't always warrant the effort you put in. The rewrite...
on Apr 20, 2006
OK, so the human brain is supposed to be designed to multitask. That means through the course of a single day, we might have to switch between literally thousands of individuals tasks. It seems that although we're all designed to do this, some of us do this better than others. Maybe some of us have better schedulers than others?
Take my lovely wife Linda. She has possibly the best scheduler I...
on Apr 20, 2006
Dr. Sallie Henry died March 7, 2006.
She came to the Computer Science department at the University of Wisconsin - LaCrosse, in 1979. Her energy and enthusiasm were a real boost. She encouraged many students - most of the CS people I know from those days are still actively in the software business. At LaCrosse, she brought in undergraduate research opportunities, and she helped push the...
on Apr 11, 2006
If you're interested in my $0.02 on AJAX, check out my Public Static editorial in JavaPro magazine. Here's an excerpt:
on Mar 30, 2006
Anders Møller's dk.brics.automaton is a Java regex
package whose main claim to fame is that it is significantly faster
then all other Java regex libraries, including the java.util.regex classes in the JDK.
Like many things in computer science, the speed gains come at a price. In this case, the regular expression language supported is not as rich as the Perl 5 syntax that...
on Mar 27, 2006
Debugging with println is an ancient habit in programming - even
the novice developers know about how fragile is such strategy facing the
robust debugging tools provided by the most common IDEs. Despite that,
everybody sometimes includes some commands like
System.out.println(<font color='darkblue'>"step #1"</font>), or
on Mar 9, 2006
I'm working on a program that requires I convert degrees of longitude into miles. Since we are mapping radians on to the sphere (mostly) that is Earth, I needed to do some trigonometric calculations. Upon whipping out some paper and pencil and drawing the triangles I needed I realized had to remember which function to use. Is it Sine, Cosine, or Tangent? Hypotenuse over Adjacent? Adjacent over...
on Mar 1, 2006
Somebody at MIT was nice enough to make available the videos for lectures on Structure and Interpretation of Computer Programs, by Abelson and Sussman.
It's a refresher in just how powerful Lisp is. For a language approaching 50 years old, it's pretty amazing.
I always crack up a little when I think about the reasons Lisp and Smalltalk couldn't go "mainstream" - why, they use too many...
on Feb 15, 2006