jsburbidge: (Default)
 "The old year now away is fled,/The new year, it is entered": I am beginning to wonder whether 2021 may not end up being seen as a hinge year.
 
Personally, it has not been a particularly notable year either for good or bad. Work from home is essentially a non-issue, as most of my colleagues work in other countries and my interaction with them would be entirely online in any case. As an introvert, I feel little affected by the limitations on social interaction.
 
The one interesting marker of, perhaps, a lack of focus is books read. A number of years ago there was an interview early one year on CBC with somebody who had made the resolve to read one book a week.  The interviewer was fawning over this as a difficult task; my reaction was that, unless this was Ulysses or Tristram Shandy every week it was hardly worth noting. So I started keeping lists of books read per year. Over the past few years it has tended to run in the mid-seventies or over per year. This last year it was 56, a drop of almost twenty books - and that's in the absence of a compulsive tendency to waste time on news when Trump was president which had previously been a drag on my time.
 
This might be a question of what I read - looking back in detail, last year also has fewer books which I would rate very highly and more which I would rate as mediocre. It is certainly not competition with other media (I do not watch television and rarely stream video online). I put down some if it down to additional energy subsumed by working from home on tasks which I enjoy (and am therefore likely to spend extra hours working on which would not be available if I worked at the office). Some of it may be the absence of a commute in which I had daily time to read. But there is certainly a difference.
 
On the public stage, though, 2021 looks very much like the year which showed that the forms of representative democracy which have been used for the last century and a half, more or less, are failing to be effective in the face of crises such as COVID-19 or climate change.
 
The dominance of the short-term feedback from a relatively frequent electoral cycle over considered expert advice is becoming a critical issue.
 
It also begins to look as though the model we have (in which the assumption is that pressures will tend to moderate the views of successful political parties) may be valid only when a rising tide is lifting all boats  When there is a drumbeat of bad news combined with permanent insecurity recent experience suggests that the tendency is to create self-reinforcing cycles which drive parties away from consensus and towards polarization.
 
We certainly need the feedback from the general public as a check on government. Absent that, one gets arbitrary and autocratic rule which might be efficient and effective but is vastly more likely to be corrupt, inefficient, and driven by goals other than the public good. The question of how to get that level of feedback without the serious effects we can see from the predominance of short-term benefits over long-term ones is not easily resolved, and I have no answer.
 
Canada as a whole at least has a management crisis only (contemplate the Liberals for a moment), and one may hope that Ontario will give up on the PCs if they fail hard enough in the next few months of COVID management; the United States looks like it has a governance issue at the level of "on the edge of a civil war". The UK is heading down into some form of breakup of the Union accompanied by massive financial difficulties and severe restrictions on civil liberties (in England) for those who are not considered English enough. Europe shows governmental churn, internal tensions, and a momentum provided by its bureaucracy.
 
Socially, the culture wars continue to rage, but it looks as though majority sentiment is now firmly on the side of the new culture, even if that support's concentration in urban areas is a partial blocker on its political expression.
 
It was also a year full of wake-up calls on the climate front. (As also a year full of governments which have made general declarations of taking the issue seriously but are falling far short in practice.)
 
On the COVID side, people may be coming grudgingly to the acknowledgement that things will not return to all the old patterns (commercial, leisure, other activities). Expect the steady advance of the claim that internet access is a right like heat and water as remote access takes over as a norm for many things.
 
----
TL;DR summary
 
Best book read in the year: The Ethical Poetic of the Later Middle Ages by Judson Allen (Interesting and informative. Unfortunately the author died young(ish) shortly after the book was published and produced no more work. I had met the author once or twice (during a stay in France) and it was edited by a friend (now also dead untimely); this did not bias my reading of it.)
 
Worst book read in the year: The Invention of Yesterday: A 50,000-Year History of Human Culture, Conflict, and Connection, by Tamim Ansary. (Really badly researched. I think I posted about this.)
 
Thing I missed most that I couldn't do due to COVID restrictions: go to Midnight Mass
 
Thing I missed least that I couldn't do due to COVID restrictions: commute
 
Best political news of the year: it continues to look as though the CPC is self-destructing as knives get pulled out because their new leader only increased their popular vote without actually winning the election.
 
Worst political news of the year: it looks as though the US Republicans are generally doubling down on being worse than Trump. (No, really, he gets booed when he tells them he's vaccinated.)
 
Summary of the year: Dryden's The Secular Masque ( https://www.poetryfoundation.org/poems/44184/the-secular-masque )
jsburbidge: (Default)
 As I in hoary winter’s night stood shivering in the snow,
Surpris’d I was with sudden heat which made my heart to glow;
And lifting up a fearful eye to view what fire was near,
A pretty Babe all burning bright did in the air appear;
Who, scorched with excessive heat, such floods of tears did shed
As though his floods should quench his flames which with his tears were fed.
“Alas!” quoth he, “but newly born, in fiery heats I fry,
Yet none approach to warm their hearts or feel my fire but I!
My faultless breast the furnace is, the fuel wounding thorns,
Love is the fire, and sighs the smoke, the ashes shame and scorns;
The fuel Justice layeth on, and Mercy blows the coals,
The metal in this furnace wrought are men’s defiled souls,
For which, as now on fire I am to work them to their good,
      So will I melt into a bath to wash them in my blood.”
      With this he vanish’d out of sight and swiftly shrunk away,
      And straight I called unto mind that it was Christmas day.

- Robert Southwell
jsburbidge: (Sky)
Soldier from the wars returning,
Spoiler of the taken town,
Here is ease that asks not earning;
Turn you in and sit you down.
 
Peace is come and wars are over,
Welcome you and welcome all,
While the charger crops the clover
And his bridle hangs in stall.
 
Now no more of winters biting,
Filth in trench from fall to spring,
Summers full of sweat and fighting
For the Kesar or the King.
 
Rest you, charger, rust you, bridle;
Kings and kesars, keep your pay;
Soldier, sit you down and idle
At the inn of night for aye.

-- A. E. Housman

Yet Again

Oct. 26th, 2021 09:51 pm
jsburbidge: (Default)
 This surely does not need saying: the provincial plan for removing Covid restrictions is both insane and driven by politics. It is no coincidence that on this fanciful roadmap of the Ontario PCs everyone becomes entirely free to do as they will a couple of months before the provincial election.

In what fit of absence of mind they concluded that Covid would be so completely gone in another six months that they can plan on pulling back vaccine mandates, it is hard to imagine. The opening stages - allowing more density in places with vaccine mandates - is not prudent, but it is somewhat understandible. To assume that magically Covid will go away by March is pure wishful thinking. (Even if by some miracle Ontario could wrestle it to the ground, there would still be extensive reservoirs elsewhere.)

This is the extreme form of the government's complete failure to take the one critical step that is necessary: to say, clearly, that there will be no "return", no ability to resume the life of 2019. Even if the government were to drop its vaccine mandates entirely, all the employers and other fora will continue to worry about insurance and liability and are unlikely to drop their restrictions. Many people will, rationally, continue to avoid places where they are crowded together; although evidence from other jurisdictions suggests that fewer people are rational than one might hope. Masks will continue to be an important public health tool. Many people will continue to work from home, affecting the life in urban centres.

The one genuinely bright spot on the horizon is the (likely) very near approval of Covid vaccines for children and the (equally likely) of such vaccines being made mandatory (as many other vaccines are) for attendance at school.

It is, frankly, the task of the government, the parens patriae, to tell everyone the truth: life has changed, irreversibly (like one of those catastrophe theory transitions on a folded manifold).
jsburbidge: (Default)
 A couple of months ago I decided I needed a new belt - my previous one had lasted for years and was getting slightly decrepit - so I went to the Bay and bought a "Perry Ellis Reversible Smooth Leather Belt"; all the belts were much of a muchness as far as price was concerned and it was about the plainest belt I could find.

It lasted about two months.

After it broke, I found that the leather, instead of being sewn around a metal bar to attach it to the buckle, as is normal with belts, was actually anchored inside the buckle to a couple of narrow metal posts. So all the stress of wearing the belt in any functional manner was concentrated in those points, which ripped the leather in, essentially, no time.

This is worse than shoddy workmanship; this is poor design. It does not go so far as to run afoul of the Sale of Goods Act ("merchantable quality" being the only key term), but it amounts to a latent defect serious enough that I would never buy any goods from that manufacturer again, and look askance at the Bay for their purchasing decisions.

I replaced the belt with one from Harry Rosen. The belt cost four times as much but at least I have confidence that it will last a reasonable time. (My main problem with Harry Rosen was finding a belt in my size plain enough; the one I would have preferred was not available in my size at the store but the next one down my list was.)
jsburbidge: (Default)
 I normally have a good sense of where an election will end up a few days before it actually takes place. This one was more difficult: two days before the election I would have called the most likely result a reduced minority for the Liberals. In the end, the needle barely moved on numbers.

Last election I was already noting that the Liberals would do well to get rid of Trudeau, though that was before Covid, which pushed up his stock somewhat. I would reiterate the comment; he is clearly a drag on his party, but his retention of office without a significant loss of seats probably leaves him with enough power to avoid being pushed out.

What the Conservatives need to do, to deflect their usual problems next time round, is take the relatively moderate platform O'Toole ran on and maintain it up to the next election. As I gather that there are members who already want to depose O'Toole, I doubt they will manage it.

(The best grounds for attack on O'Toole the Liberals had, they wasted: pointing out the drift between his run for the leadership and his run for PM and suggesting that he is a weathervane seems to me like the obvious weak point. By next election he will be gone or his platform will have some stability. I doubt he can reinvent himself yet again.)

But the map shows the kind of current electoral trap Canada is in. There are two broad areas of solid blue: the west (for all practical purposes: the NDP has a few new seats there), and rural Ontario. (That these are the areas with the biggest Covid problems is not coincidental: in addition to Alberta and Saskatchewan, about which little needs to be said, it is the rural caucus in Ontario which by all accounts has been most opposed to reasonable anti-Covid measures.) In Ontario the whole GTA with a couple of exceptions went Liberal, and of those exceptions only one - Thornhill - went Conservative.Other urban areas voted Liberal, except where they were weighed down by large rural components of a single riding (such as Peterborough).

There are two big blockers to any majority government. First, the Bloc essentially prevents the Liberals from gaining a majority; their only other normal way there is a thoroughgoing collapse in the Conservative vote. (Both Bloc and Conservatives have been weak before; the Reform/PC split gave the Liberals under Chretien a long time in majority office, taking all, or nearly all the ridings in Ontario to make up for the Bloc in Quebec, and the Bloc was weak in 2015.)

The Conservatives, on the other hand, have tended to win only when dislike or distrust of the Liberals - Chretien's cronyism, Trudeau's / Turner's patronage appointments, distrust of Dion and Ignatieff - drives the electorate in the swing ridings of Ontario to abandon the Liberals for the Conservatives. Although the Tory base certainly feels that way about Trudeau, his weaknesses among the general population - seen as naive, self-centred, not terribly bright - have not, to date produced that result. So the Conservative road to a majority runs through the suburbs of Ontario. The past several elections have been marked by a significant number of voters voting, not for the Liberals as such, but against the Conservatives when there is a risk of them winning, and younger voters in central Canada are even less likely to vote Conservative. To make things worse, the Covid crisis has made government with an activist and intrusive bent more generally attractive, which means that the Harperite/libertarian block making up the core of the parliamentary party is even more out of step than they might otherwise be.

The geographical split encourages the parties to vanish into the event horizons of their own bases, which decreases the likelihood of a breakthrough.

The NDP lacks a base which could realistically allow it to come within shouting distance of power, except of the sort they have right now as the key to the continued governance of the Liberals. The Greens essentially disintegrated.

All that being said, it would be unwise to claim, as I've seen some commentators do, that Canada is locked into a permanent minority situation, or - a closely related claim - that the Canadian people chose a minority. Over half of active voters almost certainly belong to the bases of the two major parties. Presumably they wanted a majority. (The NDP base might welcome a minority, but I doubt they voted for one.) An average of people's choices, filtered through FPTP, cannot be given a notional will or mind, any more than the players of Prisoners Dilemma want the probable outcome.

More critically, a lot turns on immediate personal reactions. The voters of Ontario elected Doug Ford because they were fed up with the Liberals, despite the chaos of the Conservatives and the very real doubts about Ford's suitability to govern. If the Liberals do something stupid, not necessarily more stupid than the various kerfuffles which marked, but did not end, Trudeau, O'Toole or an equivalent could walk into government. If the PPC or an equivalent splits the CPC vote more heavily and along structural fault lines, we could be in for another King-St.Laurent reign.

Or at another level, if post-Covid remote work sends more urbanites out into semi-rural Ontario, that block of rural Ontario CPC ridings could become far less certain. If the Alberta NDP becomes the government again and the post-Kenney PCs became a hissing in the dark, that solid blue block could splinter. Or if the dislocations of climate change throw most people's lives into uncertainty, the resulting resentment may drive some voters towards the right while driving others towards "a safe pair of hands". The current social and economic context is the opposite of stable.
jsburbidge: (Default)
 ...regarding Addison's The Witness For the Dead, but a little too long to go in as a comment.

The Witness For The Dead has three themes; one is resolved entirely; one is resolved for practical purposes; one has a level of resolution which I can best describe as a removal of difficulties. They interact in each others' solutions, giving an ultimate unity to the story which looks like three separate strands until very close to the end.

The first strand is the mystery strand, the one which follows standard conventions of the mystery novel, posed as a problem to be solved: the perpetrator is identified, and it is established that there will be no more crimes from that source.

The second strand is what I may call the feuding family strand. It is not posed as a problem to be solved, and its main dynamic is actually outside the scope of the story; Thera keeps getting dragged into it and having problems put in his way as a result of his role - it forces the temporary assignment with the ghouls and the vigil confronting the ghosts of the past, but it looks entirely unconnected until it provides a key for the resolution of the mystery plot to Thera. It passes out if his life; although it presumably remains an issue for the participants it will have no further impact in Thera.

The third strand is the problem of Thera's personal situation: dealing with a hostile hierarchy, socially isolated. This has no final resolution as such, but events driven by both the other plots combine to improve his professional situation and provide what looks like a more positive future for his social situation.

(This is somewhat reminiscent of an analysis Sayers did, well after writing the novel, of Gaudy Night. She identified three different types of problem with different types and degrees of resolution there as well, with (similarly) the detective problem being the one with the neat solution. It may be worth remembering that Addison aka Monette aka Truepenny did an extended critical analysis of the Wimsey books some years ago on Livejournal and is presumably aware of the Sayers self-analysis.)

For the record, I thought it well done and not difficult to follow and would recommend it to anyone looking at the intersection of the fantasy novel and the detective novel.
jsburbidge: (Default)
Ripped from the headlines tonight: the Biden tax proposals include a 3% surtax on anyone earning more than 5 million (USD) per year.

There is an argument, if not for Commonweal levels of, um, levies, then at least for the pre-Thatcher UK where the top brackets were in the 99% category...
jsburbidge: (Default)

Quoted from an actual classicist talking about the early CE in a Guardian article:

"Poetry was so important; everyone read Homer and all that sort of thing. But we know that spoken language wasn’t really appropriate to that kind of poetry.. "

Somebody has their wires crossed. If they'd cited, say, Callimachus it would be unexceptionable (except that I doubt everyone read Callimachus). But Homer was, very much, oral poetry. The ghost of Milman Parry is turning in his grave.

The speaker is trying to position accentual-metric verse as more natural than real metre, in Greek. But even in the days of Aristophanes the old-fashioned, pre-Sophist curriculum for the well-off young was mainly oral poetry (including composition) and not written. Metrical poetry.

Stressed poetry came in as the language changed and more syllables became short, and the claim underneath the article's actual text may be that the text being discussed is evidence of this transition earlier than previously thought. Germanic had already gone through that transition, which is why old Germanic poetry does not inherit Indo-European metrics but uses a stress-based alliterative metric.

Latin, by the way, was a different case - Greek metres had been grafted onto Latin and accentual-metric poetry reasserted itself early in the common era.

jsburbidge: (Default)
Shouldn't "All Nations Southern Baptist Church" mean "nations south of the equator"?
jsburbidge: (Default)

The Toronto Star had a front-page article with the title "Why is Everyone So Angry?" (well, third page with a massive banner on the front page). Unfortunately, its diagnosis was facile.

It was clearly prompted by the phenomenon of Justin Trudeau being regularly assailed viciously, and in such numbers, that in one case he had to cancel an appearance (as the protestors outnumbered the police).

(As a specific phenomenon this is a little odd. After all, when you think of it, Trudeau is in many ways the Jim Hacker of Canadian politics: appeal to the public, not very bright, steered by his advisors. You may be assured that anything he backs will have come from either the party or the civil service or (most likely) both, without being so extreme to be able to be called "courageous".

Although the Conservative Party condemns the behaviour, it feeds it by running so emphatically against Trudeau, as though the government's policies all sprang from his forehead. The PMO may be at least as dictatorial as it was under Harper - there has been no return to Cabinet government[1] - but it is hardly a hotbed of flourishing originality and exciting ideas.)

But the anti-vax, anti-mask movement in particular is pretty well frothing at the lips. Why?

The article points all of its fingers at pandemic fatigue. It omits noting that Brexit, and the Trump election, and for that matter the Tea Party formation around 2008, were all driven by a similar type of anger. Covid-19 has provided a couple of new presenting issues, and pandemic fatigue is undoubtedly an aggravating factor, but it's hardly the most important one.

(If it were pure pandemic fatigue you'd expect a cadre of vaccinated people who are fed up with the risks posed by unvaccinated people and heckle candidates who are "soft" on vaccine mandates balancing out the anti-vaxxers protesting the Liberals; and you'd expect protestors in the anti-vax, anti-mask camps to protest the federal Conservatives as well, as they have moved to avoid having any significant space between the Liberals and themselves on this issue.)

My interpretation is that it's an effect of cognitive dissonance with transferred anger. People don't want to acknowledge that things will never revert to where they were in (choose one based on your issue) 2019, 2000, 1989, 1981, 1966, or 1958.[2]

If that's something you won't acknowledge, to the level of cognitive dissonance, then displacing the anger at life moving away from where you are convinced it ought to be is a direct effect. (This is also tied up with confronting, or avoiding confronting, the fact that your idea of "rights" does not line up with that of the law.)

Also, naturally, even people with a much milder degree of denial will be attracted to an appeal of return. The natural heirs are parties of the right, as their natural platforms involve either minimizing or denying the necessity of significant change.

All of this feeds into the election dynamic. The Liberals suffer from both kinds of reaction; the CPC benefits. Maxime Bernier's party is showing a small uptick.

A secondary effect is that although climate is a potential wedge issue - the potential wedge issue - between the CPC and the Liberals, it's not being used as such, because to run a campaign on that basis amounts to repeatedly telling people that they haven't seen real disruptive change yet, and that they need to get ready for it and support it. In the current context that is probably not a way to win middle-of-the-road voters, who are the key group in this election.

It is still possible for the CPCs to end up failing to form a government, especially if (as Singh advertised in the spring) the NDP refuses to support the CPC in a minority government. Unless things improve greatly for the Liberals, though, it is probably time to write Trudeau's political obituary, given both the drop in support and the fact that it was ultimately Trudeau's decision to call this particular election in the first place.

[1]I remember Gordon, LaMarsh, Trudeau, Pelletier, and Marchand.

[2] Pre-Covid, pre-9/11, before the fall of the Soviet block, pre-IBM PC, pre-New Left, before the shine came off the suburbs.

jsburbidge: (Chester)

In my last job, there was an internal site on which employees could create their own personal work-related blogs. I had one that dealt with C++ and OO topics that I'd been irritated into writing about in production code: I had to leave it behind when I left, but transferred the site ownership to my team leader so that it at least wouldn't be cleaned out automatically. My current workplace has various ways for teams to share data but nothing comparable for individuals.

This means that anything I'm irritated into will end up being posted here. Any code examples will be generalized enough to be generic and no details of proprietary IP will be shared, although various issues of actual production code quality  may be referenced, from this or from prior work contexts, without any specification of where.

For anyone who is not a programmer, these are likely to be TL;DR.

In the nearly thirty years since Design Patterns came out, the Singleton has generally been recognized as an anti-pattern, encouraging the use of global data with a mask on and hiding the flow of control, to say nothing of complicating unit tests.

However, in the context of trying to convert legacy code into well-designed and tested code, the Singleton has a role to play as a Band-Aid (sticking plaster to right-pondians) as a temporary measure, even though its ultimate fate will be un-Singletoning itself.

Consider the case where we are converting a legacy method with some associated data into a proper class. It uses ambient data from the huge source file it is being pulled out of freely, but the data it uses is tightly coupled in a logical sense, and if you group it together it naturally attracts a few existing functions which use that data and little else, to make a nicely encapsulated class. The data tracks state of ene sort or another and notionally has to be unique.

// in file RecordTracker.h
class Record;

class RecordTracker
{
public:
    void addRecord(const TransactionId& inId, const Record& inNewRecord);

    const Record& getRecord(const TransactionId& inId) const;
};

// In file f.cpp
RecordTracker theRecordTracker;

class RecordUser
{
public:
   void processTransactionUpdate(const Transaction& inTransaction)
   {
       //...
       const Record& rec = theRecordTracker.getRecord(inTransaction.getId();
       //...
   }
};

The data is used in several other compilation units, where it was declared extern. We update all of those locations to use the new class.

Now our legacy method uses one object, which it is still reading from global data. If we extract an interface from the new object, we can pass it in to the object we are now building on construction, as an instance of simple dependency injection. So we do that.

// in file IRecordTracker.h
class Record;

class IRecordTracker
{
public:

    virtual ~IRecordTracker();
    
    virtual void addRecord(const TransactionId& inId, const Record& inNewRecord) = 0;

    virtual const Record& getRecord(const TransactionId& inId) const; = 0;
};

// in file RecordTracker.h
#include "IRecordTracker.h"

class RecordTracker: public IRecordTracker
{
public:

    virtual ~RecordTracker();
    
    virtual void addRecord(const TransactionId& inId, const Record& inNewRecord);

    virtual const Record& getRecord(const TransactionId& inId) const;
};

// in file RecordUser.h
class RecordUser
{
public:

   RecordUser(const IRecordTracker& inTracker): m_tracker(inTracker) { }

   void processTransaction(const Transaction& inTransaction)
   {
       //...
       const Record& rec = m_tracker.getRecord(inTransaction.getId();
       //...
   }
private:
   const IRecordTracker& m_tracker;
};

There is a remaining problem: the object in question is still global data, used in multiple places. In fact, the second class we extracted the function into turns out to be useful in some (but not all) of those cases, so it's getting the value passed in there via interface as well.

The original location might be tolerable - the data is static lifetime data in that place. It could even in theory be moved into the compilation unit for the second class as an implementation detail - but we still have all the other access points to look at.

Some of those access points have very long call chains before they go back to a common source, frequently main(), with narrow interfaces[1]. Many of them have little to do with the area we're working on aside from incidental use of the data in question, and it's not in our scope to do far-flung imperial refactoring beyond the area we're having to touch. So we have two options:

  1. Leave it as it is; at least the class we're worried about is now functioning in a testable manner.
  2. Convert the instance of the data into a Singleton and have all the places which currently use the concrete class use the Singleton Instance() method. (Don't actually change the data class: implement the Singleton to use the interface and delegate operations to the original substantive class. This doesn't mess with our testing and prepares for the end of the process when the Singleton goes away.)

#include "RecordTracker.h"

class SingletonRecordTracker: public IRecordTracker
{
public:

    static IRecordTracker& Instance();
    
    virtual ~SingletonRecordTracker();
    
    virtual void addRecord(const TransactionId& inId, const Record& inNewRecord)
    {
        m_delegate.addRecord(inId, inNewRecord);
    }

    virtual const Record& getRecord(const TransactionId& inId) const
    {
        return m_delegate.getRecord(inId);
    }

private:
   SingletonRecordTracker();
   RecordTracker m_delegate;
};

If we do the second, we have a clear marker for the issue. We can also push the actual invocation up our call stack for the immediate case we're dealing with, widening interfaces to accept the interface, until we get to the point where the instance "naturally" lives (frequently in main() if it's dependent in any way on program parameters).

In the future, refactorings can push up the calling level from other locations using the interface higher up the call tree. As we go, we may (probably will) end up with more classes which hold a reference to the interface, as well. Eventually, all the calls invoking the Singleton will be in the same context.

At that point, we get rid of the Singleton and replace it with a simple instance of the class. (If the program is resolutely single-threaded, it may even be possible to allocate it on the stack; otherwise it will have to be static or allocated via operator new.)

So the Singleton acts as a temporary way of patching the problem for a period of time, better than the original state, and also as a marker that the problem continues to exist. (The analogy here is not flesh-coloured or clear Band-Aids, but the ones with pictures of Dora the Explorer I used to get for my daughter.) The existence of those Instance() calls is an explicit and deliberate marker of what has to be fixed, and where.

[1]One application I know, originally C but mixed C/C++ for over 20 years, heavily used, passes all execution of transactions through a single function which takes one argument - an enum indicating the type of operation to take.  This logic is in shared code and is called in several different applications. Someday this will presumably be refactored, but until then it's a barrier to any attempts to get rid of global data in some form.

jsburbidge: (Default)
The structure of our current government (and that of our cousins in Westminster) practically requires that leaders in a minority situation ("hung Parliament") call elections when they are riding high. At least in a majority government elections are, at worst, even-handed: you might be up or down when you run out of time. In a minority, you know that after enough time has passed since the last election the opposition parties will be eager to bring down the government if and when it is unpopular. So minority governments end early, either when the opposition sees a chance to do better than it did last time, or when governments see a chance to forestall that risk. (Campaigns make a difference. If you handle it wrong, you end up like Theresa May.)

(This does, of course, assume that a government is "about" power rather than achieving ends, and in practice our current structure in which permanent parties form governments pretty well guarantees that that will be the case. You get power first, if necessary by watering down promises to be as little objectionable to middle of the road voters, then govern by introducing measures which will not upset the group's who elected you.

There's a story about that, at least in Canada... In the very early seventies, PET did a media interview in which he expressed the view (uncontroversial to a political scientist, which is what he had been, or to an historian of the Westminster style political systems) that governments were elected on the basis that the representatives would use their best judgement in determining what to legislate, and that democratic feedback comes at the next election cycle. In particular, a government should be guided by good policy rather than immediate popularity of its policies. This was wildly unpopular. Many voters, though living in a representative democracy, want the benefits of direct democracy - immediate feedback. (They usually don't want the drawback of a functional direct democracy, which is that everyone has to take considerable effort in educating themselves on at least the important issues, going well beyond reading the news occasionally.) That's why recall mechanisms are popular with populist platforms, such as that backed by the original Reform Party.

The Liberal Party was reduced to a minority government in the following election, partly as a result of that response. Since then it's been pretty clear that in practice coherent policy will tend to take a back seat to tailoring initiatives to what will not be too unpopular, at least with the Liberals.)

I expect this to be, generally, an election where the Liberals use a front-runner campaign: heavy in accomplishments, with a relatively anodyne platform designed not to drive anyone off who might already be considering voting Liberal. I could be wrong, though. One of the big advantages of the Liberals is that the Conservatives are both divided and, as a whole, unlikely to unite around policies which might appeal to swing voters. O'Toole seems to be trying to move somewhat in that direction, but he has to deal with social Conservatives, libertarians who object to sensible public health measures, and Harperites who want to nail their colours to the mast of Big Oil in the middle of the hottest year on record. (Not that the Liberals are immune on that last point. A recent headline had them saying they needed pipeline revenue to fight climate change, which is really just bonkers.) The NDP has a lukewarm platform - aiming at middle of the road voters - and a personally popular leader, at least compared to Trudeau. (Trudeau retains personal charisma; but he now has a significant block of electors among potential swing voters who wish he'd inherited his father's intelligence as well.)

It's just possible that the Liberals could campaign on a big platform designed to exacerbate the weaknesses of the other two parties - pushing for sweeping new changes to address disparities the pandemic revealed and to take aggressive action on climate change. This would have two advantages: it would heavily differentiate them from the CPC, and it might put them far enough left to weaken the NDP. It has one big disadvantage: medium voters who just want to get back to normal who would reject such a platform in favour of a business as usual approach, which would be O'Toole's platform.

I do expect the Liberals to make strategic announcements designed to both distinguish themselves from the PCs and make the PC response likely to include embarassing reactions from some if the PC candidates. I certainly expect them to talk a lot about climate change, given recent heatwaves, wildfires, and the IPCC report (as well as the upcoming climate conference in Scotland). But I expect those to be secondary elements in what will otherwise be a front-runners race. (Also, if they were inclined to run on a big change platform, the obvious thing to do would be to reconvene Parliament, put the platform in the Speech from the Throne, and then either call an election on its failure or govern aggressively based on its passage, and the passage of all the implementing bills, which would all be votes of confidence... they are not doing this.)

I expect the Conservatives to campaign as though the Liberals had such a platform but were keeping it secret. About the only thing their disparate combination of factions can unite behind is a return to the status quo ante, and they will depict the Liberals as disturbers of that status quo, and as untrustworthy on other grounds (the current fight with the Speaker, the MeToWe controversy, etc.).

I expect the NDP to campaign (as they have recently) as Mackenzie King's "Liberals in a hurry" in an attempt to expand their centrist vote. As recent experience has indicated a hard ceiling on the NDP vote in critical areas I do not think that this will succeed; they might pull some votes away from the Liberals but probably not as many as last election.

The Greens ... what can be said about the Greens other than that they are showing themselves to be at least as good as the Conservatives at stabbing themselves in the foot? Maybe that they are also a reminder of the old fights between splintering factions in the left throughout the Twentieth Century. This is good for the NDP and accordingly a bit of a negative for the Liberals.

On Covid ... there's certainly an argument to be made that given our current vaccination levels we are little more at risk (or less at risk) than we will be at any time in the next two years. (Risk could easily increase if a variant more problematic than Delta arises.) I don't expect anyone to make that argument, because it's part of the unpopular position (based on incontrovertible fact! I see Ontario is backtracking on several opening-up promises, as is Alberta) that there will be no return to the status quo ante. The Liberals and NDP may tacitly rely on that, but they're not going to trumpet it or its implications. There is certainly an argument that voting by mail should not only have resources allocated for a heavier vote than usual but encouraged, and that campaign tours should be curtailed or abolished.
jsburbidge: (Default)

1. Observed as a headline on Google News: "I Was Rejected After a Manager Looked at my LinkedIn Profile" - unlike many other things online, your LinkedIn profile is entirely under your own control. It does not track history. It is meant to be for selling yourself. If you post things which might drive off potential employers, it's your own fault.

2. A CBC article on the movie "The Green Knight" does not inspire confidence in the research skills of its author when, after a reasonable amount about the poem at second hand (interviews with academics) it references The Lord of The Rings in its last paragraph without noting that the standard edition of the poem is co-edited by Tolkien and that he did a translation of the poem into modern English.

3. Multiple stories (notably from Alberta and Ontario, but also refracted from other locations) suggest that politicians (and some people) are focussed with tunnel vision on "returning to normal" (Alberta in general, schools in Ontario). They seem not to have realized that there will be no return, but rather the establishment of a new normal; or, more likely, they are in active denial. (One way of illustrating this is to look at the UK, where opening discotheques became legal a few weeks ago but where the venues are floundering in uprofitability because not enough people are coming out to them. The fact that something becomes legal does not necessarily mean that enough people will start to behave as though it is 2019 for a "return to normal".) I attribute this in part to bias (governments which are conservative/mammonite will be less likely to accept change constraining economic activity), partly to geography (conservative governments have a disproportionate number of rural members, who overwhelmingly want to see the end of restrictions of any sort), and partly to a general propensity for governments of any stripe to want to push a "good news" narrative even when it means getting out in front of the facts.

(Masks are not going away for many people, even if others enthusiastically ditch them. I expect heavy vaccine mandates in the private sector, both for employees and (in places such as indoor restaurants, gyms, and the like) customers. I expect the profitability of running a cinema to become very iffy. I expect workplaces where coming in to work while sick in any way becomes a major social blunder and possible disciplinary issue rather than a signal of dedication to the job. I am sure there are consequences I do not foresee; the current labour market suggests other changes.)

Tomorrow

Jun. 15th, 2021 08:35 pm
jsburbidge: (Default)

The year has nearly come around again to June 16th.

Stately, plump Buck Mulligan came from the stairhead, bearing a bowl of lather on which a mirror and a razor lay crossed. A yellow dressinggown, ungirdled, was sustained gently behind him on the mild morning air. He held the bowl aloft and intoned:

—Introibo ad altare Dei.

Somebody on the CBC was talking about generalizations that can be made about Canadian literature.

One that can definitely be made is that we have not yet produced an author who is even at a level below Joyce.

So tomorrow, raise a toast to the author who, finding history a nightmare from which he was trying to escape (or did he? that was Stephen, and it is never safe to make an easy identity between Stephen and his creator), has finally emerged as having taken claim of one day a year for a history which never took place.

jsburbidge: (Default)

Ironically, this page had an ad put in immediately below it for "Wealthsimple: buy and sell stocks". Google's AI has a long way to go at determining the context of the links it put in...

jsburbidge: (Default)
 This is hoisted out of a comment thread in response to a reference regarding the effectiveness of tort law: an idealized view (not shared by the author of the reference) of the common law, and tortious (or similar) remedies as being entirely adequate if only left to themselves.
 
First-year law students are given a set of required courses to take and (at my school and the other ones I know about) there are three courses on true common-law topics: Property, Contract Law, and Torts. (The topics of other courses, like Criminal Law and Civil Procedure were once common-law but underwent extensive statutory revision in the late 19th Century: Canada now has (as of 1954) no common-law criminal offences [1] and civil procedure was so heavily transformed in the late 19th Century by statute as to become unrecognizable ("special pleading" has now no concrete referent).)
 
Unlike property (about types of land tenure) and contracts (the outgrowth of the old action on the writ of assumpsit), in principle, torts have no real unity. They are a grab-bag of items based on a number of older causes of action.
 
In about 1800 torts were a minor branch of the law, and at the time trespass to property (trespass proper and conversion) would probably have been the most important, followed by assault and battery (trespass to the person). Actions lying in negligence were rare, though negligence was also an important concept in the law of nuisance and in some criminal writs.
 
By the time I was taking torts, the nominate torts got about one week. The rest of the year was spent on negligence.
 
Negligence is now a widespread and important legal cause of action, but that is somewhat accidental and in neither of the two important branches is it well-suited to the social ends which it is being used to serve.
 
Negligence is based on the idea of the care which would be taken by "the reasonable man" - generally,  not an exceptional person, "the man on the top of the Clapham omnibus", although in professional contexts an elevated duty of care is required. But suits in negligence have by now long become a means of addressing issues where negligence can be invoked only by straining at gnats and  swallowing camels, under the broad heading of "distributive justice".
 
The most obvious case is what happened with the development of the automobile. There were accidents involving horse-drawn vehicles - unlike an automobile, a horse can be spooked and can also be vicious. But the advent of the car as a force-multiplier and a speed-multiplier generated a world where not only were there many more deaths and injuries but where the majority of them could be attributed in some sense to negligence - either prior negligence (driving too fast, following too close, drinking) or immediate negligence (letting your attention wander). And while the dead need nothing, injuries in automobile accidents generate long-lasting treatment and alleviation scenarios.
 
What emerged was an odd way of dealing with the financial costs of the injured. (The dead are, at common law, cheap. Damages for wrongful death do not exist at common law (unless you want to revert to wergild); they are a creation of statute. Paraplegics are expensive, and damages may also accrue for lost potential earnings. As one of my teachers said, from a civil law perspective, if you run over somebody who is young, well-off, and badly injured, it makes sense to back up and ensure he or she is dead; it's much cheaper. The criminal law does have a different view...) Everybody buys mandatory automobile insurance giving the insurers rights of subrogation. Traffic accidents generate civil suits in negligence even in cases where the standard test would, if actually applied, collapse. (A normal individual does not always keep to the speed limit. A normal individual does not have attention which never wanders.) Insurance settlements supply the injured with support based on a standard which is feasible only because, in effect, the entire adult population (to a reasonably close approximation) is subsidizing the injured through mandatory insurance. Even then, the remedy is a single lump sum.
 
That's the solution tort law has developed. Analogous approaches have developed to professional malpractice. (Surgeons make mistakes. They are insured to prevent those mistakes from beggaring them.) Occasionally there are situations where negligence can be absolutely shown not to exist. (Previously unknown and unknowable risks, acts of God, cases where injury can be shown to be entirely the plaintiff's fault.) There regularly ensues indignation that there is nobody to sue, nobody responsible.
 
A better solution would be a minimum guaranteed income plus public long-term support for the injured. Allocation of resources is much more effective when it can be planned, and when the process is no longer funnelled through insurance companies and lawyers, who take their own cut of the proceeds. And road safety would be better served by setting and enforcing serious standards (driver training, road safety, road construction, speed limits) rather  than having lax standards with a notional motivation to improvement provided by liability.
 
The other major modern branch of negligence law is in product liability. Until the 1930s, generally, product liability was a contractual matter, with remedies in damages or restitution under the common law or under its codification in the Sale of Goods Act (UCC in the US). Donoghue v. Stevenson changed that, and a whole elaborate case law regarding tortious product liability derived from that.
 
Under contract law, goods not fit for use get their price refunded, or a substitution of goods fit for use. The appropriate remedy for a bottle of ginger beer with a decaying snail in it would be the price of another bottle of ginger beer. Under the law of torts, damages may be had for physical and mental distress.
 
It has its own problems. Damages get awarded for cases where warnings are not provided for the use of something in an inappropriate and unexpected manner. (Lawnmowers now come with warnings not to use them for hedge trimming because some idiot once won a lawsuit after doing so, despite the fact that it's hard to square that with the reasonable man test.) Court actions are expensive, and many cases on product liability are viable only as class action lawsuits unless the victim has deep pockets.
 
Again, though, if the aim of society is to have products match expectations and to minimize poor outcomes, this is a very poor tool. Detailed regulatory conditions specific to an industry are a much better one: detailed regulatory conditions with the enforcement being requiring conformance to the law rather than simply fines for breaking it.
 
One fundamental problem with negligence is that the only relief a suit in negligence will bring is damages, and very occasionally restitution. If a person or a company with deep pockets feels that the costs of an occasional lawsuit are worth it, they can just keep on going what they want to. (Mr. Toad and motor cars come to mind. And it may be cheaper to skimp on quality control and pay occasional damages than impose elaborate quality control mechanisms.)
 
(I will note in passing that the above does not apply to nuisance cases. You can get injunctive relief in nuisance, and in riparian rights cases, and so forth, which involve property rights. But historically, where legal rights of those sorts would actually have the effect of constraining popular activities - manufacturing, railways, etc. - the strict rights under the law tend not to be generally applied, even before they get constrained by statute.)
 
In practice, there is no true common law left.  The process was deep-sixed in the late 19th Century on both the civil and criminal sides. Almost everything else has had so much legislation applied that common-law rights are a vague substratum. (There are a few remaining areas: commercial contracts of certain sorts; some commercial leases; suits for trespass and assault.) Torts look like their common-law ancestors but they are so constrained by other legislative conditions - mandatory automobile insurance, mandatory professional insurance, legislation directly addressing balance of proof, etc. - that they really have no similarity to their roots.
 
There's a reason for that. The common law (not just the law of torts)  was a complex maze of rules organized around a set of causes of action which hadn't been updated since before the Tudors, and which really had no obvious organizing principle relevant to how the world has been organized for the past century and a half, let alone for the past few decades.
 
Some "common-law principles" remain - adversarial as opposed to inquisitorial procedure, for example, though even that is blurred by certain types of administrative tribunal. And the Anglo-Canadian model of stare decisis is still alive and kicking. But the idea that the common law is part of an ideal past is naive.
 
[1]I have a family connection here, as it was a great-great uncle who codified Canada's common-law criminal offences (based on English work by Sir James Fitzjames Stephen, Virginia Woolf's uncle), which work became the basis of the first Criminal Code.

Politics

Apr. 22nd, 2021 10:25 pm
jsburbidge: (Default)
Recent coverage has shown that the mad, panicked response of last Friday by the Ontario PCs to the increasing COVID numbers was not an aversion to more deaths, nor a belated reaction to the (ignored) advice from their advisory panel, nor even (as I thought) a response to the ICU crisis. It was a reaction to increasing general public negative reaction to the weak response of the government to the third wave of the pandemic and, as such, pure classical politics.
 
It may become a classic example of the problems of "Something must be done; this is something; therefore it must be done" thinking, and likewise of the risks of confusing a demand for more action with a demand for effective action. Though they did not have "something" to hand; they had to make it up.
 
The Ford PCs continue to show the same traits which made them so beloved before the pandemic: action before thought, and singing from the same songsheet to a degree which leads one to imagine that DoFo has perfected brainwashing. These are not the traits of an enduring political dynasty.
 
Though political they most assuredly are: they respond as politicians, to public opinion, and not, as a government, to public need.
 
Pitt, or Peel, or even Gladstone, thought of politics as something which had to be dealt with to get around to one's real aim, which was that of governing. Our current leaders never get far enough away from politics to govern.
 
We can at least be glad we do not live in Alberta. At last report, Kenney, who is even more resolute than Ford in his unwillingness to sacrifice the interests of the rich^H^H^H^H^H^H^H^H^H corporations to the public need, is facing an internal party revolt by those who feel that he has unduly restricted their freedoms.
 
The US now has a moderately sane leader confronting a gridlocked legislature and a set of state governments which range between the effective and the batshit crazy. The UK has a clever buffoon with no principles and no stability as a leader facing a crumbling Union.
 
"Politics", in the sense that the word has had since some time in the early 20th Century (at least), has failed: not only on COVID, but on the climate crisis, and even on such simple matters as security for the majority of citizens. Churchill's dictum may still apply - authoritarian regimes may have dealt with COVID better but are not otherwise much more competent, and even their range of effectiveness in the pandemic is so great that I at least am inclined to link the success of many East Asian regimes to their cultures rather than their governments. If authoritarian traits aligned with effectiveness in dealing with crises, Russia would be in much better shape. But some sort of third option looks increasingly necessary.
 
A sane electorate would never have elected Ford, or Johnson, or Trump, or Bolsonaro. It may almost be time to consider the actual utility, under a transformation, of Brecht's ironic suggestion:
 
 
Wäre es da
Nicht doch einfacher, die Regierung
Löste das Volk auf und
Wählte ein anderes?
 

If "political" thought is creating a breakdown, perhaps we need to think, instead of political response, of a social, artistic, and literary response. Human nature is malleable (though maybe not as malleable as Leary and Wilson thought): addressing how people think may, in the end, be our best response to the crisis of government which confronts us. We need another population, not simply a set of changes of government.
jsburbidge: (Default)
 After hearing the Mayor of Ottawa describe the relative chaos created by the police stops on the Ottawa-Gatineau crossings, I realized that we should refer to the most major one among them as "Checkpoint Dougie".
jsburbidge: (Default)
 The surprising thing, on first glance, is not that the province is back in (semi-)lockdown, but that it took so much time to get here, and that so many feathers were unnecessarily ruffled along the way.
 
I will bypass (for the moment) the issues around vaccine strategy, or the curious absence of strong measures targetted at warehouses, meat-packing plants, and other large areas of potential and actual spread, and pick up another thread from the tapestry.
 
Why did this come as a surprise?
 
The papers were filled with complaints from restauranteurs who were, essentially, pulled into a false position by the government encouraging them to open patios a week or two before shutting them down. The government went from talking about allowing barbers to open to imposing a new grey zone on all of Ontario within about 48 hours. The follow-up of a stay-at-home order has taken less than a week.
 
But none of this was, in fact, sudden. The numbers have been speaking for weeks to anyone who can do any sort of extrapolation.
 
There is, in fact, a really straightforward, obvious, and more effective way of doing all this. It's to sit down with epidemiologists and work out a model where this sort of R1 factor generates that protective reaction as an immediate response, and then publish the schedule in the Ont. Regs. as actual law.
 
The rules might need tweaking occasionally as new evidence came to light (e.g. of specific activities being more or less risky). But essentially, they wouldn't suffer from the sort of foot-dragging we've just seen (which translates into lives) or whiplash-inducing reversals, which are bad politics and cost money to people (sometimes, to the government itself).
 
So why don't we see it? It's not just Ontario; the same sort of see-sawing back and forth is visible elsewhere.
 
Part of it, no doubt, is classic politics, in the sense of being the product of reacting to varying pressures and trying to find compromise. But I think that far more of it is leaders trying to preserve the illusion, to themselves as much as to anyone else, that they have power. By reserving decisions, by making the changes on rules those of sudden emergency orders-in-council, it draws a veil over the fact that their leeway for decision is very small.
 
That doesn't mean that they don't have power. The continuing refusal of the provincial government to enact paid sick leave has shortened many peoples' lives. (It had shortened lives before the pandemic as well, but less visibly.) It is always possible to affect the course of events by doing a bad job, or an exceptionally good one. But within the way this has been framed, even though they may delay or fudge, the final decisions are being driven by the virus, and, particularly, by the capacity of the hospitals. (The new status, I am convinced, derives not from the number of people who are ill, but by the ICUs approaching capacity.)

Profile

jsburbidge: (Default)
jsburbidge

April 2026

S M T W T F S
   1234
567891011
12 131415161718
19202122232425
2627282930  

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Apr. 15th, 2026 02:55 am
Powered by Dreamwidth Studios