How many times have you, in your developer life, smacked our head and screamed "that was sooo obvious!" upon discovering a bug ? And how many times those were pretty simple bugs that could have been caught just by looking closely at the code and finding a silly mistake ? I'm guessing too many times.... :-)
PMD, no real meaning to the acronym (see here), is a pretty handy tool that if used with some frequency can help you at least save your head from the smacking. PMD is a Java code analysis tool that draws from an experience-driven rule set to look into your code and flag possible mistakes. From unused imports to the always error prone braceless if statement, PMD can give you a pretty good coverage of what you can do to improve your code and reduce the probability of making a silly mistake.
PMD can be run from within your ant or maven build file should you want to make running it part of your build process. You can find plugins for most of the popular IDEs to make it even simpler to run it and enhance your code.
PMD is extensible letting you add your rules should you wish to enforce any kind of rule to your project.
Finally, PMD is open sourced, licensed under a BSD-style license and available at sourceforge.
All in all a pretty cool and valuable tool to improve your development process and maybe keep your development team a bit saner.
When the Collected Papers of Albert Einstein went live on Tizra a few years ago, it was a huge step forward. Suddenly, anyone anywhere could search and access the output of one of the 20th Century’s great minds…from love letters to breakthrough articles that changed how we think about the nature of time and space. But the project also showed the limits of traditional tools for searching within large, complex publications. These limits sparked a collaboration with Princeton University Press and Einstein Papers Project editors, which this year resulted in a dynamic new search interface, which we’ll be demonstrating in a Webcast Friday, December 15 at 1pm ET . The interface not only makes it easier for Einstein researchers to home in on relevant content on both mobile devices and desktops, it points the way toward faster, better searching within a wide range of publication types, from reference books to periodicals, technical documentation and standards to textbooks. Click To Re
Comments