Apple Is Locking iPhone Batteries to Discourage Repair - <AUTHOR> https://www.ifixit.com/News/apple-is-locking-batteries-to-iphones-now <comment><USER2> Despite all the HN comments, Apple's made an absolute killing and charges FAR FAR higher margins for their products in part because they design them so normal people don't get totally f'd over.

And yes, the scam of a trash after market battery to make the iphone battery life look good is well known. And guess how many parents and grandparents then go to apple to "fix" something that has nothing to do with Apple?

The scammers are the people putting the bogus batteries in. Apple saying that the battery is not confirmed genuine is not a scam. Its the truth.

People can't figure out why apple can charge such ridiculous premiums on what is otherwise a commodity product. This is why.

From applecare to the activation lock to app permissions to alerting user to bogus behavior to app store quality to reversible charging cables - all the activities HN considers "anti-consumer" have helped make consumers value apple products. This will be one of those situations.

Now when you buy a used phone, much more likely to have a real sense of the battery quality in what you are buying. 3 year used apple products ALREADY carry a much higher premium vs android phones, this will help continue that trend.

And no, it's NOT that hard to replace a battery in an iphone, seriously, for all the folks complaining about that go to an apple store or buy a kit, and compare the hassle to doing the same thing with a android phone.

<comment><USER3> Apple doesn't want their customers to get f'd over you say?

You might want to check out Luis Rosmann's videos, a famous Apple repair geek who fixes for cheap the products Apple themselves misdiagnose[1] in order to rip off their customers[2].

[1] [https://www.youtube.com/watch?v=V7RXJP4mxCc](https://www.youtube.com/watch?v=V7RXJP4mxCc) // teenager's MacBook's display is not working correctly so Geniuses tell him he needs a new motherboard replacement while Luis discovers in 2 seconds that the lid-close sensor cable is broken so he replaces it for $8

[2] [https://www.youtube.com/watch?v=o2_SZ4tfLns](https://www.youtube.com/watch?v=o2_SZ4tfLns) // customer's MacBook's display is not working correctly so Geniuses tell him he needs a new motherboard and display replacement while Luis discovers in two minutes that the display connector has a bent pin and fixes it for free

<comment><USER4> It might be that Apple is not able to apply the same attention to detail that Luis applies to every case.

Luis complains that he can't find competent board level repair technicians to scale his business. The real problem is that it's a difficult expensive skill. Luis can't scale it, Apple can't scale it at a reasonable price either.

Human attention is expensive, that's the reason software is eating the world. Part of that means paying less attention to individual user's products when it requires less human attention to just replace parts in mass.

My 2 cents.

<comment><USER5> I love watching Louis diagnose and fix laptops. He can make good money charging $300 to fix a motherboard in an hour or two because he has done it for years but I can imagine even a very smart technician it takes 2-3x time starting out and I doubt he pays much more than $25-30hr, though maybe the business would be more viable if not in NYC thats borderline living wage here.

</comment></comment></comment></comment><comment><USER6> To give another perspective: I bought a used iPhone SE about a month ago and was worried about battery health because many sellers didn't mention it. After passing some more shady offers I found an SE for cheap (around 100€) that claimed 95% battery health. And I could verify that in the settings. Seller mentioned the iPhone was never serviced and only used as a backup phone. Perhaps that should have ring an alarm, but I bought it.

Two days later battery health was down to 71%. A week later the battery was dead. And of course it was not an original Apple battery by any means.

So, it might be bad communication by Apple, but for buyers a sign that the battery isn't original is very welcome.

<comment><USER7> This anecdote so closely matches Apple's messaging on the topic, it makes me wonder if you are an Apple employee. However since it involves aftermarket sales, I suppose it's prudent to assume not.

Let's look at it from a different angle. You got to take advantage of an aftermarket in order to find a cheap phone. In this case you got scammed, but for the time being you still have the option of getting a cheap battery replacement to fix your device with minimal losses.

Apple's moves are clearly designed to squash an aftermarket. I'd prefer to have the option to buy cheap old phones. I'd especially prefer to be able to replace the batteries on my own old phones.

<comment><USER8> What a typical HN reply. "I don't believe you and I'm going to attempt to undermine your reputation by claiming you're part of the enemy party"

Maybe it's inline with Apple's messaging because Apple's messaging is inline with the customer concerns?

<comment><USER7> Actually my conclusion was the opposite, but thanks for undermining me.

</comment></comment></comment></comment><comment><USER9> To be clear, you can replace the battery with whatever battery you want, it will just show a message saying it can't be verified as an Apple battery. The only user impact is being unable to see battery health. I don't even think I can see my battery health on my Android so I don't see it as a big deal, but definitely not great if they are hiding this functionality for no reason.

<comment><USER10> It won't be for no reason.

If their battery health tightly calibrated to report on Apple's OEM battery, it could provide misleading information about third-party batteries.

My guess is that Apple is bored of dealing with complaints about devices which have been modified by third parties.

<comment><USER11> My guess is Apple is bored of truly innovating and now has to resort to nickle-diming customers to hit quarterly numbers.

Tim Cook put on his "Make Changing Batteries Expensive Again" hat.

<comment><USER12> Don't go buy a BMW anytime soon.

Have to recode the battery, and it's been that way for years.

<comment><USER13> Even Chrysler is doing things like this. I had a hitch installed, super simple, all of the wires etc plug in to the appropriate places, but if you want to actually use the break lights, you need to visit the dealership to flip a boolean flag somewhere, otherwise the lights just don't work.

<comment><USER12> The only difference in a current Ford Mustang between making the in-dash vacuum gauge work for boost too is a boolean flag. So if you drop a supercharger on your N/A GT model, you can have your MAP sensor register in the dash as if the supercharger is OEM.

</comment></comment></comment></comment></comment></comment><comment><USER14> EDIT: Per Betelgeuse90 comment below, my characterization of the situation was incorrect. Apple's behavior is anti-competitive. I am leaving my original comment here for posterity.

Original comment:

I love jumping on the apple hate train as much as the next person, but this is not a valid reason to do so.

Depending on the aftermarket battery, those reported values could be completely wrong / misleading to the user. If you are looking for proof, just buy a random battery off amazon for your computer and tell me how accurate the current reported charge is.

Plus, I would like to know if a used device I buy has a non-OEM battery. As long as it stays in that settings screen and doesn't turn into a consistent annoying pop-up (or doesn't stop the user from upgrading, as was the case with the home button debacle of days passed) I don't think this deserves the outrage.

Also, the title is a bit misleading. Nothing is being locked, the device functions as it should. An ideal solution would be that apple allows third party battery manufacturers to go through a certification process so apple could ensure quality control. Fat chance in you-know-what apple would ever do that.

<comment><USER15> To be fair, you'll get the "service battery" message even if you place an original Apple battery in the iPhone. A used device that was serviced perfectly well but not by Apple will still display this message. All this means is that the battery wasn't replaced by Apple themselves.

<comment><USER14> Good catch! I will adjust my original message with an edit. That is straight up anti-competitive. Egg on my face for giving apple the benefit of the doubt.

<comment><USER10> How is it anti-competitive if the swapped battery works perfectly fine? Who cares about what the battery status page says?

<comment><USER16> A company that cares about eroding trust in third-party repairs shops getting blamed for ripping off their customers when the battery still reports as broken.

<comment><USER17> It's not reporting as broken; it's just reporting as "not our problem if it fails."

The Right-to-Repair discussion often ignores a key problem companies have: figuring out whether a device is under warranty (i.e. whether they're obligated to repair the device for free) when it's submitted for repair.

Some repairs make themselves obvious, and so make the removal of warranty obligation obvious. Other repairs—like third-party battery replacements, done following the Apple process for repair and with Apple OEM components—make the warranty status of the device illegible. If the phone accepted a new Apple OEM battery without saying anything about it, the user might be misled into thinking that the device is still under warranty. But it's not. It's been repaired by a non-authorized third-party. It's no longer Apple's fault if the device breaks, because that third party may have screwed things up inside the device in any number of ways.

This is, in a sense, a "chain of trust" thing. It's the same reason Chromebooks have that on-boot warning in development mode. The user needs to be aware that the chain of trust between the OEM and the end-user has been broken; and that, when that happens, _anything_ may potentially have been done to the device.

That's not to argue against Right-to-Repair. Non-authorized third-party repair shops _should_ have every right to operate as businesses, and end-users should have every right to do business with them. But Apple _also_ should have every right to warn users that the chain of trust has been broken—because it has. The user knowingly broke it themselves! (And, of course, Apple _shouldn't_ have the right to misconstrue breaking the chain of trust as anything more than that. The battery health is unknown because it's not an Apple-certified repair, certainly; but that doesn't mean that the battery is _bad_ , and it would be anti-competitive to claim that.)

<comment><USER18> "Needs service" is the same as reporting that it is broken. Another thing is that warranty covers manufacturing defects so, for example, it is unreasonable to automatically void warranty for a screen just because the battery was replaced.

<comment><USER19> > for example, it is unreasonable to automatically void warranty for a screen > just because the battery was replaced.

I get where you are coming from but this isn't so cut and dried, as incompetent repairs are certainly capable of damaging or destroying other components. Someone I know once unknowingly messed up an antenna in the process of replacing a phone battery with an after market one, which caused all sorts of odd and intermittent symptoms with communication issues. Why should a manufacturer be expected to deal with that under warranty?

Part of the problem with consumer electronics is that they aren't really particularly designed to be serviceable, let alone user-serviceable. So it's not like a car manufacturer saying they'll refuse to warranty a rear shock because you changed your own oil or whatever.

I'm a strong supporter of right-to-repair, but I'm not convinced that should extend to forcing user serviceable designs where there is an actual design tradeoff. On the other hand this is pretty hard to prove - maybe all you can do is go after user-hostile design changes that serve no other purpose.

<comment><USER18> I completely agree that manufacturer is not responsible for badly done 3rd party repairs which have broken things. My point is that warranty should be denied only in cases where someone (either manufacturer itself or an independent 3rd party) can prove that a component broke because of a bad repair.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER20> I'm willing to bet Apple has seen counterfeit batteries that claim to be Apple batteries and this is a reaction to that.

The other stuff this article claims was designed to stop third-party repairs, such as the stuff to do with Touch ID, was actually security-related (basically, the device couldn't trust Touch ID anymore after the repair). I hadn't heard about True Tone disabling before, but that's probably because AIUI each device's screen is individually calibrated in the factory, and if you swap the screen yourself then you've lost that calibration.

<comment><USER21> > I'm willing to bet Apple has seen counterfeit batteries that claim to be > Apple batteries and this is a reaction to that.

People are still going to send Apple their phone and say, "why is my phone displaying this message?", which support is going to have to deal with. This isn't going to all the sudden save Apple money on support.

<comment><USER20> No but it's going to prevent a PR disaster when a phone's "Apple" battery explodes.

<comment><USER21> How would it be a disaster? All they have to do is determine it's a third party battery and all the tech blogs move on.

<comment><USER22> By then the damage to the brand has already been done.

<comment><USER21> The chances of a fire are slim otherwise we'd hear more about it. And seriously, everyone has already forgotten about samnsung's exploding phones.

</comment></comment></comment></comment></comment></comment><comment><USER23> I am going to pay 49€ for iPhone 6 original battery replacement in coming weeks. It's still many times cheaper than buying new phone. Ifixit wants 20€ only for compatible part, so I think, Apple's 49€ inclusive half hour technician work is very good deal.

I work as an electrical engineer and understand Apple's position very well. Nobody wants, that user try to service their devices. Some get lucky and device works fine, but majority end up wanting free support for their failures. Especially when YouTube is full of tutorials teaching untrained folks how to do even complicated repairs. Without proper skill it ends up very quickly in a disaster <\- see this daily in my job.

<comment><USER24> I took an iPhone SE to an Apple Store for a battery replacement program last year. Spent 4+ hours waiting with minimal status updates until the genius finally came back out to say that the battery was replaced but TouchID was now broken, they didn't have any replacement parts and it would take a week for a refurbished unit to arrive. Had to pay to take the broken phone away with no other recourse. Six months later, the battery is bad again...

<comment><USER23> Went to their repair center with 2 phones. 1 hour later went home with 2 fresh phones. Amazing experience, but heard, it's not that good in big cities.

<comment><USER25> Heard of friends getting new phones immediately in LA, so it happens here too.

</comment></comment></comment></comment><comment><USER26> I'm on the fence about this. On one hand, I can agree with the folks that are unhappy about Apple locking out small retailers. On the other hand, I can see how Apple would want to protect its image. In my personal experience, I've had a few friends have their batteries replaced at kiosks in the mall and have experienced issues. Do they blame the random vendor in the mall? Nope, they blame Apple and have decided "the iPhone sucks."

Third party battery replacements aren't even that much of a savings over having Apple do it.

[https://support.apple.com/iphone/repair/battery- power](https://support.apple.com/iphone/repair/battery-power)

$49 for the "iPhone SE, iPhone 6, iPhone 6 Plus, iPhone 6s, iPhone 6s Plus, iPhone 7, iPhone 7 Plus, iPhone 8, iPhone 8 Plus, and all other eligible models." Those are the ones that now have batteries that are probably wearing down more.

You have to go to an Apple Authorized Service Provider to have the replacement done. But guess what? Best Buy locations are now AASPs as well and they can do it.

I'm ok with that.

</comment><comment><USER27> Is it legal from competition laws to lock your product?

Sherman anti trust law "Every person who shall monopolize, or attempt to monopolize, or combine or conspire with any other person or persons, to monopolize any part of the trade or commerce among the several States"

Someone could argue that monopolize battery repair is a form of monopoly. I understand the battery safety part from Apple though.

</comment><comment><USER28> >>"Technically, it is possible to remove the microcontroller chip from the original battery and carefully solder it into the new battery you're swapping in, restoring the Battery Health feature—but the procedure isn't for the faint of heart, and it's an unreasonable requirement for any repair, much less something as simple as a battery swap."<<

it seems a razor and a low wattage solder iron will fix it. and im guessing a few little guys may end up fattening thier wallets this way. Im wondering how apple might catch the play, and how they would change the hardware so a chip transplant is no longer a workaround.

<comment><USER29> The chip could keep encryption keys in RAM (since it's always powered by the battery and there's always gonna be enough juice in there to power it given its tiny power consumption) and if the chip loses power (due to being desoldered) the keys are lost preventing the phone from authenticating it.

<comment><USER30> Clip bypass battery to the power/gnd pins while desoldering and resoldering.

Read RAM image before desoldering. Write image to RAM after resoldering.

For that matter, read RAM image from old battery and write it to new battery, no soldering required. Or MITM the connection between phone and battery, and the bypass device can pass-through battery health information while intercepting and responding to authentication-related signals.

You will never be able to enforce hardware security indefinitely against an attacker with device-in-possession.

<comment><USER29> What if the chip uses asymmetric cryptography for authentication with a private key stored in it, impossible to recover, just like a credit card? In this case it can't be spoofed by intercepting the comma between the phone & chip, private key can't be extracted, etc.

Sure, a bypass battery is possible. The point here isn't 100% security (which as you say is impossible), it's to make the operation difficult enough that most give up or have to charge more than an official battery replacement.

<comment><USER30> Impossible?

Dissolve the chip casing in fuming nitric acid and use probe needles. The official pins are not the only way to interface with the silicon, when you have device-in-possession.

Use a timing attack. Find a collision.

It is very likely that the same private key is locked up inside every chip, and one reverse-engineer, probing one of them once, can compromise the key for all of the chips manufactured before their publication date, and probably would last until the OEM ran out of those chips, and then deprecated the key after some time with a software patch. The one-time cost would be worth it for any manufacturer of off-brand batteries.

The battery controller chip is not going to be an impenetrable security vault, in any case. The cost of parts is a factor, even for Apple.

Asymmetric keys don't work if the attacker is in possession of the private key, no matter how many padlocked boxes you put it in. The attacker _has the key_ , and getting it out in usable form is a matter of time, not possibilities.

<comment><USER29> Payment cards seem to be keeping secrets locked down despite there being huge financial incentives to crack them.

If nobody does it for payment cards, there's no way they'll bother doing it for smartphone batteries.

</comment></comment></comment></comment></comment></comment><comment><AUTHOR> Have we all forgotten that mobile phone battery replacement was just this easy[0] not too long ago?

Now, even a phone listed in "9 Best Phones With Removable Battery In 2019"[1] has a battery replacement process like this[2].

[0] [http://www.youtube.com/watch?v=-sxdXuKbivQ&t=1m0s](http://www.youtube.com/watch?v=-sxdXuKbivQ&t=1m0s)

[1] [https://thedroidguy.com/2019/06/9-best-phones-removable- batt...](https://thedroidguy.com/2019/06/9-best-phones-removable- battery-2019-1079207)

[2] [https://www.youtube.com/watch?v=UY07MujU2pM](https://www.youtube.com/watch?v=UY07MujU2pM)

<comment><USER31> Last time I remember having any easy access was the Galaxy S3. Pop open the back, swap battery. Done. I would even carry spares when on vacation if I needed some extra juice.

<comment><USER32> Galaxy S5 has fully replaceable batteries as well. As a phone, I'd say it still holds up rather well as a lower end mid-range phone today.

I'm holding onto it until Librem Phone comes out, which also has a replaceable battery.

Having phones with non-replaceable batteries just seems incredibly wasteful to me, so I won't ever buy one on general principle.

<comment><USER33> Your comment pretty much dismisses the validity of Apple being anti- competitive. You don't like their product, thus you bought an alternative that meets your needs. If Apple was anti-competitive, you wouldn't be able to buy an alternative.

Apple has a monopoly for Apple phones, but that isn't a monopoly. If you buy an Apple product, you are agreeing to buy an Apple product with all that entails. If you want a user replaceable battery, you buy a different phone. Apple isn't using market dominance to prevent you from buying alternatives. If Apple owned a majority of the battery market and created a monopoly on batteries, that's different than them controlling the batteries in their own product. Apple's actions don't have any bearing on someone's ability to buy a repair a phone — just the ability to buy and repair an Apple phone.

<comment><USER32> The point of my comment was not to validate anything about Apple.

If you actually read what people write fully instead of projecting what you want to hear, you'll be a much better conversationalist.

Thank you.

</comment></comment></comment></comment></comment><comment><USER34> I don't have a problem with Apple showing whether the Battery is replaced or using genuine Apple Battery. My problem is that replacement done by Apple is both too costly and too time consuming.

Current iPhone X / XS / XR Battery Replacement is $69, which is roughly double the price of being replaced on streets with similar battery. Now of course there are scammers who tries to replace a crappy battery, but going to well know Repair Shop normally prevent that from happening.

I would have no problem paying double the price for an Apple Store replacement, except not only would have I have to wait hours or days for replacement depending on which part of the cities, countries, world you are in. You will also have to wait and go into that awful Apple Store and try and get someone to help. What is an 30 to 45 min job elsewhere, in the worst case you could wait 45 min just to get someone in Apple Store.

Here I am paying double the price for _worst_ experience.

But that is not the worst part.

Apple Refuse to replace your Battery if your screen is broken, has slight crack on the edge, water damage or whatever damage they claim it has. You will first have to pay and fix those _damages_. Again I am perfectly fine with paying to fix it, except more than 99% of times Apple will quote you a price roughly 30 - 50% of your iPhone's that is now already 2 - 3 years old. And it makes much more sense to buy a new one instead. ( This remind me of the so call logic board damage I had with MacBook Pro 2 years ago. Sometimes I wonder why I am still using Apple )

<comment><USER35> Maybe it's just me, but $69 for a repair that 1) Apple will stand behind, and 2) will add another two years of life to a $1000 phone, is a pretty good deal. While there are undoubtedly good third-party repair shops, there is also a lot of crap that isn't worth half of what Apple is charging. Subpar work, subpar parts.

<comment><USER36> Going to Apple for repairs does not guarantee a quality service. See: The Apple Store Genius Bar Broke My $5,000 iMac Pro [https://www.youtube.com/watch?v=MG_NRcy5mxU](https://www.youtube.com/watch?v=MG_NRcy5mxU)

"Subpar" is a very mild word to describe what was done there.

<comment><USER35> A lot of people would say that is the exception that proves the rule. And in any case, ultimately Apple will stand behind the repair, making it right. I've had two acquaintances get brand new MacBooks after the Genius Bar couldn't get their machine fixed correctly.

<comment><USER34> And this happen in US?

</comment></comment></comment></comment></comment><comment><USER37> Torn on this.

1) I want to be able to open and repair my own things.

2) Every time I use a non-Apple battery, or buy a refurbished phone, I have issues ranging from battery life is shorter, to battery swelling.

I bought an 8s from Amazon's refurbished line last week for a family member and the battery health started at 89% but is now at 81%. Sketch. Hard to trust any refurbished seller. Ultimately that leads to bad experiences with Apple products — my dad gets a replacement phone and all he knows is the battery life is poor.

</comment><comment><USER38> Apple has a good thing here. They limit repair and parts to only those who they authorise, keeping parts off the second-hand market.

And why replace a cable when you can replace both boards, then maybe the cable too. They do seem very quick to recommend replacing major parts or to buy new. They could try the easy fixes (such as cables), I think people would rather risk a small fee before deciding if it is worth shelling out for more expensive components.

</comment><comment><USER39> We had something like this with printers and ink cartridges and toner. I think manufactures eventually lost. One example [https://topclassactions.com/lawsuit-settlements/lawsuit- news...](https://topclassactions.com/lawsuit-settlements/lawsuit- news/858824-hp-ink-cartridge-monopoly-class-action-lawsuit-settles-1-5m/)

</comment><comment><USER40> Just a guess: maybe Apple is locking iPhone batteries because the anti-fix-it negativity is less expensive than battery explosion lawsuits?

</comment><comment><USER41> Perhaps unrelated to the topic of batteries, but I wanted to share my experience at an Apple store from two days ago. I'm on a business trip to Sydney, at work I accidentally spilled water on my MacBook Pro and the thing went dark. I went to the Apple store, they popped it open and found too much water damage so they couldn't repair it. Guess what, they replaced the whole laptop with a brand new one box and everything on the spot. They didn't even charge me the AppleCare fee.

Apple's customer service is second to none. If you buy their products, you should buy AppleCare too and not worry about shady repair shops.

</comment><comment><USER42> A lot of comments in defense of Apple seem to have overlooked something very important.

> If you replace the battery in the newest iPhones, a message indicating you > need to service your battery appears in Settings > Battery, next to Battery > Health.

This is not a warning that you are using a non-OEM part. This is an imperative for the user to get the part replaced.

Even if most non-Apple batteries _are_ terrible, this is not a reasonable approach. IMO, it is bad for Apple to refer to anything they have not approved as defective and very misleading to the customer.

</comment><comment><USER43> The chinese are already selling tools to read, clone, activate batteries. Laptop batteries had been like this for a long time, if you open it and replace the cells you need to reset the controller.

</comment><comment><USER44> I think this makes total sense for batteries. Batteries are a hazard, and a lot of bad ones are out there. Prices for swap came down quite a bunch, so I think this is fine. Apple is taking ownership about exploding phones and other problems.

This is the reason why it gets more and more locked down.

I once bought a MacBook with weirdass problems. Turned out to be a bad data cable used by someone.

Chips are still swappable, because not many people do this / screw up, but also... a battery is quite a dangerous component

<comment><USER45> But it does this even with their own batteries. You can have a legit iPhone and a legit iPhone battery installed and it will have this issue occur.

This is not "taking ownership" in the way you intended, but it is demonstrating ownership.

</comment></comment><comment><USER46> If one doesn't want such "user hostile" hardware one shouldn't buy Apple products. They are legendary, especially lately in the last few years for such choices. Until a right to repair law is passed, there's nothing we can do and Apple will fight that tooth and nail. The best thing for people who care about such things to do is not to buy Apple products and fight for the law.

<comment><USER47> Apple is user-hostile when it comes to repairing hardware. Google is user- hostile when it comes to spying on users.

What's a person to do?

</comment></comment><comment><USER48> Wanting to repair comes from the thing that iPhone is sold to the user. If US were to pass the right to repair law, will it be possible for apple to stop selling the device and start renting it and circumvent the law? Like, You can rent the iPhone for 3-4 years for $1200 and should return it.

</comment><comment><USER49> People put these things in their pockets and fly with them. Forcing people to use batteries with a decent level of quality control is a good thing.

I don't feel like dying because someone spent $15 on a replacement battery purchased at the same place they by their Vape juice.

</comment><comment><USER50> Is there any benefit whatsoever (even in a theoretical sense) that locking down the battery enhances user privacy in any way? To elaborate: Is there something similar to an attack where we chill a computer's RAM to recover a cryptographic key, for instance?

</comment><comment><USER51> Cross referencing other thread, different source, same topic:

[https://news.ycombinator.com/item?id=20644553](https://news.ycombinator.com/item?id=20644553)

</comment><comment><USER25> Not sure about you guys but batteries can and do explode. I don't want anyone but apple putting a battery in something that spends many hours of every day 10cm from my junk.

</comment><comment><USER52> Does anyone has information about that issue that Apple had with their OS diminishing the power of the batteries? I think they're still on trial for that.

</comment><comment><USER53> > Fortunately, your replacement battery will continue to work perfectly fine, > and you'll get all of the benefits that come with a new battery.

Literally enough said.

</comment><comment><USER54> I wish Apple weren't so schizophrenic.

Odd-numbered days: PRIVACY DAY - we love our users!

Even-numbered days: HARDWARE DAY - we hate our users!

Pick one and stick with it, guys.

<comment><USER55> The word that I think has a bigger issue there is _" user"_\- to me, it feels like Apple is treating their customers like drug addicts, and now that they're hooked, they're jacking up prices.

</comment></comment><comment><USER56> I recall a time when battery replacement was easy enough that it wasn't considered to be a repair.

</comment><comment><USER57> Umm... is this a surprise to anyone? I'm only surprised it's new.

</comment><comment><USER58> Worse for climate change than all their supposed good deeds. An iPhone could easily last 5 years instead of 2, and millions of poor people could have a few extra thousand in their pockets if they just allowed proper repair.

<comment><USER59> Are you suggesting the only recourse you have now is to get a new phone when your battery dies? Come on.

</comment></comment><comment><USER60> Apple prob had enough of ppl screwing themselves from burns and brunt phones. I have hand an iPad messed up in weird ways after a battery swap from some local cheap places. This is actually pro consumer in my view.

</comment><comment><USER61> Apple simply doesn't respect their customers.

<comment><USER40> I suspect the opposite: Apple's cost for occasional battery explosions injuring their customers is the real concern.

<comment><USER36> Ironically, Apple making third party repairs difficult by not selling genuine spare parts and not publishing service guides increases the risk of an iPhone exploding, because it pushes third parties towards sourcing parts from shady sources.

Why third parties exist at all? They must be doing something better: either they're cheaper, faster, more competent, in more convenient locations, or something else along these lines.

Apple has long repair times and that would be my argument for preferring a local repair shop over shipping the phone or computer god-knows-where.

</comment></comment></comment><comment><USER59> Consider the source.

</comment><comment><USER62> iFixit is misrepresenting Apple to market its tool sales business. This is what they do.

<comment><USER45> Care to set the record straight? What's actually going on if not what they're presenting?

They're making an assumption about intent. Unless you can prove you're part of the Apple team responsible for this hardware behavior, you're just going to be doing the same.

<comment><USER62> The batteries are not locked, and off-brand replacements work perfectly. There is no impediment whatsoever to repair here.

iFixit are therefore making a misstatement.

The only thing Apple is doing is not making assessments about the condition of off-brand replacements. This is pretty obvious and expected behavior.

iFixit are using a misrepresentation of this to generate publicity using the same narrative as they always do.

<comment><USER45> But they're doing this with their own branded replacements. If I put an actual apple battery into my iPhone but don't do it through apple's store, this behavior is what happens.

This is akin to my check engine light always being on whenever any mechanic makes repairs to my car. Yes, Kia is "protecting themselves from liability of damages by 3rd party behavior" but they're also creating a UX problem for me.

As the end user: this is stupid, and I don't like it, and it seems like a choice not a need on the company's part.

<comment><USER62> Batteries have a relatively short shelf life, so even an original apple branded battery can be a scam if it's old stock.

I have personally run into this when I replaced a battery myself back in the iPhone 4 era.

</comment></comment></comment></comment></comment><comment><USER63> Why does this strike me as just a 21st Century variation upon the "mining town Company Store" concept?

<comment><USER33> You don't have to buy an Apple product.

<comment><USER45> You don't have to work in the mine.

Metaphor still works.

<comment><USER64> People did have to work at the mine. At first because they needed to eat, and later because they were in "debt" to the company store, thus the term "debt slavery". I'm not quite seeing how this is comparable to a consumer product decision.

</comment></comment></comment></comment><comment><USER65> Apple makes increasingly disappointing products. I recently was looking at replacing my iPhone 7 Plus, but around $900 would get the next baseline model, for no real tangible benefits, and some tangible downsides like no zoom lens and being forced to use the face scanning. Sorry, I'll replace my battery and cracked screen and wait a couple more years, thanks.

<comment><USER40> You can disable FaceID and go with typed passcodes.

<comment><USER65> A typed passcode is a downgrade in convenience from the touch id I currently enjoy. This is my point.

</comment></comment></comment><comment><USER66> Goddammit Apple! You keep on finding new reasons for me to hate you! I want names! Who's responsible for this crap?!?

<comment><USER67> This seems like it's pretty similar to the old reasons.

The people responsible are the people who keep buying their locked-down crap.</comment></comment>


Twitter Bootstrap Is Ruining the Internet - <AUTHOR> http://distancetohere.com/twitter-bootstrap-is-ruining-the-internet/

<comment><USER2> If you are going to use bootstrap, try to at least spend an hour or two personalizing it.

<comment><USER3> You should only do heavy personalization once you're more sure that everything is in a layout that it will need to be. With the projects I'm working on even the smallest new information or feature being added to a page could totally change what the best functional layout and look is. With my own projects I've done hundreads of fairly drastic layout shifts - they are evolutions from ideas and eureka moments. Frameworks should be used to play around with the look to feel how the UX would be. It will be very difficult to determine full effects of design until you have substantial traffic and are able to cohort testing though, though a good designer will have this as an intuitive nature. Having data such as that click/cursor heatmaps divided into power users, first time visitors, etc. is invaluable as well for testing use-theories.</comment></comment>


Show HN: Create reusable comparison matrices for your website without coding - <AUTHOR> https://www.archyn.com <comment><AUTHOR> Hello HN,

Founder and main developer here: AMA, suggestions and critics are welcome.

Archyn allows to build comparison matrices were any change on an Element is seamlessly cascaded everywhere without hassle.

For the record, all the examples you see in the landing page where built using this generator.

Basically to make your own Matrix you'll need to:

\- Declare the Elements you'd like to compare and the Groups to which they belong to,

\- Create Qualifers and Affinities to link them (Element A "connects to" Element B),

\- Create a Matrix and select which Elements or Groups you want to compare,

\- If necessary publish your Matrix and copy/paste its proposed code to your website,

\- Voilà!

Once done, your Matrix becomes live: any change to its Elements or Affinities will be cascaded down to it automatically.

Some sample data is already loaded when you sign-up so that you can play around to give you an idea about the concept.

Do yourself a favour and take some time to get accustomed to the concept of Archyn through our Free plan, it's unlimited in time with no demand for payment details. Also some sample data is already loaded when you sign-up so that you can play around and create a simple Matrix right away.

Also with any paid version you get the possibility to publicize your matrices so that you can embed them in your own website as well as an access to the JSON API for more complex scenarios.</comment>


Fixing Unix Filenames (2012) - <AUTHOR> http://www.dwheeler.com/essays/fixing-unix-linux-filenames.html <comment><USER2> Half of these problems are problems with the shell and have nothing to do with the filesystem. The shell is _really, really, really bad_ about doing things like expanding spaces in filenames or environment variables into separate arguments. Notice that every example here about how it's "wrong" is a small shell script that has unexpected behaviour. That's mostly because the shell is wrong!

> Oh, and don't display filenames. Filenames could contain control characters > that control the terminal (and X-windows), causing nasty side-effects on > display

That's the fault of the terminal, mostly. If it's an otherwise "reasonable" name containing, say, encoded unicode, that's everyone's fault from the filesystem to the terminal to (sometimes) the shell. But the fault is spread out over more than just the fact that the filesystem lets you name files however you like.

But now, Linus' quote there:

> "...filesystem people should aim to make "badly written" code "just work" > unless people are really really unlucky. Because like it or not, that's what > 99% of all code is... Crying that it's an application bug is like crying > over the speed of light: you should deal with _reality_ , not what you wish > reality was." — Linus Torvalds, on a slightly different topic (but I like > the sentiment) > ([http://lwn.net/Articles/326505/](http://lwn.net/Articles/326505/))

speaks to both "sides" here: there are applications in the real world that create filenames with special characters in them. The simplest most obvious of these is the space, but yes, in the real world we have applications that do this. So neither alternate reality ("restrict filesystems' names" or "keep doing what we're doing but have bug-free applications") exists, so which "reality" are you proposing that we deal with here?

<comment><USER3> I'm sure most reasonable people would agree that (simple) unicode characters are fine, but what possible use is there for having control characters in a filename, like newline or carriage return? (Or if you're really evil, beep). If you remove "special" characters from the filesystem, you also remove a lot of complexity from other parts of the system for dealing with pathological corner cases. It's a win for everyone.

<comment><USER4> Ignoring the fact that non-terminal users _regularly_ want spaces, hyphens and newlines in their filenames since they have visual purpose...

The argument in favor of newlines is the same argument in favor of spaces in filenames or filenames starting with hyphen: the filesystem should not be restricted by bash and other shell scripts continual confusion between data and instructions. We should fix/replace lazy programs, don't try to fix lazy programming by neutering the system.

I think the correct action should be to design shell scripting languages that are robust about data versus instructions. The lack of robustness in shell scripting languages has been a burden since their inception. Restricting the filesystem won't stop problems with shell scripts making the same mistakes on other kinds of data.

<comment><USER3> So one solution is to replace all the popular shells from the ground up, throwing away about 30 years of history because they're "not elegant". (Ignoring the fact that almost every attempt to do this in the past has been a resounding failure).

The other solution is to agree not put overly weird shit in filenames.

Which seems more likely to happen in our lifetime? Which would you rather code against?

I'm baffled that people are so hell bent on what "should" be allowed that they're ignoring the fact that allowing any possible character introduces exceptional complexity while offering extremely marginal benefits. I mean, imagine trying to make a gui for a filesystem browser that allows for characters that flow both up and down along with left and right. And newlines all over the place. It'd be a mess. I mean.. why? Is filename expressivity really such a major deal?

<comment><USER5> > The other solution is to agree not put overly weird shit in filenames.

If you don't put weird shit in your filenames, I won't put weird shit in mine. Let's not bother the kernel with our contract. :)

<comment><USER6> That doesn't solve the security vulnerabilities caused by weird filenames.

</comment></comment></comment></comment></comment></comment><comment><USER7> My life would be a lot easier if there were some more restrictions on file- names, it's true. Just cutting out newlines would save me a lot of grief.

At my work I'm doing a lot of sysop/devops/admin stuff for a media production team. The team-wide project file structure contains a whole bunch of folders starting with '-'. It's not a problem, you just have to write all scripts being aware of it.

As we're making videos about different places around the world, it's not uncommon for editors to copy and paste things (including unicode weird other languages, etc) into filenames from OSX Finder.

I got caught out recently when someone had pasted in some text with newlines. Boy can that ever run havok.

The thing which got me was that BSD md5 on OSX and GNU md5sum on CentOS handle things differently (using \ before a filename with control characters in it on one of them). So creating a md5 list on one computer and comparing it against a list made on another computer was failing, even though the files where exactly the same.

Also annoying is trying to write scripts which handle " and ' in names.

The typical BASH tutorial response is, 'use "$VAR"! That always works!'

Unless you are sending a command to run on a remote server, or putting together a rsync command that runs over SSH. Then, it breaks. So:

        PATH="Fred's New: \"Test\" Project!"
        rsync -ave "ssh -i ~/.ssh/key" --delete "$PATH/" "user@remote:$PATH"

will have problems. (If I remember correctly). I think this one was fixed with something odd like using ' quotes, and then replacing all ' in the filenames with '\'' (which ends the current string, puts a single quote on its own as a string, and then starts the string again, but treats them all as one long string).

99% of my problems went away when I switched most scripts over to python.

(And, yes, started adding more and more weirdo filenames into my /shell/ /script/ unit tests...)

<comment><USER8> Under Linux you could probably add a security module hook to enforce rules so long as you know there aren't any there initially.

<comment><USER7> Almost exclusively an OSX house, but with one Linux box for the LTO archive (tape is still cheaper than 'the cloud' when your internet isn't that fast and a single event/project can be over a terrabyte of footage...).

We may switch over to a linux or BSD based server at some point in the future. Others in our organisation have deployed synology machines with great success.

</comment></comment></comment><comment><USER9> Interesting proposal. It's interesting that such filenames cause a lot of problems for GUI toolkits as well.

For example, Qt since Qt 4 removed the hacks they had in QString to allow malformed Unicode data in its QString constructor. What this means is that the old trick of just reading a filename from the OS and making a QString out of it is impossible in general since there are filenames which are not valid ASCII, Latin-1, or UTF-8.

Qt does provide a way to convert from the "local 8-bit' filename-encoding to and from QString, but this depends on there being one, and only one, defined filename-encoding (unless the application wishes to roll its own conversion). This has effectively caused KDE to mandate users use UTF-8 for filenames if they want them to show up in the file manager, be able to be passed around on DBus interfaces, etc.

Frankly I can't wait until we can safely rely on filenames being UTF-8 and UTF-8 only. Better still if that can be enforced by the kernel somehow.

<comment><USER10> Back at university, there was a big rubber stamp reading "ABSTRACTION VIOLATION" that the SICP teaching assistants would use to mark problem set solutions as incorrect if they violated interface abstractions.

Using a QString to represent a file path shoves display constraints down into the lowest level Qt file handling routines. It should have had a FilePath class used for representing file paths nearly everywhere, with a toString or to_string member function for display purposes.

</comment></comment><comment><USER11> The Unix filenames provide a mechanism. That doesn't need to be changed. The policy can be different, based on the userbase and the tools being used, but limiting the mechanism to disallow bad policies is wrong.

While you can create a page-long listing of filename troubles, in practice _these shell users_ only end up having to account for filenames with spaces in them. Occasionally you have to _rm --_ an accidentally created file. Nobody uses those crazy filenames with leading and trailing space, escape codes, and newline characters because it means trouble with the shell. So the problem kind of takes care of itself.

But there might be some future user interface that doesn't have the escaping and expansion problems of current shells and with that it might be useful to be able to put nearly any character into filenames. The Linux/Unix kernel isn't in the position to dictate how the filenames shall be used. It only needs the path separator and NUL terminator and not caring about anything else means less kernel code that can break.

<comment><USER12> > Nobody uses those crazy filenames with leading and trailing space, escape > codes, and newline characters because it means trouble with the shell. So > the problem kind of takes care of itself.

What about people who _want_ to create trouble?

<comment><USER11> What did they say about making a system that is idiot proof...

<comment><USER12> I am not talking about idiots. I am talking about malicious users. The issue is a security issue. What happens if you have a windows server attached to a local printer and I upload a file called LPT1.html which contains malicious postscript instructions?

You can't have security without a set of common assumptions regarding allowable input. This occurs on any shared computer system.

</comment></comment></comment></comment><comment><USER13> It sounds like most of these problems are "CLIs suck, since it's hard to parse commands and filenames". GUIs don't have these problems. And Apple solved the pathname problem in the Classic MacOS by not having paths - references to files were to be stored as "alias" data structures, which contained the inode ID (so despite moving files around, a reference would still point to the original file).

<comment><USER14> GUIs have these problems in spades.

For example, all GUIs must display filenames (say in a file-picker), but how do you display the filenames if you don't know what the encoding is, or if the filename disobeys the encoding? What should you show a user when "control-A" is one of the "characters"? How can you give line-at-a-time display when newline is in a filename? How do you process filename, since it may not be a legal string in the current encoding (a problem both Qt and Python have hit)?

The Qt solution is to mandate that filenames must be in UTF-8. Period. So the nonsense that "filenames can be almost any sequence of bytes" is just that, nonsense. It's silly anyway; why allow ALMOST anything, but not anything?

This also assumes that GUI programs never invoke other programs, which is also absurd. Every time a GUI does system(), exec(), and so on, it risks these filename problems (e.g., if it tries to pass a filename with a leading "-").

The problems are WORSE in shell, but they still occur in other languages.

<comment><USER13> The difference is that in a GUI, even if you fall back to displaying a foreign or poorly-encoded filename as a bunch of Unicode entity squares, the user can still preview, open, edit, move, rename or delete the file. On the command line, you can't do anything with it if you can't type the name.

</comment></comment></comment><comment><USER15> Has nobody heard of "\--" ? This is the standard unix way of saying "Please, do not process flags beyond this point". cat -- * does precisely what I expect it to do in most contexts.

<comment><USER16> He mentions it further down in the article, but not all commands support '\--'. Most notably: echo is not required to support that (which I believe means that while some implementations do support '\--', a fully portable script can't assume that it does).

<comment><USER17> One frequently sees scripts relying on the GNU extensions to echo, often the support for escape characters, in installation scripts for commercial (but also the one for oh-my-zsh...) software when not run on a OS where sh is symlinked to bash (but to a simpler shell).

         \033[0;1m ** CONGRATULATIONS! **\033[0m
         Your program is now installed.

</comment></comment></comment><comment><USER18> Very interesting discussion. Here are my 2 cents: I agree, that how shell handles filesnames and confuses them with commands is inherently broken.

I would like to focus on whtat filenames are supposed to be. In my understanding filenames are supposed to be like booktitles or labels on goods like in the supermarket. So they are not supposed to contain random binary data. That is what file's contents are for. Filenames should however contain any printable character that you expect on a label. And no fake characters like beep or linefeed. But they should be fully international. I mean this is the 21st century! :-) In order to define printable characters you also need to define a character encoding. Unicode clearly defines 2 sets of control characters c0 and c1. I would exclude these two sets, but allow any other unicode character. I now there is an argument about which unicode encoding is better (utf8, utf16, the way apple encodes unicode vs the way everyone else does, ...) Maybe one could define the filesystem's encoding inside it and even give the kernel a translation layer between the ondisk encoding and the one visible to the user.

<comment><USER12> why not make rulesystems modular?

<comment><USER18> Of course. So everyone can decide wether to use it or not. Or even switch this on at some point in the boot sequence Currently the linux kernel doesn't have an interface for this. But I think it is important to do this within the kernel so no malicious program can bypass it.

<comment><USER14> I agree, I think having a CONFIGURABLE option in the kernel where admins can decide "what is allowed" would be a big step forward. (1) Enable requiring UTF-8 encoding, and (2) list what bytes are allowed/forbidden at the beginning, the middle, and the end. Then you could have a local policy like "UTF-8 only", "no control chars", "no dash at beginning", and "no space at the end".

<comment><USER12> This also means that programmers can document what they require, and eventual standards can emerge, which would be a good thing.

</comment></comment></comment></comment></comment><comment><USER19> Sounds like one of the big problems here is glob, and another is how args are parsed before being sent to a command.

</comment><comment><USER20> > This article will try to convince you...

Failed.</comment>


The famous cities of the ancient world were surprisingly small and fragile - <AUTHOR> https://www.spectator.co.uk/article/the-famous-cities-of-the-ancient-world-were-surprisingly-small-and-fragile <comment><USER2> Even up till 1900 or so, they were very small.

Think of it this way, if you like. Up till around 1900 the world's population was no more than about 1 billion. In that 120 years since then we've grown 8-fold. In other words, where you see 8 people today, in 1900 there was only one. In 1900, every city was only an eighth of its size today (on average).

Many cities had walls. Look at old maps. (Even a map of Paris during the Franco-Prussian War of 1870.) Those walls were in areas that would now be called inner-city, and most of today's cities are now built outside those walls.</comment>


Podcast Gift – Curation of the best podcasts in business, design and tech - <AUTHOR> http://podcast.gift/

<comment><USER2> Awesome, I'll have to sign up.

Just as a side note, here are a few other interesting podcasts that may not fall into this category.

Intelligence Squared (Debates) - [https://soundcloud.com/intelligence2/](https://soundcloud.com/intelligence2/)

Joe Rogan Experience - [http://podcasts.joerogan.net/podcasts/](http://podcasts.joerogan.net/podcasts/)

StarTalk Radio (Neil DeGrasse Tyson) - [https://soundcloud.com/startalk/](https://soundcloud.com/startalk/)

Hardcore History (&) Common Sense w/ Dan Carlin - [http://www.dancarlin.com/](http://www.dancarlin.com/)

Rabiolab - [http://www.radiolab.org/](http://www.radiolab.org/)

Talk Nerdy (Cara Santa Maria) - [http://carasantamaria.com/podcast/](http://carasantamaria.com/podcast/)

The Tim Ferriss Show - [http://fourhourworkweek.com/podcast/](http://fourhourworkweek.com/podcast/)

Anarchast - [http://anarchast.com/](http://anarchast.com/)</comment>


Ask HN: Why dosen't HN have a search functionality? - <AUTHOR> Although it's very handy, I know a simple google search can get me what I want on HN. But I would like to search for content inside HN. Which I think would be a nice thing to have. I understand that they want to keep it as minimal as possible but isn't it an important functionality ? <comment><USER2> There is - at bottom of page</comment>


Post Office Delivery Trucks Keep Catching on Fire - <AUTHOR> https://www.vice.com/en_us/article/z3ezx4/post-office-delivery-trucks-keep-catching-on-fire <comment><USER2> The Grumman LLV (long life vehicle) was commissioned by the USPS in the 1980s, entered service in 1987, and were manufactured through 1994, with a planned service life of daily stop-and-start all-weather driving of 20 years to every delivery address in the nation. Over 140,000 were built. _Every USPS LLV truck on the road today is at least 24 years old, the oldest in their 30s._ The Jeeps they replaced had an eight-year life.

[https://en.wikipedia.org/wiki/Grumman_LLV](https://en.wikipedia.org/wiki/Grumman_LLV)

Discusses a successor but describes the LLV in detail:

[https://www.spiedigitallibrary.org/conference-proceedings- of...](https://www.spiedigitallibrary.org/conference-proceedings-of- spie/2058/0000/Grumman-autonomous-Long-Life-Vehicle- LLV/10.1117/12.167490.short?SSO=1) ([http://gen.lib.rus.ec/scimag/?q=sullivan+Grumman+autonomous+...](http://gen.lib.rus.ec/scimag/?q=sullivan+Grumman+autonomous+Long+Life+Vehicle))

The contract was awarded in April, 1986:

[https://www.nytimes.com/1986/04/09/business/postal- contract-...](https://www.nytimes.com/1986/04/09/business/postal-contract-won- by-grumman.html)

A bit of congressional testimony from the Postmaster Gerneral in 1985 gives some perspective on the programme:

[https://books.google.com/books?id=puahcekyrjkC&newbks=0&prin...](https://books.google.com/books?id=puahcekyrjkC&newbks=0&printsec=frontcover&pg=PA31&dq=Grumman+Long+Life+Vehicle&hl=en#v=onepage&q&f=true)

The real story here isn't that the USPS cannot operate or maintain its delivery trucks; it has done an exemplary job extending life 50% beyond design goals under exceedingly challenging conditions. Rather it's that the postal service has been under sustained attack, first by imposing financial obligations no competitor has to meet, and now, slowly crippling its actual mobility and reliability by forcing past-end-of-llife equipment use and thwarting all attempts to develop a replacement fleet.

There is a replacement plan in progress:

[https://www.nytimes.com/2015/03/06/automobiles/the-mail- truc...](https://www.nytimes.com/2015/03/06/automobiles/the-mail-truck-is-a- classic-and-thats-a-problem-for-a-modern-post- office.html?searchResultPosition=1)

</comment><comment><USER3> I always have to step over the oil pool by the mailbox when the mailman stops. Would be interesting to know how much they spend just putting oil in these old things.

</comment><comment><USER4> The article says the existing ones cost >$400/month to keep running and replacements would cost >$40K apiece? Really?</comment>