Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

Adrian (66)

Adrian
  adrianh@quietstars.com
http://www.quietstars.com/

The hats I wear at work include: accessibility consultant; information architect; software developer (of the agile/XP/TDD breed - mostly in Perl); usability consultant; web site designer. I'm very dull:-) . [technorati.com]

Journal of Adrian (66)

Wednesday February 07, 2007
04:29 PM

In Oxford? Interested in Agile?

While I was working near Oxford I attended the Oxtremists meetings. They do a monthly meetings to discuss vaguely agile related books and drink beer.

Of course I only write about it here after I leave :-) However, if you're near Oxford next Wednesday why not consider attending? They're nice folk, the conversation's interesting and the beer's none to shabby.

Although I guess not having the next meeting on Feb 14th might have been a clever idea :-)

Tuesday February 06, 2007
10:38 AM

Twittering

I'm playing with Twitter at the moment. twitter.com/adrianh if anybody cares.
Thursday January 18, 2007
12:15 PM

Five things you don't know about me

Since Ovid has sort of tagged me here are five things you probably don't know about me:

  1. I've got a new job! After nearly a year and a half at ts.com I'm moving to Intunet from next Monday. The latter has the major advantage of being about fifteen miles from home rather than over one hundred. No more Virgin Trains! I get to see my partner every day and live somewhere pretty! Yay!
  2. Despite living in the UK almost all of my life I've never been to mainland Europe. No reason, just never got around to it. There are too many pretty places in the UK I've not been to yet :-)
  3. I've not driven a car since 1993. I can drive but I don't feel safe doing so. My brain works mostly in "oh look - a pretty flower" mode - which isn't a good attitude to have when in control of several tons of death machine. So, rather than kill somebody, I stopped driving. Since moving back from the US I've never felt the lack.
  4. Until my mid-twenties I was always writing fiction in my spare time. Never sold anything for the excellent reason it wasn't very good - but I had to write it down to get the damn stories out of my head. Haven't felt that need to write for about ten years now. I feel sort of sad about that since it means I'm not a writer.
  5. Slimy things (slugs, worms, etc.) really freak me out. Fine with spiders though.

Now I get to tag Phil Jones, Jeff Patton, Chris Rimmer, Chris Laco and David Wheeler.

Tuesday August 29, 2006
06:21 AM

Off to YAPC::EU

Off to catch the train to Brum in a couple of hours. Made more interesting by trashing my hard drive early this morning. Thank goodness for backups!

Say hi if you're there. I'm the big fat bloke with the sideburns and the pony tail :-)

Tuesday August 22, 2006
05:10 AM

Going to YAPC::EU? Interested in TAP?

Anybody interested in playing with TAPx::Parser and going to YAPC::EU might want to stick their name down on TapHackathon
Tuesday October 25, 2005
07:55 AM

Bulldog Award

On this rather nice site on internationalisation and localisation I discovered the existence of the The Bulldog Award.

What's the Bulldog Award I hear you cry? It's an occasional award for "outstanding personal contributions to the philosophy and dissemination of the Unicode Standard".

There's a really geeky part of me that loves the fact that this has been awarded 13 times since 1997.

Monday October 17, 2005
05:59 AM

Dependency Injection rocks!

Since there aren't comments on his blog I'm gonna take a mild poke at Artistotle's recent Dependency Injection post here :-)

He asks, in relation to Fowler's DI article:

Why do the design patterns people come up with such ridiculously elaborate conceptualisations of perfectly trivial ideas?

First off, I'd disagree that these ideas are trivial. If it's trivial why do I see so much code with tightly coupled external dependencies? Why am I so often faced with applications where I have to mock up half the fardling world before I can test a single module?

The DI pattern might not be difficult to understand or apply - but the problems it can help solve are not trivial.

Now, I do agree that Fowler's exposition isn't an example of his best writing. It's a bit of a mish-mash article which is trying to cover at least four different things (what DI is, why it's useful to separate it from inversion of control, why it can be better than things like service locators, how this relates to the J2EE complexity backlash, etc.)

However it did do one hugely useful thing. It named Dependency Injection and separated it out from the more general Inversion Of Control.

I read and reread the definition, examined the flimsy code snippets carefully, stared at the nearly tautologic diagrams for roughly 10 minutes, trying to grasp the deeply profound idea but failing. It finally dawned on me, after investing much effort, that it was right there – only banal enough that it was obscured by the heaps of pontification. It turns out the concept is so trite I've used it more times than I can remember, without ever having thought of it as any kind of dinstinct idea.

That last sentence is a doosy.

The whole point of patterns is to describe and name common design strategies - and thank god for that.

If you don't have DI in your head as a distinct concept - something you can name and describe - then it becomes really hard to communicate that idea. Judging from the code I regularly encounter it's an idea that could do with a bit more communication :-)

Now Fowler has done the work of naming DI and separating it out from the more general inversion of control pattern I've been given the gift of a beautiful new communication tool.

My coding partner can say things to me like "Hmm... the fact that this code is pulling all it's configuration information out of these singletons is making testing a pain in the arse, maybe refactor it so it uses dependency injection?"

Think about how much information is in that question. Try communicating that intent without naming the design patterns "singleton" and "dependency injection" and see how long it takes.

I do think that part of the reason the descriptions of DI seem so clumsy to us Perl folk, is that it's a harder concept to put into code with languages like Java.

DI is pretty darn easy in dynamic languages like Perl, Ruby and Lisp. We can also do really neat things at runtime that mean we can solve the problems that DI solves with considerably less effort than Java folk.

Jim Weirich's nice OSCON presentation Dependency Injection: Vitally Important or Completely Irrelevant? does a nice job of highlighting this (and does a better job of describing DI too.)

Wednesday October 12, 2005
08:51 AM

Depressing news...

% find . -name \*.pm | xargs wc -l | tail -1
   20554 total

% find . -name \*.t | xargs wc -l | tail -1
     187 total

Sigh.

Monday September 19, 2005
05:05 AM

CVS - how I hate thee

Good news! I'm now in full time work again. Nice people, nice working environment, open source friendly, a Mac on my desktop, etc. All good stuff.

Only one bit of bad news. Currently we use CVS. Having spent the past couple of years as a happy subversion user this seemed only mildly annoying.

"It's not going to be that bad", I thought, "Just dig our my old copy of the cederqvist and I'll soon be back in business".

Oh how wrong I was. Two years of everything just working has somewhat spoiled me.

<rant>

Can't remove a bloody directory? Surely it wasn't that bad? Oh yes - you have to add -P to update and checkout in your .cvsrc so it prunes empty directories. So obvious. Which kind of works - until you actually want an empty directory that is.

Hit Ctrl-C in the middle of a commit and suddenly remember that this isn't going to abort the dumb ass thing I just did because commits are no longer atomic.

Moving stuff! How could anybody create a version control system without support for moving and renaming!

Having to tell CVS what are binary files.

The slow horror of things like magic branches are beginning to rise to the surface of my memory again. Lord how did I put up with CVS for so many years.

</rant>

Of course the mere fact that we have a source control system puts us leagues ahead of many places I've worked - but shifting from CVS to a vaguely decent system has become.... more of a priority :-)
Tuesday September 06, 2005
04:56 AM

Bad job adverts - #4 in an ongoing series

This one hit my inbox yesterday.

Our client is a leading engineering technology provider, undertaking research, design, development and strategic services to the world's automotive manufacturers. THE ROLE: To work in Tokyo for 3 - 6 months to assist on a website design project The work is 5 days per week but 50+ hours per week, so dedication and flexibility are vital.

Does anybody else think that the sort of organisation that starts with a plan involving 3-6 months of 50+ hour weeks is going to end up with something considerably worse?

Can anybody else say Death March?

(Incidentally I just noticed today that I've not watched any television for about three weeks. Zip. Nada. Not through any virtuousness on my part - there has just been nothing on that I've wanted to watch.)