Late 2015 quick movie reviews
I've been keeping a list of movies I watch in order to write reviews later, but for a while I haven't had time/been interested. So instead of a bunch of longer reviews I'm going to do a quick clearing of the backlog with a rating and paragraph about each one.
Moving old Adobe CQ/CRX to a new IP address
I thought I'd already blogged about this, but Google says no (or my search-fu is not strong this morning), so here it is for posterity.
If you have an old Adobe (nee Day) CQ 4 system using CRX 1.4.x and need to move the server (or just CQ instance) to another IP address, you will run into an issue where the CRX repository will not start up because it's trying to use the old cluster information (even if it's a single system, by default it sets up a cluster with one node). So it tries to connect to the previous IP address of the master cluster node, ie your old IP address. Which hopefully fails, unless you still have the old IP address active in which case it could do all kinds of wacky stuff.
To fix this, shut down CQ/CRX and rename/remove all files called listener.properties. They're located in control folders under various parts of each repository.
For example, here are the files on a CQ 4 dev system I'm updating that has both author and publish CRX instances (in CQ/AEM5+ there's just one repository):
- repository/crxpublish/shared/version/control/listener.properties
- repository/crxpublish/shared/journal/control/listener.properties
- repository/crxpublish/shared/workspaces/crx.default/control/listener.properties
- repository/crxpublish/shared/workspaces/crx.system/control/listener.properties
- repository/crxpublish/shared/workspaces/live_publish/control/listener.properties
- repository/crxauthor/shared/version/control/listener.properties
- repository/crxauthor/shared/journal/control/listener.properties
- repository/crxauthor/shared/workspaces/crx.default/control/listener.properties
- repository/crxauthor/shared/workspaces/crx.system/control/listener.properties
- repository/crxauthor/shared/workspaces/live_author/control/listener.properties
The files should be be recreated next time the system starts up using the new IP address.
Adobe reference doc is here, see the "Cluster Interconnection" section near the bottom of the page
Windows 10 and web analytics
I'm very curious how quickly Windows 10 is being adopted. One quick way to get a look at this normally is via web analytics and traffic dashboards for large Internet services like content distribution networks. They're ususally slow to make official statements about global traffic patterns, but you can check your own reports and see what's going through.
I checked if the web analytics and traffic dashboards I have access to are up to speed on Window 10 and Edge, and it appears they are not. Akamai's traffic dashboard doesn't list either, perhaps they're under Unknown, and neither does Google Analytics which appears to lump the OS into Windows NT (based on this site's stats). This makes it difficult to see just how many people are actually using the Edge browser and/or Windows 10.
Hopefully this can be rectified quickly. I anticipate that Windows 10 adoption will be much quicker than previous Microsoft upgrades, more on the order of recent Mac OS X upgrades, especially since it's free. But I'd like to know for sure. :)
Windows 10
So Windows 10 started rolling out this past Thursday.
I've been waiting to see how it works for real for a while. I installed the tech preview in a VM early this year and have been firing it up every month or so to get updates and see if anything significant changed. It all looked quite slick, though I wasn't too wild about the seemingly hard requirement to login with a Microsoft online login instead of a local account. (Probably there was an easy way to avoid that, but I didn't see it when I did the original install of the tech preview)
CentOS logrotate with non-standard log folders
I ran into an issue at $WORK today that took more than 5min of Googling to find an answer to, so you get two posts in one day!
On a CentOS (or RedHat) system, if you
- setup logrotate to rotate log files in a folder not under /var/log, and
- have selinux in enforcing mode
... then you will need to follow the instructions here to tell selinux to allow logrotate to operate on those files/folders.
VirtualBox with raw disk
Power here (and in most areas around Toronto) has not been great the past week, and my little FreeBSD test server started misbehaving after a brown-out yesterday. It would run for ~5min and then reboot. I thought the issue was due to electronics being damaged by the power surge - it turned out to be a bad filesystem corruption that wasn't being corrected with normal fsck on boot, but was quickly fixed in single-user mode.
In any case, the test server runs headless, so while troubleshooting I decided instead of rewiring monitors I'd try dropping the drive into my Windows machine and setting up a VirtualBox VM to read from it.
Turns out this is rediculously simple. I used the instructions here and the only issue I had was the permissions issue mentioned in the first comment, which was resolved by running VirtualBox as administrator. I also had to update the network interfaces inside the VM that had changed from NVidia on the test box to Intel in the VM, but this was expected and quickly done in the console.
I'm quite liking this setup, my Windows machine has way faster CPU (AMD A8 vs Atom) and excess memory even when running games, so I think I may setup a permanent raw drive or two. Now that I'm reasonably sure the testbed system itself is not the issue I'll set that back up with a 32Gb SSD I bought for another project and it'll be a nice little dedicated monitoring box.
How I rate movies
I realized the other day that I've never explained the rating system I use for movies. It's not all that critical, most people have a general understanding of the difference between 1/10 and 10/10. But I've noticed some subtle differences in rating systems over the years, especially online, so thought I'd explain how mine works.
Disclaimer: my ratings are entirely subjective and I don't expect you to agree with either my system or where I rate movies, I'm just putting this up so you have some idea what it means when I say a 3/10 or 6/10.
Movie review: Divergent
I've got a bit backlog of movies I've wanted to watch but for whatever reason haven't gotten to, so will be working on catching up in the next little while and posting some short thoughts.
So, on to Divergent.
I have a soft spot for what are frequently categorized as "Young Adult" stories, though as with all stories I prefer an element of the fantastic -- I'm not interested in real life, I have enough of that of my own.
I haven't read the Divergent book (or series) by Veronica Roth. I may in future, though I've read many with similar tropes (Hunger Games of course, and also Scott Westerfeld's Uglies series which I'd really like to see adapted for some sized screen). If nothing else I might just read them to understand what was missing from this and future movie adaptations, and to be able to discuss them with my daughter when she reads them (which she plans to do).
Overall the movie was solid, the leads were good, and I enjoyed the story. Though many of the tropes were familiar, the world and specific plot points were fresh. The cast was quite good, especially Shailene Woodley. I found her performance much more believable than, for example, Jennifer Lawrence in the Hunger Games series. Don't get me wrong, I think Jennifer Lawrence is an excellent actor, but that specific role didn't work for me.
The only big issue I had with Divergent, which is not uncommon with adaptations of novels, was pacing. It seemed way too much was crammed into the movie, which was really quite long at 2h19, and that bits had been left out that could've helped explain little things that didn't really make sense. But the core story was solid, and the progression made sense, and overall it was enjoyable. I would like to see an expanded adaptation someday, perhaps a miniseries.
I give it a 7/10, and will not feel bad about watching it again after my daughter reads the books.
Python unbuffered
I came across a new-to-me Python thing today that was astonishingly useful, so thought I'd document it.
If you need to simply and globally turn off buffering for a Python script there are two options.
First, you can add the -u command line option. This is not always an option, especially if you are running Python in a script using '#!/usr/bin/env python'.
Second, and far more useful for me, is you can set the PYTHONUNBUFFERED environment variable to any non-zero value and it has the same effect.
Reference here for this and many other useful environment variables for Python 2.x, and you can probably guess the Python 3.x URL.
New blog face
This blog has a new face!
I've moved to a static rendering system called Nikola that's based on Python.
I was originally looking at Octopress which is built around Jekyll and other Ruby bits, but perhaps mistakenly went with the new Octopress 3.0 release which is not ready for use yet. With a lot of troubleshooting (and patches submitted) I mostly managed to get it functional for the blog, but the (incomplete) new default theme doesn't work yet, older themes don't work with the newer version, and I'm not a frontend dev. I need a theme that basically works before I start mucking around with it.
Also, the Jekyll + other ruby bits build were really heavy CPU-wise on my little test machine (Atom procesor, 3Gb RAM), it would take several minutes to do an octopress build of the site. And some features were either not quite right or missing.
So looking around I found Nikola, which is quite stable (at release 7.3.0), has most of the features I want out of the box, and renders out pages much more quickly. It also has good documentation.
Nikola took a bit to get setup on FreeBSD 10.1. First I tried running it under Python 3.4, but there are a few bits not quite there yet with FreeBSD pkg system and Python 3, and plus the whole 'setting up a pyvenv to get pip' thing annoys me. So I downgraded to Python 2.7 and everything went much more smoothly.
Importing old blog contents was simple, Nikola includes an importer for WordPress XML exports that will even pull down externally referenced assets from your current site. Unfortunately comments were not carried over, but it was quite simple to setup Disqus which is arguably better than WordPress comments anyway (at least for me).
Nikola doesn't bundle an uploader for S3 like Octopress 3.0, but does handle arbitrary deploy processes, so for now I'm using the synchronize tool from the jets3t toolkit.
The only thing I really feel is still missing, which I didn't have setup with WordPress anyway, is social sharing tools. I tried to setup the AddThis widget, but it just refused to show up on the page. Either there's a JS conflict, or the CSS is messing it up, or maybe AddThis just sucks. Either way, something to look at later, because like I said I didn't have it before anyway.
So, here's to the flattened blog. We'll see if this gets me to write any more or just winds up annoying me. :)