The Culture of Disposable Technology

I really like taking things apart. When it comes to smart phones, the Nexus 4 was the last phone I really did any actual tinkering around inside. That phone had a 7/10 repairability score on ifixit, not bad. I had replaced the battery multiple times, and even the motherboard.

My current phone is the Google Pixel XL, it also surprisingly gets a 7/10 on ifixit. Looking at the battery replacement guide, it seems the display is likely to break when you pry it off. This seems much worse than the Nexus 4 to me since other than the screen, the battery is probably the next most likely component you’ll want to replace.

It wasn’t always this way. Removable batteries were common, that is before the rise of smartphones. Some lay the blame on Apple and the iPhone, but the industry as a whole needs to own this problem. The rate and pace of improvements has driven this issue, it’s quite common to replace your phone after 2 years – why make anything repairable?

Even the latest macbook pro has a removable cover.

 

Imagine if we put a few screws on the back of the Google Pixel XL in the same style? The battery is stuck right on the back cover.

The only hitch is the battery connector is on the wrong side of the circuit board.

It might be awesome to create after market phone bodies which enable easy repair, but re-house the existing electronics. While it’s unfortunate that modern screens are glued to the frame – I can deal with that being a part I need to replace as a whole. The structural benefits of the screen being firmly affixed are worth that. The back of the phone, other than possibly being a water-resistance problem, seems like an obvious location for access to the inside.

There is a security story here, making it hard to open the phone means you can trust the insides haven’t been tampered with. For the majority of users, this isn’t a key part of their threat model. Also, everything is broken anyways. Tamper proof stickers are also an easy solution to that. I’d even be ok if the panel on the back was glued on – and removing it voided my warranty.

It is probably a difficult business case to justify building an aftermarket phone body to re-house the electronics. Still I can dream.

The trend of making the screen the thing you need to remove to get into the phone is a bad decision for repairability. If the latest macbook pro can have screws on the underside, why can’t modern smart phones?

There is some hope if we look at the maker community and projects like kiteboard. There is also the Fairphone as an option, but it is not available in all countries.

Goodreads – 2019

I’ve been using Goodreads for several years to track my reading. It’s been interesting to see what a few of my friends are reading, and more generally what people as a whole think of the books that I’ve been reading. The other thing that appeals to me as I’ve switched heavily into reading ebooks, is that it gives me a sense of ‘collecting a shelf of books’ – without the actual books. I’ve also become a big user of the local library (and it’s lending of ebooks).

In 2019 I read 50 books, this is actually fairly typical for me, but I don’t always manage 50 a year. This is why I set my goal to 35, a number I’m certain to get to (in 2017 I only read 37). Breaking the goal gives me that sense of over-achieving and avoids me stressing at the end of the year.

You can also visit my Goodreads profile.

My reading is almost exclusively science fiction or fantasy.  It appears that the reading challenge shows the titles in reverse order, as the 1st book I read last year was The Martian (I was re-reading it actually). I’d recommend the book, and the movie, both are very MacGyver.

The Cosmic Trilogy was a physical book that I dragged through at the cottage over several visits. It was terrible, I should have just stopped reading it, but I finally finished it. Do not read this book! Certainly the worst book I read in 2019.

I will call out a few great reads. Atemis by Andy Weir. The Legend series by Marie Wu (another re-read). I really enjoyed the Mortal Engines series by Philip Reeve, very steam punk.

I’m already into my 2nd book of 2020, and I’ve got some great titles waiting for me to get to. It should be a good reading year.

WordPress migration

I’ve been slowly working on upgrading the server that hosts this website (along with other things such as email, news reader, backups, etc). I started a hard for me to believe 3 years ago. Somewhere along the way I experienced some sort of issue with the ASUS motherboard and after a few attempts to get it fixed via the RMA process, I ended up moving to a Gigabyte based motherboard. I’ve even done a hard drive swap since I started the upgrade process.

I started with a basic Linux install, layered on some useful system utilities and most importantly docker. Most of this is covered in the rebuild post. After that, I try to manage all of the “services” I want to run in containers. I’m cheating a bit and the containers are fairly monolithic, but this is fine for my needs as I’m primarily using containers as a way of managing the software versions vs. trying to build a scalable collection of micro-services.

When I initially started, I figured that I’d use the wordpress container. Now, as I run several wordpress based sites from lowtek, I was just going to run multiple containers and front it all with nginx to distribute the traffic, with of course nginx in a container too.

Along the way trying to get this setup to work, I learned a few valuable lessons about docker networking. The short version of this is if you want docker containers to be able to easily work with each other, create a docker user defined bridge network and make sure all of the containers you want to talk between each other are attached to that network. Now container A can talk to container B using the container name as the local DNS name and things just work.

WordPress generally doesn’t talk https, it’s really just http. This didn’t seem like a problem because nginx is pretty easy to setup with https and let’s encrypt to provide an always secure connection. Unfortunately since wordpress is running as a container itself, it doesn’t really know that it’s setup in a sub-directory nor that the correct URL for it is https. There are simple hacks you can do to the wp-config.php file to make this work, and I did finally succeed in getting all the bits happy. However, when I looked back at what I’d created – it didn’t make sense for the complexity I was dealing with. My nginx needed to reverse proxy to the wordpress containers. Each wordpress install needed extra magic to make it aware of where it was really running, and upgrades to wordpress were wonky because upgrading the container doesn’t really upgrade a running install (the files on disk are what matter).

So I bailed, and just installed wordpress into my nginx deployment. This was pretty straight forward. I added a MySQL container to host the data store for wordpress and everything fell together nicely. I just did a backup of the database on my old server, and an import on the new one.

Nginx makes it very easy to run a full https website. The linuxserver.io project has a well maintained image that includes let’s encrypt and everything I wanted. Unfortunately many links were to http:// – including images. Chrome, and I assume other browsers will follow, is starting to become more strict about mixed content pages. Also, Google search results tend to favour secured sites over non.

I found a good post that covered moving wordpress to a new URL, which is sort of what I want to do. I’m moving from http://lowtek.ca/roo to https://lowtek.ca/roo.

The key commands are:

This feels pretty scary, so two things. (1) I want to back up my database, and (2) I’d like to see what it is I’m about to replace.

Backup is actually really easy (this is why containers are cool).

To keep things a bit more brief, I’ll lay out the steps I took to success for the second part.

This only took care of one set of the links. I needed to also do post_content in wp_posts and meta_value in wp_postmeta. Reviewing my blog postings, nearly all of the posts/pages are now fully https with no warnings from Chrome about mixed content.

There were a few standouts. A couple of Creative Commons images I’d linked to needed to get fixed to use https. During the trip down memory lane I found a few busted posts due to images I’d linked which were no longer hosted at that location. I also came across the sad fact that some of my friends who used to host stuff, have let those expire or have changed it significantly enough the information I was linking to doesn’t really exist anymore.

This got me thinking about the state of the web today, and the fact that social media sites have taken over the websites people used to maintain themselves. It’s great to be able to easily communicate with friends and others via things like Twitter, Facebook or Instagram but it’s also unfortunate that there is a lack of diversity in how people are expressing themselves. There is also a lot less control you have over the information once you give it to one of these platforms to host for you. Maybe we’ll see the pendulum swing back a little.