wesley tanaka

UnsupportedJavaRuntimeException.assertUsingVersion in Android Studio


After upgrading Android Studio to version 2.3, you may get:

Against Empathy


Paul Bloom gave an interview on EconTalk to promote his book Against Empathy: The Case for Rational Compassion and talk about why empathy (as opposed to compassion) is a leading motivator of inequality and immorality in society.

The quote about empathy in parenting decision making particularly struck me:

Decoding binary data in logstash


By default, logstash stores the "message" field as a unicode string (in this example, we avoid including a '\x0a' byte to keep the pipeline configuration shorter):

Downloading Ansible galaxy roles in parallel


To always ensure that I have the latest version of a role from Ansible Galaxy, I've found I needed to use both the --force option (to re-download even if the directory already exists) and the --ignore-errors option (to keep going through all the roles). Overall, the command line ends up looking like this:

ansible-galaxy install --force --ignore-errors -r priv/ansible/requirements.txt -p priv/ansible/roles/

letsencrypt / certbot incomplete certificate chain error


Some tutorials on enabling HTTPS in Apache recommend adding this in the <VirtualHost *:443> configuration block:

SSLEngine on
SSLCertificateFile "/etc/letsencrypt/live/wtanaka.com/fullchain.pem"
SSLCertificateKeyFile "/etc/letsencrypt/live/wtanaka.com/privkey.pem"

When this configuration is used with Apache versions prior to 2.4.8, Apache is not able to parse the intermediate CA out of a chain certificate.

Overview of Kano OS


We bought a computer for our son. Tonight I installed Kano OS 3.8.0 and experimented to evaluate whether to use that as his operating system.  My impressions:

Installing Kano OS on Raspberry Pi 3 from Linux


Some notes about installing Kano OS on a Raspberry Pi 3

Make your own computer


We bought a computer for Ryan -- a Raspberry Pi 3. It sounded like it was slow and fidgety enough to potentially encourage some tinkering, but fast enough to actually be able to run desktop software, and cheap enough that if he destroys it, we can chalk it up to a learning experience without much stress.  Our goal is to have him put it together from start to finish -- we were inspired by hearing about a family that bought broken down cars for their kids with the premise that if the kid fixed the car, it was theirs to keep and use.

Unicode is Base 1114112


During my years as an engineering leader, I've worked with developers who do not have a mental model of Unicode beyond "they're special characters". This sometimes causes them to create and run into difficulty solving bugs due to confusion between bytes, UTF-8, and Unicode code points.

What is a variable?


You can visualize a variable1 as a box that contains a thing2. For example, this variable called x contains an integer 0:

x = 0

This other variable called most_recent_email contains a pointer (more below) which we draw with an arrow.

Syndicate content
by Wesley Tanaka