Saturday, March 27, 2004

Touching Evil

I am not really a TV person. I am probably the only person in America who has never seen an episode of Friends. But recently I started watching a series on USA Network called Touching Evil.

The show is based on a series from British TV (but then isn't this true for all the best shows). The premise is that a detective, David Creegan, was shot in the head and has recovered from the wound but it has left him oddly changed from the brain injury. The catch phrase of the show is, what didn't kill him, made him stranger.

The cases that he and his partner investigate aren't particularly different than the cases you see on other shows but the entire approach of the show is unique and interesting. If you haven't seen it, it is definitely worth checking out.

Friday, March 26, 2004

I hate moving

Today we are packing up all our accumulated stuff so that we can move to our new cubicles. Our new space is in a room affectionately called "the closet". The room is a bit dark, has no windows, and gets hot in the summer. There are about 15 cubicles in there so it also tends to get a little noisy sometimes. But at least we will all be together instead of spread out across the floor. And the cubicles in the closet are a lot bigger than the ones we have now.

The worst part of moving is the packing and unpacking. Fortunately, I am not a pack rat so I don't have too much to move. But the big question will be, will the phones and network connections be working Monday morning. I do have a wireless card so even if the network connections don't work I can still access everything I need. In fact, since I have everything packed away including my docking station, I am working on my wireless card now.

Anyway, Monday morning I will be unpacking and getting set up in my new home. But I have a feeling we will be moving again. Our new director has hinted that she wants to get all of her staff (which is currently spread out across two buildings) into the same area. I guess I shouldn't get too comfortable. With any luck we'll move before the hottest part of the summer.

Thursday, March 25, 2004

Review - Java Regular Expressions by Mehran Habibi

Java Regular Expressions by Mehran HabibiEven if you have never had the opportunity to work with regular expressions in any language, even if "regular expressions" means nothing to you, this book will make you an expert very quickly. The entire book is less than 250 pages and yet the book gives almost perfect coverage of the java.util.regex package.

The best part of this book is that it serves both as a tutorial for anyone who the topic is new to, and as a reference for anyone who is already familiar with regular expressions in Java. It is that rare tutorial that you can keep by your desk even after you mastered the material.

I should add a couple of statements. First, Max and I are both moderators at JavaRanch. Second, Max is an expert at martial arts and I am fairly certain that he could beat the hell out of me without having to break a sweat. But neither of those things affected my review. ;-) I have been kidding Max because it took so long to finish this book but it was well worth the wait. Great job, Max!

You can see the full official Amazon review here.

Wednesday, March 24, 2004


My daughter has finally found a sport that she likes. She had tried soccer, track, and softball and none of them held Beth's interest. Schools around here start volleyball in the fifth grade with the fifth and sixth graders combined in one team that competes against other schools. Last year, when Beth was in the fifth grade her school had to cancel volleyball because they couldn't get enough girls interested. Keep in mind that it only takes six girls to make a team!

This year the school had ten girls so they were able to form a team. The only problem is that on most of the teams that Beth's team has been competing against at least half of the players are sixth graders who competed last year. This has put Beth's team at a distinct disadvantage but they have still played hard in every match.

Last night was their seventh match. When we got to the school where the match was being held we found out that only six girls on Beth's team were showing up so Beth and her five teammates would have to play the entire match without a substitution. The other team had twenty girls. I figured that the other school must take their volleyball very seriously and didn't think Beth's team had a chance.

The first game was hard fought and finished at 29-27 to the other team. Beth's team never looked back. They won the next two games to take the match. This was the first match they had won. The girls were exhausted and excited. I overheard the other coach talking about Beth and her teammates. "What a plucky group of girls," she said. That's my daughter... plucky!

Review - The Constants of Nature by John D. Barrow

The Constants of Nature by John D. Barrow The Anthropic Principle is actually quite an interesting theory. The reason the Universe exists the way it does is because if it existed any other way then we couldn't be here to ask why the Universe is the way it is. For example, if the gravitational constant was a bit stronger then stars would collapse into black holes before they could ignite. If the electromagnetic force was a little weaker then electrons would stream off from protons and atoms could never form. If the strong force was a little stronger then nuclear reactions would be impossible and stars would never light up.

There are, in fact, many possibilites associated with the Anthropic Principle. The first is that there are an infinite number of universes and we evolved in this one because this one happened to have the right combination of constants. Another, far more daring theory, is that the Universe needs a quantum observer in order to actually exist.

All this is in way of introduction to my review of the book, The Constants of Nature. This could have been a very good book as it discusses a lot of the ideas around the Anthropic Principle and associates it with the constants of nature, including the fine structure constant. Unfortunately, the author doesn't do a convincing job nor does he go deep enough to make the book a very interesting read.

Some of the errors in the book are comical. For example, he states (although I am sure he doesn't mean to) that solar eclipses are caused by the Earth's shadow falling on the Sun. But others are more subtle. For example, he discards the quantum observer theory by claiming that any observer, even a photographic plate, would serve the role of an observer. However, a quantum physicist might tell you that until someone actually develops and views the plate that what is on the plate is still only a quantum probability.

The book isn't all bad and parts are actually quite fascinating especially if the topic is unfamiliar but overall there must be better books out there that cover similar topics.

You can see the full review here.

Tuesday, March 23, 2004

Review- Hyperspace by Michio Kaku

Hyperspace by Michio Kaku When I was in college I was a physics major. I have always loved physics and for a while after college I tried to keep up with the new theories but I found myself concentrating on so many other things that I fell behind. Recently, I saw a Nova special on Superstrings and my interest in physics was re-ignited. I decided to pick up a couple of books to catch up on what is going on in the world of physics. Hyperspace by Michio Kaku is one of those books.

Kaku takes exceedingly complex topics and makes them understandable which is no mean feat. The book does tend to wander around a bit and there is a fair amount of topic drift but most of the drifts are worth reading. He does an "up close and personal" look at a few people in math and physics that aren't household names and makes them interesting. Overall this is a good back that holds up in spite of being written ten years ago.

You can see the full review here.

Monday, March 22, 2004

Working on open source

I want to salute the programmers who have worked on open source projects. Looking at the accomplishments of the open source community I am amazed. I have been working on an open source project for JavaRanch and I have discovered how hard it is to be dedicated to an open source project. First, there are so many other things you can do with your spare time that it is very easy to develop a "I'll do it tomorrow" attitude. Second, because people come and go, it is very easy to lose your focus as the development team changes around you. There is also a feeling of pessimism that can set in as you see a lot of people express interest and then never provide a line of code. Finally, there is a general sense that it's not a big deal because if you don't do it then maybe someone else will.

I can understand why so many open source projects die on the vine. The fact that we have so many successful open source projects testifies to the dedication of those programmers who have participated in them.

Where is the simplicity?

I just received the new issue of JDJ in the mail and the article that almost immediately caught my attention was JSF: The Ulitmate in Flexibility? Or Complexity by Steve Benfield. Benfield's article expressed my own frustration with J2EE. The basic question is, why is J2EE so complex? Starting with JSP and Sun's apparent desire to create a Java technology just like Microsoft's ASP, J2EE has gone in the direction of creating such an incredible amount of flexibility that even doing the simplest things becomes difficult. At some point someone needs to shout that the Emperor has no clothes. JSF reminds me more of ASP.NET than it does anthing I want to work with. Why can't someone at Sun concentrate on what real developers doing real applications really need? Why can't we have a way to create web applications that is clean and simple? Why is that we need to look outside of J2EE to frameworks like Struts and Velocity to find even a hint of simplification?

Can you be too clean?

I have a fish tank. I have had the tank for a little over a year and what I have mostly done with the fish is kill them. I could never figure out why, though. I changed the water on a regular basis, kept the filter clean, cleaned the algae out of the tank, etc. I worked hard to make the tank a pristine environment for my fish and all I got was cloudy water and dead fish.

So I got lazy. The fish were dying all the time so I started to lose interest in them. I let the tank go. I stopped cleaning it as much, just giving the filter a rinse every once in awhile. I kept my eye on the pH but other than that I didn't do much. I even cut way back on how much I fed the fish. And guess what? The fish thrived! I haven't had a dead fish in months. The water has been crystal clean even though all the plants are covered in algae. What was going on?

I did some reading and I discovered that my cleanliness was killing all the good bacteria in the tank that break down the bad poisons that the fish produce. In other words, my poor fish were swimming in a sewer of their own excrement and I was killing the organisms that could break down that excrement into harmless materials. Combined with overfeeding I was creating the worst possible environment for my poor fish. My recent laziness has allowed the good bacteria to take hold and keep the tank spotless.

I'm a big Dave Barry fan. I read his column religiously. Without Dave Barry we would never have known that there was a Talk Like a Pirate Day and then imagine how less interesting our lives would be every September 19th. Dave's column on Saturday talked about the phenomenon of over cleaning. He wrote about some research by a scientist named Chuck Gerba (no, really, the guy is a scientist at the University of Arizona). [Side note: Prof. Gerba is famous for his bathroom research.] Prof. Gerba discovered that the kitchens that looked the cleanest were actually the dirtiest. The cleanest kitchens were those of bachelors! How could this be, you ask? Simple, the act of cleaning is a failure at killing bacteria so all those clean people are doing is smearing bacteria all over their kitchens. Those who don't clean leave the bacteria where it is, mostly in the pile of dirty dishes in the sink.

So here we have proof postive in two cases that cleaning is a generally bad idea. So the next time your wife or girlfriend complains about the mess, just tell her you are protecting her from bacteria.

Friday, March 19, 2004

Promoting Books at JavaRanch

Every week at JavaRanch we have a book promotion where an author visits us, answers questions, and at the end of the week we give away four copies of the author's book. The book promotions are very popular as they provide two great opportunities:

  1. You get to ask an author a lot of questions
  2. You might win a free book

The books are provided to us by the publishers so since I run the book promotions I get to work with the promoters from many of the publishers. They work hard to promote the technical books that their companies publish. In spite of the enourmous pressure they must be under during these tough times for IT books they are universally very nice people and are an absolute pleasure to work with. I deal with Kerry Guiliano at Addison-Wesley the most so I want to give her a special thanks but all of the people on this list make my job at JavaRanch easy and I want to thank all of them. I apologize to anyone I may have left off.

A very special thanks to:

  • Kerry Guiliano - Addison-Wesley/Prentice Hall
  • Heather Fox - Addison-Wesley/Prentice Hall
  • Heather Mullane - Addison-Wesley/Prentice Hall
  • Ann Sellers - Addison-Wesley/Prentice Hall
  • Bettina Faltermeier - McGraw-Hill
  • Helen Trimes - Manning
  • Eric Holmgren - Wiley/Wrox
  • Judy Taylor - Murach
  • Ruth Boyer - O'Reilly
  • Hollie Fischer - APress
  • Doris Wong - APress

And even though she isn't a publicist, I would also like to thank Merrikay Lee, the president of MC Press for being a strong supporter of our book promotions.

Thursday, March 18, 2004

Hilary Duff

My daughter is at that pre-teen age that marketers love and they have been working overtime on my little girl. Beth has done her share to make millionaires out of various female recording stars over the last few years including The Spice Girls, Brittany Spears, Avril Lavigne, and now Hilary Duff.

Hilary has been popular in our household long before she released her album, of course. She was a star of a hit Disney program as well as starring in a couple of films. But now Hilary has released her new album and my daughter insists on listening to it 24x7.

But I guess this isn't too bad since I prefer her listening to the relatively harmless Ms. Duff instead of the brainless Ms. Spears who has decided that being a tramp worked for Madonna so maybe it will work for her. Of course, no one ever accused Madonna of being brainless. The pre-teen set thinks that Ms. Spears is, to quote a song by Ms. Duff, So Yesterday. It is amusing to see the reviews of Ms. Duff's album on amazon. You can tell who the Lizzy McGuire fans are!

So my world is now made up of watching Kim Possible with soundtrack by Hilary Duff. Thank goodness I get to spend at least eight hours a day at work!

JavaRanch Wins Jolt Productivity Award

Every year, Software Development Magazine holds their annual Jolt Awards for product excellence. The 14th annual awards were held last night and JavaRanch won the Productivity Award for Websites and Developer Networks. Here were the list of finalists:

  • Agile Modeling Home Page (Scott Ambler)
  • IBM developerWorks (IBM)
  • JavaRanch (
  • O'Reilly Network (O'Reilly)
  • (
  • (Microsoft)

The Excellence winner was IBM developerWorks and was a well deserved win. The Productivity Awards went to: O'Reilly Network, JavaRanch, and Tigris.

I think it is amazing that a little web site built by volunteers without any corporate sponsor can compete with the big multi-billion dollar giants. Look at the sites that were even't nominated including MSDN and Oracle to name just two. Beats me how we do it.

JIRA 2.0

We have been working on developing new forum software for JavaRanch. We are currently using UBB for The Big Moose Saloon but for several reasons we have been looking at replacing this Perl based software with a Servlet/JSP based solution. Not the least of these reasons is having to deal with questions as to why a Java site is using a Perl based forum!

We are working with a version of MVNForum that we have split off. We split for several reasons but mostly because our immedaite goals are different than the goals of the development team working on MVNForum and we wanted to be masters of our own destiny in this case. But the forum we are developing will be open source and free for anyone who wants to use it. MVNSaloon, which is the development name we have given it, is a SourceForge project.

As part of the development cycle we needed a way to track bugs and enhancement requests. We had been using things like discussion groups and our own version of a wiki called Friki developed by Frank Carver. These are helpful for discussing issues but not for tracking them. The people at Atlassian were generous enough to give us a free copy of JIRA 2.6. They have a licensing scheme that grants a free copy of JIRA to open source projects that are using OSI approved license. For the last few weeks we have been using this as our bug/issue/enhancement tracking software.

What a pleasure it is to use this product. Beyond the fact that it is easy to use and mostly inutitve is that the product actually does what it is supposed to, that is, track bugs.

  • You can set it up to keep you informed when new issues are added or comments are added to an existing issue.
  • You can track issues to versions.
  • You can tie an issue to an external link such as a discussion or wiki. This has been very useful to us since practically all our enhancement requests start as a discussion.

But the best part for me is that the appearance is completely customizable. I don't have to rely on what information someone else thinks I need to see when I go to my project. I can set it up so that all the information I need is right on the front page. For example, I have my front page configured so that I see all open issues and all issues that have been updated in the last 24 hours. Instead of having to search for these things, the information I need is right there on the front page!

After having used JIRA, I am going to see about purchasing a license for use at my company. I think this will go a long way to improving our current bug tracking system which is basically pieces of paper on my desk. ;)

This really ended up sounding like a commercial which wasn't my intent but I really do like this software.

For Map, here is a screenshot of my JIRA home page. You can see more screenshots on the JIRA web site.

Wednesday, March 17, 2004

Another Typical Day

My son is over his bout of illness from the weekend. Mikey was supposed to have his eyes checked yesterday but it had to be cancelled because they won't do a procedure under anesthesia since he had been running a fever.

My wife, of course, caught what Mikey had and was really sick yesterday. She had to go for an MRI for something else today and they screwed up the injection so now her arm is swollen and purple. She went off to the ER a little while ago and left me with the kids.

My stupid car has been giving me trouble on a regular basis (note to self: never buy a Sebring again). I was supposed to bring it in to see why the check engine light is staying lit but it snowed here so I ended up cancelling the appointment.

Tomorrow is another day.

IDEA 4.0

I have usually used Eclipse for my development (when I'm not using a basic editor - UltraEdit). But I got hold of a copy of IDEA 4.0 to check it out. I actually like it a lot. The usage features are nice as are the refactorings. I have an article on my desk that tells me how to integrate IDEA with an application server for debugging but I haven't gotten around to setting it up yet. There is one thing that absolutely drives me crazy. Every Windows application in the world uses Ctrl+Y for redo. But IDEA uses Ctrl+Y to delete the current line. I can't tell you how many times I have hit Ctrl+Y a bunch of times thinking I was undoing something and then look up to see my code mangled. Arghhh! Why can't we just follow the standard?

Tuesday, March 16, 2004

Review - The Golden Ratio

I just wrote a review for Amazon of The Golden Ratio : The Story of PHI, the World's Most Astonishing Number by Mario Livio. I'm usually a fairly easy marker but this book bored me to tears. The guy writes a book on math and tries to keep as much math out the book as possible. Instead he talks about why the builders of the pyramids really didn't use phi. And then anyone who has even a marginal association with phi gets long, pointless biographies.

I think Livio completely missed his audience. People who are going to be interested in reading this book are not going to be afraid of a little math.

You can read the full review here: My Amazon Reviews

My article on Velocity

My article on Velocity was recently published in the JavaRanch Journal. I am slightly paranoid about my writing as I think everything I write sucks. Perhaps it says something that I continue to write articles anyway.

I've written an article for next month's Journal already. Usually I wait until the last possible moment but for some reason I felt inspired and the article came pouring out of me in just a few hours. It took longer to test all the code and make sure it worked perfectly than it did to write the article.

Anyway, I decided I like Velocity a lot. Back in the Dark Ages before JSP was invented, we were all struggling to find ways to make servlets less than horrible. My staff and I were working on a project called the Cendant Global Referral Network (CGRN) and we needed a way to get the HTML out of our servlets. We developed a methodology very similar to Velocity. Our goals were pretty simple:

  • get the HTML out of the servlets
  • make the HTML editable in a cool HTML editor
  • have the HTML work in a browser without having to go through Java
  • make it so simple that you could explain it to a web designer with no Java experience in less than 1 hour
Velocity does all these things and with an extremely limited language there is little temptation to break MVC and put your code in scriptlets.

Monday, March 15, 2004

Review - Java Open Source Programming by Joe Walnes, et al

Java Open Source Programming by Joe Walnes, et al I just finished writing a review of this book. This is one of the worst edited books I have ever read. The code is full of errors (both compile and logic) and the grammar is terrible. I know a lot of times these projects are rushed and the authors may not be native English speakers but this is really bad. It is especially ironic because the book praises TDD and yet the authors produce non-compiling code that doesn't work even when you get it to compile. I think a good dose of test cases would have helped.

Still, I gave the book six horseshoes (3 stars on Amazon) because it does have a good deal of value. I just wish they had put more effort into doing it right.

Sunday, March 14, 2004

My company has a new logo

Symbol Technologies, the company I work for, has been working on focusing what the company is all about. The previous management lacked a clear vision of what Symbol is but our new management is very visionary. Our new slogan is "Symbol: The Enterprise Mobility Company (tm)". We see ourselves as providing true mobility solutions (not just portable solutions) at the enterprise level.

Our President and CEO, Bill Nuti, had this to say: "We have focused on delivering solutions that enable a simple core concept – the ability to capture, move and manage information, in real time, to and from the point of business activity. This concept sets Symbol apart from any competitor. It is what delivers unparalleled value to our customers. It is core to our vision and business strategy."

It has been a long time since I have been excited about a business strategy at any of the companies I have worked for, but I think the executives at Symbol have a deep understanding of the market and where Symbol fits in that market.

Up all night

My poor son has been throwing up all night. Of course, that means I have been awake all night. I made the mistake of trying to answer a question in one of the forums and managed to screw it up. ;) Next time I'll make sure I have a cup of coffee first.