Adventures in Mac Repairs

    I have a 15-inch MacBook Pro from 2017. It’s in perfect working order, except the battery was past its best. ‘Service recommended,’ it always said when I checked. But it was fine, I could get a couple of hours out of it, and I rarely use the computer away from somewhere I can plug in. Especially this last couple of years.

    But the screen had developed a problem. There were marks on it that I couldn’t remove. They were kind of hard to photograph, but you can see them here:

    MacBook screen with delamination marks
    MacBook screen with delamination marks

    I discovered there was a known defect in models of that era called ‘screen delamination.’ The top layer of the screen’s coating was becoming detached from the underlying one.

    People had solutions, which involved careful cleaning with various solvents or mild abrasives: isopropyl alcohol, or, I don’t know, toothpaste, maybe.1

    Inevitably, the whole affair has a ‘gate’ name: Staingate. Perhaps less inevitably, but unsurprisingly since it’s a manufacturing defect, Apple have long since acknowledged the problem and offered a free repair programme. As long as your machine was no more than four years old.

    I discovered these facts back in the summer. Dug out my receipt. I bought the laptop four years and four days ago. Damn!

    At the time I was deep in working towards my dissertation, so I wasn’t going to spend any more time on it. In September, though, I thought it would be worth contacting Apple support and seeing what could be done. I couldn’t get a Genius Bar appointment, but I could take it to an Apple Authorised Service Provider called MR in Shoreditch. They had a look at it and said, yes it’s the delamination thing, you’re outside the free programme, we can fix it: 800 quid.

    Too much. But! they also said that it would be worth taking it in to Apple. They might, depending on who you saw, do it for free anyway.

    I was slightly sceptical, and we were getting ready for a trip to Scotland at the time, so I left it. Eventually, though, I booked it into the Genius Bar.

    You’re outside the programme, they said. But we’ll fix it under consumer law. No charge.

    The Sale of Goods Act (or its successors) for the win again: a laptop screen should last longer than four years.

    During the tests they run, the guy noticed that the battery was poorly, and offered a replacement. £199 seems steep, so I said no thanks.

    Yesterday I got an email to say it was ready to pick up, so I toddled off to Westfield. The staff member who brought it out to me asked me to wait while she checked something. Came back and said, ‘You know how you rejected the battery replacement? Well it seems they did it anyway. We won’t charge you.’

    So that was weird. The work note that came with it said ‘Battery won’t charge at all,’ which was not true when I took it in. But here I am with a good-as-new battery. Well, actually new.

    All of this required what they call a ‘Top case replacement.’ ‘Top case with battery,’ in fact, which suggests the battery is in the screen part of the laptop, not the keyboard part, which seems weird.

    The big downside – but one that had been prepared for – is that I lost all my stickers. I had heard of this kind of thing happening, so I took photographs.

    The stickers on my MacBook
    The stickers on my MacBook

    The questions now are how and whether to replace them.

    1. Don’t clean your computer screen with toothpaste. ↩︎

    Multiple Points

    Just last month I wrote Single Points, about the Fastly CDN outage. This morning many, many sites were down or inaccessible because of an outage at Akamai. A content delivery network again, though they’re saying the outage is caused by ‘edge DNS.’ I’m familiar with DNS, but not the ‘edge’ variant. In fact, I realise it’s capitalised and is the name of an Akamai product or service.

    More evidence that the increasing centralisation of internet services is a problem. On the plus side, it was resolved quickly. When a service provider has the kind of major clients we’re talking about here, then that company is going to have to be able to respond quickly and get things back up. If a random small or midlevel company ran all its own server hardware and software, an outage would only inconvenience that company’s customers. But the company would need to have the staff available to sort the problems out. That would be a large and arguably unnecessary overhead.

    So I understand the desire to offload responsibilities to a service provider, and the economies of scale that a company specialising in running network services can bring. But I fear it’s only a matter of time before one of these events results in serious damage or even loss of life.

    Not that I’m claiming to know what the answer is.

    Single Points

    I noticed that GitHub was down this morning – or not down, exactly, but its web pages were profoundly broken. I tried different browsers, then jumped on Twitter to see if it was widely reported.

    It was. People were saying the problem was Fastly, a content delivery network (CDN). Also that it was affecting other sites. I don’t know when CDNs started being a thing. I think they might have been recommended by some when I was still using WordPress. The idea being that a CDN can host your site’s static assets – images, mainly – while WordPress carries on with the dynamic bits, generating HTML pages on the fly, as it does. The CDN’s scale will mean it can serve those files faster than your little server.

    I didn’t bother with them, not having that much traffic. But in the back of my mind there was always the thought, ‘What if the CDN goes down?’ The idea, of course, was that the CDN would be big, multiply-redundant, reliable: it’s not going to go down!

    Here’s a CNN report about the outage. It affected a lot more than GitHub, it seems.

    So, are CDNs single points of failure? Obviously there’s more than one CDN, but if the failure of any one can disable large chunks of the web, do they put us in a better position?

    It's Never Good When a Useful Site Gets Bought

    News comes out that Stack Overflow is being bought by something called Prosus. I’ve never heard of them, but they’re ‘a global consumer internet group and one of the largest technology investors in the world,’ to quote their own site.

    This doesn’t bode well. Stack Overflow is without doubt the most useful site in the world, at least as far as programming and other technical matters goes. And its sub-sites cover a vast range of interests beyond the technical: use of English for both beginners and experienced people, for example; or science fiction; parenting, martial arts, the great outdoors, and a hundred more.

    When a big company buys up a small one, it rarely ends well for the users of the small company’s products or services, or so it seems to me. Yahoo bought Flickr and let it largely wither on the vine.1 Similarly with Google has bought numerous properties and either rolled them into its own products, or abandoned them.

    In this case the purchaser is not a technology company itself, but just a holding company. Those ones tend to result in the bought company coming under pressure to make more money. The buyer wants to recover its investment. That tends to end up with the the bought company either selling intrusive advertising space, or selling its customers' data.

    It doesn’t have to go that way. Maybe this Prosus will be different. But I can’t help thinking it’s a sad day for mutual help on the web.

    1. It’s much better again now that it’s owned by SmugMug. ↩︎

    They Don't Call it 'Fastmail' for Nothing

    I was opening a ticket with Fastmail (not a problem, just a query), and when I hit ‘Submit,’ the confirmatory email was in my inbox before the next web page finished loading.

    It’s a really good service which I highly recommend, and if you were to sign up using the above link, you’d get 10% off your first year. I would get a small kickback too.

    Break away from big email!

    Wheeling the Reinvention

    Dave Winer has ideas:

    ideas for rethinking blogs and feeds. I found, as others have, that I need another kind of document to include in my personal CMS other than a story that’s part of the blog. Everything about blogs are set up to be written, then lightly edited, and never touched again. It’s temporal writing. But there are other things that I want to develop over time, keep coming back to, revising. A few years back I started to hold those docs.

    – Dave Winer, Tuesday, October 20, 2020 at 16:05

    He’s talking about what I like to call ‘web pages,’ surely? You don’t need any fancy CMS for those, as Dave of all people should know. And if you want to use such a thing, well, even WordPress has its Posts/Pages distinction.

    Tip: How to Snooze iPhone Alarms Using Hardware Buttons

    I don’t know whether people know about this iOS feature. I discovered it by accident a year or two back. Before that I used to snooze my alarms by drowsily scrabbling for my phone, prying my eyes open, then trying to tap the correct onscreen button.

    Then one morning the alarm was too loud – or it might have been too quiet, I don’t recall – and I tried to change the volume. When I pressed the volume button, the alarm instantly stopped. I thought I had cancelled it by accident, until it rang again the customary nine minutes later.1

    Since then I’ve always snoozed my alarms that way. But nearly every time I do, I think, “Do people know about this feature?” Because I don’t think I’ve ever seen it written down. And I’m going to post this without DuckDucking first, so that the existence of some article in The Verge or somewhere doesn’t spoil my flow.

    I had thought that pressing the power button cancelled the alarm, rather than snoozing it, but I just checked, and it also snoozes it. So if you reach out, eyes closed, and press anything on the side of your iPhone, you’ll get another nine minutes.

    In the interest of fully informing you, dear reader, I’ve just checked what the Home button does; and it appears that does cancel the alarm. So keep your presses to the sides.

    I should note that I still have an iPhone 7. I’ve no reason to believe the behaviour is significantly different on more recent models, but obviously on the 10-series phones (X, XR, XS and the various 11s) you don’t have the Home button, so something different might happen. Let me know if you find out.

    1. Why nine minutes, I’ve always wondered? Presumably ten is just a bit too long, and anything else would be too short. Why isn’t it configurable? Because, I assume, Apple have always been a highly opinionated company. ↩︎

    Great New Phone; All the Wrong Reasons

    My iPhone 6 was getting slow, and its battery was poor. I have been thinking of replacing it. But September is approaching, and Apple will announcing new iPhones (three new ones, according to rumours). So I had more or less set my mind on waiting till then.

    That would also be consistent with my iPhone buying history: 3G, 4S, 6… the next in the sequence is 7S.

    Friday changed my plans. I was standing at a bus stop on Old Street, just replying to a WhatsApp message. Something touched my hand, and for half a second I thought someone was bumping into me. Then there was a firm grip on my phone and it was gone. Pulled right out of my hand and off down the road on a moped — which must have come across the pavement from behind me.

    I should have been more aware. I knew this kind of theft was a thing. We’ve been hearing about them for a few months. But you don’t always think about it, and you never think it’s going to happen to you. And, yes, OK, drink had been taken. But not that much.

    The bus arrived a few seconds later, so there was nothing I could do but get on and head home. There was another guy at the stop who witnessed it, and he very kindly set up a hotspot on his phone and let me use it from my iPad. The Find My iPhone app didn’t find it, so the thief had probably turned it off right away. But I was able to request a remote wipe in case it’s ever turned back on, and I got an email from Apple saying all the card details had been removed from Apple Pay.

    All of which meant I had to make a trip to the Apple Store on Saturday. And to the Three store, where it was alarmingly easy to get a replacement SIM. I just had to tell them my phone number and give them a payment card. No questions asked. Not even my name and address.

    So I now have jet black 256 GB iPhone 7. Which is lovely. I’m late to all the new features, obviously, but here’s a quick rundown:

    • TouchID: it’s now insanely fast to unlock my phone. Seems like it’s almost before I touch the home button sometimes.
    • 3D Touch: people on podcasts seem to be saying they’ve stopped using this, but I’m loving it. Especially the edge-press for activating the app switcher (a feature which seems to be going away in iOS 11, I hear, so I probably shouldn’t get too used to it).
    • The haptic feedback generally. Little clicks that tell you when you’ve activated something. Just makes the whole experience much nicer.
    • The “taptic” home button. When I’ve tried this in the shop before now I wasn’t too sure about it. But a couple of days using it for real and I think maybe I prefer it to the feel of the old real button.

    Plus, it’s black. Really, really black.

    Even the box was black.

    The cables are still white, of course. Which reminds me, I’ve always disliked Apple’s ear buds, and passed all my past ones on to my kids. But I thought I’d give these a try, not least because I wouldn’t mind trying the AirPods if they’re ever in stock anywhere,1 and they have the same form factor.

    And I don’t hate them. I thought I always had trouble getting them to stay in, but that doesn’t seem to be the case now. The main problem is they don’t give enough sound isolation, so you can hear the traffic and people talking even with music or a podcast playing. I’ve always preferred the kind with rubbery tips, which form a seal. But aside from that, these are better than I expected. Which bodes well for AirPods.

    Downside: the battery life doesn’t seem dramatically better than my old one, weirdly. For the first couple of days it was busy downloading updates and restoring things (and getting hot), but that should be over now. I’m assuming that I just have to give it a few full cycles till it beds in and the measurement gets more accurate.

    And all the things you have to set up again. That’s not the fault of the phone, though, so much as the way it came to me. If had planned this I would have done an encrypted iTunes backup, which would have meant more things were restored to the new phone.

    Anyway, that was a lot of words and no links about not very much.

    1. I asked in the shop if they had them in, and of course they didn’t. ↩︎

    Stupid Fawning Lapdog Government Apes the US Again

    Our glorious leaders have seen fit to copy Trump and his cronies with banning laptops and tablets on planes — from certain countries. The only possible reason for this madness is to punish people for coming from (or visiting) those countries.

    Worse, though: such a ban is only going to:

    1. make things even more confusing and complex at airport security, and
    2. get extended until it covers all flights, everywhere. You wait and see.

    Mac Wishing

    Those times when you’re typing a document at work on a shonky Windows 7 machine, and longing for your Mac, where you’d have professional text-handling tools, like Marked for previewing Markdown.

    Not that you can’t preview, as long as you’ve got a decent text editor such as Sublime Text (well, specifically Sublime). But things are just so much easier with Mac tools.

    And I speak as one who has never had the opportunity to use the Mac professionally. I’ve used Windows machines at works since about 1993, and before that green-screen 5250 terminals.

    One of these days, though.

    “Ping” Pong

    When the original Unix designers (or, as it turns out, Mike Muuss) chose ping as the name for the command for checking the status of a network host, it was a moment of inspired genius. The word is almost onomatopoeic in its appropriateness.

    But nowadays people are pinging each other all over the place: emails, IMs, even phone calls are “pinged” at each other. “I’ll ping you an email,” they say.

    The purist in me cringes a little each time I hear it. But it shouldn’t. The word that was so apposite for those early savants is just as suitable today: it communicates a needed concept. And English, of course, is a living, thriving language. So let people get on with it

    Just don’t expect me to use it myself.

    Things That Should be Easy

    It ought to be easy to install a software package on Linux. I mean, it usually is. All modern distros ship with package managers, right? So all you should have to do is type (Debian-based example):

    sudo apt-get install PACKAGE-NAME

    and away you go. Right?

    Well, usually. But today, not for me.

    I have a NAS box from Western Digital, which is really a little Linux server with a biggish disk drive. Some time ago I replaced the shipped distro with a newer one, but it was so long ago, and it’s been so quiet and reliable that I can’t remember what version, exactly.

    So first, there seems to be no way to interrogate it to see what distro it is. I mean, there must be, and this page lists several ways, but none of them work on this box. I mean, uname shows me the kernel version and all that, but not the distro.

    Anyway, all that doesn’t really matter. I was only doing it to install Node, and I was only wanting to install Node so that I could run AirSonos. We got a Sonos Play:1 for the kitchen recently, and it’s great, but the one weakness is that it doesn’t support playing from an arbitrary source one your phone, such as, say, your podcast app of choice (Overcast, obvs).

    AirSonos is supposed to effectively turn the Sonos into an AirPlay speaker, so you can easily send audio to it from iOS devices. And you want it to be running on a server, so it’s available all the time.

    But it turns out that Node does not want to install on my NAS. Either by apt-get, as above, or by downloading the binary and unpacking it. (That installs it, obviously, but it won’t run.)

    I’m going to try running SonoAir on my MacBook. That’s a wrapper round AirSonos, and obviously it’ll only work (assuming it does at all) when my MacBook is awake. But life’s too short.

    Tip: using Pandoc to create truly standalone HTML files

    If you’re using the excellent Pandoc to convert between different document formats, and you:

    • want your final output to be in HTML;
    • want the HTML to be styled with CSS;
    • and want the HTML document to be truly standalone;

    then read on.

    The most common approach with Pandoc is, I think, to write in Markdown, and then convert the output to RTF, PDF or HTML. There are all sorts of more advanced options too; but here we are only concerned with HTML.

    The pandoc command has an option which allows you to style the resulting HTML with CSS. Example 3 in the User’s Guide shows how you do this, with the -c option. The example also uses the -s option, which means that we are creating a standalone HTML document, as distinct from a fragment that is to be embedded in another document. The full command is:

    pandoc -s -S --toc -c pandoc.css -A footer.html README -o example3.html

    If you inspect the generated HTML file after running this, you will see it contains a line like this:

    <link rel="stylesheet" href="pandoc.css" type="text/css">

    That links to the CSS stylesheet, keeping the formatting information separate from the content. Very good practice if you’re publishing a document on the web.

    But what about that “standalone” idea that you expressed with the -s option? What that does is make sure that the HTML is a complete document, beginning with a DOCTYPE tag, an <html> tag, and so on. But if, for example, you have to email the document you just created, or upload it to your company’s document store, then things fall apart. When your reader opens it, they’ll see what you wrote, all right; but it won’t be styled the way you wanted it. Because that pandoc.css file with the styling is back on your machine, in the same directory as the original Markdown file.

    What you really want is to use embedded CSS; you want the content of pandoc.css to be included along with the prose you wrote in your HTML file.

    Luckily HTML supports that, and Pandoc provides a way to make it all happen: the -H option, or using its long form, –include-in-header=FILE

    First you’ll have to make sure that your pandoc.css file1 starts and ends with HTML <style> tags, so it should look something like this:

    <style type="text/css">
    body {
        margin: auto;
        padding-right: 1em;
        padding-left: 1em;
        max-width: 44em; 
        border-left: 1px solid black;
        border-right: 1px solid black;
        color: black;
        font-family: Verdana, sans-serif;
        font-size: 100%;
        line-height: 140%;
        color: #333; 

    Then run the pandoc command like this:

    pandoc -s -S --toc -H pandoc.css -A footer.html README -o example3.html

    and you’re done. A fully standalone HTML document.

    1. It doesn’t have to be called that, by the way.