Author Archives: ronaldpringadi

The Null Coalescing Operator: A Small PHP Feature That Quietly Changed Everything

If you’ve been writing PHP for a while, you probably remember the days of nested „isset()” checks cluttering up every template and controller. Since PHP 7, there’s a much cleaner way — and if you haven’t fully embraced it yet, … Continue reading

Posted in PHP | Tagged | Comments Off on The Null Coalescing Operator: A Small PHP Feature That Quietly Changed Everything

Did You Know? Python’s Walrus Operator Can Make Your Code Cleaner

Did you know? Since Python 3.8, you can use the walrus operator ( := ) to assign a value to a variable as part of an expression. It’s a small piece of syntax that can meaningfully tidy up loops and … Continue reading

Posted in Python | Tagged | Comments Off on Did You Know? Python’s Walrus Operator Can Make Your Code Cleaner

Did You Know? Python Dictionaries Preserve Insertion Order

Did you know? Since Python 3.7, the built-in 1dict type officially preserves the order in which keys are inserted. Before that, if you needed ordering guarantees you had to reach for 1collections.OrderedDict . Today, a plain dictionary is enough for … Continue reading

Posted in Python | Tagged | Comments Off on Did You Know? Python Dictionaries Preserve Insertion Order

BOLA in a Laravel Livewire app: when client-side state is the only thing standing between users and admin actions

A penetration test landed an interesting finding on a Livewire-powered admin panel I work on. The summary on the report read: Broken Object-Level Authorization (BOLA). A standard user can change a tenant-wide “who can access these assets” setting by replaying … Continue reading

Posted in Laravel, PHP | Tagged , , , , , , | Comments Off on BOLA in a Laravel Livewire app: when client-side state is the only thing standing between users and admin actions

Azure AD, Google Directory, and SCIM: picking a user-sync story for a multi-tenant Laravel app

Late 2024 I spent a few weeks digging into how a multi-tenant Laravel platform I was working on should let tenant administrators pull users in from external identity providers. The customer asks were predictable — “we use Azure,” “we use … Continue reading

Posted in Laravel | Tagged , , , , | Comments Off on Azure AD, Google Directory, and SCIM: picking a user-sync story for a multi-tenant Laravel app

Free Azure AD SCIM provisioning to a Laravel app on your laptop, via home router + dynamic DNS

In the last post I sketched why SCIM (System for Cross-domain Identity Management) won out over direct Azure Active Directory (Azure AD) and Google Directory integrations for a multi-tenant Laravel app I was working on. This one is the hands-on … Continue reading

Posted in Laravel | Tagged , , , , | Comments Off on Free Azure AD SCIM provisioning to a Laravel app on your laptop, via home router + dynamic DNS

Laravel Jobs, Queues, Batches, and Redis: A Field Guide

Laravel’s queue system is one of those features you can use for years without really understanding what’s happening underneath. You call SomeJob::dispatch(), a worker somewhere picks it up, and life goes on. But the moment a job mysteriously runs twice, … Continue reading

Posted in Laravel | Tagged , , , | Comments Off on Laravel Jobs, Queues, Batches, and Redis: A Field Guide

Laravel Sail: a developer’s cheat sheet 🐳

Laravel ships with Sail — a thin command-line wrapper around docker compose that gives you the whole Laravel toolchain (PHP, MySQL, Redis, Mailpit, Node) in containers, without you needing to install any of them on your host. The only thing … Continue reading

Posted in Web Development | Tagged , , , | Comments Off on Laravel Sail: a developer’s cheat sheet 🐳

The Core AWS Stack vs Lightsail: When Building Blocks Beat the Bundle

Amazon Web Services (AWS) gives you a Lego bin the size of a warehouse. Powerful, but overwhelming when you just want a website online. Before you can decide whether the full stack is worth the complexity, it helps to know … Continue reading

Posted in AWS | Tagged , | Comments Off on The Core AWS Stack vs Lightsail: When Building Blocks Beat the Bundle

GraphQL for Java Developers: What You Actually Need to Know

GraphQL has been on the Java back-end radar for a while, mostly as something the front-end team kept bringing up. In 2022 that shifted. Spring for GraphQL 1.0 became generally available in May. The official Spring team now provides first-party … Continue reading

Posted in java | Tagged , , , | Comments Off on GraphQL for Java Developers: What You Actually Need to Know