My Thoughts on What the Catechism Says About Social Justice


, , ,

Unfortunately but probably quite justifiably, the term ‘social justice’ has become associated with identity politics, intolerance, censorship and using racist/misogynist/xenophobic/etc. labels as casual insults, to the point where I don’t think it’s even relevant whether anyone who disagreed with those rioting for a corporatist system several weeks ago were being placed in the same ‘basket of deplorables’ as white supremacist idiots.
More to the point, the ‘liberals’ have alienated the very people the political left should be championing – people who are more worried about things like welfare, job security, affordable housing, being able to put food on the table and pay the rent.

Social justice isn’t limited to the political left, however. A non-partisan version of it became a necessary and substantial part of the Catechism as a rational set of ideas consistent with a clear and fundamental principle: Man is created in the image of God, and therefore human dignity and freedom must be safeguarded. The social teaching, outlined in the Catechism and explained in more detail in the Compendium of the Social Doctrine of the Church, was inspired by Leo XIII largely as a response to the industrial revolution and the proposal of socialism. Also, the social teaching has much in common with Aristotle’s thinking behind the constitutional republic and the principles behind the United States’ system of government.

Human Equality
Absolute equality, in the sense of equality of outcome, seems unattainable in a society that values freedom. People have different talents, there is more demand for certain skills than others, and everyone has a role in society. Even in the most conformist and communist state, some people will inevitably gain and consolidate power, using the system to exploit the people.
What, then, is meant by ‘equality’? First, everyone has universal and fundamental value as human beings – life is sacred, and so is the dignity of that human life, and therefore fundamental human rights must be established and guaranteed – rights such as access to essentials, equal representation before the law, access to healthcare, etc. The dignity and freedom of each individual is the premise of social teaching.
While this is (re)stating the bleeding obvious, we exist in a sinful society that perpetuates inequality. In Catholicism, ‘sin’ is generally understood to be an act of instant gratification or short-term gain with disgregard to the implications, and there are implications, seen and unseen, to everything we do. To give a pointed example, consumerism doesn’t care whether the latest products become landfill 18 months later, or whether products were manufactured under humane working conditions. Depending on our conscience, buying meat without caring whether the livestock were terminated with minimal suffering would be another sin.

‘There are sinful social and economic inequalities which affect millions of human beings. These inequalities are in open contradiction to the Gospel and are contrary to justice, to the dignity of persons, and to peace. There are, however, differences among people caused by various factors which enter into the plan of God.’

To enforce equality of outcome would be to enforce conformity, and therefore that would contradict freedom. What needs to be guaranteed is the universal freedom for every person to reach his/her potential, and that requires equal opportunity across social divisions.

‘To stimulate this kind of growth it is necessary in particular to help the least, effectively ensuring conditions of equal opportunity for men and women and guaranteeing an objective equality between the different social classes before the law.’

Getting there depends on how society treats the worst off, the weakest and most vulnerable. What things are in place to ensure the dignity of every person in society? What do the affluent consider necessary for survival, and are those necessities afforded to everyone? This is my interpretation of ‘objective equality’.
Yet, socialism or communism doesn’t seem the ideal way to go about this. G. K. Chesterton, as a critique of socialism, noted that sharing is fundamentally different to the act of giving, in that the latter can be a creative act of altruism, an act that expresses to the recipient that s/he is valued, and maybe it’s even an expression of solidarity. In that act of giving, a Corporal Work of Mercy can also be a Spiritual Work of Mercy.

There is the well-known quote from the Gospel of Matthew: ‘Truly I tell you, whatever you did for one of the least of these brothers and sisters of mine, you did for me.’ The context of the verse seems to be nobody is ‘saved’ purely by grace alone (if we could ever consider ourselves ‘saved’), but we’re also judged by our solidarity with the poor. It is also from this part of the Gospel that the Corporal Works of Mercy are derived. The Corporal Works of Mercy, in turn, are about aiding people regardless of how they ended up in whatever predicament, while the Spiritual Works of Mercy could be about addressing the underlying issues.

Subsidiarity and the Common Good
If the Catechism’s perspective of equality lies outside political ideology, how could it be effected as social change? The principle, or vision, of subsidiarity can be summarised in the following statements:

‘Just as it is gravely wrong to take from individuals what they can accomplish by their own initiative and industry and give it to the community, so also it is an injustice and at the same time a grave evil and disturbance of right order to assign to a greater and higher association what lesser and subordinate organizations can do. For every social activity ought of its very nature to furnish help to the members of the body social, and never destroy and absorb them.’

‘All men and women according to the place and role that they occupy participate in promoting the common good by respecting just laws and taking charge of the areas for which they have personal responsibility such as the care of their own family and the commitment to their own work. Citizens also should take an active part in public life as far as possible.’

Subsidiarity roughly means the decentralisation of government, so things are handled at the local and community level, and ultimately influenced by each individual. This enables people to take on civic responsibility and determine how society is run. The authors of the Catechism seem to have placed more faith in the intrinsic goodness of the individual than a centralised leadership that deems itself more educated to enact equality, I should add. How practical is this, though?
Something like it has already been attempted in the form of the United States, where a federation of states are bound together and supported by federal institutions. Theoretically that should mean that every citizen has an opportunity to be involved in local politics, and in theory the relationship between states and federal government should be symbiotic.

Ultimately it seems to mean that the individual is the one who needs to initiate the changes, and the general attitudes to others must also change for that to happen. I think this is possible. What I do know is that, if one performs Corporal Works of Mercy to others in need, others will follow that example – each of us can play a part in that. A quote attributed to St. Francis went something like: ‘Evangelise, and if necessary use words‘.

Common good is defined as ‘the sum total of those conditions of social life which allow people as groups and as individuals to reach their proper fulfillment.’
Also, the ‘common good’ can only be achieved through moral means that provides people with the free choice. It also has something to say about the nature of this authority: ‘Authority is exercised legitimately when it acts for the common good and employs morally licit means to attain it. Therefore, political regimes must be determined by the free decision of their citizens.

As I’ve said, terrorism was just an excuse


, , ,

A list of public authorities, in addition to The Old Bill and intelligence services, that can legally access your Web browsing history under the new Investigatory Powers Act:

  • Department of Health (Drug regulation and fraud investigation)
  • HMRC / Inland Revenue
  • Department for Transport
  • Department for Work and Pensions (Fraud and error investigation, and child maintenance)
  • Ambulance Trust
  • Scottish Health Service (Fraud investigation)
  • Competition and Markets Authority (Cartels and law enforcement)
  • Department for Communities in Northern Ireland
  • Department for the Economy in Northern Ireland (Trading standards)
  • Financial Conduct Authority (Market oversight)
  • Food Standards Agency
  • Gambling Commission
  • Gangmasters and Labour Abuse Authority
  • Health and Safety Executive
  • NHS Business Services Authority (Security and fraud investigation)
  • Northern Ireland Health and Social Care Regional Business Services Organisation
  • Scottish Ambulance Service Board
  • Serious Fraud Office
  • Welsh Ambulance Services NHS Trust

There’s already a petition to repeal this:

Returning Data from MVC 5 to a Stored Procedure


, , ,

A tricky one to solve, if the message is stored on the Service Broker as a binary object and its data type is changed in Entity Framework.
To add the stored procedure to the Entity Framework model, right-click on the model diagram and select ‘Update Model from Database…‘.

The stored procedure in this case moves a message selected in MVC Index view from one Service Broker queue to another – from a duplicates queue to an error message queue.


The base code I’ve copied from the Delete controller from the MVC 5 template, since the action is performs on the first match with the entry selected in the Index view. Here ‘queuing_order‘ is set as the ID:
db.DuplicatesQueueViews.First(d => d.queuing_order == id);

In my previous posts, I showed that my MVC project does not perform a transformation on the message pulled from Service Broker, but instead the data type is changed from varchar to string in the Entity Framework model. This means that message_body must be converted back to a character array before it’s passed to the stored procedure:
var originalmessage = duplicatesQueueView.message_body;
var binarymessage = Encoding.Default.GetBytes(originalmessage.ToCharArray());

Declare the message body with the current data type as a variable, then use Encoding.Default.GetBytes() to convert the message to a character array. To use Encoding.Default(), the System.Text assembly reference must be added to the .cs file.

Why WikiLeaks was the Only Way


, , , ,

Even to someone who voted to remain in the EU, and someone who would have voted for Jill Stein were I American, it was blatantly obvious to anyone the mainstream media (even The Guardian and The Independent) was acting as PR for Clinton and the DNC, unloading its juvenile, pseudo-progressive and condescending rhetoric on those who opted for Trump. Of Clinton’s faults and the mounting evidence of patholigical corruption being exposed by Wikileaks and the alternative media, there was barely a cursory mention in the mainstream. And just like the Brexit referendum thing here in the UK, there was a piss poor standard of journalism and analysis on what the candidates were actually campaigning for. This is my counter-argument to Yeynep Tufekci’s opinion piece in the New York Times, titled ‘WikiLeaks isn’t Whistleblowing‘.

The problem with appointing the mainstream media organisations as the curators and gatekeepers of leaked material is already apparent, as it’s certain they wouldn’t have exposed anything of substance, and anything that was exposed would have been managed as PR, in a very damage-limiting way. We can look to the Ed Snowden and Greenwad arrangement for an example – it’s unknown how many documents are in the Snowden archive, but it’s unlikely that a large majority of the material would ever see the light of day. Sure, there was outrage and some good came of it, but we get only selected excerpts without the context needed to make a proper judgement – who created the documents, why were they created, and who were they created for? If that standard was applied to the Clinton emails, it would be difficult to rule out competing interpretations and objectively say the DNC was involved in any wrongdoing.

So, the alternative was to pass the leaked material to WikiLeaks, but Tufekci argues:

‘[…] the release of huge amounts of hacked data, with no apparent oversight or curation, does the opposite. Such leaks threaten our ability to dissent by destroying privacy and unleashing a glut of questionable information that functions, somewhat unexpectedly, as its own form of censorship, rather than as a way to illuminate the maneuverings of the powerful. […] Wanton destruction of the personal privacy of any person who has ever come near a political organization is a vicious but effective means to smother dissent.’

Apart from the veracity of the Clinton/DNC/Podesta emails never having been questioned, this would be a perfectly valid argument if it wasn’t a lame attempt at framing WikiLeaks’ reporting as an attack on the small guy. Obviously the Clinton Foundation and the DNC weren’t merely political campaign groups. They were the establishment, taking large sums of money from questionable sources, and mired in corruption and criminal activity, and seemingly above the law. The American people certainly had a right to know about this before casting their votes.
If Tufekci wanted to make comparisons with the Soviet regime, why look further than the ‘chilling effect’ of mass surveillance, or the authoritarian behaviour of arrogant self-entitled ‘social justice warriors’ towards anyone who dares to even use the wrong pronouns.

This leads to the question of whether WikiLeaks could operate the way it does and claim the moral high-ground on the issue of privacy. What is the tangible, defining difference between publishing the emails of a DNC campaign manager and publishing the emails of Joe Average? At what point could such exposure be definitively in the public interest? How could dumping information, with little or no thought to whether it might endanger lives, be justified?

‘The answer is not simply to tell people to stop writing things down. “Don’t discuss things over email if you don’t want to see them on CNN” is the new “don’t wear a miniskirt if you don’t want to get assaulted.”’

Perhaps it is the right answer, though. The reality is that all communications are intercepted, not even banks and ISPs seem able to prevent data breaches, and the exposure of wrongdoing is now a common motivation among malicious hackers and insiders. Anyone with an ounce of sense would minimise the risks. The Wikileaks dumps wasn’t the first, and it certainly won’t be the last. That’s the reality, and we must adapt to it somehow.

Formatting XML/HTML in MVC 5 View


, , , ,

Originally after creating the basic MVC 5 project, the message body was displayed in a numeric format, and the reason was the Entity Framework model was pulling the message from the Service Broker queue as binary-typed data. Fixing this was a simple matter of changing the model item’s data type to string (important: build the project after making this change).


Now the message body appeared in the view, but as a huge string punctuated with ‘>&amp‘ and suchlike. I was hoping that fixing this was a matter of changing the @Html helper used in the CSHTML file, but I kept getting the same error trying to use Html.Raw() instead of Html.DisplayFor().


I think this happened because the view was displaying the contents of a single record, whereas the Index view iterates through all records discovered by Entity Framework. You could probably sort out the formatting in the model or controller layer before the data reaches the view, but why not use JavaScript?

Two problems that seem to be happening in MVC 5. First, the str.replace() doesn’t appear to work with data pulled straight from the model. It must be converted to a string beforehand. Second, it doesn’t seen to work if that string is the only variable declared.


As we can see, declaring the Razor helper as a JavaScript variable also enables us to use @Html.Raw() in the Details view. It’s possible to do this with less code:


The output in the view should be the XML markup in clear tags.