Development

One step forward, one step back

Apple has finally released a new upate to OS X (”Tiger”) – version 10.4.3. It has been roumored to include 500+ fixes, but so far I’ve only noticed to changes – it broke the latest version of the EyeHome-software and they finally fixed the connectivity issues with my SonyEricsson P900 phone – I can sync and I’m pleased.

Validation: black or white list

When you’re validating data – either client- or serverside – there are basically two strategies you can choose between. You can either blacklist data or white list data. Blacklisting seems to be the most popular way to validate data, but white listing is so much better. Here’s a brief description of the two strategies and why the white listing is better. The black listing strategy is validating you input against a list of characters which are illegal in the input.

Do Repeat Yourself

It seems most developers has listen too much to the principle of “don’t repeat yourself”, and so otherwise bright developers in some cases strive too much to avoid repeating themselves and makes a mess of their systems but avoids repetitions completely. If your developer and reads about the DRY, do also remember the important step one: Think. I’m basically all for DRY. Endless repetitions of the same lines of codes is a pretty bad idea and should be avoided.

Don’t use Ajax blindly

GMail and other web applications have adopted a new technique coined Ajax (by Adaptive Path). It brings web applications a step away from the stateless web and closer to real applications. It’s harder to built applications with the applications, but it’s hot – and the most recent release of Rails (for Ruby) promises to make it much easier to do Ajax applications. Before you do too many Ajax applications, do think for a second.

Zend Studio 4

For all the PHP freaks, the number one PHP Company, Zend, has released a new version of their Zend Studio 4. It’s probably the coolest way to develop professional PHP applications and besides a load of new features it seems to be running faster.