Nat Pryce

[Quick-links: RecentChanges | JavaIdioms | ExceptionPatterns | ComponentDesignPatterns]
Nat Pryce is an independent consultant. He has his own website at

He currently works at BSkyB in London on their Set Top Box software team.

Before that...

I'm using this as my home page on the WikiWikiWeb. If you want to leave me a message, append it to the the bottom of this page and I should notice it pretty soon.

I did a lot of work in distributed systems, middleware, components and frameworks. Check out my old home-page at Imperial for more info about my research in those areas.

Based on my work on distributed component-based systems and frameworks, I contributed to the ComponentDesignPatterns. I have concentrated on the lower-levels of the pattern language, focusing on what distinguishes a component, how components are defined and how they interact. The patterns I have documented include AbstractInteractions, ThirdPartyBinding, ComponentBus and ComponentGlue. Feel free to add comments; feedback is very useful.

Related to the ComponentDesignPatterns, I collected patterns of software systems that use scripting (e.g. AlternateHardAndSoftLayers) or are written in scripting languages. They are available at

I did quite a bit of Java programming and contributed to the collection of JavaIdioms and to the discussion on ExceptionPatterns.

A lot of the Java idoms and ideas relating to the design and implementation of component-based frameworks are used in a framework I wrote called SceneBeans. Documentation and code are on-line at

I am interested in TestDrivenProgramming. I wrote the first version of the dynamic MockObjects library for Java that became jMock (, now maintained by OliBye. JMock begat HamCrest, which is now used by JavaUnit. I have also written WindowLicker, for test-driving GUI code and TeamPiazza? (, a build monitor plug-in for the TeamCity? ContinuousIntegration server.

I am interested in PostModernProgramming (see and ran a ScrapheapChallengeWorkshop? at OOPSLA'05, PoMoPro? 2006 and SPA 2007 that investigated this topic.

I am a regular at the ExtremeTuesdayClub and have been involved in the London XpDay? since the first conference in 2000. I was programme chair in 2004 and 2005, and poster chair in 2006.

I was honoured to receive the Gordon Pask award from the Agile Alliance in 2006.

I have a blog at

Nat - Thanks for your post on TestDataBuilders. How do you solve the problem of testing DAOs with persistent data using data builders? Thanks. I can be reached via the comment form on

My colleague James Richardson has written a good article explaining how we test persistence code with JUnit and TestDataBuilders:


View edit of April 23, 2012 or FindPage with title or text search