ExtJS’s Grid Clipboard plugin is borked by design

I’ve been meaning to write this for nearly a year, but I held off hoping things would change with the next release. They didn’t, so I’m writing this: the Clipboard plugin for the Ext.grid.Panel class – which provides cut-and-paste support for the enhanced table widget – is borked by design. It does stupid things, and Sencha says it should do the stupid things. In this post I share what these things are, and how I’ve overriden the default behaviour to do something hopefully less stupid. Warning: this is a rant.

Continue reading “ExtJS’s Grid Clipboard plugin is borked by design”

Lessons learnt from a bug

This is a rant about a bug report I raised with ExtJS a few weeks ago. That said, I’m using the bug more as a teachable moment than anything else; I’m certainly not trying to bag ExtJS (which I quite like, despite some of its quirks). But this bug does highlight a number of “things done wrong”, which I want to learn from so that I don’t commit the same errors.

(No knowledge of ExtJS is required, and whilst I will describe the details of the bug in depth, the technical issues involved aren’t meant to be the takeaway points)

Continue reading “Lessons learnt from a bug”

Eternal Growth Is Not Sustainable

We live in a world where economic growth has been amazing – in historical terms – for well over a century. The poorest people of the world today live in better conditions and with better health than the 90%-tile of 500 years ago. Today’s middle class live a luxurious life by contrast to even the 99%-tile of 200 years ago. The economic growth seen in the West has really lifted all boats – some a lot more than others, but nobody has gotten worse in the long term.

And we’ve done that despite the fact that the net exports of the world are precisely zero. 😉

Since the peak of 1929 (pre-crash) to the bottom point of the current GFC, the US sustained average growth, per annum, of something like 3.4%. Measure it from the bottom of the 1929 crash to the peak of the pre-GFC bubble, and it’s a sustained average growth per annum of about 3.6%. That’s exponential growth for you – over 80 years, that very modest 3.4% produces a multiplier of 14.5. World economic growth has been even more impressive – World Bank data shows that over the last 40 years, world GDP has increased by an average of 7.9%, for a multiplier of 21 times. (Both numbers, BTW, have been adjusted for inflation)

By contrast, world population since 1929 hasn’t even grown by a factor of 4. World population in 1929 is estimated at being a little over 2 billion; at the time of writing, current world population is a bit over 7 billion. So the last century has been all about sustained economic growth that significantly outpaced population growth. It’s something that has never been seen on a global scale.

Also, once this phase ends (in about 5-20 years, once China and India have caught up), it will probably be never seen again. We’ve hit a limit to economic growth – increasing cost of resources and increasing cost of energy. There’s also a demographic problem – the rate of growth of the population is declining, and is projected to peak, globally, about 2050 (at 9 billion people), and then slide down. For the working-age population, this is already happening in Japan, is just starting in Europe, and will hit the US (and Australia) in about 5 years time. So we will need economic growth – which, at the end of the day, really means more output per person – just to break even in the near future.

There’s also a distribution problem – most of the energy is used by few of the people. 20% of the world – what we call “the West” – use 50% of the energy. The next 20% – mainly China and India – use 25%; their energy demands are expected to double over the next 20 years to match the West. The remaining 60% of the world uses less than 25% of the energy – or about 1/8th, per person, of the typical Westerner. That’s going to grow as well – because people want washing machines. Giving the bottom 60% access to clean water and washing machines will double their energy usage.

All this means is that there is a huge pent up demand for energy. As the economic bonanza of the last century spreads out – and the Rest-Of-The-World had faster growth in the last 40 years than the West had in the last 80! – energy costs are increasingly going to become the bottleneck. There is a global energy budget wether we like it or not.

At some point – and that point will happen within the likely lifetime of anyone reading this – global energy use per person will have to go down. In the West, it’s going to have to go way down. I’m not just talking about what shows up on the electricity bill – all energy; transportation, manufacturing, food production, etc. We do not have the energy budget to bring all of the world even up to the level of China. We might have the budget to if we bring the West down to the level of China. But China is trying to get to our level!

We can’t grow forever. The law of large numbers shows that it is impossible – just ask the merchant who agreed to pay his clerk a dollar on the first day, doubling every day afterwards for a month. (It was a good deal for the first week – only $255 for a week! – but on the last day, the clerk was owed over a billion dollars). At a point not very far away, it becomes a violation of the laws of physics to keep growing.

We need to change our measures of the economy. Instead of focusing on raw growth, we need to focus on some other measures – growth per person (with the goal of keeping this near 1:1, so we’re not going backwards), energy use per person (goal: down!), and production per energy unit (goal: up). We can’t grow see growth per person go up simply by increasing energy use – anymore than we can continue to see spending per person go up simply by increasing debt.

(All this is independent of the need to shift to carbon-free energy sources due to the need to fight climate change, BTW – that’s a whole other topic. The only relevant point of that is we can expect costs per energy unit to go up even more)

A world where economic growth is less important than curtailing energy growth is going to be different. Much of the current economic activity is wasteful of energy. For example, digging iron and coal out of the ground in Australia, shipping it to China, smelting it into steel, and shipping that back to Australia is wasteful. Shipping that steel to Australia to turn it to cars to ship to Europe is even more wasteful. Heck, shipping the raw materials to China is wasteful even if the steel is used in China!

Consumption is wasteful. We make a lot of goods today with built-in obsolescence. Computers aren’t one of those, BTW – they rapidly improve, and become replaceable before they wear out. But we know how to make a good robust car that lasts 30 years with minimal maintenance – cars that break down the day after the warranty expires will need to go.

Debt is wasteful. The economics of “good debt” is that you borrow to invest, so that you can grow faster than the interest rate, and make a profit. If you’re not growing – esp. as a society – you can’t make the “good debt” model work. (Nothing makes the “bad debt” model – where the money is used without economic benefit to the debtor – work)

Tourism is wasteful. Business travel is wasteful. Going long distances is a huge energy hit.

Speed is wasteful. Having a non-perishable luxury item delivered by air instead of ship/train is a massive energy hit. Expect freight costs to soar.

Books are wasteful. Which is a a shame. I like books.

(For more on what a world without growth could look like, see the latest post by Do The Math. Heck, see all his posts)

Bottom line: we need to change our thinking. We need to stop selling the line that growth is good. We need to stop trying to solve our economic problems – esp. debt and inequality – via growth. It can’t be done. It’s time to look for something else. Tell your politicians. Tell your fellow voters.

Why I don’t like government subsidy of private education

Because, as shown in the Gonski report (and reported on the excellent Global Mail), it’s not effective.

Private schools perform better than state schools because they cherry-pick students – by and large, they reject problem students or students with higher educational needs. This gives them a more capable student base – so naturally they will receive higher scores on average. But that’s not a good measure – the correct measure is how well do those students improve, compared to similar students in the state system. Thanks to longitudinal studies such as the NAPLAN tests, we have an answer – students in the private system, on average, demonstrate no significant difference in performance. All that money – both public funding and the fees levied on parents – tossed away for no benefit over state schools.

(Yes, there are some schools that do cater to students who are educationally difficult – Montessori schools in particular are known for this. But they aren’t the rule in private schools – most private schools pride themselves on strict discipline and regimen – the opposite of a Montessori school)

I showed in an earlier post that the Catholic school system costs three times as much per student (by their own figures, taken from the website for the NSW Catholic Schools association). But it doesn’t deliver any additional value, let alone three times as much. While, as a nation, we should allow private education for those who insist on it, there isn’t any reason to toss public money on an inefficient system.

We, as a country, are literally pissing away the future by underinvesting and incorrectly investing in the education of our children. Instead of subsidising private education, how about we ensure that the public system provides good education for all students?

On the private health insurance rebate means test…

Personally, I think it’s a good idea. And not just because I’m a slavish fan of every utterance of the Labour government. Which of course I am. Except when it’s trendy and hipster not to be, of course. Because that’s how I roll.

More to the point, I actually think private health insurance in Australia is a screwed up business model that survives only with government support in the form of the aforementioned rebate and the regulation that allows insurers to charge discriminatory prices based on pre-existing conditions (those conditions being age and lack of continuous coverage). This support is wrong, and needs to be removed.

When the Howard government introduced the health care “reforms” in the 1990s, the stated promise was that private health insurance would – as long as it had sufficient membership – reduce health care costs and promote greater efficiencies. In particular, the reforms were going to encourage the health care funds to grow to a critical mass so that they could achieve economies of scale. This would reduce overheads and allow premium prices to drop. To ensure that, the government was going to regulate price increases – they’d only be allowed if they were shown to be needed.

It’s funny, though – every year since then, health insurance premiums have increased, usually by more than CPI. No fund has shown any breakaway improvements in administration costs. There has been relatively little consolidation in the market place, and private health care has not taken on a large share of the health care market. Instead, what we have seen is the public system continuing to take on more and more of the burden, despite a huge uptake in private health membership. This problem was identified back in 2003 – we’ve known for over 8 years that subsidising private health insurance has been a failing experiment.

The majority of health care costs are borne by the elderly. 5 out of 6 patients in hospital care are over 65. But the elderly aren’t as likely to have health care – people living on fixed income arrangements can’t afford it, by and large. In case you haven’t noticed, Australia – like most of the Western world – has an ageing population. So the number of old people are growing, and so are their medical expenses. This is why the public health system is struggling.

Private health care in Australia, by contrast, is a joke. I have private health insurance – just under the best possible to get. And I find it useless. My son broke his arm a few years back. He is autistic and non-verbal, so we went for a private hospital for the two nights he had to stay in (they needed to operate it and set it) so that he could have a private room and one of us could stay with him. The private hospital costs were reasonable – all we paid was the excess. We got to pick the surgeon – and we picked one who charged a small gap so it wasn’t a very large costs. But the only anaesthetists available – at a hospital recommended by our health care fund! – charged thousands of dollars over the rebate, and we were not informed that would be the case until after the operation. Had we known, we would have opted for a private room at a public hospital.

A similar situation occurred with my wife (though at least this time we went into it knowing that there would be extra costs). A broken knee 18 months ago costs us – _after_ insurance – almost $10,000. Plus she needs another operation to put an implant in which we have been told isn’t covered by our medical insurance (apparently prosthetic implants are only covered on the very best level of coverage, where they are described as “geriatric care”). So if we want them, it’s twelve months waiting to qualify on the coverage – which will let us pay through the nose for care again. Elective surgery through the public system would be free, and with a similar wait – though the post-op rehab wouldn’t be as good.

Nearly every single time I have to use my health insurance, I find the same thing – massive costs which are unexpected and which make having the insurance pointless. The only area where I feel I get value for money is with optical care – and that’s because of discounts offered by optical stores, not rebates. (I just bought new glasses last week – the insurance policy covered about 40% of the cost, while the store discount for members of my health fund was 20% on top! And it wasn’t the frames – the frames were covered 100% by insurance).

This is why private health insurance in Australia is a failure – it provides an expensive level of coverage, and when it’s needed you still end up thousands of dollars out of pocket. It provides little to no financial security. My car insurance gives me financial security: I know that if my car gets written off or stolen, I will get compensation enough to get a new one. My home and contents gives me financial security. My health insurance gives me no financial security – in fact, I can contribute many of my financial problems over the last twenty years to using private health care.

You may wonder why I still have private health insurance – and the answer is simple: my wife and kids. But I’d rather have a solid public health system than have private health care.

In 2003, the government subsidies had a direct cost to the budget bottom line of $3.6 _billion_ dollars. That was over 8 years ago – it’s grown since. That is  billions of dollars every year taken out of the public health system, and given mainly to the upper quartile of income earners (which includes me, BTW). This contributes to growing economic inequality and isn’t needed – the system enables a relatively small slice of Australian society who couldn’t afford private health insurance otherwise to obtain it. Neither the carrot of the rebate or the stick of rising premiums if you decide to join later in life (when you are more likely to need it!) have resulted in private health funds becoming efficient or providing solid value.

The entire system represents a subsidy to high income earners and wealth transfer to the medical system. It does not result in reduced health care costs to society, or better care in general, which should be the goals.

The private health care rebates, and the government support to private health insurance in general, is a failure. Take it away, and let it die – the only downside is that the removal of easy money might actually make private health funds have to become efficient to survive.


My heart bleeds for Karen Gee…

School maths causes pain – Sydney Morning Herald

The woman featured in this story is complaining about high education costs, and wishes that the government could contribute more. My heart bleeds for her – at about 5.25 litres/minute. Seriously, hasn’t she got better things to whinge about?

Let’s actually put some numbers on this, and see what exactly she’s complaining about.

Continue reading “My heart bleeds for Karen Gee…”

Leveraged Buyouts – what a crock

When you borrow money to buy something, it’s not uncommon for the thing you bought to be used as collateral for the loan. The obvious example is a house mortgage – you borrow money, the house is the security. This makes the act of borrowing itself reasonably risk free: if the purchase falls through, the loan is dissolved and all you’re out is some administrative fees. Your real risk starts when the purchase is successful.

TL;DR – Borrowing money to buy a house is to leveraged buyouts as a pat on the cheek is to a punch to the testicles; same general act, very different implications.

Continue reading “Leveraged Buyouts – what a crock”

Agile – it’s not about the tools you use

The title says it all, but I thought I’d spend about eight hundred or so words saying more. 😉

I’ve seen a number of people think that “being Agile” is about having a build server, or about using Kanban, or an Agile project management tool. It’s not about unit testing, or pair programming, or continuous delivery, or devops, or any of a hundred other buzzwords. Don’t get me wrong – well performing Agile teams will be using these kind of tools and practices. But that’s not what makes them Agile.

Continue reading “Agile – it’s not about the tools you use”

%d bloggers like this: