Category Archives: Development

Why We Threw out All Our Code (And Why You Should Too) – NowJS Blog

Interesting post on code rewriting by the NowJS team. One point of view I have always heard is that a rewrite is amount to admitting technical bankruptcy; even Joel says don’t do it. But the most compelling argument for it is this: Sunk costs and egos get in the the way of good development.

Our job as developers is to provide the best library so that you can write high-performance realtime web applications easily. We could have defended our code just because we worked hard on it for months. But accepting the large upfront cost of a rewrite meant that we would save on development time in the future and also provide a better product to our users.

via Why We Threw out All Our Code (And Why You Should Too) – NowJS Blog.

On Unit Testing

Unit and Fit Testing

Ken runs Functional tests using Fit, and finds himself between a rock and a hard place: We have Fit tests that create the entire Spring application context. We have tests that load data out of the database, create a Lucene index, and then run search queries against it!! It seems like now it’s tougher for our servers to run the Fit tests than to actually run the application. That’s a bad place to be.

Every open system develops towards the unusable (Java included)

Java started out as a small, clean, neatly designed language that really had a feel of the clarity of a single person’s design. It was far from perfect, but it clearly valued simplicity over completeness of features. And now look at the later additions. Genericity. The design of genericity in Java has special syntax for some rather esoteric cases – it really smells like design by committee. Like something where everyone had to get their favourite use case explicitly supported. And the result: while I knew a good number of people before, who could explain any and every valid Java statement, I can now write valid Java code that almost nobody on the planet can correctly explain.

Michael’s Random Thoughts » Every open system develops towards the unusable

Russell Beattie: Java needs an overhaul

I love the Internet, because you can always find someone out there who is feeling the same way you are about something.

It turns out I don’t hate programming, I just hate programming in Java.

Russell Beattie is a voice I haven’t read in a while; I think the last time I gave his blog a look-see was about the time he decided not to work for Google. (I suck at those puzzles too, by the way.) Now he’s posted a long message about why the ticker symbol for Sun shouldn’t be JAVA, but COBOL: Java needs an overhaul.