Monthly Archives: May 2010

Robust code best practices: the context

From now on, I intend to publish a series on best practices that help create robust code.

It is very important to take into account that these best practices might not be best practices in a different context: techniques that help you write robust code might very well be detrimental to write code at top speed.

So, what’s the context for these “robust code” best practices:

  • Projects that must run reliably, with almost no downtime.
  • Projects that need to be able to evolve in a very reliable way.
  • Public APIs that should remain as stable as possible.
  • Projects used by very many users.

You will have to keep this in mind to make sense of some of the best practices I’ll write about!

DirectJNgine 1.3 beta 1 is out!

Today I am releasing DirectJNgine 1.3 beta 1, aimed at adding full support for Google’s AppEngine. As always, you can download it here.

The list of new features and improvements has not changed since alpha 1: check it here.

Check this post for information on how to make an existing DirectJNgine application AppEngine-friendly.

New & improved since DJN 1.3 alpha 1

  • This beta has been tested against the latest ExtJs version, 3.2.1.
  • As suggested by several users, I have changed the returned content type to application/json where possible, to help with debugging when using tools such as FireBug.
  • A bug has fixed that broke multithreaded handling of batched requests. Please, note that there is an easy workaround for this, setting the batchRequestsMultithreadingEnabled configuration property to false in web.xml, that allows users to keep using DJN 1.2 final.