🌍 Dev.to

I built a local-first linter for vague release notes

Release notes often describe a change with phrases such as “improved performance” or “fixed several issues.” Those phrases sound finished, but they do not tell a reader what changed, who is affected, or whether any action is required. I built ReleaseProof to check that narrow problem. It takes two pieces of text: Change evidence, such as PR titles, issue summaries, test results, or a short diff summary. The release-note draft intended for users. The checker then looks for...
🌍 Dev.to

Kubernetes DNS was failing 33% of the time. CoreDNS was fine.

A WordPress site on our platform started throwing Error establishing a database connection . Not always — maybe one page load in three. Reload, and it worked. Reload again, broken. The obvious suspect is MySQL. It wasn't MySQL. It took us longer than it should have to stop looking there, so here is the whole path, including the two wrong turns. The first wrong turn: blaming the database WordPress talks to MySQL through a hostname, not an IP. In our case the pod's config had: ...
🌍 Dev.to

Daily Dose of DevOps — What is CI/CD and why it matters

CI/CD as a Control System: From Commit Entropy to Production Evidence CI/CD is often reduced to automation, but its deeper purpose is epistemic: it converts uncertain changes into evidence about whether a system remains safe to operate. A pipeline is a feedback controller. Source changes are disturbances; tests, policy checks, and telemetry are sensors; deployment strategies are actuators; service-level objectives define acceptable operating bounds. The control loop Continuou...
🌍 Dev.to

Swift ARC Doesn’t Scan the Heap — I Removed strong_release from SIL to Prove It

Also available: Korean version · Source code and reproducible experiments A source-to-runtime experiment with Swift 6.3.1: inspect ownership in SIL, delete one strong_release , measure the resulting leak, compare weak-reference lowering, and follow the call stack into the Swift runtime. Swift ARC is sometimes explained as if it were a background service that periodically scans memory and frees objects that are no longer used. The word Automatic makes that story sound plausible, bu...
🌍 Dev.to

Invoked, not executed

A deep-research request to the top-tier model tore through three consecutive five-hour usage windows, the rolling quota Claude enforces before a session has to stop and reset, to answer a single question. Usage window Burned Time to burn it Window 1 54% about two minutes Window 2 100% about four minutes Window 3 40% finishing the job Three consecutive five-hour usage windows against one question. That adds up to 194% - nearly two entir...
🌍 Dev.to

Testing Next.js App Router API Routes Without Leaving Your Editor

If you work with Next.js, you know this routine. Write an API route, switch to Postman or Thunder Client, rebuild the request, test it, then jump back to your code. Do this a few times a day and it starts to eat into your focus. The problem is not that these tools are bad. It is the constant context switch. Your routes live in your codebase, but your tests live somewhere else, usually behind a login screen. Why the usual workflow gets annoying If you have worked on a decent-sized Next.j...
🌍 Dev.to

"What's the Catch?" — Why StayPresent Is Actually Free

A tool that handles crash recovery, hang detection, and a full status page sounds like it should cost something. Here's why it doesn't, and won't. "What's the Catch?" — Why StayPresent Is Actually Free It's a reasonable question. A tool that handles crash recovery, hang detection, and generates a real status page — the kind of thing you'd expect to see behind a pricing page with a "Pro" tier — is, in fact, entirely free. Not a free tier that nudges you toward upgrading. Not a t...
🌍 Dev.to

How to Stop Your Discord Bot From Sleeping on Render's Free Tier

A step-by-step tutorial to stop a discord bot from sleeping on Render's free tier — the real cause, the fix, and a working code example. How to Stop Your Discord Bot From Sleeping on Render's Free Tier You've deployed your Discord bot to Render's free tier, it worked for a bit, and now it's going offline — sometimes after a few minutes, sometimes randomly. This is one of the most common issues developers hit deploying a bot for the first time, and it has a specific, well-unders...
🌍 Dev.to

Deploying Multiple Python Bots to a Single Railway Container

A tutorial for running two or more python bots on Railway inside one container and one service, with independent crash recovery for each. Deploying Multiple Python Bots to a Single Railway Container If you're running more than one Python bot — say, a Telegram ingestion bot and a Discord notification bot that share a database — deploying each as its own Railway service means double the hosting cost and double the configuration for something that's logically one unit. This tutori...
🌍 Dev.to

The excluded-plugin setting that Playwright ignored — fixing browser-mode updates and false residual warnings

The symptom In browser-mode maintenance (Playwright, no SSH), plugins marked as "excluded from update checks" were still being updated. After the run, a "plugin updates remaining" WARNING email arrived every time. The excluded plugins were intentionally left behind, but the residual check treated them as unfinished updates and fired a warning — a two-part problem: wrong behavior and a misleading alert. SSH path vs. Playwright path On SSH-capable sites, WP-CLI's --skip-plu...
🌍 Dev.to

How to Build Your First AI Agent Tool in 15 Minutes (20+ Open Issues for Beginners!)

If you’ve been using ChatGPT, Claude, or LangChain, you know that Large Language Models (LLMs) are completely isolated from the real world. They can't check the weather, read your emails, query your database, or send Slack messages. That is, unless you give them Tools. Connecting AI agents to external APIs is one of the most in-demand skills in AI engineering right now. To make this easier for everyone, I recently launched Agent Tools & MCP Hub, an open-source directory of plug-and-play AI...
🌍 Dev.to

Local vs remote MCP servers: which one you actually want

There are two kinds of MCP server, they solve different problems, and almost nothing tells you which one you are building until you are deep enough in to have already made the wrong choice. I worked this out from a submission form. More on that below, because it turns out to be the clearest signal in the whole ecosystem and it is buried in a footnote. The two shapes Local (stdio). The server runs as a process on the user's own machine. The client — Claude Desktop, Cursor, wh...
🌍 Dev.to

Beyond Writing Code: The Core Mindset of a Modern Software Engineer

Many beginner developers believe software engineering is all about mastering programming languages, framework syntaxes, and clearing error logs. In reality, writing code is only a fraction of the actual job. The true core of software engineering lies in analyzing complex domain problems, evaluating deep trade-offs, and designing robust systems that stand the test of time. Let's explore what it genuinely takes to transition from a coder to a modern software engineer with the right engineering...
🌍 Dev.to

How I Built a Color Picker That Actually Converts Colors Correctly (HEX/RGB/HSL)

While working on a design system recently, I kept running into the same frustrating problem: I'd grab a color from Figma in HEX format, need it in HSL for a CSS variable, and end up bouncing between three different websites just to convert one value. Each site had its own UI quirks, some required JavaScript to be enabled, and none of them gave me a proper color scheme alongside the conversion. So I did what any reasonable developer would do — I built my own. Because apparently I enjoy reinven...
🌍 Dev.to

5 Common Subnetting Mistakes That Break Real Networks

Subnetting errors rarely announce themselves as "bad math." More often, two devices make different decisions about whether a destination is local, a route points at the wrong boundary, or a cloud/VPN design contains two networks that cannot be unambiguously routed. These five failure modes are worth recognizing in live configurations. 1. The two hosts use different masks Consider Host A at 192.168.10.10/24 and Host B at 192.168.11.10/16 . A calculates that B is outside 192.16...
🌍 Dev.to

Stop Copy-Pasting Parts in Docker Compose

Imagine you have a complex microservice. For local development, you need it connected to a message queue, a telemetry collector, and a database. But for your E2E testing, you need a slightly modified version (different env vars, an extra mock dependency, maybe a different port). Most engineers solve this by maintaining two massive, almost-identical YAML files. It is a nightmare to sync changes. Or they simply do this: $ docker compose -f compose.yml -f e2e-compose.yml up --b...
🌍 Dev.to

How to Fix 'command not found' (Without Reinstalling Everything)

Adapted from the Command Line Essentials Companion Guide . You install something, open a fresh terminal, type the command, and get bash: python3: command not found — or on Windows, 'python3' is not recognized as an internal or external command . The installer said it finished successfully. You can probably even find the program in your applications folder. And yet the terminal insists it doesn't exist. The instinct at this point is usually to reinstall, or install a second copy fro...
🌍 Dev.to

Building a Disposable Notion Agent on Cheap Models

TL;DR: We built a one-shot HTTP worker that talks to Notion through MCP. Version one worked. Version two got cheaper and more readable, then failed in a new way. The harness was fine. The tool surface, the model, and the prompt were not the same problem, and we kept treating them as one. We keep seeing the same pitch: put an agent in the cloud, give it tools, let it live in Slack, let it remember you. That is a product. It is not the product we needed. We needed something dumber and mor...
HackerNews

PostgreSQL for Everything

Article URL: https://www.raphaelbauer.com:443/posts/postgresql-everything/ Comments URL: https://news.ycombinator.com/item?id=49361279 Points: 320 # Comments: 200
HackerNews

Manabu Kosaka's Handmade Paper Sculptures

Article URL: https://coca11272000.wixsite.com/manabukosaka Comments URL: https://news.ycombinator.com/item?id=49362001 Points: 63 # Comments: 7
HackerNews

Pixel 11 Pro Fold feels like the end of an era

Article URL: https://www.theverge.com/tech/981956/google-pixel-11-pro-fold-review Comments URL: https://news.ycombinator.com/item?id=49366264 Points: 31 # Comments: 62
HackerNews

Turns are Better than Radians

Article URL: https://www.computerenhance.com/p/turns-are-better-than-radians Comments URL: https://news.ycombinator.com/item?id=49369408 Points: 38 # Comments: 20