Authorization, Continued: Experimenting with OpenFGA, Topaz, and Permify

As I mentioned in my previous post, “Devs, Let’s Talk Authorization!”, I’m working on a new, exploratory work project related to authorization. Specifically, we’re gathering authorization requirements from various orgs across our company and building 1-3 proofs-of-concept of a centralized, fine-grained approach to authorization. Right now, each org handles authorization in its own, usually coarse-grained and role-based way. Clarify Current Requirements The first thing I did was gather and clarify my org’s current authorization model/requirements. We’re heavily role-and-permission-based when it comes to authorization, with a touch of attribute-based access control mixed-in (to make sure that, for example, a user can only view resources related to their company, and not other companies). So, RBAC (role-based access control) with a bit of ABAC (attribute-based access control). ...

March 7, 2025 · 5 min · joshuapsteele

This Shouldn't Be Controversial

The following statements should not be controversial, but they sadly are. What would you add to this list? Donald Trump lost the 2020 election. January 6th, 2021, was an insurrection. Congress, not the President (and much less the President’s unelected adviser), holds the power of the purse. The Judicial branch, and not the Executive branch, interprets the law and the Constitution. No one, not even the President, is above the law. ...

February 19, 2025 · 1 min · joshuapsteele

Devs! Let's Talk Authorization

Calling all software developers! As I embark on a new, exploratory work project, I’d like to hear your thoughts on authorization. How have you designed and implemented authorization in your applications? To get into the weeds a bit, have you opted for RBAC (Role-Based Access Control), ABAC (Attribute-Based Access Control), ReBAC (Relationship-Based Access Control), or something else entirely? What tools or libraries have you found most useful in your work? Have you built everything from scratch, or have you relied on existing frameworks? Open source or commercial solutions? ...

January 23, 2025 · 1 min · joshuapsteele

Stay Woke! Ephesians 5:11-14

With fascism on the rise in the United States of America and around the world, and with many so-called “Christians” gladly supporting the rise of the far-right and attributing it to the will of God, I was struck by these words from Ephesians 5 (which were assigned as one of the readings for Morning Prayer today). Ephesians 5:11-14 (New Living Translation, NLT) 11 Take no part in the worthless deeds of evil and darkness; instead, expose them. 12 It is shameful even to talk about the things that ungodly people do in secret. 13 But their evil intentions will be exposed when the light shines on them, 14 for the light makes everything visible. This is why it is said, ...

January 22, 2025 · 2 min · joshuapsteele

Diagnostic Toos for Homeowners

Since buying our first house about a year ago, I’ve gotten really into DIY home repair, home improvement, etc. As a software engineer, I find that working with physical tools on physical problems is a refreshing change of pace after staring at a screen all day! Plus, it’s an excuse to buy a bunch of tools! Speaking of tools, I’ve been thinking about diagnostic tools that would be helpful for a homeowner to own. Here’s a list of the ones I own, organized roughly in order of importance. ...

January 17, 2025 · 2 min · joshuapsteele

Questions at the Start of My Notebook

For the past few years, I’ve loosely followed the “Bullet Journal” method of note-taking. Usually in a Leuchtturm1917 Hardcover A5 notebook with dotted pages (the best!). Whenever I finish one notebook and start another, among other things, I like to write down some key questions and mental models at the front of the new notebook, so that I can easily refer back to them whenever I need to. Here’s what I’ve written at the start of my current notebook. ...

January 14, 2025 · 5 min · joshuapsteele

What is the Best Budget Smart TV?

In November 2024, I bought a 55-inch Hisense U6 4K Smart TV on sale for $350. It’s been great so far! Definitely an upgrade over our old Samsung. I’m not a TV expert, but I did a fair bit of research and the consensus seems to be that the Hisense U6 series is a great deal for the money. Here are some of the online reviews I found helpful: https://www.nytimes.com/wirecutter/reviews/best-4k-tv/ https://www.tomsguide.com/best-picks/best-budget-tvs https://www.rtings.com/tv/reviews/best/budget (Linked from my Questions page, where I keep track of questions I’m asking and answering.) ...

January 13, 2025 · 1 min · joshuapsteele

Dinner Prayer Highlights from Our 4-Year-Old

Until the past few days, our 4-year-old son, Andrew, has mainly prayed something like the following before dinner: “Dear Jesus, help us to have a good day tomorrow, and help this food to be good.” However, in the past few days, he has started to pray more spontaneously and creatively before dinner. Here are some highlights: “Give us this day our holy bread” “Help us worship you even when we are in heaven” ...

January 10, 2025 · 1 min · joshuapsteele

O Come, O Come, Emmanuel: Extra Verses

“O Come, O Come, Emmanuel” has long been one of my favorite hymns. This Advent, I’ve decided to write some additional verses. They emphasize God’s heart for the poor and the powerless. If you read the Bible looking for these themes, they show up almost everywhere. However, in particular, I’ve drawn from Leviticus 25, Psalm 113, Isaiah 58, Amos 5, Luke 1, and Luke 14. O come, Defender of the weak, Teach us their welfare first to seek. May widow, orphan, refugee Find rest within Thy jubilee! ...

December 7, 2024 · 1 min · joshuapsteele

Troubleshooting Hugo to Micro.blog Crossposting

UPDATE: This now seems to work! The post made it to Micro.blog, BlueSky, and Mastodon, at least. Just not to Threads. I’m trying to troubleshoot what’s going on with my current crossposting configuration between my Hugo website, my Micro.blog account, and my accounts on BlueSky, Mastodon, and Threads. What’s supposed to happen is that this blog post, after I merge it to my GitHub repository, will end up on the JSONfeed at https://joshuapsteele.com/blog/feed.json. ...

November 19, 2024 · 3 min · joshuapsteele

Five Questions for Coming to Grips with Your Life

Source: Four Thousand Weeks: Time Management for Mortals by Oliver Burkeman Where in your life or your work are you currently pursuing comfort, when what’s called for is a little discomfort? Are you holding yourself to, and judging yourself by, standards of productivity or performance that are impossible to meet? In what ways have you yet to accept the fact that you are who you are, not the person you think you ought to be? In which areas of life are you still holding back until you feel like you know what you’re doing? How would you spend your days differently if you didn’t care so much about seeing your actions reach fruition? Want more self-elicitation questions like these? Check out “Questions Worth Asking.” ...

November 13, 2024 · 1 min · joshuapsteele

Ten Tools for Embracing Finitude

Source: Four Thousand Weeks: Time Management for Mortals by Oliver Burkeman Adopt a “fixed volume” approach to productivity Keep two todo lists, one unbounded and one limited to a certain number of items (max 10); you can’t add a task to the second list until you’ve completed a task Might also need an “On Hold” or “Waiting For” todo list Set predetermined boundaries for your daily work Focus on only one big project at a time Decide in advance what to “fail” at (“strategic underachievement”) Focus on what you’ve already completed, not just on what’s left to complete Consolidate your caring (pick your battles!) Embrace boring, single-purpose technology (like the Kindle) Seek out novelty in the mundane Be a “researcher” in relationships (be curious, on purpose) Cultivate instantaneous generosity (act on the impulse to be generous right away) Practice doing nothing

November 13, 2024 · 1 min · joshuapsteele

Ask Me Anything This November: WeblogPoMo AMA

I’d love to blog more regularly, and I love answering questions. So the “WeblogPoMo AMA” challenge caught my eye! For this challenge I want to foster writer interaction: write a blog post starting with a question—the AMA—and then answer the question yourself in the blog post. Others will likewise write AMA/question posts, but also answer the AMA/questions from other bloggers, linking to their initial post. I brainstormed a bit on this idea when I first thought about creating WeblogPoMo Challenges. ...

November 1, 2024 · 1 min · joshuapsteele

God's Economy

In God’s economy, the most important people are not the billionaire, the business owner, or even the blue-collar worker. Instead, in God’s economy, the most important people are the widow, the orphan, and the immigrant. Which is to say, the poor and the powerless. I’ve previously gone into depth on what the book of Proverbs has to say about poverty and wealth, as well as how Christians should think about wealth. Here are some more biblical passages relevant to the topic. All quotes are from the New Revised Standard Version (NRSV): ...

October 13, 2024 · 7 min · joshuapsteele

Requiem for a Cousin on His Birthday

Today should have been my cousin Eric’s 32nd birthday. Instead, having lost him earlier this year to some serious health complications after a devastating motorcycle accident, we gathered to remember him and celebrate his life. Another member of our family gone too soon. Two passages of Scripture came to mind as I thought about Eric today. First, this one from Ecclesiastes (which I previously wrote a bit about after the untimely death of my Uncle Tim). ...

September 28, 2024 · 5 min · joshuapsteele