Google Sheets – show Age from DOB

I couldn’t find a decent formula to show an age from a Date Of Birth, so I wrote this:

=CONCAT(FLOOR((TODAY() - B2)/365),CONCAT("y ",CONCAT(FLOOR((((TODAY() - B2)/365) - FLOOR(((TODAY() - B2)/365))) * 12), "m")))

Shows an age in years and months; e.g. “10y 6m”.

Regex to split “){” to two lines, retaining indenting

I was quite proud to come up with this, so here’s my first blog post for a while:



and as a bonus:

NB (2013-09): it seems that the escaping slashes in this post were lost  at some point, I’ve put them back, but not tested!

CSS3: Rounded Table Corners (No images)

You cannot give a whole table (<table>) rounded corners using CSS, browsers will ignore it, you must round the corners of the cells (<td>) inside.

The following uses CSS2 selectors (:first-child etc) and CSS3’s corner-rounding border-radius to selectively round the outer corners of the cells in the corners.
This will work for any size table.

table.rounded-corners tr:first-child td:first-child {
	border-top-left-radius: 5px;
table.rounded-corners tr:first-child td:last-child {
	border-top-right-radius: 5px;
table.rounded-corners tr:last-child td:first-child {
	border-bottom-left-radius: 5px;
table.rounded-corners tr:last-child td:last-child {
	border-bottom-right-radius: 5px;

PHP Bug: json_encode() misleading warning on object with private properties

I have found a peculiar issue with PHP’s json_encode() function.

If you have an instance object with private properties and use json_encode() it will give you a very misleading warning.

class ExampleObject {
    private $privateProperty;
$obj = new ExampleObject();

results in

Warning: json_encode() … recursion detected …

There are two workarounds in the comments for the function at but this is simply a PHP bug as far as I am concerned.


This is as much an HCI concept as it is about the GUI.

I think a multitouch pad would be great.
5 fingers, i.e. one hand, would be plenty though, and having one hand remaining on the keyboard allows for faster resumption of typing long text.

My HTPC keyboard already has a simple multi-touch action, two finger to scroll, and I’m sure moving up to five fingers would be perfectly achievable by most users. In fact, in the video above there were only s few times when you’d have to use more than two or three fingers.

I think this is all fantastically interesting, and discussing the subject with people who won’t just shoot down the unknown/unfamiliar will lead to some great things.

I wish I could be more involved with this area of research and development.