What if I told you this was only ~10% of them?

Last night was the first art show at Atlas Local, and I was lucky enough that two different people wanted to collaborate!
First up, my friend Dorcas Lanyero and I collaborated in a giant Mesh Network inspired painting! It turned out incredibly; and there are still some bits we want to improve (such as actually painting on the photovolic shading/projections onto the vertical greenhouses)
Also: Em Blitstein embraced the inner 90s punk in us all and made a zine; with some of the liner notes and a poster design I’ve been toying around with!
Posted a quick update about the Ruby Passkeys organization in the passkeys issue for Devise
The gist is:
City Skylines 2 really has to ship with proper transit & walkability 🤞🤞 DLCing that is ridiculous www.rockpapershotgun.com/paradox-a…
👋 Hey y’all! Unfortunately, I got laid off from my job. I’m actively looking for work; if you’re interested in hiring someone with 16+ years of practical, real-world, customer-focused development work; please reach out! 😄
I also love doing customer support, developer relations, build-chain improvements, and engineering management.
I’ve put together a “I’m for hire” page below
I am delighted to inform you that this riiiiips louiezong.bandcamp.com/album/let…
Install the localhost
gem, which allows Puma to use self-signed certificates in your test environment: https://github.com/puma/puma/#self-signed-ssl-certificates-via-the-localhost-gem-for-development-use
group(:test) do
gem 'localhost'
end
It’s not documented anywhere in Capybara, but Capybara’s built-in Puma handler allows you to issue a custom bind
: https://github.com/teamcapybara/capybara/pull/2028
Capybara.run_server = true
Capybara.server = :puma, { Host: "ssl://#{Capybara.server_host}"}
I found that you do need to explicitly pass the Capybara.run_server = true
argument in your system tests
You also need to have Selenium Webdriver explicitly accept insecure hosts: https://developer.mozilla.org/en-US/docs/Web/WebDriver/Capabilities/acceptInsecureCerts
For example:
Capybara.register_driver :chrome do |app|
options = Selenium::WebDriver::Chrome::Options.new
options.accept_insecure_certs = true
Capybara::Selenium::Driver.new(app, browser: :chrome, options: options)
end
With that, Capybara runs with self-signed certificates in development, and the WebDriver will accept them.
Because of how macOS does not handle wildcard DNS resolution for localhost
by default, if you need to run your tests using subdomains, you’ll need to use a loopback DNS service like nip.io
For example:
Capybara.app_host = "https://myapp.127.0.0.1.nip.io"
Depending on how your existing tests are setup, you might also need to setup a custom initializer block in config/environments/test.rb
to override the tld_length
#config/environments/test.rb
Rails.application.configure do
#...
config.hosts << “.127.0.0.1.nip.io”
if ENV[“PREP_SYSTEM_TESTS”].present?
config.action_dispatch.tld_length = 5 # 127.0.0.1.nip.io = 5 top-level host details to throw out
Rails.application.routes.default_url_options[:host] = “127.0.0.1.nip.io” # Necessary for routes to play nicely
# …
end
end
The next project I’m working on: Data-augmented composition. In essence: a way to use data as an input for composition. It won’t drive the entire piece, because I still want a human elements but the transcendent nature of generative music is appealing to me
I am now the proud owner of the most cumbersome sampler out there, thanks to #SuperMIDIPak (https://www.supermidipak.com)
Rate Sheets are in general beta for Noko! nokotime.com/rate-shee…
See how you’re doing in 2023, and make sure you’re spending your work time on the most valuable projects
Listening to Off The Wall for the first time, uh, and 2010s Justin Timberlake was really just copying the answers over MJ’s shoulder, wasn’t he?
The UJS pattern that Rails has (had? The Rails JS & documentation story is messy) is arguably the best bridge that’s been implemented between client & server.
It can be rigged up with basic data attributes, it is powered by the browser’s native event-handling. That makes it easy to extend/customize, it doesn’t get in your way, and there isn’t a deadly tight coupling between the client & server codebases
I’m BEGGING any competent iOS/macOS developer to build a competitor to TextExpander. It’s so damn clunky for no reason, the iOS keyboard straight-up doesn’t work, and their Electron UI is garbage. I’d pay a subscription for a replacement in a heartbeat
In a day of firsts, I also got my first YouTube review! youtu.be/fhmF-HnJp…
I hadn’t fully internalized some of the points he makes about my music, but hearing it said out loud there’s definitely stuff that’s right on the money
Also “this might be drier than usual” - is the story of my life 😂
The corollary of this software architecture discussion I posted a few weeks ago is that you’ve gotta be consistent about it.
In this week’s case, it means begrudgingly realizing “well, hell, this actually needs a rewrite.” Even though I’m not looking forward to it; it’s 100% going to help by reducing the number of hacks & simplifying the codebase.
Kept going to refresh & try to find @ivory@tapbots.social today on the App Store, subscribed to Premium. A mixture of excitement at a first-class Mastodon client, & seeing an indie developer get back up after the Twitter shitshow