Jesse B. Hannah (she/her/hers)Jesse B. Hannah(she/her/hers)

Recent Articles

  • Using Rails 7.0's #invert_where Safely

    5 minute read

    Rails 7.0 introduces the ActiveRecord::QueryMethods#invert_where method on ActiveRecord query chains, and at a glance this looks like a more elegant solution to the problem I’ve addressed previously of negating ActiveRecord scopes using Arel. But it has one distinct and dangerous difference: in its current implementation, it inverts all preceding conditions in the query, including those contained within scopes — including the default scope of a model. The consequence of this is that chaining scopes, where just one scope or condition includes #invert_where, will give different results for different orderings of the chain. There is, however, a way to use it safely while also improving my previous .not scope implementation (and fixing a minor bug with it that I discovered while working on the example repo for this post).

  • 🏳️‍⚧️

    5 minute read

    I’m a transgender woman. My name is Jesse Brooklyn Hannah; I go by Jesse, Brooklyn, or (my favorite) Brooke; and my pronouns are she/her/hers. And I’m still the same person I’ve always been, except I’m no longer wearing the façade of a gender identity that was assigned to me based on my physical body. It’s wonderful to meet y’all again, and to finally do so as my true self! 😄💕

  • Black Lives Matter

    1 minute read

    All lives matter in theory. In practice, not all lives matter because of the systemic racism and injustice under which people of color have suffered since the American continent was first colonized. Anyone who says otherwise is wilfully blinding themselves to the truth.

    It’s not a zero-sum game, either. Only once Black lives matter, Brown lives matter, indigenous lives matter, and LGBTQ+ lives matter, will all lives truly matter. And when that day comes, all lives will be better as a result.

  • Secure k3s over WireGuard with Kilo

    6 minute read

    I’ve ended up collecting a handful of SSDNodes VPSs, and have been fascinated with Kubernetes lately, starting with projects at work and progressing into my own research, so putting the two together was obvious. The only hangup I had is that the VPSes were only assigned public IP addresses and I wanted to ensure that intra-cluster communication would all be secure, preferably over WireGuard for its combination of sufficient security with high performance and low overhead. I also wanted a frictionless experience with setting up the Kubernetes cluster itself, and had already used Rancher’s k3s on a Raspberry Pi cluster at home. After some Googling and trial-and-error, I disovered Kilo and found it to be the most straightforward way to mesh my VPSs together and secure their intra-cluster traffic.

  • “Bag Man,” a Rachel Maddow Podcast

    1 minute read

    This is a story that is not well known. But it really should be…especially, maybe, now.

    It’s the story of a criminal occupant of the White House…whose crimes are discovered by his own Justice Department…

    Who then tries to hold onto power…by obstructing the investigation into his crimes, by smearing and threatening the prosecutors who are investigating him…and by trying to convince his legion of supporters across the country…that none of the allegations are true. That it’s all just a big witch-hunt.

    And if that sounds familiar…it’s because history…is here to help! I firmly believe it.

    If you caught Rachel Maddow’s scoop last night about what Spiro Agnew was up to in the years after his resignation (and how he relates to the Justice Department’s regulations about whether or not a sitting President can be indicted), but haven’t yet listened to “Bag Man,” you owe it to yourself to check it out. In fact, even if you haven’t watched any of The Rachel Maddow Show, you owe it to yourself to check “Bag Man” out anyway.

  • Mark Kelly for Senate

    1 minute read

    I’m not crying, you’re crying:

    You know, it becomes pretty obvious pretty early when you get into space that we’re all kind of in this together.

    Gabby Giffords graduated from University High School in the year I was born; 17 years later, while I was a senior at UHS, she was elected to represent the Congressional district my family lived in; five years later, in 2011, she was critically injured in a mass shooting. Since then, she and her husband have been courageous, omnipresent, and tireless in their campaign for sensible gun safety reforms. Captain Kelly has my unreserved and enthusiastic endorsement for U.S. Senator from Arizona.

  • Handling Disappearing .egg-info Directories with Docker Compose and Python

    3 minute read

    So it’s been a while, but lately I’ve been writing Python (and Erlang!) for my full-time job at Nextiva, where we have a microservice architecture mainly comprised of single-page apps, backed by Python applications accessed through an API gateway. And as you’d expect, we make heavy use of Docker and Docker Compose for local development. One thing that has come up a handful of times, however, is that an application’s Docker image builds just fine, and even runs by itself, but when mounting the application’s source code as a Docker Compose volume, the image’s Python fails to find the package.

  • Vin Scully Is a Legend, But He’s Not a Saint

    1 minute read

    Keith Olbermann writing for GQ:

    This is not to say Vin Scully is not a terrific and endlessly patient human being, nor that anyone who has treated him with reverence, nor that the succession of ballplayers and managers who have bestowed the ultimate role-reversal praise by making the pilgrimage in full uniform to him in the press box are being insincere or overdoing it. It’s just that the real Scully—the one who once made us think not of Christ but of Manson—is far more human and far more capable of the unexpected. And thus far more praiseworthy.

    I grew up watching Cubs games on WGN and going to Tucson Toros and then Sidewinders minor league ball games. Getting a full, instant statistical analysis with every pitch over the internet has been a thing for almost my entire adult life. But the most formative part of my introduction to baseball as a kid and my love for the game now was sitting by the pool with my dad on Sunday afternoons, listening to AM radio broadcasts of Los Angeles Dodgers games called by Vin Scully (and sponsored by Farmer John). Every time I read about him I come across a story that’s entirely new to me, and this tribute by Olbermann has several good ones.