<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.7.3" -->
<rss version="2.0">
	<channel>
		<title>Blog Entries</title>
		<description>Blog Entries</description>
		<link>http://blackpepper.co.uk</link>
		<lastBuildDate>Sun, 14 Mar 2010 23:20:54 +0100</lastBuildDate>
        <generator>FeedCreator 1.7.3</generator>
		<item>
			<title>Agile and ITIL</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/Agile-and-ITIL.html</link>
			<description>&lt;p&gt;There's an increasing amount of forum traffic about when / if / how Agile methods can be harnessed with ITIL for use in an IT Operations environment. The line of questioning seems to suggest that the people-centric elements of Agile are only used in software development and just doesn't mesh with the rigour and control sought by ITIL adoption. Having implemented both, I think this argument is flawed on both sides:&lt;/p&gt;&lt;br/&gt;&lt;p&gt; &lt;/p&gt;&lt;br/&gt;&lt;p&gt;1. People adopt agile to provide rigour and control over prev [...]</description>
			<author>adam.wright@blackpepper.co.uk</author>
			<pubDate>Mon, 01 Mar 2010 14:29:21 +0100</pubDate>
		</item>
		<item>
			<title>WSSE authentication using SpringSecurity</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/WSSE-authentication-using-SpringSecurity.html</link>
			<description>I've been building some RESTful application recently and as part of that wanted to look at authentication techniques. Traditional web application will typically use form-based authentication - where the user enters their credentials on a web page and then they are authenticated for whole session. RESTful apps can use this approach, however it is different for every application and relies on server-side state, which is not ideal for scalability, and has the potential for session hi-jacking. &lt;p&gt;Th [...]</description>
			<author>john.cooke@blackpepper.co.uk</author>
			<pubDate>Mon, 01 Feb 2010 00:00:00 +0100</pubDate>
		<category>WSSE</category>
 <category>SpringSecurity</category>
 <category>REST</category>
 <category>Authentication</category>
		</item>
		<item>
			<title>GENSO Workshop at University of Vigo</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/GENSO-Workshop-at-University-of-Vigo.html</link>
			<description>&lt;p&gt;&lt;b&gt;Background&lt;/b&gt;&lt;/p&gt;&lt;p&gt;From the Global Educational Network for Satellite Operations (GENSO) web site: &lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;GENSO aims to increase the return from educational space missions by forming a worldwide network of ground stations and spacecraft which can interact via a software standard. This will fundamentally change the way that these missions are managed, dramatically increasing the level of access to orbital educational spacecraft.&lt;/i&gt;&lt;/p&gt;&lt;p&gt;GENSO is a project of the European Space Ag [...]</description>
			<author>dave.johnson@blackpepper.co.uk</author>
			<pubDate>Tue, 26 Jan 2010 00:00:00 +0100</pubDate>
		</item>
		<item>
			<title>Simulating typing into a GWT RichTextArea with Selenium 2 (WebDriver)</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/Simulating-typing-into-a-GWT-RichTextArea-with-Selenium-2-WebDriver-.html</link>
			<description>&lt;p&gt;I wrote an entry previously about manipulating a GWT RichTextArea widget via Selenium.  Recently I've been investigating moving to Selenium 2, also known as Selenium WebDriver.&lt;/p&gt; &lt;br/&gt;&lt;p&gt;As with Selenium 1 the mechanism for manipulating a RichTextArea widget in Selenium 2:&lt;/p&gt;&lt;br/&gt;Select the iframe that the RichTextArea resides inType the required text into the body of the iframeSelect the top level frame&lt;br/&gt;&lt;br/&gt;&lt;p&gt; Assuming a RichTextArea with an ID of &quot;gwt-debug-text-editor&quot; the following Java code [...]</description>
			<author>john.eccleston@blackpepper.co.uk</author>
			<pubDate>Fri, 18 Dec 2009 00:00:00 +0100</pubDate>
		<category>Selenium 2</category>
 <category>Selenium</category>
 <category>GWT</category>
 <category>Acceptance Testing</category>
		</item>
		<item>
			<title>Agile is for life, not just for Christmas</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/Agile-is-for-life-not-just-for-Christmas.html</link>
			<description>&lt;p&gt;In a recent article on TechRepublic, Ilya Bogorad reminded me how the mere possession of an IT buzzword does not make for good practice. In this instance, the topic of discussion was ITIL, the increasingly popular IT Service Management approach, or a &quot;framework of common sense&quot; for IT service providers, as some analysts point out.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;The same cautionary tale is true for Agile, which as a buzzword is currently on the ascendancy, but as a practice has been around for as long as anyone capa [...]</description>
			<author>adam.wright@blackpepper.co.uk</author>
			<pubDate>Thu, 03 Dec 2009 00:00:00 +0100</pubDate>
		<category>Scrum</category>
 <category>process</category>
 <category>development</category>
 <category>agile</category>
		</item>
		<item>
			<title>Cobertura errors in Hudson</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/Cobertura-errors-in-Hudson.html</link>
			<description>&lt;p&gt;I've just come across a very odd error while configuring one of our Hudson builds to publish cobertura metrics.&lt;/p&gt;&lt;p&gt; The build failed, and the console log contained many, many errors a bit like this one:&lt;/p&gt; FATAL: Unable to parse /var/lib/hudson/jobs/blah/builds/2009-11-27_13-37-31/coverage1986.xml&lt;br/&gt;hudson.util.IOException2: Cannot parse coverage results&lt;br/&gt;	at hudson.plugins.cobertura.CoberturaCoverageParser.parse(CoberturaCoverageParser.java:85)&lt;br/&gt;	at hudson.plugins.cobertura.Cober [...]</description>
			<author>chris.lilley@blackpepper.co.uk</author>
			<pubDate>Fri, 27 Nov 2009 00:00:00 +0100</pubDate>
		</item>
		<item>
			<title>Android Continuous Integration (Part 1)</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/Android-Continuous-Integration.html</link>
			<description>&lt;p&gt;At Black Pepper we have a history of carrying out n-Tier Flex/Java developments using continous integration with the following tools and libraries:&lt;/p&gt;JUnitJMock SelenuimCoberturaFindbugsHudsonAntLiquiBaseEclipse&lt;br/&gt;&lt;p&gt;We are about to move into the Mobile Computing arena with the Google Android phone as one of our target platforms. To aid this, I am developing a CI environment using all of the above tools.&lt;/p&gt;&lt;p&gt;This blog is the first of a series which will show how such an environment can b [...]</description>
			<author>dave.johnson@blackpepper.co.uk</author>
			<pubDate>Fri, 13 Nov 2009 00:00:00 +0100</pubDate>
		</item>
		<item>
			<title>The Pain of Integrating with HSBC e-Secure Payments</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/The-Pain-of-Integrating-with-HSBC-e-Secure-Payments.html</link>
			<description>&lt;p&gt;I've spent the last few weeks adding the ability to pay by credit or debit card to an application. Our customer has picked HSBC e-Secure Payments as their payment provider so I needed to integrate with their payment API. HSBC provide two mechanism, an API so that you can capture payment information within your own site and maintain your own branding, or you can redirect to a HSBC site for payment and then they'll redirect the customer back to your own site again once payment is complete. We w [...]</description>
			<author>john.cooke@blackpepper.co.uk</author>
			<pubDate>Wed, 11 Nov 2009 00:00:00 +0100</pubDate>
		<category>Integration</category>
 <category>HSBC</category>
 <category>eSecure Payments</category>
 <category>Credit Card</category>
 <category> testing</category>
		</item>
		<item>
			<title>Migrating an SVN project to different repository</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/Migrating-an-SVN-project-to-different-repository.html</link>
			<description>&lt;p&gt;Following the completion of the development phase of a recent project, we needed to handover the  project's source code  to the client as part of the project delivery process.&lt;/p&gt;&lt;p&gt;We wanted to capture the project's history, so this would  be available to the client's support and maintenance team. Fortunately, subversion provides a dump facility to do just that. Unfortunately, the dump process can produce huge volumes of data, and in our case, the output data was much bigger than the  disc s [...]</description>
			<author>simon.jones@blackpepper.co.uk</author>
			<pubDate>Thu, 05 Nov 2009 00:00:00 +0100</pubDate>
		<category>subversion</category>
 <category> programming</category>
 <category> disk space</category>
 <category> continuous integration</category>
		</item>
		<item>
			<title>How to save 33GB of disk space (or... Managing Plesk Backups)</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/How-to-save-33GB-of-disk-space-or...-Managing-Plesk-Backups-.html</link>
			<description>&lt;p&gt;Our hosted server recently ran out of disk space - an awkward situation. A little research revealed that /var/lib contained quite a lot of data - about 33GB more than we were expecting, most of it in /var/lib/psa/dumps/tmp.&lt;/p&gt;&lt;p&gt;Turns out that this is where Plesk puts its temporary files when doing backups, and for some reason they weren't getting removed, and in our case, they totalled 33GB. So... first of all we removed them, and then set about making sure the situation didn't happen again [...]</description>
			<author>chris.lilley@blackpepper.co.uk</author>
			<pubDate>Thu, 22 Oct 2009 00:00:00 +0100</pubDate>
		<category>Plesk backup</category>
 <category> plesk</category>
 <category> disk space</category>
		</item>
		<item>
			<title>Using Amazon EC2/EBS/S3 for automated backups</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/Using-Amazon-EC2-EBS-S3-for-automated-backups.html</link>
			<description>&lt;p&gt;I'll not go into a long winded argument about why you should backup your data. If you're reading this, you know it's a good idea and you like to learn how to push your data off site into the cloud for as low as $0.11 per GB per month. Note that I'm talking about the European pricing here, the US pricing is slightly cheaper.&lt;/p&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;In essence, what this blog will show you how to do is:&lt;/p&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Create an Amazon EC2 persistent volume of your desired size&lt;br/&gt;Start up an Amazon EC2 cloud machine [...]</description>
			<author>kieran.shaw@blackpepper.co.uk</author>
			<pubDate>Thu, 22 Oct 2009 00:00:00 +0100</pubDate>
		<category>amazon</category>
 <category> s3</category>
 <category> programming</category>
 <category> ec2</category>
 <category> ebs</category>
 <category> backups</category>
		</item>
		<item>
			<title>JackRabbit, WebLogic and some DNS trouble</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/JackRabbit-WebLogic-and-some-DNS-trouble.html</link>
			<description>&lt;p&gt;In a former life, as a BEA Weblogic consultant, I'm sure I would have sorted this problem out so much sooner!&lt;/p&gt;&lt;p&gt; We're using Apache's JackRabbit to provide a document repository and the configuration is done using and XML config file. Windows users appear to work fine, but on my Linux (Ubuntu) machine, the server reports problems reading the config:&lt;/p&gt;&lt;p&gt;org.apache.jackrabbit.core.config.ConfigurationException: Configuration file could not be read.: jackrabbit.apache.org: jackrabbit.apac [...]</description>
			<author>simon.jones@blackpepper.co.uk</author>
			<pubDate>Wed, 21 Oct 2009 00:00:00 +0100</pubDate>
		<category>java</category>
 <category>apache</category>
		</item>
		<item>
			<title>Simulating typing into a GWT RichTextArea with SeleniumRC</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/Simulating-typing-into-a-GWT-RichTextArea-with-SeleniumRC.html</link>
			<description>&lt;p&gt;I have been writing a Selenium test for a GWT application, which on the whole has been working really well.  The only fly in the ointment was manipulating a GWT RichTextArea widget.&lt;/p&gt;&lt;p&gt; A RichTextArea is not a standard HTML input component, rather it is emulated by the GWT framework, therefore the normal SeleniumRC method of type() doesn't work when applied to the RichTextArea directly. After some reading and experimentation it can be done as follows:&lt;/p&gt;Select the iframe that the RichText [...]</description>
			<author>john.eccleston@blackpepper.co.uk</author>
			<pubDate>Fri, 02 Oct 2009 00:00:00 +0100</pubDate>
		<category>Selenium</category>
 <category>GWT</category>
 <category>Acceptance Testing</category>
		</item>
		<item>
			<title>Flex acceptance testing demo</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/Flex-acceptance-testing-demo.html</link>
			<description>&lt;br /&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;br/&gt;&lt;br/&gt;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&lt;br/&gt;The app under test is a simple demo of several Flex widgets. The acceptance tests aim to verify that interacting with the widgets produces the desired results on the page. Each test automatically interacts with a widget and checks the result with a JUnit assertion.&lt;br/&gt;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&lt;br/&gt;The tests are written in Java as JUnit tests and use Selenium - Selenium RC and SeleniumFlexAPI - as described in my earlier blog on&lt;br/&gt;Flex acceptance testing. The source code for the tests and t [...]</description>
			<author>julia.dain@blackpepper.co.uk</author>
			<pubDate>Mon, 08 Jun 2009 00:00:00 +0100</pubDate>
		<category>flex</category>
 <category> video</category>
 <category> testing</category>
 <category> Selenium</category>
 <category> Flex</category>
		</item>
		<item>
			<title>'ShadowTail' Open Source Project Released</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/ShadowTail-Open-Source-Project-Released.html</link>
			<description>&lt;p&gt;We are pleased to announce that we have released an Open Source project called &lt;b&gt;&lt;i&gt;ShadowTail&lt;/i&gt;&lt;/b&gt; to the world at large.&lt;/p&gt;&lt;p&gt;Shadowtail is a Java/Spring framework for gathering numerical data (statistics) about a Java application, and writing the data to files. It is particularly useful as a source of data to feed Orca, the free tool for plotting textual data onto a directory on a Web server.&lt;br/&gt;&lt;br/&gt;Why would you want to use Shadowtail? &lt;/p&gt;&lt;p&gt;Shadowtail helps you to monitor your so [...]</description>
			<author>dave.johnson@blackpepper.co.uk</author>
			<pubDate>Wed, 06 May 2009 00:00:00 +0100</pubDate>
		<category>statistics</category>
 <category>orca</category>
 <category>mbeans</category>
 <category>jmx</category>
		</item>
		<item>
			<title>Why go to QCon?</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/Why-go-to-QCon-.html</link>
			<description>The short answer&lt;br/&gt;&lt;p&gt;Because it's the best.&lt;/p&gt;&lt;br/&gt;The long answer&lt;br/&gt;&lt;p&gt;&quot;Gather round&quot;, Dan North told the attendees at the QCon London 2009 software development conference, &quot;and I'll tell you a story&quot;. This story starts with a story-within-a-story.&lt;/p&gt;&lt;br/&gt;User Story: Software Engineer attends a conference&lt;br/&gt;Narrative&lt;br/&gt;&lt;p&gt;As a software engineer, I want to attend a conference so that I can become a better engineer.&lt;/p&gt;&lt;br/&gt;Acceptance Criteria&lt;br/&gt;&lt;p&gt;While attending the conference,&lt;br/&gt;&lt;br/&gt;I should enjoy myself&lt;br/&gt;I [...]</description>
			<author>julia.dain@blackpepper.co.uk</author>
			<pubDate>Wed, 18 Mar 2009 00:00:00 +0100</pubDate>
		<category>QCon</category>
		</item>
		<item>
			<title>QCon - Thoughts on the Generic vs Specific Trade-off</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/QCon-Thoughts-on-the-Generic-vs-Specific-Trade-off.html</link>
			<description>Stefan Tilkov gave a very interesting talk on the problem of when to choose a specific or a generic solution. While there were no answers provided, after all it's one of those things where there can be no general answer, it was definitely an entertaining and thought-provoking talk.&lt;p&gt;He started off be describing what he saw as the typical development of an architect. One starts out, fresh from university all keen and eager to build some exciting and cool software. This is the &quot;Enthusiastic Devel [...]</description>
			<author>john.cooke@blackpepper.co.uk</author>
			<pubDate>Fri, 13 Mar 2009 00:00:00 +0100</pubDate>
		<category>Stefan Tilkov</category>
 <category>specific solution</category>
 <category>QCon</category>
 <category>generic solution</category>
 <category>architecture</category>
		</item>
		<item>
			<title>QCon - Persistent Data Structures and Managed References</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/QCon-Persistent-Data-Structures-and-Managed-References.html</link>
			<description>Following on from yesterday's Clojure session, I was interested to attend Rich Hickey's second one on Persistent Data Structures and Managed References. He'd touched briefly on this topic and it whet my appetite. This talk wasn't specifically on Clojure, but on how one can use immutable data structures, separation of identity and value and managed references to solve many issues that concurrent programs face.&lt;p&gt;The key to concurrent software design is immutable data structures. If a data structu [...]</description>
			<author>john.cooke@blackpepper.co.uk</author>
			<pubDate>Fri, 13 Mar 2009 00:00:00 +0100</pubDate>
		<category>Rich Hickey</category>
 <category>QCon</category>
 <category>Persistent Data Structures</category>
 <category>Managed References</category>
 <category>Functional Programming</category>
 <category>Clojure</category>
		</item>
		<item>
			<title>QCon - Agile Distributed Development done right using Fully Distributed Scrum</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/QCon-Agile-Distributed-Development-done-right-using-Fully-Distributed-Scrum.html</link>
			<description>I wanted to see this talk by Guido Schoomheim since Black Pepper has been worked on distributed agile development projects now for a year or so, between sites in the UK and I was interested to hear Xebia experiences. Xebia have a team distributed between their offices in The Netherlands and in India. &lt;p&gt;Guido started his talk by discussing some interesting statistics regarding the costs of traditional outsourcing. He compared the costs of doing the development locally using a &quot;hyperproductive&quot; a [...]</description>
			<author>john.cooke@blackpepper.co.uk</author>
			<pubDate>Fri, 13 Mar 2009 00:00:00 +0100</pubDate>
		<category>Scrum</category>
 <category>QCon</category>
 <category>Distributed Scrum</category>
 <category>agile</category>
		</item>
		<item>
			<title>QCon - Agile: Possibilities at a Personal Level</title>
			<link>http://blackpepper.co.uk/black-pepper-blog/QCon-Agile-Possibilities-at-a-Personal-Level.html</link>
			<description>This talk was a bit of a surprise. Linda Rising's talk, while thought-provoking, to me didn't really fit an hour's slot in an Agility Organisational Patterns track.&lt;p&gt;The premise was essentially that we as a society have been taking caffeine since the beginning of the Industrial Age and that life today is different from that of a 19th Century factory worker so we may want to re-evaluate whether the drug caffeine is still useful to us. I'm not really sure how the contents of the talk, which was a [...]</description>
			<author>john.cooke@blackpepper.co.uk</author>
			<pubDate>Thu, 12 Mar 2009 00:00:00 +0100</pubDate>
		<category>QCon</category>
 <category>Linda Rising</category>
 <category>Caffeine</category>
 <category>agile</category>
		</item>
	</channel>
</rss>