As I write this, it's 2320 PST on Election Night 2016.
Trump has 248 votes in the Electoral College,
Clinton has 218;
270 votes are needed to win.
It's not over yet—several key swing states have yet to declare—but it's likely that I will wake up to headlines about President-Elect Trump.
What. The. Fuck! America!?
How could we do this?
The most unsuitable, unqualified, unfit party nominee ever to run for US President
is closing in on victory.
One of the most qualified candidates ever is trailing in the polls
and is unlikely to win.
How did this happen?
This is the US's Brexit moment.
We fucked up.
This is not how I …continue.
Title: Hunted on the Fens
Author: Joy Ellis
Rating: ★ ★ ★ ★
Publisher: Joffe Books
Keywords: police procedural
Reading period: 14 August–7 September, 2016
DI Nikki Galena and her team have been targeted by someone with a vicious grudge.
One copper is dead, another is badly injured,
Galena has been hounded out of her home,
and civilians have been hurt too.
The cops have no idea who's behind it.
The story is overwrought but the characterization was good
and the story was entertaining.
We use Alembic to perform schema migrations whenever we add (or drop) tables or columns
from our databases.
It's less well known that Alembic can also perform data migrations,
updating existing data in tables.
Here's an example adapted from a migration I put together this afternoon.
I added a non-NULL Boolean stooge column to the old_timers table,
with a default value of FALSE.
I wanted to update certain rows to have stooge=TRUE as part of the migration.
The following works with PostgreSQL.
Note the server_default=sa.false() in the declaration of the stooge column,
which is needed to initially set all instances of stooge=FALSE.
I then declare a table which has only the …continue.
Title: Flashman and the Angel of the Lord
Author: George MacDonald Fraser
Rating: ★ ★ ★ ★
Keywords: historical fiction, humor
Reading period: 27 August–4 September, 2016
Flashman and the Angel of the Lord finds Flashy back in America
where everybody wants him to be the aide-de-camp to the abolitionist John Brown,
who's plotting a raid on the federal armory at Harpers Ferry.
The Underground Railroad want him to help Brown to start a slave rebellion;
Kuklos (a proto KKK) want Brown to start a civil war to cause disunion;
and finally the secret service want Flashman to sabotage Brown so as to …continue.
Title: In For The Kill
Author: John Lutz
Rating: ★ ★ ★ ½
Reading period: 20 Aug–3 Sep, 2016
The “Butcher” is leaving dismembered corpses of women all over New York City
and he seems to want to get Frank Quinn's goat.
Quinn is a former police captain, who's been called back from retirement
along with two of his former team members,
Pearl, his ex-girlfriend, and the slovenly Fedderman.
The “Butcher” is brilliant and the body count is climbing.
While the book is properly suspenseful,
I couldn't suspend my disbelief at the notion
that the NYPD would have little more than Quinn's tiny team
working on such a …continue.
I read an interesting productivity hack: Writing or Nothing.
It's attributed to Raymond Chandler who set himself the goal of writing
for four hours every day but often found himself goofing off.
To curb himself of this, he set two rules about how he could spend those four hours.
- I may write, but it is not mandatory,
- Not do anything else.
The first rule is simple.
The second is the key.
If he's not writing, he may not do anything else.
No reading, no bill paying,
no modern distractions like surfing the web or playing a game on a phone.
I haven't tried it yet but I think it …continue.
Every month, Amazon offers hundreds of Kindle ebooks at $3.99 or less.
As well as the dross, there are always a number of books that are great value at such a price.
I just bought several from the September crop, including
Bloodchild (Octavia Butler),
The Confessions of Nat Turner (William Styron),
Magic Bitter, Magic Sweet (Charlie Holmberg),
Follow the Rabbit-Proof Fence (Doris Pilkington),
Schismatrix Plus (Bruce Sterling).
You might think that data compression is a solved problem, lossless or lossy.
Gzip and related formats like zlib, Zip, and PNG that use the DEFLATE algorithm
were great 25 years ago, still do a decent job, and are completely ubiquitous and indispensable,
but there are better, smarter algorithms now.
Google has announced two new compression formats in the last couple of years,
Zopfli and Brotli.
Zopfli does a better job of generating Deflate-compatible data,
although it's very slow.
Brotli gives ~20% better compression than Deflate, but at about the same speed.
Then there's xz, which grew out of 7-zip, and also works well.
Zstandard has just been announced …continue.
Thanks to Tom Limoncelli, I became acutely aware of USB charge-only cables and condoms.
If you plug your phone into an unknown computer to charge the battery,
you run the risk of having your phone hijacked by malware.
USB transfers data as well as electricity
and you're essentially giving the computer unrestricted access to your phone.
Certain USB cables are charge-only and will not pass data.
There are also “USB condoms”,
which are inserted between the cable and the computer.
They not only block data, but they can potentially charge the battery faster,
as they can switch the device into a fast-charging mode.
I've ordered a pair from Amazon,
as we're …continue.
This website, http://www.georgevreilly.com/, is hosted at GitHub Pages.
It's actually https://georgevreilly.github.io/
but I've configured the former as the “custom domain”,
so the latter is unconditionally redirected to the custom domain.
GitHub Pages gives me free, fast hosting and an easy publication model:
I commit the latest changes to my master branch,
I push the branch to GitHub,
and seconds later, my site is updated.
I'm using Acrylamid to generate the content from reStructuredText source
on the blog branch
and ghp-import to commit the HTML to the master branch.
GitHub Pages supports HTTPS as of June 2016, but not for custom domains.
There are some hacks but I don't feel like using them.