December 12, 2008

Thoughts on Scrum

The project that I'm on is being run as a pure Scrum project. I'm still forming my thoughts, but I think it's still worth sharing my first impressions.

I'm something of a reactionary old architect; I still instinctively like to design a lot up front. I'm fully aware that design still has a part to play in Scrum, but I do feel better with more up-front thought about the problems.

I've been surprised at how heavyweight the Sprint meetings feel (Planning, Review and Retrospective). We were running a 2 week sprint and it felt like we spent far too much time in these meetings, it felt a lot better when we moved to a 3 week sprint.

The Scrum Owner role is critical. He or she needs to keep all the meetings very well focussed. The meetings can become very wasteful if they are allowed to drift.

On this project I've been introduced to Behaviour Driven Development using JBehave and will use BDD on any project that I can as it has made developing and refactoring the system infinitely easier. Being able to form a contract in English with the customer for the functionality and automatically regression test it brings to the integrated system what Unit Testing did for individual classes.

Speaking of Unit Testing, I've been doing purer and purer Test Driven Development. I'm don't think I'll ever be a purist as I find that sometimes you need to do exploratory programming.

I do find it sensible to limit the scope of my firm estimating to just the upcoming Sprint; I'm fed up with being forced to give estimates for a poorly understood system 6 months or a year in advance. I also like the fact that Scrum works so well in the face of changing requirements. There has been no project I've ever worked on without chanign requirements and scope creep and Scrum keeps the effects of those changes very visible to the stakeholders.

As the project moves towards production I'll blog again on how well Scrum has worked.

December 09, 2008

Rules with Jess

As part of my recent contract with I've been working on a project that is likely to have a large rulebase requiring frequent change. As a result we've decided to use a rules engine to manage them. We won't necessarily be allowing real time changes to rules, but we may well allow some changes between releases.

Jess was selected as it is already used within the organisation. It's not open source but meets the JSR-94 specification. It's based on the Rete algorithm and uses a CLIPS based language to define the rules. (CLIPS is a derivative of LISP so be ready for a lot of brackets...).

I have to say that it has taken me a while to get to grips with Jess as, for whatever reason, I ended up with the work of integrating it with our codebase. Trying to write the rules was incredibly difficult until I had a key realisation: Jess is not object oriented.

In fact the data (facts in Jess-speak) needs to be presented in a relational manner. In effect instead of references you need to create Primary and Foreign keys. Then you can create rules that navigate graphs of facts relatively easily. In effect you can start to leverage your experience with relational databases, the syntax is different but the thinking abou relationships is the same.

Once I had that realisation I produced a set of 'Fact' classes that present the Object Oriented data model in a relational manner. In order to bind the facts I define Jess templates with meaningful names from the 'Fact' classes and then use the Rete.addAsTemplate method to add the objects representing the data as Facts to Jess.

Jess is now much easier to work with.

December 08, 2008

Winter Recipes

In this weather one's mind turns to good sustaining food so here I present a couple of favourite recipes for this kind of weather. One is a proper recipe, the other is an out and out cheat...

The first recipe is derived from a baked mushroom recipe that I first saw on 'The Victorian Kitchen' cooked by Ruth Mott. Her recipe was simply Portobello mushrooms baked with butter salt and pepper for about 20 or 30 minutes depending on the size of the mushrooms.

Delicious though the recipe was, I thought of a few things that I could add to it.

Robert's Portobello Mushrooms.
Ingredients:
  • 4 or 5 large Portobello Mushrooms.
  • A cup of pearl barley.
  • 2 rashers of back bacon per mushroom.
  • A large nob of butter per mushroom plus one.
  • Salt & Pepper.
First cook the pearl barley in boiling water for about 45 minutes to an hour (untill cooked and lightly fluffy). Drain and keep the water if you want to make barley water. Pearl Barley once cooked can be kept in the fridge for a few days or even frozen for a few weeks.

Place a baking tray in an oven at 155 - 175 degrees centigrade to pre-heat.

Remove the stalks from the mushrooms trim them and add to a stock pot if you have one available.

Place the mushrooms with their bottoms up so that they then can be filled with the cooked pearl barley. Place a nob of butter on top of the pearl barley filling the mushrooms and season to taste. Be light with the salt as the bacon will add a lot of flavour.

Allowing two rashers of bacon per mushroom, halve the rashers so that you end up with 4 pieces per mushroom. Lay the first two pieces next to each on top of the mushroom. Then at ninety degrees to the first two pieces lay the next two pieces next to each other. You should end up with the pearl barley mostly covered by the bacon. Of course if you have massive mushrooms you may need to use whole rashers to do the covering.

Take the baking tray out and place the extra nob of butter in the bottom, allowing it to melt and cover the base. Place the filled and topped mushrooms carefully in the baking tray and return it to the oven.

Allow to bake for about 40-45 minutes.

Serve and eat...

I like to put the mushrooms in the oven before I go out for a brisk walk outside so I have a hot snack when I get back.

Cheat's Luxury Scotch Broth
This recipe depends entirely on the availability of certain products in the supermarket. Baxter's Scotch Broth is excellent, but is identifiably not a 'home made' Scotch Broth. Waitrose and a few other supermarkets have been selling a range of foods called 'Look What We've Found'. Basically stews, and casseroles in pouches that just need re-heating; the quality is excellent. One of the recipes that they do is 'Herdwick Mutton Stew'. It is delicious, but I find it a little heavy sometimes.

What I do when I'm feeling extremely lazy and want to have a delicious Scotch Broth or to impress someone is mix a pouch of the mutton stew with a can of the Baxter's soup and heat.

You end up what tastes like a brilliant home made Scotch Broth that will serve 2-3 people.

December 02, 2008

Are We Building a Biplane or a Jumbo Jet?

This is a question that I nowadays find myself asking very frequently; of myself and of my end clients. It's an important question as it frames the scope of the piece of work. The very technical versions of this question ('What percent Disaster Recovery do we need?' or 'What percent up time do we want to guaranteer?') tend to cause non-technical people to boggle and not come up with any useful answers.

My technique nowadays tends to lead people gently into the whole topic.

The analogy of building a Biplane or a Jumbo Jet is a good one and can be extended quite a long way. You can get across the English Channel safely in both, but you could only take a few people in a Biplane and the safety levels are not as good as in a Jumbo. A Jumbo tends to be faster but limited in where it can land, it tends to be more robust but costs much more to build and maintain. I'd happily cross the Atlantic in a Jumbo, but would be much less happy in a Biplane.

Once you've used this analogy to lead the client gently into thinking about the robustness and availability of the system, I then tend to get them thinking about the cost implications of the various levels of Service that the system could be offering. Point out that 99.999% availability would cost several tens of millions and do they really want to spend that much to build a system that would guarantee only a few minutes of downtime in a year? When you frame it that way they tend to become more amenable to 99.9% or less availability. It is also worth coming prepared with the staffing costs for a 24/7 system, they often realise that the system is only needed 5 days a week and for only 12 hours a day...

Until you know the Disaster Recovery and Availability requirements for a system you can't architect or design it. However you must be careful in asking the right questions so that your clients think thoroughly about what they need to be. 

November 26, 2008

Futurama: Bender's Game...

Last night Henry, Neil and Dimple joined me to watch the newest feature length Futurama: Bender's Game.

We all had similarly mixed feelings about it: We laughed at various points during the episode but on balance felt that it was not vintage Futurama.

Afterwards we looked on IMDB and saw a mix of reviews that reflected our thoughts. The review that best expressed my feelings was by 'howTVshouldbe'. His summary was 'It starts as a refreshing character comedy but when the "Game" portion kicks in the movie just curls up and dies under it's own nerdy indulgences'.

The writers evidently had so many jokes for the subject matter that they were unable to self-edit. Good comedy needs pacing so that the audience can react and digest the jokes. Bender's Game threw the jokes in so thick and fast that I barely had time to react to a joke before the next one was cracked. There didn't seem to be any attempt to create any recurring jokes to give the show structure and rhythm either.

I wonder whether the writers were trying to create a layered show that would bear re-watching. Unfortunately the gags were too obviously telegraphed.

Bender's Game for me was a disappointment. The Futurama writers may be better off under the time constraints of a series based episodic format.

September 22, 2008

Recycling Factory Pattern.

I've been thinking a little about patterns recently as a result of having to interview far too many people in the past week. I've been asking them to tell me about patterns and their relationships.

It's been interesting hearing people talk about the 'evil Singleton' pattern, get muddled over the Factory pattern and refer to the Pool pattern.

The thing that these patterns all have in common is that they provide a mechanism for accessing an object for immediate use,

These patterns all feel like special cases of a more general pattern. More specifically they are implementation patterns of that general pattern. What makes the Singleton evil is not that one instance exists in the JVM but that dependent code knows that a single instance exists in the JVM.

I'm thinking that there is a more general pattern for managing objects that includes a get instance method and a return instance method. The dependent code on this pattern becomes responsible for getting an object, using it and returning it (though a callback could be used too). The dependent code then becomes less aware of whether it is working with an object from a pool, a factory or a singleton and just gets on with using the object. The implementation of the pattern can be switched to any implementation pattern at any time according to need.

This pattern could be called the Recycling Factory Pattern.

On a more general basis this leads me to think that patterns need to be classified into whether they are implementation patterns or something else (can't think of a name yet).

August 29, 2008

Motormouths Anonymous

Hello, my name is Robert and I am a recovering motormouth...

Spare a thought for those of use who are born with verbal diarrhea, we have to work very hard not to monopolize any conversation and are typically very uncomfortable with silence.

My whole family seem to be motormouths, some recovering like me, other just keep talking. My father was famous in the family, he was late in learning to talk and my paternal grandmother was convinced that he was spending the rest of his life making up for lost time.

I have it largely under control. Every now and then I catch myself talking too much and deliberately stop talking. I can have actual conversations with people and learn things from them. A few things make me go off the wagon - I had a concussion recently and a friend had to put up with me talking non-stop for 4 hours straight. More everyday, I find myself having to avoid caffeine, a cup of coffee and I am off and 'talking for England'.

Being a motormouth has its advantages, to be one you have to have a brain capable of keeping up but on balance the disadvantages are too great.

August 26, 2008

Distributed Transactions

One of the hardest things to design in distributed systems is the transactional behaviour.

I am perpetually surprised at the naivety with which people approach this set of problems. There does not seem to be any formalism to approaching this kind of design. What I do is deliberately take as step back and design the 'transactional architecture':
  1. Identify parts of the architecture that may participate in distributed transactions; components with storage that will be changed irrevocably as a result of a transaction. The obvious ones are databases and message queues which are themselves transactionally aware but one must also take into account non-transactional components such as the file systems and LDAP servers that may be changed in the scope of a transaction.
  2. Document the expected transactional behaviours involving these components.
  3. Design transactional schemes that meet the expected behaviours.
At each step I revisit the designs of the system based.
  1. Should I really be changing this component? I may stop using the file system for storage and instead move it into a database table.
  2. Does the expected transactional behaviour introduce circular dependencies between components? Is ACID-ity expected between two widely divergent transactional domains?  I may move whole entities from one component to another.
  3. If there is no way to implement the behaviour can I make some change to produce the same business behaviour but avoid the implementation problems.
In general I believe that using two-phase commits (XA and the like) is the sign of a poorly designed solution architecture as they are only necessary if the system requires 'immediate' consistency between two or more transactional domains. I will use other transactional management techniques such as idempotency and compensating transactions which provide 'eventual' consistency not 'immediate'.

August 03, 2008

Carbon-neutral foods

The biggest problem with modern food production is that it is entirely dependent on oil. We've already seen food costs rise as a direct response to rising oil prices.

Many farmers have profitably moved their food production over to organic methods, I wonder how long it will be before we see certified carbon-neutral foods on our supermarket shelves?

I'd certainly be happy to pay a premium initially in the sure and certain knowledge that as oil runs low my food prices will remain stable.

I can see that there would be degrees of carbon-neutrality. The foods that still use oil, but are carbon-offset, the foods that use no oil in production and the farms that use no oil in production or distribution.

All plants should be fertilised using non-oil derived fertilisers. The by-products of plants such as the unused stems and leaves should be put into bio-reactors to produce fuel or fertiliser. All farm animals should be fed on carbon neutral food stuffs and their by-products should be recycled for fuel or fertiliser.

A collective of farms could work together: One specialising in producing plants for food and fertiliser, another producing fuels and yet another producing meat, fuels and fertiliser. Each farm would work to offset the others' needs.

I don't know when this will happen, I only know that it will have to happen.

July 30, 2008

An Abstract View of Documentation

I've been thinking a little about the documentation of a system.

I think that there are two sorts:
  • Descriptive
  • Transformative
Descriptive documentation describes a system at a given state of time.

Transformative documentation describes the transformation of a system as a result of change.

Transformative documentation is only maintained for the duration of the change and is thereafter left as a record of the change. The work defined by transformative documentation results in change to the descriptive documentation.

Descriptive documentation is maintained for the lifetime of the system and is changed as the system is changed.

I think that by classifying documentation in this way one can start to define what documentation is required.

Ideally descriptive documentation should provide a clear, succinct and easily maintainable view of the system in question. Transformative documentation needs to clearly define the necessary changes and only be maintained to correct mistakes.

July 21, 2008

Prototyping

I've been working on defining development processes for NHSBT and have been discussing useful forms of prototypes.

The way I see it there are two main classifications:
  • User Interface Prototype
  • Technology Prototype
One typically prototypes to communicate concepts to a user or to prove a technology.

I tend to use two types of User Interface Prototype:
  • Wireframe
  • Ghost Town
A wireframe prototype is used in most projects that have a UI. It is typically a set of drawings (electronic or paper) that show the layout and flow of the UI screens. It is great when you have experienced users who are familiar with a broadly similar application and can visualise the final functionality. It falls down badly when the users are unfamiliar with the type of functionality.

A ghost town prototype fills in the gap. The UI is implemented in actual code as a shell with no actual business logic or persistence. It is called a 'ghost town' because it is like the towns in western shows and films where the entire street is just a set of thin facades held up by beams and boxes. The UI is fully interactive and it makes it very easy for the user to grasp the functionality. Traditionally ghost towns were considered 'throw away'; nowadays with the Model View Controller pattern it is very easy to implement ghost towns where the majority of code can be reused. The only real drawback is that they can give a false impression to the user that the application is finished and ready.

There are also only two technology prototype forms that I use:
  • Proof of Concept
  • Tracer Bullet
The proof of concept is a purely exploratory prototype which is done to investigate a new technology. It follows a simple process of writing code and seeing if it works in the expected way. This prototype can be very dangerous if clear goals and criteria are not established early on as it can become very undirected and any decisions made as a result can become matters of opinion that may not be in the best interests of the wider project or programme. The proof of concept should always be written expecting to throw the code away as the technology being investigated may not be suitable; that does not mean that the code should be written as if it were expected to be thrown away. A poorly written proof of concept can be less than useless in evaluating a technology, also with modern refactoring a successful proof of concept can be turned into production code.

The tracer bullet is used when the choice of technology is well established but the particular technology stack has never been used before. A very thin vertical slice of functionality is selected that touches all the novel integrations and the prototype is written to implement it. This prototype should always be of production quality as the code it produces will define the patterns and standards for the finished application and will normally be the first check in to the development repository.

These are the types of prototype that I use on a regular basis, are there any that I should be using that I have missed?

July 17, 2008

I've got to be careful not to let it grow out of control...

I've been working and thinking about my encrypted zip framework and in the process of refactoring and abstracting I find myself teetering on the brink of creating a grand unified storage framework for Java, where one defines 'entries' and those can be stored to filesystem, database, zip file, etc.

I think that a Grand Unified Storage Framework would not be a bad thing as I have long been frustrated at the Java API differences in writing data to the different storage media, but I really should focus on delivering the encrypted zip framework. I think that I need to keep the GUSF in mind so that whatever I produce for encrypted zip can be rolled in.

July 16, 2008

Mobile Broadband

Well I've taken the plunge and have got mobile broadband from T-Mobile.

I'm still trying to work out how to get access the the wireless hotspots as I need to send a text using my SIM card to get a username and password.

I think that I'm just going to have to stick the SIM card in my normal phone, send the text and see what happens.

I've been working on the Encrypted Zip on the train to and from work and having access to the internet has been a godsend. Especially when negotiating the deep, dark waters of Java Cryptography. Why are the APIs so overcomplicated? I'm facade-ing a lot away and so may end up with some classes that will be of wider use.

I'm also swearing at the wider Cryptography community. There is a dearth of decent keystore standards and implementations. For those who don't know what a keystore is, it is a type of file where you keep the keys and certificates that you use to encrypt things and to prove your identity online. The only broadly portable 'standard' keystore is PKCS#12 which is widely held up as an example of how not to create a cryptography standard. In my implementation I'll probably have to default to simple password based encryption and allow users to specify better levels of encryption at the cost of reduced cross-platform portability.

On the other hand I have working code and am beginning to see my way clear to a working encrypted zip.

June 30, 2008

Working with OutputStreams

I'm a big fan of the implementations of OutputStreams in Java - a very good example of the decorator pattern. It is great to be able to add capabilities by simple composition.

I'm using various OutputStream implementations to create an API to encrypt files within a Zip file. Unfortunately there are some maddening inconsistencies.

The one that is giving me the biggest headache is the fact that the CipherOutputStream close method closes the underlying output stream. With any other OutputStream implementation one would call the flush method, but for block ciphers, the block is not flushed until close is called. If one is encrypting multiple files to the underlying stream one has to work out some way to close the CipherOutputStream without closing the underlying stream.

What is even more maddening is the fact that DeflaterOutputStream has a method called finish that does exactly what I would need, it completes the deflation without closing the underlying stream.

Why can't CipherOutputStream have a similar method?

April 01, 2008

Tumultuous Times

Been a bit busy of late, landing a role as the Enterprise Architect for NHSBT. As usual I intend to work myself out of the role, but for now my day is filled with learning a whole new business domain and fleshing out my skills with a few new ones.

I'm having to pinch myself, realising that Enterprise Architect is only one step down from board level. My self-belief and arrogance will really be put to the test.

February 26, 2008

The Death of my Great Great Grandfather. (8/8)

That's it. The End...

I'm really glad that I got this out and shared it. This is the final part of the tale as I have it.

"The Standard", June 10th., 1881

The Corrientes Murder
-

With much pleasure I make room for the following papers, which speak for themselves. We shall be only too glad to lend our poor aid to the object expressed in Mr. Budge's letter and receive subscriptions to help so merited a testimonial.

-

Concordia, June 5th., 1881

My Dear Mr. Clarke.

Since the dreadful murder of poor Macdonald and Guthrie we have had occasion to note and admire the conduct of Commandante Casco, Gefe Politico of Monte Caseros, for the zeal, energy and success with which he hunted down and captured the whole gang of assassins.

He himself worked night and day, and did not rest until he had succeeded. In view of this we have drawn up the enclosed subscription list in order to raise funds for the purchase of some sort of token as a recognition of his services.

As you have already taken the matter up, we trust you will still further use your influence, either publicly or otherwise, to receive the list of subscriptions: the proceeds of same can be forwarded to myself and handed to the secretary of the Committee.


Yours faithfully,

O. Budge.


-

LIST OF SUBSCRIPTIONS FOR THE "CASCO" TESTIMONIAL
_____________________

W.G. Smart, F.C. Concordia 1-0-0
J. Carrol 1-0-0
C. Fair 0-10-0
John McCorquodale 1-0-0
F. Forkett 10-0
A.H. Coaker, Concordia 1-0-0
Philip A. Paye, Concordia 1-0-0
E. Tulbais 1-0-0
O. Budge 1-0-0
G. McLeod 1-0-0
Amadeo Bonibent 10-0
G. Brown 10-0
A. Parker, Concordia 1-0-0
Edward Ware, Salto 1-0-0
Edwards Morice 1-0-0
William Johnson 1-0-0
Robert Wilkinson, Salto 1-0-0
Hugo Lindsay 1-0-0
C. Tipper, Salto 10-0
Hume & Hardy 1-0-0
James Shaw 10-0
Revd. W.H. Shimield 15-0
W. Thompson 1-0-0
J. Perxy Clarke 10-0
John Armstrong 1-0-0
Edward Dickinson 1-0-0
J. Harris 1-0-0
G. Dickinson, Bs. Aires 1-0-0
John White 10-0
Thomas Ebrey 1-0-0
Thomas Taylor, Concordia 1-0-0
A.H. Caley 1-0-0
T.C. Clarke 1-0-0

February 21, 2008

The Death of my Great Great Grandfather. (7/8)

News of the murderers.
"The Standard", May 28th., 1881

The Murder in Corrientes
-
Naranjito, May 23rd., 1881

To the Editor of "The Standard"

Dear Sir,

I am happy to inform you that the last of the murderers of Macdonald and Guthrie passed up, well secured in the train to-day to Monte Caseros; he had the watch and ring of Macdonald, and also the recado of Guthrie, so that now the whole thing will come out.

I hope you will use your influence with the British Minister to hurry on the Government to do what is right, in having the men shot here and not sending them on to the capital, because if they are sent on there, then good-bye to justice as they in a short time will be back here again to do worse still.

Yours very sincerely,

Subscriber

February 03, 2008

The Death of my Great Great Grandfather. (6/8)

A slightly shorter update this time - The response from the Governor of Corrientes and a Mr. McCorquodale gives some details on the murderers.


Buenos Aires "Standard", April 26th, 1881


The Naranjito Murder

-

With much pleasure we publish the following telegram from the Governor of Corrientes to the President of the Republic, in reply to the President's message sent the moment His Excellency discovered that the crime was committed in Corrientes. The message in question is fully corroborated by two letters we give at foot, and for which we are much indebted to the kind attention of Mr. McCorquodale, station at Naranjito on the Eastern Argentine Railway.

-

Corrientes, 24th April, 1881

To the Most Excellent President of the Republic.

I have received Your Excellency's telegram; The Gefe Politico of Caseros announces the capture of one of the assassins of the British subjects, and is in active search of the others, as ordered by this Government the first moment it heard of the crime. I can assure your Excellency that I heartily condemn those crimes, and while I cannot possibly prevent them, I am determined to have them severely atoned for.

I fully appreciate our position and credit, and will leave no stone unturned to guarantee life and property.

I salute your Excellency

A.B. Gallino

-

Naranjito, Corrientes, April 22nd. 1881

To the Editor of "The Standard"

I have just seen in your paper of 19th April, where it is given out that the murder of Macdonald and Guthrie was in Entre Rios, it is not so, they lived in Corrientes.

It may be of some service to you from what I personally know, that the Gefe Politico in Monte Caseros, Sr. Casco, has exerted himself in every way possible and is still doing so, to find out the murderers; he has not left a moment day or night, since the murder, in searching every corner, and I learn that he has taken about thirty prisoners.

To-day I hear that he had staked out a man yesterday, and he confessed that the chief was a brother of the "capataz" of Macdonald and Guthrie; and this man the capataz they had discharged some weeks before: this has to be corroborated by further proofs yet, but Casco is labouring like a good Briton, in this affair, and also Juez de Paz of Monte Caseros told me that he would offer a reward of $500. to anyone who would discover who had been the assassins.

As you truly say, this crime comes at a bad moment, when Dean Dillon has just gone home to foment emigration to this country, and Macdonald and Guthrie told me that others were to follow them here to settle down, now this will put a scare on English coming here. The Province of Corrientes is a splendid one in rich camps, either for sheep or cattle, and a most magnificent one for agriculture.

If I learn anything new, and you should careto be acquainted with it, I shall be proud to let you know.

J.F.M.C.

P.S.
Naranjito, April 22nd. 1881

I forgot to mention in my letter that three days after the murder of our countrymen, within three or four squares a "Tropero" (Brazilian) was attempted to be assassinated also, by his own Peon, while lying down and serving mate.

The Peon gave him two shots behind and luckily that the Comisario was at the house of Macdonald and galloped over, if not the man was killed: the Peon was captured, but not before he was nearly hacked to pieces.

I have no more time, train hour.

Yours truly,

J.F. McCorquodale

January 24, 2008

Sigh... HTTP Status 408 after Login on Tomcat.

Quick little post to share the results of a day's worth of wasted effort. I was creating a tracer bullet prototype of a web application for a customer and was configuring the security using an LDAP server (Apache Directory Server and Apache Directory Studio - a very good combo). Having configured the LDAP server I set up form based security and pointed a browser at the web application. I first tested the failed login and sure enough I got the login error page. I tested the correct login and disaster - I got an HTTP 408 page from Tomcat telling me that the session had expired because I had taken to long to login.

I followed all the usual paths, I checked that the LDAP was authenticating correctly, I checked that the browser was handling cookies correctly, I looked at the Tomcat logs for any unexpected exceptions. I did a whole lot more.

Eventually, after building my own version of Tomcat with lots of trace, I found the problem. The Login JSP that I was using had a nasty little taglet that included a session invalidate command. After removing this everything worked correctly.

I must remember that when I reuse code from elsewhere in a project, I should check for any gotchas.

January 22, 2008

The Death of my Great Great Grandfather. (5/8)

One of the murderers is caught in a very long piece
.
The Corrientes Murder
-
One Assassin Caught.
-
One of the best proofs of the generally improved state of affairs in this country, is the very decided action taken by the authorities in the case of the murder of the two Scotch farmers at Naranjito, Corrientes.

The very day the news reached this city, and the matter was brought to the attention of the National Government by Sir Horace Rumbold, who not only wrote a note to the Minister of Foreign Affairs, but took the note himself to the Minister. President Roca despatched a telegram to the Governor of Entre Rios, which telegram we have already published, as also the Governor's reply. President Roca, finding that the murder was committed in Corrientes and not in Entre Rios, at once despatched a fresh telegram to the Governor of Corrientes, and the Minister of Foreign Affairs received a reply on Friday night from the Governor, who stated that every step possible to catch the assassins had been taken, and that a telegram from the Gefe Político, at the Monte Caseros had just arrived announcing that one of the assassins had been caught. The Governor of Corrientes says in his message, that every step possible will be taken to bring the other murderers to justice, and we believe that the probabilities are that they will all be caught.

Steps have been taken by the British Minister to appoint a "curation" to look after the property of the murdered men, and Mr. Smart the Manager of the East Argentine Railway has been asked to designate the proper person as "Curator".

Of all the terrible murders it has been our melancholy task to record, we think that we may safely say this is the first instance where the authorities, one and all, have show a determination to catch the assassins. The British Minister, the Minister of Foreign Affairs, and even the President himself, have been duly in the receipt of telegrams on the subject, and let us hope now that when the assassins are caught, they will be at once tried, and if convicted, summarily executed. President Roca has expressed his determination to have full justice done in the matter. The following are the latest details of this terrible crime.
-
Salto, 20th. 1881
Dear G

I went up to Corrientes, as you already know, to learn some particulars of the said affair, and to see how things stood, &c. It appears that on the night of the 12th inst. about 8 o'clock more or less, two men called at Guthrie's and Macdonald's Estancia and asked for "Pasado" which was granted, they then unsaddled their horses, tied them out and came back to the house, and one of them took his boots off and put on slippers. This one was well dressed, silver "recado" stirrups &c., and talked "muy politico". The other was not so well dressed and appeared to be a peon. Guthrie asked them if they had eaten, and they said they had not, he then told his wife to make them an "asado" which she did, the peon eating in the kitchen and the other at the door of the house, and talking with Guthrie about camp, &c.

After eating the roast Guthrie said to the man (if he can be called one) "You will please excuse me putting the bed outside as the house is so small", so he took out the "catre" and put it about 15 yards from the house, near a little "Remanada", and returned for a mattress to make up a bed, and when in the act of arranging the mattress, the fellow went behind him, caught him either by the hair or collar, and at the same time cut the poor fellow's throat from ear to ear, he fell instantly and half raised himself on one leg: seeing this, his wife got a revolver and was running out to Guthrie, when Macdonald took it from her, thinking that perhaps he could do more with it, or else to give it to Guthrie. Then the poor wife ran to poor Guthrie and got hold of him, when he fell dead covering her with his blood. She then ran into the house, took up her child and crossed into a wild "potrero" passing an Arroyo up to her neck in water to get to a house about four squares off. When Macdonald came out he may have been stabbed whilst passing the doorway, by the man in the kitchen, as the neighbour and wife say that eight shots were fired, if Macdonald fired them all, he fired without aim, as the night was as clear as day. If he was stabbed coming out of the house of course that would account for it, but still I don't think that he was, as José Maria Fonseca told me that he was stabbed under each breast and the wounds so large as to put your hand in either, and if he got them coming out of the house, he must have fallen at once, his head was almost severed from his body also; and between the thumb and first fore fingers there was a great gash, and it was supposed that Macdonald had caught one of their "facones". Next morning
José M. Fonseca with the Comisario, Juez de Paz, &c., had the bodies put in coffins and sent them on to Monte Caseros, Fonseca attended to the taking of the inventory and all papers, &c., that were then in the room, and the door sealed.

A capataz and two peons are in charge of he sheep and cattle, there are 268 Sheep, 133 head of cattle, 23 horses and mares (17 Horses). Mrs. Guthrie is a Fonseca's, and wants him to look to her interests: but who is to represent Mr. Macdonald's family? Perhaps Mr. Clarke can; he may have Mr. Macdonald's will if he made one when in Buenos Aires, and wanted to give you a "Poder"; however tell Mr. Clarke what I say. The contract of the "Sociedad" may be with the papers in the house, or at Coll & Salda's, where Macdonald had money; I think Guthrie entered with $1,200., Guthrie to pay Macdonald 3% per annum for difference of capital and Macdonald to put $7,000., so as all the capital in stock is only what I say, all Guthrie's capital will have been invested: this the books ought to show, Guthrie to manage, &c., and gains on halves.

The capital in stock as you see is small, but the sooner something is done the better for all concerned, as the stock will get big, Juez expenses increase, &c., and the matter becomes more difficult to deal with. What I think best to be done is, if Mr. C. is not executor of any will Macdonald might have made, and there is no will existing, he might get a power to name somebody to represent Macdonald's interests, and signed by someone of influence in Buenos Aires.

This done, get the sheep passed into Entre Rios and sold on this side (as in Corrientes there are no buyers) report proceeds and see how things stand and arrange matters.

I don't know how much money there will be with Coll & Sarda's but this is all right. They were building a new house 16 by 12 vs.; it was ready to be thatched, the work was contracted for at $100. nothing paid on account, another man had received 300 sheep on shares some days ago also.

I went to the house with Felipe Fonseca to save sheep, &c., where Guthrie fell there was as much blood as if a sheep had been killed, where Macdonald fell there was not so much blood; probably from the stabs the blood would keep inwards, I believe that they had money, so Mrs. Guthrie says, sovereigns and condors in a bag. The murderers took Macdonald's gold watch and chain, his gold ring, revolvers, stirrups, &c.; Guthrie's "recado", black clothes, whips, shirts, &c., and cut mattresses open, took everything away they could, they left Macdonald's saddle.

A colder blooded affair than this could not have been done, the Fonsecas have done everything in their power, and are as sorry as if the deceased were their brothers, Mrs. Guthrie is staying there. THe Gefe
Político of Monte Caseros, Jose Maria Casco, is after the fellows night and day: no man could possibly do more than he is doing, and he has taken 30 "Bandidos" prisoners, stretched them out &c., but has not got the thread yet, if they are to be found he is the man for it, I was with him at Fonseca's, Mrs. Guthrie gave me the description of the men, and this morning I gave same to Mr. Viera (Comisario); also description of Recado, Ring, &c. and English watch. Mr. Viera will advise all the Comisarios in case the murderers have passed over there.

Excuse this long epistle, but it is necessary at times.

January 13, 2008

The Death of my Great Great Grandfather. (4/8)

With this posting it is revealed that Corrientes is in fact the province where the murders occurred so I've retitled the posts to date. I believe that this confusion is due to the high rate of immigration and settlement leading to some difficulties in administrating the country.

From the Buenos Aires Standard, April 21st, 1881.

The Murder of Messrs. Macdonald & Guthrie

President Roca received yesterday the following answer to his telegram to the Governor of Entre Rios, which we published yesterday. It appears, however, that the scene of the horrible crime 'Naranjito', is in Corrientes, and not in Entre Rios, and the President despatched yesterday an energetic telegram to the Governor, who will certainly do his utmost to catch the assassins.

-

To the Most Excellent President of the Republic.

I have this moment received your Excellency's telegram, which has astounded me, as up to this hour I have no news whatever of the murder of any British subjects in any part of this Province. I do not know either of any placein the Province of Entre Rios called Naranjito but there is a place so called in Corrientes, near the frontier.

Nevertheless, I will enquire at once, and if unfortunately this crime has been committed in the Province, I will set the police on the track of the criminals and have them judged with all the rigour of the law.

Your Excellency may rely on this: to-day I have dismissed from his post a Gefe Polítice for not having reported to the Government the murder of a Spanish subject.


José J. Autelo,
Governor.