Development Chaos Theory » Blog Archive » How (not) to write Factorial in Java.

But the future never gets easier, does it?

Because a year from now they wade through all this excess baggage written at a time when they thought they understood the domain of the problem (but clearly didn’t), instead of having simple code (like the very first example of factorial above) that they can revise as needed, they wind up with the most over-engineered pile of nonsense that no-one can possibly understand.

Using Git for "Feature branch code reviews" - GIANT ROBOTS SMASHING INTO OTHER GIANT ROBOTS

I’ll be honest, I never really felt engaged during “code review” meetings at the end of an iteration. It always took too long to get and discuss the code. The room would get warmer. We’d discover things we’d want to change. Many of those changes would never be made.

Since today is Boycott a Meeting Day, I thought I’d offer an alternative we’ve used lately.

StringSearch – high-performance pattern matching algorithms in Java

StringSearch

High-perfor­mance pattern matching algo­rithms in Java

The Java language lacks fast string searching algorithms. StringSearch provides implementations of the Boyer-Moore and the Shift-Or (bit-parallel) algorithms. These algorithms are easily five to ten times faster than the naïve implementation found in java.lang.String.

Change a .classpath linked to an IDEA project and want to cheat out of reloading the whole project? Try this:

In IntelliJ IDEA, when you update a .classpath file externally IDEA pops up a dialog that complains and tells you that you need to reload the project. I think they've fixed this in 8.x for .iml files, but not for linked Eclipse .classpath files.

When I'm running 2 apps under the debugger I don't want to lose all that and start over just because I screwed up a dependency.

It's simple:

  • Delete the module.
  • Make your modifications.
  • Re-add the module.
You're done! Significantly faster than stopping all running apps, reloading the whole project, and starting all over again.