HomePod early impressions

After a few days with the HomePod I have a few impressions: setup is easy, using it is fun, it sounds great, and it works with our Family Music subscription. No surprises. At first, amusingly, a few people were tongue-tied while adjusting to “Hey Siri” instead of “Alexa.” That was entertaining. To watch. The biggest absence I’ve noticed from the HomePod is audiophile pretentiousness. I’ll explain.

I’m not an audio professional but I have mixed sound for bands. I’ve built a sound booth. I’ve recorded albums. I’ve spent hundreds of dollars each on used mics and monitors. I found that my limited musical talent was in listening. I enjoy carefully positioning my studio monitors and parking myself in the sweet spot. I can also count on my digits the hours in a year spent listening this way. That is my audiophile pretentiousness. To most everyone else, my monitors are just the speakers that sound good with movies. That system is normally switched off with a power strip because it draws 10 watts even when “off.”

In our home with two tweens, there are typically concurrent activities in progress and music is often emanating from the tiny speakers of a “smart” device someone is using. Even when playing back music I enjoy, hearing it from more than a few feet away on those crappy little speaker(s) is as much painful as it is enjoyable.

We also have a Sony RDP docking station / AirPlay speaker. It gets hauled to where someone(s) will be working (garage, basement, etc.) for a while. The sound quality is quite good when listening in front of it. Unfortunately, its power cords, adapter, and enclosure are too large and too directional to earn a spot in the prime real estate that our lives revolve around. It also requires a separate “smart” device to stream to it. As an auxiliary speaker it gets used many dozens of hours per year.

Last year we added an Echo to the kitchen and we’ve settled into a usage pattern. In the past month we averaged 5 requests per day (play song X, set a timer, set an alarm, what is an acute triangle?, etc.). Alexa is VERY good at alarms and timers. She’s less good at answering questions. Requests to Alexa about information are usually followed up by asking Siri the same question. Alexa is even less good at playing music. The speaker quality is terrible, if we’re far from the Echo or the volume is loud we have to shout at it, and it lacks access to our iTunes library and/or Apple Music subscription. Yet we’ve listened to hundreds of hours of music on Alexa. It’s used because voice control makes it easy, it listens to everyone, and it’s in the kitchen.

I purchased the HomePod to displace this frequent pattern of listening to music on a cacophony of lousy speakers (Echo, tablets, laptops). The HomePod cleared that low bar brilliantly. On arrival day my middle schooler walked in the door from school, listened, looked about, saw the HomePod, and issued a “Hey Siri” command. She squealed with delight, “Siri finally listens to me!” (Siri on our iPhones does not listen to the kids, to our delight). We are all pleased.

Saturday my brother-in-law visited and spent a handful of hours listening. We picked songs we knew and loved and walked around the kitchen and adjoining living room listening. We agree with most honest (non-click-bait generators) reviews: the sound quality and stage is excellent. We can both identify areas where the experience is slightly different than standing in the sweet spot of our favored color and distortion free speakers or studio monitors. That ignores Apple’s achievement: everywhere else in the room the HomePod sounds substantially better than any comparably priced speaker.

The HomePod is less for the audiophile “soothe the hole in my wallet” listening that requires sitting in the narrow sweet spot of a tuned and expensive stereo system with expensive speakers. HomePod is for the every day listening done while cooking dinner, sweeping the floor, rescuing Roomba from misadventures, and the myriad other activities we do while moving about the house. As WinterCharm said well, with HomePod “the room is the sweet spot.”

when uptime mattered

It’s been a while since keeping a single server online was A Really Important Thing. Instead of really expensive servers with redundant power supplies, fans, CPUs, and disks, we’ve moved on to networked file systems and arrays of much cheaper [usually virtual] servers. Still, on occasion I maintain some old servers and I still feel a tinge of regret when I reboot a system like this:

# w

5:18PM  up 584 days, 10:49, 1 user, load averages: 0.27, 0.59, 0.51

Net Zero mission accomplished

One of my major goals for our home renovations has been achieving Net Zero, meaning our house produces as much energy as it consumes. As one might expect, producing as much energy as we consume yields energy bills of less than $0.  Today I consulted my energy meter and extracted the following data points for calendar year 2017:

  • Energy Produced: 9,288 kWh
  • Energy Consumed: 12,396 kWh
  • Energy Consumed by Auto: 3,216 kWh
  • Energy Consumed by Building: 9,180 kWh

For the purposes of measuring building consumption, I subtracted the auto consumption (measured by our chargepoint home charger) from total consumption. Since our building produced 108 kWh more than it consumed, I can claim the Net Zero goal as accomplished.

Our home and EV together consumed 1,500 kWh less in 2017 than 2016. Looking forward, I anticipate a similar reduction in 2018 because we were using space heaters for part of the house in Jan-Apr of 2017. The heat pump for that area is now installed. Also, the concrete basement and downstairs walls aren’t insulated yet. I have the insulation (XPS & poly-iso) standing by and it will be installed before the next heating season.

I don’t expect an substantial efficiency improvements after 2018. All our energy systems are super efficient, our insulation levels are super, and our energy surpluses (say hello to Energy Plus) will be consumed by our current and future EVs. Any further efficiency improvements would have no economic justification.

Reference points

  • Average home energy consumption: 23,000 kWh
  • Average auto energy consumption: 15,000 kWh
  • A super-insulated (aka: ultra efficient) home typically needs 1/5 the energy for HVAC.
  • On average, EVs consume  1/3 the energy of an ICE vehicle.

Is A Powerwall Worth It?

Primarily for economic reasons, I covered our roof with 10kW of solar panels. As a producer of electricity, it no longer made sense to pay a utility company for natural gas so the furnace was replaced with heat pumps and the water heater was replaced with a HPWH. The fireplace and chimney were anachronisms I was happy to get rid of. I removed all the gas lines and had PSE remove the leaky gas meter as well. From a safety perspective, ridding our home of combustion appliances was a big win.

While on the topic of safety, the Big One is coming. Our home was built in 1955, way before the Nisqually Quake and updated building codes. I’ve done a few seismic retrofits as suggested by the City. The most important thing, literally, is surviving the quake, so making sure our house doesn’t collapse is a good start. The next most important thing is potable drinking water. I warehouse a weeks worth. For lighting we have camping headlamps, Mr. Beam night lights around the house (with rechargeable AA batteries that last about a month) and outside, I’ve got solar LED lights attached to the house. They’re really nice when walking around the house at night and would suffice during a power outage.

What I don’t have is energy storage. For the safety of linemen, when the grid is down, so is my array. I want a Tesla Powerwall so I can operate off grid. For $6k, Tesla provides a 14kW battery and the transfer switch that enables off grid operation. In the summer, our array produces double what we use (including EV charging) so a single Powerwall could easily power our house, plus extension cords to the neighbors for their fridges, indefinitely. In mid-winter, with no visible sun and freezing temps we could drain a Powerwall in just two days. But after a winter disaster, we could turn the heat off, dress warm, and power the house for weeks. Or heat just one room. That’s a compelling use case, but I have yet to conclude that the potential losses from not having a battery (spoiled food, no lights, no cooking, no heat) during an outage outweigh the $6,200 price tag.

EV: how much is 6kWh?

Our first Leaf was the 2013 model year. That was the year Nissan  boosted cold weather driving range by 20+ miles with the switch to heat pumps, for an estimated 85 total miles. While I was able to get 82 miles from one charge (summer hypermiling), in practice the range was quite a bit less. The worst case, mid-winter driving to and from work in the cold and dark, the range was closer to 50 miles. For Jen’s 32 mile round-trip commute, that mean charging the car every night.

On long trips, recharging an EV has the same level of friction as adding gas to an ICE. In the case of commuting, EV refueling is considerably more convenient:



drive home drive to station
wait in line for pump
park near EV plug pull up to pump
negotiate payment
plug in plug in
wait for tank to fill
unplug (later) unplug
drive away

When the 2016 model year Leaf was released, the battery capacity increased from 24kWh to 30kWh, boosting the EPA rated range from 84 to 107 miles. That extra 23 miles was just enough to get us out to the ski resorts in the winter. It also made quite a difference in how often our Silver Leaf needed to recharge:

snowflake server

I’m in the middle of rebuilding my server. For years I provisioned one-off virtual machines for clients that needed custom solutions. Dedicated IPs for TLS (for shopping carts), custom coded extensions that turned a photo app into a shopping cart, email servers, etc. I’ve been maintaining those VMs for years while the cost of technical debt has been growing.

The base OS in the VMs is years old. As software gets upgraded, the state of the VMs slowly drift and the result is a snowflake server. Upgrades frequently break something. I monitor most services and usually get them fixed before anyone notices. Still. Even on conservative OSes like Debian and FreeBSD, stuff regularly breaks and manual intervention is required. And those manual fixes here and there contribute to the drift.

So I’m rearchitecting everything for composability and simplicity. HAproxy handles all the HTTP redirection and HTTPS termination. The certificate management is now completely automated with Let’s Encrypt and acme.sh. HAproxy routes the requests to the backend web servers. No longer do apache, lighttpd, and nginx handle SSL/TLS or URL manipulation. The web server configs are simpler and require fewer customizations.

Solar 11-month update

On a typical “it rained every single day in April” month, we still managed to skate across the finish line at nearly at Net Zero:

April 2017 household energy
April 2017 household + auto energy budget

Last year I removed all the natural gas appliances and converted everything to electric heat pumps. I sized the 10kW array aiming for Net Zero during the calendar year. That would mean producing enough surplus during the summer to carry us through the winter. It looks like we’re going to miss this year:

2016-2017 household energy budget

Even though we’ll be banking surpluses in May, it won’t close that 7MWh deficit. Our household usage includes over 3MWh of car charging and this last winter was Seattle’s coldest in 32 years. The heat pumps were working overtime to keep the house warm.

Costco Citi Card

While balancing the books I found it disappointing that AmEx dumped access to their site the instant the Costco transferred our accounts to Visa. Companies with better service tend to provide access for a period after cancellation to download statements and the like.

I was at first a little perplexed as the Citi statements begin in July and the last AmEx statement I was able to download was for May. Then I read the fine print in Citi’s site. We just have to create a request and wait 24-48 hours for the PDF statement to appear. Okay, request sent.

Better still, I was able to download all the account transactions and Citi has export formats for any accounting software. Some banks (cough: USAA) can’t seem to understand that exporting account data in OFX/QIF format for accounting software is a useful feature. Anyway, I picked the “since last export” and got transactions starting in mid-2015, so it appears a goodly portion of our account history transferred. Thank you Citi.

TLS management

Let’s Encrypt, TLS certificates, and HAproxy

I’m evolving. As always, the change is being driven by the most pernicious of motivators: pain. I’ve sold, installed, and upgraded SSL/TLS certificates for years. It’s always been mildly painful: I maintain an offline CA where I generate all the keys and CSR (certificate requests). Then I submit the CSRs to whichever Certificate Authority / Reseller has the best current pricing, get back the new signed certificate from the CA, archive it, and finally install the key, crt, and CA chain file at the destination.

It can be painful and annoying enough that clients regularly hire me to install their certificates for them. To reduce the pain, I’ve encouraged long-duration (3+) year certs. I also have custom scripts tailored to my private CA to reduce the keystrokes. Even so, managing a few dozen certificates was onerous. It didn’t help that every application / daemon (apache, nginx, lighttpd, haproxy, dovecot, qmail, postfix, haraka, etc.) has their own special syntax and sometimes format for configuring the TLS certificates.

Two things happened in 2016 that made TLS management not suck:

  1. The Internet Security Research Group released Let’s Encrypt(https://letsencrypt.org). It’s a free and highly automated Certificate Authority that validates domain ownership (via DNS or HTTP) and issues certificates in seconds.
  2. I’ve moved all my web servers behind HAproxy. Now all TLS certs for web servers get deployed to haproxy and the job is done. No messing with lighttpd, apache, or nginx configs. Configure HAproxy get to an A+ at SSLLabs and it covers all the web servers.

Let’s Encrypt provides free signed certificates in just a few seconds, so long as one is willing to invest the time and energy into automating it. I’ve settled on [acme.sh](https://github.com/Neilpang/acme.sh) as my preferred client and once I’ve generated a certificate, it automatically renews and re-deploys it when needed. Just right.

HAproxy now does all the TLS termination, URL routing, scheme upgrades (http -> https), and rewrites. This greatly simplifies the backend web server configs. Need mod_perl, use Apache. Need CGI support, use lighttpd. For everything else I use nginx. Now all of them are simpler to deploy and upgrade.