The output of svn diff can sometimes be hard to read, especially when there are a lot of changes to read through. I also realise that you might think I’m a dinosaur for still using svn because git has nicely coloured diffs out of the box but talk to any […]
Vi (or Vim in it’s modern incarnation) is a text editor. It’s a modal text editor. You can switch from insert mode to normal mode. Insert mode is where you type text into your document, and normal mode is where you type commands that do all sorts of functions. It’s […]
A friend recently had a problem configuring a new server. He installed PHP, Apache, MySQL and phpMyAdmin but when he launched it he got the following error: phpMyAdmin – Error Cannot load mysql extension. Please check your PHP configuration. If you’ve installed all of the above more than once you’ll […]
Calling all MySQL admins! When you’re working with InnoDB tables you may have noticed that MySQL takes an extraordinary amount of time to shutdown. Don’t panic! It’s normal. InnoDB has extensive logs that it must run through and if your server is at all busy these logs can be quite […]
Andrew van der Stock’s criticism of PHP’s security model. What security? Global request arrays go some way to making applications safer but there are obscure functions and settings which can trip up developers. (via) PHP Optimization Tricks from Ilia Alshanetsky has one gem I didn’t know about – the ctype […]
Ever wondered how some of your favourite apps get hacked and broken into? This page lists lots of examples of database “injections”. Like an injection you get off your doctor these bits of code inject database code into your application. The code can do anything – delete all your data, […]
How to Use Design Patterns Among developers, design patterns are a popular way to think about design, but what is the proper way to think about design patterns? In this interview, Erich Gamma, co-author of the landmark book, Design Patterns, talks with Bill Venners about the right way to think […]
Making Wrong Code Look Wrong – I was away for 2 weeks, catching up on email only now!