Well, since the east span of the Bay Bridge opened, I've wondered what it would be like to walk across it. I'd resigned myself to the fact that I'd never find out, but today I did it on a handcycle. It was quite a slog getting up and over, but not as hard as I thought it was going to be. It was easier than going over the freeway bridge or the incline behind Golden Gate Fields, but it lasted a lot longer. I seemed to manage to find a happy cadence that I could just plod along at and eventually made it over. Coming back! Coming back was a huge amount of fun. I really wish I could have got into a higher gear, but the bike I'm using is old and I can only get onto the two smaller sprockets and not onto the third larger one. It just meant that I was coasting and couldn't really do anything to affect my speed.
The other memorable moment was that I got confused with the road layout and stopped. William didn't. He went into the back of me and flew over his handlebars and ended up in the road. Unfortunately I turned to see him bounce along the road, but my eyes looking back see further than the camera. You can hear him clatter into me, you just don't get to see the carnage.Video of the bike ride
Long and boring video. The route is in the map below.
Closer than I would have liked
Well, congratulations to me, but only just. I didn't realize there was a race this weekend, so I didn't update my selections. I ended up losing 50 points to William in the final face, but I'd managed to get that far in front from the previous races, mostly because of the good luck I had with the Vegas selections.
Here's the final leaderboard
Now with added emoji 🤠
If you've read the website blog on smack talk
you will know that I've just “enabled” emoji's on the website. Stupidly, I thought this would be an easy task as I figured it's just a matter of getting the database (MariaDB) to accept the code for each emoji. It kind of is that simple, but a cascading sequence of events happened that dramatically increased the amount of work needed to get there. I've already done a blog title “I knew an old woman that swallowed a fly” otherwise I'd have used that here.
OK, so what you need to do is have the database and each table allow unicode which I'm 100% sure I'd already done. It's quite possible that I did, but emoji's have become a thing since then and they require a specific unicode. In this case UTF8MB4. Not a big deal, just write a SQL script to change the database encoding then iterate through all the tables changing them.
It failed on about the third or fourth table. I've significantly cut down the number of tables post the LEMP conversion, but there are still 51 left. The reason it failed is that the primary key was too big. Apparently the max size of the key is 767 which is 768 bytes. This is not something Neville told me #blameneville. Obviously converting from the latin character set to UTF-8 means that each letter takes up more storage space. I'm guessing 4x the amount given utf8mb4 is a 4 byte UTF-8 encoding. I have some tables that have a 255 character varchar field as the key - apparently this is a bad thing to do anyway as it creates a huge index which I totally get, but didn't .... #blameneville. These 255 character fields are too big to be keys with the new encoding.
Right, so I could have cut the corner here and just converted tables that were going to store emojis rather than all the tables. But if a job's worth doing ... you really should get someone else to do it for you. Next step then, figure out which tables had inappropriate keys. Some of them were pretty easy - I could just assign an auto number as they key and move on. Unfortunately the biggest issue was the email field that I used as a key for the folks that are registered and to link to the race game and playlists (the latter now hidden, but still exists as I moved RagBox to personal use only).
Sidetrack for a minute. I made the email field 255 characters long because an email can be that long. Actually, I think it can be longer. Can you imagine though if your email address was 255 characters long and having to type it in every time you wanted to register or logon with something.
Let's get back on track - data conversion. The fix is to assign each person a unique ID, then to add that field to each of the tables that was linked via the email address. Iterate through the table and populate that new field with the ID associated with each email. Then make that field required and part of the key (as it would have other bits that make up the key such as the competition number). Then delete the email field as it's no longer needed in the referencing tables.
The structure's now in place and we can accept emojis. Only we can't because every page that puts data into the tables is trying to put an email address in an email field that no longer exists and is not populating a required ID field. This is for things like registering with the race game, changing registration, making selections, editing selections, becoming a member, changing your membership, password resets blah, blah, blah. It's more than you think.
Right, so just change those pages and we're up and running. Err, no. The whole logon process that I created recently uses email addresses as the ID and I changed it to the new ID (which has logged everybody out). This bit is actually quite funny. I knew I'd be logged out, but when I tried to log back in, I was locked out because it couldn't validate me for some of the back end stuff that I need to do to run the scripts to make the changes. So I had to un-code the logon, to push the changes, to then re-enable the logon so I could log back in.
We're done now though and the changes are in. I 💗 data conversion. There's something about just figuring out data structures and what needs to be done that I find really calming. I think it's the sense of putting order to something. Parts of the back end are still broken. I need to fix some stuff with the music, but it shouldn't be too difficult. I just need to finish the mobile friendly responsive pages for the front end first. The joy of hobbies.
Cheap FlightsA great video.
Apple nailed itI've noticed that my iPad has started to predict what app I want to open. It comes up with a message that based on my location in my house, the app I normally open first is YouTube. Which clearly appears when I'm taking a shit. It does seem that Apple have spent millions trying to figure out when I take a dump. I also like the fact that there's all this talk about China watching everything we do through the technology we use. I think the head of MI6 made a comment recently on the topic that gadgets were being used to monitor everything. It's the use of the generic term “China” given that there's 1.3 billion Chinese. I kind of now have this mental image of 1.3 billion people crowding round a big computer screen thinking “ he's going for a shit again”. If they keep inventing stuff, it won't be long before they can smell it through their technology too.