makebakery, my static site generator (formerly known as m4-bakery) has had a spike of recent improvements!
Among other things,
- bumped the demonstration site to use bootstrap 5.0.0
- improved module docs and several demo-site pages
- new modules enabling:
-- `make serve` to stand up a local webserver for previewing changes
-- `make watch` for automatically running make when source files change
-- `make gh-pages` for deploying your static site to github
With a bit more work I might even tag a commit with a first release number and start a changelog!
rms, free software
because a mostly-free-libre system is less dangerous to a user than their giving up and retreating to a familiar, working, but entirely proprietary system
and users who use mostly-free-libre systems with one unfortunate nonfree component are those best positioned to jump to an entirely-free-libre system, the moment they can escape whatever circumstances forces them to accept that nonfree component
rms, free software
maybe this is an opportune time to revise & republish "scorn; don't shun"
we agree that non-free software, binary blobs, etc., are bad
but instead of taking the rms tack of not mentioning its existence (shunning)
or just shoveling it all in for convenience as if it's no big deal
a freedom-respecting os should highlight the dangers in each piece of available non-free software, to educate users
and then bend over backwards to help informed users install it, if they accept the risk
Taking a step back and thinking,
What am I?
What has been the deliverable from my existence? What am I to strangers, other than what I have written?
What do I want to express?
Do I like this collection of writing?
Do I want it to represent me?
What value is there in expressing myself if I'm not very unique, or accomplished, or interesting?
I keep thinking "maybe no, maybe none" and that I should replace my personal homepage with a spinning beachball or similar. Embrace that I am one instance among billions and build the appropriate site for that which may be none at all.
But I'm reminded of the time that I bumped into an old colleague and one of the first things he said to me was how much he liked that zany writing about impossibly ambitious project ideas, that I was thinking of deleting even then. Huh.
What to do.
Made a Python 3 server for #TiddlyWiki 5:
It was more difficult than I expected.
Turns out, browsers don't send EOF, so you can't do the typical thing of reading from the file-like object self.rfile until it doesn't return any more data.
By paying attention, understanding and tuning things where I can, and without the drastic whole-system rewrites I irresponsibly dream of embarking upon, I've successfully cut my employer's technology bill in half 💸
Including cutting our AWS bill 66% -- the lowest it's been since 2013 -- and our Heroku bill 80% -- lower than it's ever been. While running the same or more services 😎
TIL AWS Lambda's Python3 configures a handler in the root level logger
so your call to logger.basicConfig(level=INFO) that works just fine in local dev no longer has any effect
and their handler keeps the default level (WARNING)
and all your calls to logger.info() evaporate in production
dear #boston friends and mufos
the founder of your vegetarian-for-meat-lovers restaurant Clover Food Lab is doing a live cooking show on youtube while the restaurants are closed for coronavirusmas
i am entirely biased but i have been very much enjoying it
I've been keeping my dotfiles under version control for ages. It started out as a CVS repo. Remember those? Then Subversion, then Git.
After I made $HOME a Git repo, I eventually ran "git clean -fdx" from the wrong place, and Git helpfully walked up the tree and deleted almost my entire home directory. 😭
So I wrote a script to help me manage a collection of dotfile symlinks into a repo of un-dotted files instead, for safety, and didn't look back for 10+ years.
Somebody recently tooted a link to https://drewdevault.com/2019/12/30/dotfiles.html and, well I sortof knew it was possible, but seeing a working example was enough to inspire me to give it another shot.
I abandoned my script and reorganized my dotfiles repo. $HOME is now a git clone, it works fine, with less cognitive overhead, few symlinks, and no unintentional "walking up the tree to the wrong repo" problems.
Also separated out all the files intended for system-level configuration into a new repo:
Please join us in the signing of this petition and consider adding years to your .org registration today.
5541 letters have currently been sent to stop the sale - add your name now!
Help stop the sale of Public Interest Registry to a Private Equity Firm
With the news of the .org TLD being sold to a private equity firm, I've been thinking that maybe it's time to abandon the datagrok.org domain that I've held for 19 years.
There's a campaign to stop the sale (https://savedotorg.org/) but I've always felt like the centralized domain name registry implements artificial scarcity and rent-seeking.
So maybe instead of just choosing a different one, now is a good time for me to reexamine the value of keeping a domain name "forever" and explore alternatives.
Oh hey, keybase.io has native support for many Mastodon instances now.
Feeling smart because I implemented a Ring List Zipper in #elixir to help me solve a programming puzzle 🤓👍
It's similar to the List Zipper from the "Zippy" library, but includes some unique functionality.
Newbie adventures in trying to lazily tokenize an input stream with #elixir
With a link to someone's massive blog post on the same subject with a more thorough walkthrough: https://www.poeticoding.com/elixir-stream-and-large-http-responses-processing-text/
Well, that took a while but my changes to add support for the SH1106 OLED display driver IC are now merged upstream into QMK master! 🎉 https://github.com/qmk/qmk_firmware/pull/5787
Does this mean I can now put "C-language embedded driver development" on my resume? 😲
(no, my changes were tiny)
I got a little 128x64 I2C OLED display for $2.50. It said in the product listing that it used an SSD1306 driver IC, which made me think it would work with #QMK firmware.
I hooked it up but it only showed static.
So I read some datasheets and learned some stuff and did some hacking and now (or very soon) QMK will support this OLED display too! (Turns out it actually uses an SH1106.)
Pictured: the wireless receiver for my Mitosis #mechanicalkeyboards, with a speaker and this OLED display attached.
I make software, usually with Python and GNU/Linux.
I like free software and copyleft licenses.
he/him | 38 | southern california | https://datagrok.org