I'm looking for employment again.
I'm good at Python, Git, Linux, and Django.
I have experience with CI/CD and AWS.
I'd be very excited to work for a nonprofit or to grow skills in Rust, Haskell, or embedded development.
I'm looking for part-time work but I'd consider a full time position that's flexible enough. I'm good at remote work; I cannot relocate.
To obtain a position that meets my needs I can in turn be flexible about compensation.
Available: October 1.
My static site generator "makebakery" is undergoing a bit of a refactor, which should make it a lot easier to use!
Now instead of trying to be some kind of canonical Makefile, you set up some configuration in your own simple Makefile following a template, which `include`s makebakery.mk. Like this:
I'm still working on updating the documentation and demo site which is currently full of lies, but I'll announce a release when it's ready to use for real.
(LT: I doubt that the benefit of avoiding mod_rewrite on Dreamhost in this way is significant or worth the trouble. The Apache wiki says only that their similar virtual-hosts-based approach is "simpler and safer" than using mod_rewrite.) https://wiki.apache.org/httpd/RedirectSSL
#Dreamhost's recommended way to force HTTPS is to use mod_rewrite: https://help.dreamhost.com/hc/en-us/articles/215747758-Force-your-site-to-load-securely-with-an-htaccess-file
But if you don't want to have "RewriteEngine On" for every request, there's an alternative:
Dreamhost lets you serve your HTTPS-enabled site from a different directory than the HTTP site of the same name.
So you can create a directory containing only a .htaccess file with that redirect code in it, and set that as the "web directory" for all your HTTP sites.
In this way, only HTTP visitors will trigger mod_rewrite.
My radio-buttons weren't showing up in Firefox, so I finally went looking for an answer.
Turns out I applied this workaround in chrome/userContent.css several FF versions ago to fix a *different* "my radio buttons aren't showing up in Firefox" bug and completely forgot about it: https://forum.manjaro.org/t/checkbox-problem/34747/4
That workaround is no longer necessary in more recent FF (up to 65 now), and indeed, having it there made a similar-looking problem occur!
When I plug my laptop into its dock thingy, there's some kind of race condition that makes the monitors get assigned their randr names DP-1 and DP-2 in random order. Which means if I save my randr layout they're sometimes the wrong way around.
This script is a quick and dirty hack workaround that figures out which is which based on their serial number (EDID).
Probably also useful if you have one multi-monitor randr arrangement at home and a different one at work.
The USB stick hosting my fileserver's root partition spewed this from dmesg whenever inserted:
> usb1-port2: Cannot enable. Maybe the USB cable is bad?
(There was no "cable" involved.)
Same on multiple computers.
Put it in the fridge for a while.
I figured: it's toast.
I left it out overnight and just on a lark tried it again.
It has completely un-broken itself! 🙃
I still moved its data to a new stick, to be safe.
@datagrok those are Sequoia semper irens, typically called "coast redwoods". Sequoia National Park has old growth stands of giant sequoias (Sequoiadendron giganteum), but no coast redwoods.
Old growth redwoods are definitely amazing. Come up towards the Bay Area and we have parks full of them. And the very tallest ones are in far Northern California, in Redwood National Park, but that's a long trip.
New homepage with fancy animated video is now live at https://snowdrift.coop
We only spent about 2 years of (on and off) work on it, so don't expect perfection. ;)
Hopefully, we'll get around to writing blog post about it sometime soon.
Went and visited some (not "the") sequoias. "The only non-native successful redwood grove in Southern California" at Carbon Canyon regional park in Brea, California.
241 trees, planted in 1975, that have to be watered five times a week with potable (not recycled) water to survive in this climate!
This was much closer to home than Sequoia National Park, but next time we gotta go see the proper old ones
Augh! Twice now, the USB stick hosting my little fileserver's root partition has worked just fine for several months and then spontaneously, irrecoverably died. First a Lexar, then a Samsung. What the heck!?
Is it wear? There's not much I/O activity and I only stored ~10G out of the available 32G so plenty of room to spread writes around
Is it temperature? It doesn't get *that* hot in its closet.
Hypersensitivity to power surges and outages?
I gotta find a better approach.
I bought a no-name USB-C-to-dual-displayport dongle and said "eh, when it turns out to have no Linux support I'll sell it or something." Nope, worked great!
Recently one of my monitors plugged into it started behaving strangely then stopped working altogether. First reaction: "That's what I get for running Debian Testing." Nope, one of my displayport cables had flaked out!
If Linux were a person they'd be offended by my low expectations despite their consistently stellar performance.
I wanted to try out Qubes OS without messing with my existing partitions, so I decided to install it onto a USB stick.
But the installer is a .ISO and I don't want to go find another USB stick to put that onto as well.
Maybe I can run the installer ISO under QEMU and pass-thru the USB stick to it ...?
Linux: sounds legit here u go
Yup it worked! 😎👍
... Except root on this USB stick makes everything run far too slow to be practical 😕
For one brief shining moment in the 1980s-1990s, it seemed like we the people would own and control our own computing infrastructure.
That we wouldn't ever after need permission from opaque central authorities to process data, send messages, create devices, teach machines ideas. No corporations or governments could put themselves between us and the data bits in our machines. We would be free to think.
That moment is rapidly slipping into a history that feels ridiculously over-optimistic.
continuous integration thoughts Show more
Some workflows just re-build after the merge which might work but feels sloppy and redundant to me. Others just assume everything's fine.
Today I realized that you could use the hashes of the commits' associated trees to easily see if any code had changed.
🤔 When running CI, it should find all commits sharing the same tree object and mark them all with the success status. Or it should check for the existence of previously-built trees before launching build/test mechanisms.
continuous integration thoughts Show more
Your CI system does a build and test on each pull request. It uses the GitHub API to apply a success status.
But the resulting merge commit in the first-parent history of master isn't the one marked as passed. And it's not obvious that its code hasn't changed from that of the tested commit.
To handle this, I used to think that CI should build from a local merge commit, but that diverges from typical GitHub PR workflow.
TIL if you're interested in, say, WikiMedia's release engineering process, you can just go spelunking through their whole issue tracker, kanban boards, ticket backlog, and meeting notes.
This is amazing. Every organization should be this open, for-profit or not.
I've had a harder time finding my bearings when it was my *own* employer and it was my paid job to do so!
Here's a fun TIL: Because the ratio of terms in the Fibonacci sequence approaches phi, and because phi is close to the ratio of km to miles, you can approximate conversion between distances with adjacent Fibonacci numbers.
So 2 km ≈ 1 mile, 3 km ≈ 2 miles, 5 km ≈ 3 miles, 8 km ≈ 5 miles, 13 km ≈ 8 miles, etc, etc
If guaranteed minimum income and universal healthcare were a thing, I think so many of my programmer colleagues would immediately take low-income sabbaticals to write high-quality good-ui users-first free and open source software that it would inspire tedious "how was it possible?!?" medium dot com thinkpieces for years and years
I managed to squat 5x5 240lbs. in March, then fell off the wagon, on and off again, on again and stuck to it, and today I just cleared 255lb. That's more than I weigh, and more than I've ever done. Woohoo!
Still can't do a single unweighted pistol squat though, holy heck those are hard
I make software, usually with Python and GNU/Linux.
I like free software and copyleft licenses.
he/him | 38 | southern california | https://datagrok.org
ｃｙｂｒｅｓｐａｃｅ: the social hub of the information superhighway
jack in to the mastodon fediverse today and surf the dataflow through our cybrepunk, slightly glitchy web portal