Monday, December 28, 2020

the yak queue: end of year 2020

Yak shaving:

Noun: yak shaving (uncountable)

  1. Any apparently useless activity which, by allowing you to overcome intermediate difficulties, allows you to solve a larger problem.
    I was doing a bit of yak shaving this morning, and it looks like it might have paid off.
  2. A less useful activity done consciously or subconsciously to procrastinate about a larger but more useful task.
    I looked at a reference manual for my car just to answer one question, but I spent the whole afternoon with my nose buried in it, just yak shaving, and got no work done on the car itself.

As Lars is fond of saying, “queue your yaks, don’t stack them”.

That’s good advice which I’m bad at following, but early in 2019 I started a list of yaks where I can stash problems as they come up. Sometimes, at least, I manage to put something on that list and then go back to whatever I was nominally working on. I think I would recommend this practice as a way to eliminate some brain clutter.

It’s the tail end of the year now, cold and snowy outside, and I have some days off of work, so it seemed like a good time to go through the yak-shaving list and try some things. Here then is brief documentation of some problems solved (or further complicated) along the way.

linux audio: pacmd, pavucontrol, and pasystray

I have a Behringer UMC404HD audio interface for recording synthesizer output and other audio. You plug it into USB and it gives you some new interfaces. Works out of the box with Audacity and Ardour, no driver fiddling required. You can plug headphones into it and monitor what it’s recording, or use it as an output from the computer.

This all works pretty well, but at least on my Debian Buster system, it made juggling the builtin sound card, a set of external speakers, and the headphones plugged into the UMC404HD kind of clunky.

I searched and found out that you can use pacmd at the command line to switch which audio streams are going to which “sink”:

# Get a list of sinks - i.e. output devices, I guess:
pacmd list-sinks

# List sink inputs, i.e. apps sending audio somewhere:
pacmd list-sink-inputs

# Move an input to a different sink, for example from external
# sound card to builtin:
pacmd move-sink-input 79 0

Unfortunately, pacmd has verbose output and is tedious to work with. I was afraid I was going to wind up writing some kind of hacky wrapper script, but then people on Mastodon told me about pasystray and pavucontrol, which expose GUIs with a view of what’s playing and let you select what hardware it goes to. pasystray in particular gives you a little tray icon, which is pretty much what I wanted. There’s also pamix, which seems to expose some of the same info in a terminal interface.

These are in Debian, so:

sudo apt install pavucontrol pasystray

Not perfect, but much improved. I added pasystray to my xmonad startup script.

limiting wacom tablet pen input to a single screen under X.Org

I have a Wacom Intuos pen & touch drawing tablet. I don’t think this version has been made for a while, but it’s probably similar to current models. It acts as both a pen input device and a trackpad. I’ve always had the problem, when using two displays, where the pen input is mapped across both screens so that (typically) whatever image I’m working on I can only use half the tablet for.

I haven’t done much drawing on the computer since I got a second monitor anyway, so I never dug into it all that deeply. This time when I looked I found a blog post from 2017 on feldspaten.org with pretty clear instructions.

I wound up running (sample output in comments):

# I didn't have this installed:
sudo apt install xinput

xrandr | grep primary 
# DisplayPort-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 598mm x 336mm

xinput | grep -i Wacom
# ⎜   ↳ Wacom Intuos PT M Pad pad                   id=16   [slave  pointer  (2)]
# ⎜   ↳ Wacom Intuos PT M Pen stylus                id=17   [slave  pointer  (2)]
# ⎜   ↳ Wacom Intuos PT M Pen eraser                id=18   [slave  pointer  (2)]
# ⎜   ↳ Wacom Intuos PT M Finger touch              id=19   [slave  pointer  (2)]

xinput map-to-output 16 DisplayPort-0
xinput map-to-output 17 DisplayPort-0
xinput map-to-output 18 DisplayPort-0

I left the “Finger touch” input alone, and sure enough the pen input winds up locked to my primary display while the tablet can still be used as a trackpad across both displays.

Not totally perfect and I’m not sure what the appropriate way to make this permanent is, but at any rate it removes a frustration and makes MyPaint fun to use again.

google pagespeed metrics for p1k3.com

I don’t generally worry about Google’s opinion of this website, but it seemed vaguely useful to be aware of the things they’re tracking here. Profiling usually reveals something you’ve missed. So I read through the PageSpeed Insights for p1k3.com. A few things:

  • They suggest inlining CSS and JavaScript files. This would be easy enough, I guess, but I’m probably not going to do it. It’d bulk up each page with a bunch of boilerplate and anyway it kind of grosses me out.

  • Enable text compression: Ok, easy enough. I uncommented the line gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; in /etc/nginx/nginx.conf, which upped the score from 90 to 98, so I guess it just wasn’t enabled for… Some type. See also: nginx docs on compression.

  • They suggest minifying JavaScript. There’s a copy of jQuery on here - used for almost nothing, but handy every now and then. I swapped it out for the minified version of the latest version from the official download page. That got the score to 100.

  • It looks like I could tweak cache lifetimes on some files, but I think I won’t bother.

displaying moon phase emojis for current phase of moon

A while back I learned about the moon phase emojis:

🌑 🌒 🌓 🌔 🌕 🌖 🌗 🌘 🌑

I immediately wanted a way to display these in the terminal for (approximately) the current phase, but I didn’t initially have much luck finding a utility that would just spit out the phase of the moon without calling a web API or anything.

I realized while digging into this that gcal will display moon phases, although the documentation is impenetrable and trying to construct the right format string gave me a headache, so on to other approaches…

Paul Carleton wrote up a solution in Rust which uses a US Navy Observatory API, but I’d rather network access not be a requirement.

I did find a handful of libraries:

Of these, Samir Shah’s PHP code was the least hassle to work with. It doesn’t really satisfy my goal of “a shell script I can toss in ~/bin and use for whatever”, but it lets me stop thinking about the problem, so here’s a few lines of PHP called phasemoji (also on packagist, though that distribution isn’t set up in any kind of useful way).

Also, because I’m a dumbass, I bought a novelty domain and set up a web service. Behold: phase.city.

p1k3 / 2020 / 12 / 28
tags: topics/audio, topics/emoji, topics/google, topics/linux, topics/moon, topics/phase-city, topics/phasemoji, topics/php, topics/technical, topics/yak-shaving

Saturday, December 5, 2020

the garden cart

the short version

I’ve been lugging a lot of heavy stuff around the place lately, which has had me wanting a utility item that was a staple of the gardening and building projects of my childhood: A garden cart.

My parents own several of these by now, but there’s a specific version I think of as The Cart. It’s probably been around for 30 years, give or take. I wrote about it back in 2009:

It consists of two wheels, four pieces of plywood, and some metal tubing + trim. Its construction is far less complex than that of most bicycles. It’s easy to load, capacious, and surprisingly sturdy. The wheels are positioned so that the cart seems almost to lift itself when you tug upwards on the handle. It moves easily over broken ground. It stands square on one end for dumping or storage.

Theirs turns out to be a Garden Way cart; unfortunately a company that went bankrupt a while back. Looking for the closest approximation I could find, these are what I came up with:

I’ll probably order one of those (although reading reviews of both has me nervous about materials & build quality). I’d also be remiss not to mention the Whizbang Garden Cart, a wooden do-it-yourself design (by a guy also notable for his homebrew chicken plucker):

the long version

I’ve wanted one of these for years, but I spent a lot of this summer & fall dragging tools, dirt, and building materials around our yard, and when I saw a recent Mastodon post with a cart in the background I decided to do something about it. I spent an evening grubbing through search results, and bookmarked a bunch of stuff along the way.

Garden Way seems to have been out of business since 2001, at least under that brand name, which it appears was once the parent company of Troy-Bilt. From the depths of Troy-Bilt’s support site, an article about parts for Garden Way carts:

Problem Where can I order parts for Troy-Bilt & Garden Way Garden Carts?

Solution These garden carts are products that we have licensed another company to build and support. Service, parts and/or warranty inquiries should be directed to the phone numbers and address below: …

Older Models: Prior to the 2001 closure of Garden Way Inc., similar garden carts were sold as “Garden Way Garden Carts”.

And one about Garden Way’s bankruptcy:

Problem What happened to the OLD Troy-Bilt manufacturing company?

Solution The product brand names Troy-Bilt® and Bolens® were formerly manufactured under the parent company Garden Way Inc. of Troy, NY.

In 2001 Garden Way Inc., filed for bankruptcy and is no longer in business.

On September 1, 2001 MTD Products Inc. out of Cleveland, Ohio purchased most of the remaining assets under the Troy-Bilt® and Bolens® names from the bankruptcy court.

MTD Products Inc. then transferred the Troy-Bilt® brand to the Troy-Bilt LLC Corporation. Troy-Bilt LLC Inc. is now manufacturing Troy-Bilt® brand outdoor power equipment.

There’s a New York Times obituary for Lyman P. Wood, the founder of Garden Way:

“Lyman was an incredible mix of entrepreneur, futurist and marketer,” said David Schaefer, a Burlington public relations man who was once host to a syndicated gardening television program about Mr. Wood’s company. “Our last conversation was about how are the political systems and resources of Earth going to stand up to increased population growth.” …

Mr. Wood is known for his book, “The Have More Plan,” a 1944 volume offering a thrifty wartime population a way to live off the land.

In the 1960’s he founded the privately held Garden Way Manufacturing Company, expanding New York’s Troy-Bilt rototiller company into publishing, retail stores and other ventures.

Which brings us to the carts themselves, in their current incarnations:

  • Gardener’s Supply Company
    • Large Gardener’s Supply Cart - USD 349.00
    • 66″ long, 42.25″ wide, 30″ high
    • “For over 25 years, our garden carts have been a beloved tool of gardeners everywhere.”
  • Carts Vermont
    • Large Garden Cart - USD 399.95
    • 67.25″ long, 41.50″ wide, 30.25″ high
    • “Home of the original “made in Vermont” garden cart and multi-purpose hauler. Carts Vermont has the tried and true garden, firewood, and utility carts for over 30 years!”

Based on photos and slightly differing measurements, I don’t think those are exactly the same cart off of the same assembly line, but they’re close enough they must have originated from the same plans somewhere along the way.

I got closer to an origin story with this piece by Nancy Wood - Lyman Wood’s daughter:

But first, here’s a bit of clarification about the origin of Country Home Products. The article says it was founded by Lyman Wood (my father) in the 1960s and that it “became known as Garden Way.” In fact, they were two completely separate companies. Lyman and others founded Garden Way in the 1960s with the rebirth of the original Rototiller, which became the Troy-Bilt rear-end tiller manufactured in Troy, New York. That successful mail-order business provided the funding for the growth of several Garden Way divisions in Vermont, including Garden Way Publishing (books for country living), Garden Way Research (manufacturer of the Garden Way carts) in Charlotte, plus the Garden Way Living Center retail store and the nonprofit Gardens For All in Burlington.

Unfortunately, as it grew larger, not everyone ascribed to that mission. A group of dissidents in Troy who were more concerned about profits masterminded an internal takeover on January 28, 1982, ousting Lyman and other key employees in Vermont on that day. Within two years, all of the Vermont operations had been sold or closed and over 200 employees relieved of their jobs. The nonprofit, Gardens for All, was the one exception, and it continues today as the National Gardening Association.

Many of those Vermont employees started new businesses (such as Vermont Teddy Bear, Gardeners Supply and Williamson Publishing), and Lyman was no exception. Even though he was forced out of Garden Way, he was still subject to a non-compete agreement. Garden-related products were out, so he investigated other possibilities. With his friends John Gibbons (former owner of Harrington’s) and Dick Raymond (former gardening guru and author at Garden Way) he came up with the name Country Home Products.

Drama, intrigue, garden industry strife!

Anyway, based on this, it seems like the Gardener’s Supply cart is a clear lineal descendant of the original. I’m pretty much assuming the same is true of the Carts Vermont one — though I haven’t seen anything to indicate what, if any, relationship they’ve got to the original company / factory.

directions for further research

I wound up ordering a copy of What a Way to Live and Make a Living: The Lyman P. Wood Story, by Roger Griffin.

Mostly I just want to buy a cart, but there’re hints of a cultural history lurking in this kind of thing. Back-to-the-land ideas that were circulating in the 1960s–70s, mail-order retail, the ubiquitous rototiller infomercials of the 1990s, whatever it is that leads people to do things like burn wood for heat and can their own green beans. It’s probably roughly one step from the Garden Way garden cart to, say, the Whole Earth Catalog.

I’m not sure how much I’m really going to pull on any of those threads, but it’s a good reminder that most things run deeper than it seems at first.

p1k3 / 2020 / 12 / 5
tags: topics/garden, topics/garden-carts, topics/lawn-and-garden, topics/tools