Skip to main content

This is ZX81.org.uk

Category: Opinion

WWDC 2024 Keynote: Total disappointment

Expectations were low. No new hardware they said. New software they said. And yet, even with expectations so low, they failed.

What did we get? In short, nothing that we’ve not already seen from Google or Amazon or Microsoft. Sure, they did it with a bit of flair but, as we know, marketing is all that Apple are about these days. As Schiller said only three years ago, “[Apple] can’t innovate anymore.”

History

A few years ago I had a job where every new recruit would go through a long process of shock and gradual acclimatisation to the main software product.

What it did doesn’t matter as much as how it was built: it was an application developed on top of a proprietary programming language and user interface designer. The reaction was always the same. Why? Why?! Why would you reinvent Visual Basic on Unix? Why would you inflict a programming language even worse than Basic on developers?1

Twitter

Sometimes it’s only when you start writing about a subject that you truly understand your opinion. That’s the approach I’m taking to answering the question: are you going to leave Twitter?

A few people have asked me in the last couple of months and the only response I have is that I’m not jumping ship and closing my account immediately.

But as the weeks have progressed, as I’ve written this piece, my thinking has evolved. It’s not that I’m going to immediately close my account but I can see The End approaching. Indeed, my usage of Twitter has dropped considerably.

Programming Pearls

Every year I try to complete the Advent of Code. Every year I fail to finish. I get about halfway through, and the exercises start taking longer to complete than I have time.

Every year I think about Jon Bentley’s Programming Pearls1 [affiliate link], because the same kinds of challenges you find in Advent of Code can be found in the book. The main difference being the quality of the answers. At least in my case2. In the words of the preface: “Programming pearls whose origins lie beyond solid engineering, in the realm of insight and creativity.”

Panic

The whole team got this email today. Okay, it wasn’t today and these are not the exact words, but it was something like this:

We have a serious regression in build 456. We have set the project back rather than taken it forward. We need the utmost focus and commitment on fixing it. We’ve broken it and we stay in the office until it’s fixed.

I’ve had a few of those messages over the years and while it’s intended to focus minds it often has the opposite effect. Let’s examine why.

Project versus Product

With the fuss about the Log4Shell vulnerability finally dying down, it’s time to step back and take a good, long think about what happened and, more importantly, what can be done to stop it from happening again.

Sadly the prognosis is not good. The tl;dr is both simple and obvious: we simultaneously like free stuff and getting paid for our own work.

Most companies treat open source software exactly the same as commercial software but with a much lower purchase cost. When the software goes wrong, we want someone else to fix it for us. Unfortunately, sometimes we don’t even know where the software comes from. In the case of log4j, it’s run by volunteers. There is no 24/7 help desk with eager employees waiting to take your call.

Security by Scapegoat

As is common these days, I was complaining about something on Twitter.

https://twitter.com/sdarlington/status/1523588282986033152

It’s easy to complain about security practices which, if I’m honest, is why I do it. But there is an important point, one that I included in a follow-up tweet:

https://twitter.com/sdarlington/status/1523602044791115776?s=61&t=69wO28ER8NUpssCyeNkqJw

The security team in many companies models itself on the DUP. Say no to everything. But – and this is the key – offer no alternative.

The tweet above is about passwords but I see it everywhere. Another common one is transferring files. I understand why sharing files can be problematic. Confidential data can be exported, either deliberately or accidentally. Viruses can be imported. Security defects can be exploited.

iOS 16 and watchOS 9

As I’ve done on many previous occasions, I thought I’d write a few words about the latest Apple operating systems. I’m sure you’ve seen the reviews and possibly even upgraded yourself, so I’ll keep this brief! This is not intended to be complete; just a few highlights from my point of view.

First: they’re both stable. I’ve not seen any significant problems this year. If you were happy with iOS 15 and watchOS 8, and you’re able to, there’s no good reason not to upgrade.

Is git too hard

I stumbled across “On git and cognitive load” and it got me thinking. That post led me to “Oh shit, git!?!” and that got me thinking further.

But first, a disclaimer: this is a post more about having perspective than providing answers. If I knew a better way, I’d be doing it.

The first blog argues that git is difficult to use. Further, that it was designed with the limitations of the time and that those limitations are no longer valid constraints. A decentralised system was required when poor network connections were the norm. Now we have cloud providers and ridiculous amounts of bandwidth.

The Count of Anti-Crypto

  1. The underlying technology, blockchain, might have uses but a currency isn’t it
  2. Many crypto experts were surprised when governments said that profits from trading in digital currencies were taxable in the same way that as any other capital gains. Why would this be a surprise?
  3. They also claim that it’s great because it’s decentralised. Except, a few companies do a vast percentage of all business meaning that in reality it’s not very well distributed
  4. Much of traditional financial services is not centralised either. There’s no “exchange” for currency trading, for example
  5. The lack of regulation in crypto is considered an advantage, right until the point that one of the few exchanges (see above point about decentralisation) is in trouble and stops accepting sell orders. Regulation is there for a reason
  6. Decentralisation is supposed to democratise trading. Except, trading in crypto is surprisingly expensive. And, just like traditional finance, quickly gets complicated
  7. And it’s slow
  8. Many of crypto’s biggest promoters are economically illiterate
  9. It’s basically a pyramid scheme
  10. Many crypto “experts” claim that it’s possible to reduce the risk of transactions with certain complications. They tend not to use the word “hedging” which is what this is. It’s something that the “old-fashioned” financial services companies have been doing for ever
  11. It’s almost like they don’t understand traditional financial markets
  12. They says it’s progressive and about freedom, but it entrenches existing hierarchies, if anything, more effectively than the existing systems
  13. Except for the use of blockchain, there’s not a lot that’s new. For traditional financial services, regulation means that the worst scams are banned for retail inventors. The “Wild West” of crypto isn’t a feature
  14. And no, this piece is not intended as a defence of the traditional financial services companies or their regulators. They are far from ideal