Archive for September, 2007

Humane mouse trap

The designer from 43Folders came up with this ingenius simple humane mouse trap.

Check it out, accompanied by a lovely 3D sketch.

  • Twitter
  • Slashdot
  • Delicious
  • Evernote
  • Share/Bookmark

24

09 2007

iPhone UK … not what I wanted it to be

Can’t help but be a bit depressed by the UK iPhone announcement.

I was prepared to move provider for iPhone, but the pricing is madness. In the USA the same phone sells for $399 which is currently £200. So selling it in the UK at £269 inc VAT makes sense? Jobs says "It’s mostly VAT" – yes but not all. The price is 35% higher, not 17.5% – so only 50% of the increase is VAT boyo. However we’re not going to quibble over £30 or so.

What is more off-putting is the tariffs. £35/mo is not, on the surface of it too bad given what you get in the deal. However I’m a low-user of minutes and I’m rarely near The Cloud. I would likely not even use the data much when out and about, but the phone would still be useful to me in that situation at times.

The final straw however is that the iPhone will not act as a modem over Bluetooth. This means when you are on a train somewhere working on your laptop you cannot access the internet. I can do this right now with my crappy old Nokia 6230, and often do. It beggars belief that the iPhone doesn’t do this and I can only hope this is merely a software issue and a future update will add it.

I’ve seen people saying that this is deliberate because they don’t want you squandering your unlimited bandwidth using a laptop to do normal stuff or doing P2P sharing over it instead of using broadband.

A completely ridiculous argument because a) the use is "unlimited" i.e. there is a daily limit equivalent to roughly "1400 web pages" and this will apply whatever device you use, and b) O2 UK are rolling out their fixed rate data plan to all tariffs soon, and this will inevitably include phones that do allow laptops to connect via Bluetooth to the phone to access the network.

I’m hoping Apple don’t shoot themselves in the foot here by pushing the iPhone just as a "breakthrough internet device" in its own right, and ignoring the fact that quite a lot of iPhone users will also have a MacBook with them! Duh.

  • Twitter
  • Slashdot
  • Delicious
  • Evernote
  • Share/Bookmark

19

09 2007

Patch for native2ascii not running in Grails 0.5.6 and 0.6

Due to some other improvements in Grails 0.5.x I accidentally killed native2ascii execution when producing WAR files, and it is still broken in 0.6. But here’s a fix. NOTE: this only affects "grails war".

For those unaware of the reasons for native2ascii: basically the only sane way to deal with i18n message bundles is to have them all in UTF-8 and have grails automatically convert them to 7-bit ASCII with unicode escapes. ASCII is the only format guaranteed to be read correctly no matter where you deploy your application – and its the documented format for Java properties files even though Java happily loads them using the system’s file.encoding instead of forcing us-ascii!

Anyway, Grails very smartly has done this for you for a long time, and as I said – ahem – "somebody" broke it in 0.5.x because of a change to copy files to a safe staging area when running "grails war" so that it stopped messing up your web-app/ tree.

This problem is JIRA’d and will be fixed soon in Grails SVN but for now you will want to use the following patch.

  1. Edit GRAILS_HOME/scripts/War.groovy
  2. Find the line:
    Ant.copy(todir:"${basedir}/staging/WEB-INF/grails-app",
      overwrite:true) {
        fileset(dir:"${basedir}/grails-app",
        includes:"**")
    }
  3. After that bit of code, add this:
    Ant.delete(dir:"${basedir}/staging/WEB-INF/grails-app/i18n",
      file:"*.properties", failonerror:true)
    Ant.native2ascii(src:"${basedir}/grails-app/i18n",
      dest:"${basedir}/staging/WEB-INF/grails-app/i18n",
      includes:"*.properties",
      encoding:"UTF-8")
  • Twitter
  • Slashdot
  • Delicious
  • Evernote
  • Share/Bookmark

14

09 2007

Apple iPhone and iPod Touch will change web design forever

The announcement of Apple’s new iPod Touch changes everything.

The iPhone came out, "wow! full Safari?!" we all said. The device was priced high but we knew this would garner us some new Safari web hits on sites we develop, and that we would "need to start" looking at developing sites that work well on the reduced screen size.

Apple should be selling millions of iPhones per year soon, but they already sell millions more iPods. And now the iPod touch brings Safari and wifi to the palms of pretty much anyone who would buy a hi-spec iPod previously (caveat: capacity is currently a fraction of the now-called iPod classic).

This means several things.

First, we’re going to have to support smaller displays with our sites. iPhone and iPod Touch together will make a significant market share in the months and years to come.

Second, Safari’s market share in terms of site hits is very likely to rocket – provided people provide content that people want when they are out and about. Suddenly Safari may impinge on Firefox and IE’s share very rapidly. It all depends on the browser experience on such a small device, but by all accounts it is great.

You may say it’s only in the high-cost iPod Touch. But we know, apart from the Shuffle, Apple roll all the features of the top-end down to the low-end models over time. Who will really be that surprised if they find a way to do an iPod Nano fullscreen with single or multi-touch.

"Oh… and one more thing." How long before there’s a new iPod headphone kit with built-in mic, and Skype for Mac adapted to and running on the iPod Touch? Ooops, wi-fi phone by stealth. Who needs iPhone?

  • Twitter
  • Slashdot
  • Delicious
  • Evernote
  • Share/Bookmark

06

09 2007

More info on Grails 0.6 release

Jason Rudolph has written a more informative post about Grails 0.6 and its feature set.

It’s also worth noting that there is a very important change to delete cascade behaviour in 0.6.

Namely, if you have no belongsTo on your domain classes, the behaviour will change to never delete referenced classes. Prior to 0.6 this was the opposite – no belongsTo meant your class was the owner in a relationship and all referenced classes would be deleted. This was rather surprising if not alarming behaviour.

However this change means that if you fully understood this counter-intuitive mechanism previously that your applications when upgraded to 0.6 may no longer delete referenced classes without you explicitly setting the belongsTo on the referenced classes.

Generally no data loss is better than data loss, but if you’re deleting financial transactions you might feel differently!

  • Twitter
  • Slashdot
  • Delicious
  • Evernote
  • Share/Bookmark

05

09 2007