For the last few years, I’ve been deeply invested in tech. I started with C++ and Java, eventually moved into web development, built full-stack projects using Next.js, React, Node.js, and Tailwind, and even explored blockchain development through Ethereum-based projects during college. From the outside, it looked like I was already building a solid technical path. But recently, I felt something sh
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
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,
Feels like every week there’s a new AI tool doing in minutes what used to take days. So where does that leave us? Are we still building real products… I’m working on a small tool around debugging HTTP requests, and honestly I’m questioning this a bit. Curious how others see it: Are you still building SaaS products right now? Or shifting more into AI-first tools?
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
Zulip is known for keeping conversations organized. Topic-based threads, clear context, and async-friendly discussions make it a favorite for technical and distributed teams. Unlike traditional chat apps, conversations in Zulip stay readable even as teams scale. Recreating this experience can be a bit difficult. Real-time messaging, user presence, inline comments, and notifications usually require