Tuesday, September 16, 2008

What does the UK government have to do with Phorm?

It appears that HMG have given the go-ahead for Phorm to be deployed in the UK.

In response to EU questions about its legality, it said that it was happy Phorm conformed to EU data laws. But any future deployments of the system must be done with consent and make it easy for people to opt out.

The controversy over the Phorm ad-serving system blew up following revelations that the system had been trialled by telecoms firm BT without the consent of users.

Clarifying how the system will be used in response to the EU request, the UK government said future trials must be done with consent from those being targeted.

It's not clear to my why the government are reassuring the EU. Shouldn't the company behind the service be shouldering the burden? What is the governments involvement in Phorm?

The only good news is that they have, apparently, declared that it can only trialled as an opt-in consent based scheme. I hope they are held to that. I've already contacted my ISP once about Phorm.

16/09/2008 18:36 by Matt Mower | Permalink | comments:
More about:

Bring out your Mocks

I wrote last week about ObjectDaddy, a plugin to enhance your specs, by Rick Bradley and Yossef Mendelssohn. For my money ObjectDaddy is well worth checking out.

Anyone who has used fixtures knows the pain that comes with a growing tangle of unkempt fixtures that nobody can figure out or use leading them to add new ones for each test, making it harder to figure them out, and so on.

Faced with that nightmare mocks seem like a panacea. No more fixtures! A rousing Huzzah! is heard all around. But, after the dust has settled, you start wondering what you've bought.

My experience is that they're not much use when testing models, and in my controller specs, in order to jimmy the right mock into position for the expectation, I often ended up with a series of nested mocks that were often, conceptually, more hideous than the fixtures they had replaced.

Now Sometimes this pointed to a fat controller desperately in need of the number of it's local Weight Watchers meeting so it wasn't all bad. But quite often it felt cumbersome and artificial.

ObjectDaddy, for me, has been win-win. Being able to write:

u1, u2 = User.generate, User.generate
r = u2.add_contact( u1 )
put :tags, :user_id => u2.login, :id => u1.login, :friend => 't'
u2.should have_friend( u1 )

as if u1 and u2 were fixtures makes my specs simple and logical again. No mocks and no requirement to stub stuff. Yet those are valid User objects with useful attributes generated by ObjectDaddy itself and, in some cases, exemplars (net work required there was about 5 minutes). Things like:

generator_for :email, :start => 'test@domain.com' do |prev|
  user, domain = prev.split('@')
  user.succ + '@' + domain
end

No maintenance, no fuss, and I know that real User objects are being pushed through the system.

It makes me happy to spec again.

16/09/2008 19:23 by Matt Mower | Permalink | comments: