The end of another weekend but things have gone well – cleaning the house inside and out along with the great weather meaning I can open ever door and window t0 give the house a good airing. All the washing sorted out, a nice home cooked meal of fish, mashed potatoes and baby carrots with garlic butter over the top. Nothing better than after a long week at work to be able to have a nice home cooked meal which can be enjoyed rather than rushed as with the case of when one is at work and having to squeeze it in a 30 minute break time.

My sisters MacBook Air of 8 years has finally died – the SSD storage suddenly died in that it is not detectable by a USB thumb drive, the firmware itself cannot locate the build in storage. On a good side, she was smart and bought the MacBook Air ‘Apple Silicon’ so I had the honour of being able to experience ‘Apple Silicon’ first hand. I installed all the latest updates and afterwards I was able to experience ‘Apple Silicon’ the way it was intended (with most of the teething problems addressed by the updates). If this is any indication of where Apple is going then the future of the Mac platform is going to be awesome.

Ubiquiti is still working on a new firmware for UDM which includes WPA3 support built into the new Unifi Controller along with the Unifi AP AC HD receiving a new firmware update although as I’ve noted before, when I upgrade my MacBook Pro and iMac to Apple Silicon versions, I will upgrade my access point to Wifi 6 and then install my old access point in mum’s house which will help with improved wifi coverage.

Sigh, the incoherent arguments by Mark Zuckerberg and his opposition to a paid for option rears its head in the comment section of technology websites where people fail to read – they skim the article, jumping around trying to pick out key pieces of information and then surprised that they get it completely wrong. The latest part of this drama is the proposal by Twitter to offer a ‘pro’ or ‘premium’ version of Twitter for more features and no ads (link). I always find it funny when I see people on one hand complain about their ‘privacy being invaded’ and yet on the other hand they some how expect websites to sustain themselves off the back of unicorn farts and rainbows.

The reason why personal data is mined is because it is that data that allows them to command a higher price when selling ad space – businesses are more likely to spend money on ads where they have a lot more control over who they can target because time and money isn’t wasted on a scatter gun approach where people who have no interest in said product end up getting the ad. Your person data which powers the advertisement platform are a way of paying for the services provided when you as a consumer aren’t paying anything for it – if you’re not paying for the product then you are the product. Then why introduce a paid for option? for the same reason why software companies have moved from perpetual licences to subscription, why music has moved from the sale of music that one can use indefinitely to one of subscription – because it provides a consistent stream of revenue with the icing on the cake being that it doesn’t include the privacy headaches associated with data mining and targeting ads.

I think Twitter’s CEO Jack Dorsey can see a regulations coming down the pipe – one way to avoid a potential disaster is to wean itself away from a reliance on advertising revenue in favour of subscription services. Mark Zuckerberg on the other hand is playing this BS game of trying to claim that he is doing something noble aka ‘I’m trying to connect humanity’ then the moment you ask him “will you offer a paid for version that is ad free and privacy respecting” his response is to ramble on about ‘poor people not able to afford a paid for version” even though no one was proposing getting rid of the free tier version. If Mark was really interested in the survival of his platform he would not only offer a premium tier, he would be looking at expanding services – offer a marketplace platform to complete with Amazon where Facebook can position itself as the ‘neutral platform’ since Facebook isn’t actively competing against vendors who are using the platform to sell products. Then there is Facebook gaming which will fit in the niche to compete against Twitch – offer a Patreon like service, buy out one of the merchandise making companies and provide the ability to sell said products through the that platform. It won’t happen over night but Facebook has the ability, if they want, to move away from a dependence on advertising which will help deal with the concerns that regulators and politicians have raise by both the EU and the United States.

Apple released macOS 11.2.1 update which includes a fix for the much documented issue with sudo as well as fixing security vulnerabilities in the Intel GPU driver (link) and addressing the battery issue that has been impacting certain models of MacBook Pro (2016 and 2017) although funny enough I haven’t been impacted by it (link). macOS 11.3 is still in beta testing but it’ll be interesting to see the improvements that come.

On the matter of security, an interesting thing I noticed is that the ARM based binaries are compiled as an arm64e binary which adds and extra layer of security (it utilises a feature built into the ISA itself) when it comes to dealing with pointer based memory attacks (link). It will be interesting to see how this will translate in the real world in terms of picking up and mitigating possible threats. At the moment the A14 (M1 is based on the A14) is based on ARMv8.6-A and if you’ve been following the LLVM project you’ll notice that Apple has been gradually adding support for features found in the ISA to improve security and performance.

Although at this point the ARM ISA is as feature rich as a CISC ISA, the thing I notice is that any improvement is carefully considered through consultation with the various vendors that depend on the ISA so the end result is when features are added to the ISA it is because it has material benefit rather than, “lets add it and hope for the best”. It will be interesting to see whether Apple adopts the libc project that Google is working on which is a ground up replacement for the various libc implementations – rather than being a mixture of assembly and C, the focus is on a libc library delivered in pure C with optimisations done in the compiler itself rather than the library with the benefit that it makes the code more portable and any architectural improvements to an SoC can be delivered through making the Clang/LLVM toolchain better at producing code with the icing on the cake being all other code benefit from those Clang/LLVM toolchain improvements.

I’m enjoying the start of four days off (2 days off for the weekend and another 2 days off using my lieu days I built up) – relaxing in bed, watching movies, gardening and cleaning up around the house. With all that in mind, I’m also going to take off a week in June when WWDC takes place but I’ll need to wait and see what happens – whether there is a return to it being in the first week of June or whether they’ll have it at the end of June like last year.

Reading through Ubiquiti and it appears that part of the UDM 1.9.0 beta and latest firmware for the Unifi AP AC will be support for WPA3 which will be interesting to see how along with the big firmware upgrade impacts on performance (latency and download speeds). macOS 11.3 beta is still being developed but I am hoping that Safari 14.1 )which is included as part of macOS 11.3 beta) will inherit as many features from the Safari Technology Preview as possible particularly around optimisation. The next version of the Ad Guard for Safari Extension is drawing closer – Chromium backend has been updated, lots of bug fixes and optimisations so that is another piece of software I’m looking froward to.

Affinity is having a 1/2 off sale so I am tempted to buy Photo, Designer and Publisher which, although I won’t use straight away will be useful in the future so it makes sense to jump at the opportunity of a discounted version available for a limited time.

macOS 11.3 Developer Beta has been released and good news – it includes Safari 14.1 which hopefully includes a lot of the improvements that exist in Safari Technology Preview. I’m hoping that what we’ll see, with the move to Apple Silicon based Macs, that there will be more frequent updates of Safari particularly when it comes to the Webextensions API which at the moment the absolute bare minimum. What I’m hoping is that when Apple embraces more of the Webextensions API that any changes make their way back into the other browsers which will make extension developers more willing to target Safari. At the moment I use Ad Guard Safari Extension although it would be nice for uBlock Origin to be made available for Safari.

It looks like the first couple of updates were solely focused on fixing major bugs and security fixes with the next release bring in new features as part of the equation. There is also a corresponding Xcode 12.5 that being released along side macOS 11.3. It will be interesting to see whether, once the transition to Apple silicon is complete, whether they move to a rolling release schedule where major releases are instead replaced with new features, enhancements, bug fixes etc. are rolled out when they’re ready rather than being held back for ‘the big release’.

Apple has released the Big Sur 11.2 – I’ve upgraded my iMac and MacBook Pro, and as noted earlier on today the issue regarding scrolling and video playback on YouTube has been fixed which means I can now go back to use the stable build of Safari rather than using the beta/technology build (although I do hope that Apple get their act sorted and make Safari 14.1 available since the scrolling is buttery smooth and a lot faster than Safari 14.0.3). The update also updated the firmware for both devices – most likely including the latest microcode update from Intel along with any optimisations to the kernel to help mitigate any performance penalties associated with the fix (in much the same way that Google created the Retpoline fix to deal with the Spectre variant 2 fix slow downs related to the microcode fix).

Speculation is building about Apple having a spring release of the next wave of refreshes which will bring Apple silicon to more devices. The technology blogs have picked up on an Apple patent regarding multi-level memory (link) which appears to be pointing to a future where Mac Pro’s for example will have super fast on SoC memory with the ability to expand it further via slots which won’t be as fast as SoC based memory but with enough wizardry in the background of swapping things around in the background, Pros will get the advantages of the new SoC with non of the downsides. I think the big question though is how Apple is going to deal with the GPU given that although so far it has performed great against other similar embedded SoC based GPUs, will they stick with discrete GPU’s as an option so that the system switches between the Apple GPU and the discrete GPU based on system demands? I guess in the coming months we’ll find out.

Next week I’m going to take a couple of days off from work (10th and 11th) since I had some lieu days earned. Normally I would cash them out and pocket the money but alas given what the economy has gone through, the business has had to tighten up – I was lucky that I was able to cash in a week of holidays before the email came out which put an end to that practice due to tough trading conditions. Regarding WWDC 2021, assuming that the vaccinations get off the ground and most of society gets back to normal then hopefully that’ll mean I’ll take a week off in June to geek out watching the various sessions regarding the enhancements to the next version of macOS. I think the interesting part will be the under the hood changes particularly around closing off access to the kernel by third parties as Apple replace the various frameworks in the kernel with a user space extension/driver model. It also makes me wonder wether that move is also an indication that Apple will start moving drivers out of the kernel so that, not that they’re aiming for some Mach purity, reducing the amount of code that needs to be running in the kernel kept to the bare minimum which will help reduce the surface attack area.

As I’ve noted in previous posts I have been running Safari Technology Preview bought I thought I should give Firefox a try considering that the WebRender is now enabled on macOS. So far it has been very reliable and with uBlock Origin v1.32.4 it is doing a good job blocking ads and other nasties. In terms of it’s memory footprint, it is a lot more efficient than when I used it last time along with it not hogging CPU time with my current tab pretty much sitting at 0.1% with media playback still being pretty good even with YouTube being the one using the most amount of CPU utilisation due to VP9/Opus but even then, I doubt I would notice any difference if I was on battery power. One thing to remember is to install the dictionary since it relies on an external dictionary rather than using the one that is built into macOS.

I guess over the years I’ve developed a theme on my blog about my less than enthusiastic embrace of the industries slow march towards the extensive use of PWA. I have to prefix this – in an ideal world I much prefer native applications because of the improved performance, lower source usage and better system integration but that being said when compared to what came before I would sooner have PWAs over the alternatives that were championed in the past.

I remember the bad old days when the focus was created multiplatform applications and the various technologies vying for it. There Java/Swing, slow, unresponsive and just generally horrible with applets (Java applications that ran inside ones browser) even worse given how it was common to see the whole browser lock up frozen because of a poorly behaving Java applet. ‘Write once, run everywhere’ they said but as the joke went at the time ‘write once, debug everywhere’ because there was no guarantee that your application could consistently run given that a bug in one implementation of the JRE might not impact another JRE.

What other alternatives were there? Shockwave and Flash was something offered but to a certain extent it was handspring by the same limitations as Java applets (in the case of using Flash within a browser) even with the improvement of NPAPI which became PPAPI (‘pepper extensions’) but the world had moved beyond desktops and laptops into tablets and phones – people demanded an experience that worked in the browser natively without a dependency plugins and all the security implications that came with it. Adobe AIR was positioned as a replacement but eventually that has gone by the way side in favour of the Electron framework sitting on top of Chromium.

Anyone who has lived through the past attempts to deliver a multiplatform framework for developers and experienced it first hand as a user would sooner have what we have today than what existed back when Flash was so dominant (along with those other solutions). Are PWA the ideal solution? not really but every step forward in terms of abstracting away from the system is going to result in reduced efficiency but what is lost in run time efficiency is gained in greater productivity by the programmer and less likelihood of mistakes. For example, moving from a 1st generation language (binary) to 2nd generation (assembly) will make life easier because programming is almost like a brief set of instructions in semi-readable human form then when you move to 3rd generation where writing a piece of software is almost writing it in a human readable language. With each level of abstraction the greater the productivity the programmer, the easier to debug, the ability to manage very large and complex projects, to be able to reuse code etc.

I don’t think that PWAs are going to solve all of lifes problems but many applications that are native are done so not because PWAs cannot deliver but due to habit – “we’ve always done it this way” but for those organisations that aren’t hamstrung by legacy many embrace fully the future. Reminds me of a survey where those who tended to go with Office 365 tended to be organisations that were already Microsoft customers thus any move to the cloud required the legacy setup take into account where as G-Suite tended to be used by small to medium businesses, those businesses that were recent startups without the legacy systems in place which have to be take into consideration, in other words it is a ground up brand new workflow unhindered by legacy considerations.

There were updates released today for iOS, tvOS, watchOS and homeOS however macOS Big Sur 11.2 is still in release candidate stage. It’ll be interesting to see whether the improvements build 118 of ‘Safari Technology Preview’ have made their way back into the mainstream build of Safari on Big Sur 11.2. Apple has updated its security page for iOS/iPadOS (link) but it’ll be interesting to see whether ‘Additional details available soon.’ mean additional security fixes disclosed once 11.2 Big Sur makes its way out to end users in the next few days. On a side note, Ubiquiti pushed out the UDM 1.8.6 update which fixes some security updates and bug fixes – so far things have going very well.

What has begun to frustrate to frustrate me is this tendency to mistake cynicism for enlightenment which is just as frustrating as the other observation which is this idea that if you’re critical of one major party it means that you automatically support the other major party.

The first thing that frustrates me is every time there is a rumour put out there by the mainstream media, there hundreds of thousands of folk on twitter immediately assume that it is actually true even though no evidence is provided to back it up. Anyone remember the rumour that was put out there that ‘Biden was considering Rahm Emanuel’ when in reality it was a load of crap. I’ll let you in on a secret – the media is a giant club and those who are interested in a position in an administration will get someone to spread a rumour to give as a hint to the powers that be that they’re interested in a job. Yes Minister have parodied that a few times – politicians use the media and the media like it because it is the unsubstantiated rumours that can generate hours of conversations and debates to fill the airwaves that would be otherwise dead if they actually had to talk about factual issues rather than what the latest rectum plucking that originates from the nether regions of someones conspiratorial mind..

The second thing that frustrates me is the expectation for a ‘revolution’ to occur overnight, for a massive transformation of within a matter of days but rather it is going to be something that’ll occur over time. When they (Democrats) pass a bill it isn’t going to fix all the problems at once but that’s ok, it isn’t as though what is passed is set in stone, one can always go back and amend and improve. That, along with a lack of short memory, is ultimately what the Republicans hope for – that you’ll forget what happened when they were in power and that you lose interest because problems aren’t solved immediately, it might require more than 2 years to fix healthcare. The other part is this purist idea of getting things accomplished – I’m sorry for those who have delicate dispositions but the legislative process is very much like working in a sausage factory, it isn’t going to be pretty. When getting a bill through the house, it requires at times greasing the skids to get the numbers – you may call it pork but I call it the price of getting the votes to achieve a much larger objective. As the old saying goes, “keep your eye on the prize”.

After almost 2 years in development Manifest v3 has made its way into Chrome 88 Beta (link) which I assume will mean that it is in Chrome 88 (link) but that being said, there is still more work to be done such as increase the filter limit from 30,000 in Chrome 88 to 300.000 in Chrome 89 along with taking onboard feedback from third party developers to ease the transition. For example, although the developer behind uBlock Origin wasn’t happy with the changes when Manifest V3 was originally announced it appears that he looking at the possibility of bringing it to v3 even if it means a few features are missing (link). I think that we’ll eventually see developers come around – in a perfect world these changes wouldn’t be necessary because there wouldn’t be malware and other dodgy software but alas we need to build in safeguards into software to keep users safe and by keeping users safe it keeps the extension ecosystem health so that users feel safe trying out new extensions without fear of their browser or computer being hijacked.

It will be interesting to see how WebExtensions API develops on Safari given Apple’s reluctance to implement parts of the API or change the functionality of such parts of the API to tight up security and privacy. The interesting part will be whether the changes in implementation will be adopted in part or fully by the likes of Firefox (just as they implemented some of the less controversial manifest v3 changes (link) gradually). Although Safari 14 had very basic support it was noted on the WWDC session that it is the beginning of a much richer implementation but like anything in life you have to start somewhere. I hope that eventually that it’ll get to the point of rivalling Chrome and Firefox in terms of ease of portability for third party developers – maybe be even lucky enough to see a return of uBlock Origin? one can always dream I guess.

Samsung released their Galaxy S21 series which features the new SoC based on ARM designs rather than using their own in-house designs (which came under fire last year due to the massive gap in performance and battery life between the Exynos and Qualcomm versions). Although there were rumours of a SoC featuring an AMD GPU it appears that it’ll be in next years SoC. It will be interesting to see whether Samsung utilise the open source driver and build on it to support the AMD GPU or whether Samsung will rely on a binary from AMD for support. Part of me wishes that Android vendors would push towards using components whose drivers are 100% open source as to avoid the whole fiasco that Google is trying to do right now by working on a stable driver API in the linux kernel. The interesting part will be whether Samsung next year, with the relationship they have with AMD, take their ARM based SoC beyond smartphones and maybe look at delivering ARM based Windows or ChromeOS computers.