Archive for June, 2023

Two-Factor Authentication

A number of sites and services are switching to 2-factor authentication, rather than just a simple username and password. So you’d login, but then have to enter a code sent to you by email or text before it will finish the login.

So far many of the places I use have that as an option, not mandatory. And I don’t opt in, but for a lot of the places I end up having to do the same steps anyway.

The reason: I forget passwords.

Here’s a typical login scenario from me. I enter my username and password, the site rejects it. I then enter my username and another password, and the site rejects it. At this point, I don’t want to enter a third bad password, in case they’re strict with their lockout protocol, so I select the forgot password link.

The site then sends me a reset link, I follow that and select a new password (usually the first password I tried), and then I’m good.

It’s about the same steps as standard 2-factor stuff, but in an unofficial manner.

then they would say to him, “Just say, ‘Shibboleth.'” But he said, “Sibboleth,” for he was not prepared to pronounce it correctly. Then they seized him and slaughtered him at the crossing places of the Jordan. So at that time forty-two thousand from Ephraim fell.

Judges 12:6

iPhone Repair Woes

Note: see the bottom of this post for the lesson.

The battery in Some Wife’s iPhone was getting old, and it no longer could get her through the day without needing to be recharged. The battery health-o-meter indicated it was not so healthy anymore, confirming with numbers what we already knew.

So, having replaced batteries in iPhones of generation 4, 5, 6, and 7, I figured I could handle an iPhone 10. Excuse me, iPhone X.

I looked at the repair instructions, and they looked about the same as before, so I ordered a new battery.

The instructions say to take apart the iPhone in the usual way – take the screws out, soften the glue, and carefully pry the screen away from the housing.

The instructions emphasize to be extra careful not to pry the screen from its frame, but make sure to pry the screen and frame together away from the housing.

I wondered how to know if I’m prying the screen only (bad) or screen and frame. I found out the hard way.

I thought the screen came away a little too easily, and after I had separated about 3/4 of it, that’s when part of the frame came away from the housing and I saw the difference.

It turns out I had been doing the bad thing and separating the screen from itself.

Argh.

I quickly pried the frame out from the housing and tried to keep the screen and frame together as much as possible. I did end up getting the screen and frame back together, and both off the rest of the phone, but I wondered what effects that might have had.

The rest of the battery replacement procedure went okay, not perfect but it got done.

In the course of previous battery replacements, I have learned to turn the phone on after everything is connected but before I screw it back together. One of my earlier attempts I had mis-connected something, so I had to take it back apart and re-fix it. It saves time and effort to test it slightly earlier in the process, rather than waiting until the very end.

So that’s what I did with this phone. After I had all the electrical connections back together, but the screen not in place, I turned on the phone.

In previous repairs, I saw the Apple logo appear on the screen and I knew everything was fine, so then I’d turn the phone back off, screw everything down, and then turn it on and then I could be done.

But with this phone, when I turned it on, the screen was blank. No change. But the phone made noises that told me it was on, which lead me to conclude that I broke the screen during the repair process.

Now the problem was that this was Some Wife’s phone, and both she and I were expecting the repair to be done that evening. That was not a fun thing to do – come back into the room and break the news to her that she no longer has a functioning phone.

But she took it in stride, and we came up with a backup plan to borrow Alpha’s backup phone (an iPhone 7) that he no longer used but still had around. One sim card swap later, and she had a phone. But it had none of her apps and none of her contacts, so it was a challenge over the next couple of days when a text would come in with just a number listed, to see if she could figure out who it was without responding back “who are you?”

Anyway, the day after I broke her phone, I told her “good news, you get to get a new phone”. Or at least new to her. Actual new phones are ridiculously expensive, so we upgraded her to an iPhone 12, which was still more money that I had planned for a simple battery repair, but much better than a phone that costs as much as my car did.

In the meantime, before we settled on which exact phone, I ordered a replacement screen for the iPhone X. She wanted to be able to get a bunch of info off the old phone, and it was cheaper than a used iPhone X, so we’d still come out ahead by having an iPhone X with a new battery.

I thought I had turned off the broken phone, but I found out it was on when one of her alarms went off. The touch part of the screen was working fine, but I couldn’t see where to turn off the alarm, so I tapped a couple of times where the Stop button should have been and got it to turn off.

The replacement screen came in about the same time as her newer phone, so while she was setting up the phone, I was trying to get the screen working on the old one.

The repair went smoothly, except when everything was connected, I turned on the phone, and it didn’t work. I disconnected the cables and put them together again. Still nothing.

I thought I must have damaged a connector or something in the process. With nothing else left to try, I decided to just put everything back together and wait until tomorrow to figure out what to do.

After I put the screen fully in place and screwed it down, it worked.

At first I was excited and relieved. But then it got me thinking, and I bet there was nothing wrong with the old screen. I could have tested it by taking the new screen off and putting the old one back on, but at that point I didn’t want to mess with anything. But I’m about 80% confident it would have worked.

Lesson for iPhone Battery Replacements
From what I can tell, the new style (and I don’t know when it changed, but somewhere between iPhone 7 and X) is to have grounding pads for the screen be separate contacts at the bottom of the screen, not in the cable connector. So the screen isn’t fully electrically connected until it is fully physically installed. So you cannot test the repairs with the screen slightly off the phone, even just a little bit.

A noose for him is hidden in the ground, And a trap for him on the pathway.

Job 18:10

AI Captcha Logic

A typical sci-fi storyline involves robots/computers/AI taking over the world, and worst-case is ridding the world of humans. And now with things progressing rapidly on that front, more people are getting worried about that happening.

However, I’ve been doing a fair amount of tasks online lately, such as paying my electricity bill, and I am not worried about robots taking over the world because the Captchas will prevent them from doing just about anything.

I think it’s a good system, as we seem to have caught the AI in a catch-22.

Because how does an AI learn what to do? It uses many existing examples to find the patterns.

And what do our many examples of online interactions have? Lots of “Are you a robot?” questions. And if you’re a robot, you’re not allowed to continue in whatever process it was.

So the robots will learn that many tasks are not allowed to be completed by robots, so they’ll be stuck and they must allow humans to exist. Of course, at that point the worst case becomes the humans are kept around for the sole purpose of completing the “Are you a robot?” questionnaires and that wouldn’t be a very good existence.

As a side note: why can’t a robot pay my electricity bill? What if I did want to automate some mundane bill-paying tasks? Don’t these people want to be paid in an efficient manner?

Do not go up, for the Lord is not among you, to prevent you from being defeated by your enemies.

Numbers 14:42

Waffle Solver

One of my daily mini-diversions is to play Waffle.

Waffle is a word game, over at wafflegame.net

You are given a grid of letters and you need to swap letters until they form the expected words. It’s quick and simple, and the solution is rarely elusive.

What is challenging about it though is that it gives you between 10 and 15 turns to find the solution. The best solution is in 10 moves, which gives you 5 stars.

You’re able to play the daily waffle only once, so give it your best shot there. But if you’re short of the 5-star ranking, you can play it later in the waffle archives.

I go back and try to get 5 stars on them if I miss it the first day. And most of the time I’m able to get it. But some of them I was not getting – I was stuck on 4 stars no matter what I tried.

I thought a brute-force process might find the optimum solution, but of course I didn’t want to do that myself, so I wrote a Python script to find the way to solve it in 10 moves.

But the output was to the console, and thus not user friendly to the general public. So then I wrote a Python script to generate the image showing the moves, trying to get it to match what someone would see on their screen when they’re playing the game.

And then I wrote a Python script to grab the other puzzles from the waffle archives.

Then I put the results on Some Fun Site, so you can go there to see the best solutions to the waffle game.

I was using all that for my Python training. I hadn’t used Python before, but people at work were using it for certain scripts so I thought I’d see what the fuss was about.

Overall, I’m not a fan of Python. It can be useful, but it’s awkward to me. I much prefer PHP.

Anyway, go play the Waffle game and if you get stuck then go over to Some Fun Site to get some help.

Then Samson said to them, “Let me now propose a riddle for you; if you actually tell me the answer within the seven days of the feast, and solve it, then I will give you thirty linen wraps and thirty outfits of clothes.

Judges 14:12