OpenLampTech No. 183
SQL JOINs - back to the basics | The curse of knowing | Good text-to-SQL with AI | Handling overlapping date ranges with Laravel | The PHP Foundation supporting FrankenPHP
Thank you for reading the OpenLampTech newsletter!
If someone awesome shared this newsletter with you and you are not yet subscribed, please use the Subscribe button below and join:
OpenLampTech has sponsorship opportunities for your brand, product, service, or job listing in the weekly newsletter.
As an independent publication, collaboration is very affordable.
All commentary on the below curated content is mine unless otherwise directly quoted.
The Curse of Knowing How, or; Fixing Everything
I don't recall reading anything that hit me quite as hard as this piece.
Something I've been dealing with for a while myself.
Someone finally said it and had the right words.
If you're anything like me and are the go-to in your current role for these types of technical and programming-related tasks and work with multiple technologies, I think this article will resonate with you, too.
Getting AI to write good SQL: Text-to-SQL techniques explained
I've not had a lot of success with SQL-related Gemini prompts. It probably doesn't help that I use ChatGPT more. But hey, the results and the results.
That said, it does appear that text-to-SQL functionality using Gemini is being implemented in (more) Google Cloud products. If you're using something like BigQuery, this may be a good option for helping with SQL queries.
[Google Cloud Blog]
Security Tip: Bypassing CSRF Protection with File Uploads
File uploads and their permissions are often one of the more difficult implementations to get right from a security standpoint.
The type of file being uploaded also requires scrutiny, as you don’t want nefarious actors executing code scripts once uploaded, either.
[Securing Laravel / Stephen Rees-Carter]
[Sponsored Ad]
My name is Fred Moskowitz, and I’ve earned the reputation as The Alternative Investment Expert. My journey began in the tech industry, where I spent years unknowingly exposing myself to a massive financial risk—relying solely on a paycheck from my job. Like so many high-level professionals, I was trapped in a single-source income model that left me vulnerable.
That realization set me on a relentless quest to discover, master, and refine the most powerful wealth-building strategies available—ones that generate consistent passive income and cash flow without the headaches of managing rental properties or dealing with repairs.
These strategies are game-changers. They offer a way to create true financial freedom and security—allowing you to build wealth intelligently and strategically. I’d love to share them with you. Click this link to receive my exclusive special report on building sustainable passive income and taking control of your financial future.
Avoid overlapping date ranges with a familiar API
This type of check against date range values is paramount for booking-type applications such as Airbnb, hotels, and similar time and date-sensitive data.
Although this functionality is not natively built into Laravel, Joel Clermont covers how to achieve it using a custom rule.
I highly recommend subscribing to the Mastering Laravel newsletter.
[Mastering Laravel / Joel Clermont]
A faster way to copy SQLite databases between computers
I should pull my head out of the clouds and use SQLite for a small production project and learn just what it is capable of.
After all, I think of SQLite as the little database that could.
This article has a couple of neat tricks for copying down large(r) SQLite databases that may be index-heavy, resulting in slower transfer times.
FrankenPHP Is Now Officially Supported by The PHP Foundation
It's always good to see PHP continue to grow and evolve. I don't have any experience with FrankenPHP to date. But the fact that the PHP Foundation fully supports it is great for the community overall.
Congratulations to FrankenPHP.
[The PHP Foundation]
Back To The Basics With SQL: Understanding Hash, Merge, and Nested Joins
Knowing which JOIN type to use in your query to retrieve the data you need is critical. Understanding how those JOINs are constructed and work under the hood also helps when it comes to performance implications.
Read this article to learn about SQL JOINs on a deeper level.
In my opinion, SQL performance tuning is a superpower (and one I'm still currently working on).
[SeattleDataGuy’s Newsletter]
WooCommerce and WordPress news and updates
Developer Advisory: Stripe API Issues in WooCommerce Stripe Payment Gateway 9.5 (May 16th, 2025)
Cost of Goods Sold(COGS) is ready to blossom out of beta this summer (May 21st, 2025)
Something extra:
On a personal note, I have successfully created and implemented my very first custom WordPress plugin for my (current) employer’s business website.
Having worked mostly with vanilla PHP and CodeIgniter, it was indeed a great learning experience and something I hope to do more of in the future.
Thank you for reading OpenLampTech. I hope you have a great rest of your week.
Take care.
Josh Otwell
Some links may be affiliate links from which I earn a small commission at no additional cost.


