Change the default voice to "Siri Voice 1" in System Settings - then your say MacOS command will sound more appealing (less robotic). Open System Settings Search for "Voice Live Speach": Click the ℹ️ icon near "System Voice": Click the arrow ➡️ near "Voice" in the new window: Search for "Siri": And click the download icon 🌩️ near the Voice 1 (IMHO the best, feel free to choose your prefer
Linux as a service (The simplest Way to Understand It) A service is just a program that runs in the background systemctl is the tool to control it systemd is the system that manages services Simple analogy Think of a service like a car 🚗: You can start it You can stop it You can check if it’s running The systemd is like the engine that keeps the car running smoothly behind the scenes. By the e
Ride History: Tracking Every Completed Trip On the backend, the API queries Supabase for every ride tied to the user's Google ID, filtered to only completed rides and ordered newest-first: There's no date filter and no row limit -- it returns every completed ride the account has ever taken. On the mobile side, each ride renders as a card showing the date, route, pickup time, and the matched rider
TL;DR We had a single-tenant Angular + .NET 10 SaaS where every row was scoped by UserId. To support firms (multiple lawyers sharing data), we needed multi-tenant workspaces — but rewriting every query was off the table. EF Core's HasQueryFilter made it possible to flip 9 tables to multi-tenant in a single weekend, with zero query call sites changed. Here's the pattern. I'm building NeoJurídico,
For me, Linux used to be much more intimidating at first. But once I understood the basics and started using it regularly, it became straightforward. Assigning an IP address—either automatically via DHCP or manually—is not as hard as it looks. However, troubleshooting can be challenging because Linux provides multiple ways to handle network configurations. This is the simplest way to get an IP add
If you are building a FiveM roleplay server, Discord Rich Presence is one of those small details that makes a big difference. It replaces the generic "Playing FiveM" status with your server name, logo, and player count. Every player on your server passively advertises your brand to their entire Discord friends list. The setup is straightforward but the implementation differs depending on your fram
The File Search tool in the Gemini API now supports multimodal retrieval by adding support for Gemini Embedding 2. This update allows images, such as charts, product photos, and diagrams, to be natively indexed and searched in the same store as your text-based documents. This post covers how to use the File Search tool end-to-end: creating a store, uploading documents and images, querying with gro
Process & Port Management Find what’s using a port: ss -tulnp | grep :8080 Kill process by port: kill -9 $(lsof -t -i:8080) Top processes (better than top): btop Show process tree: ps auxf File & Disk Tricks Human-readable disk usage: df -h Find large files: find / -type f -size +500M 2>/dev/null Quickly clean logs: truncate -s 0 /var/log/syslog Search Like a Pro G