SShortSingh.

Programming

0
ProgrammingDEV Community ·

Why Database-Level Lock Timeouts Make Failing Tests More Readable

A software developer demonstrated that test failure readability depends on where timeout guards are placed in a database-backed system. By removing the SKIP LOCKED clause from a PostgreSQL outbox query, the test failed within six seconds with a clear SQLSTATE 55P03 lock_not_available error. This precise error was only possible because lock_timeout had been set directly in the database connection string, not just at the application client level. Without that database-level setting, a client-side timeout would have obscured the root cause, surfacing only a generic stream-read exception with no mention of row locking. The experiment, run against PostgreSQL 16.13 on 5 August 2026, illustrates that diagnostic clarity in test failures depends on enforcing constraints at the layer closest to the failure.

0
ProgrammingDEV Community ·

22 Essential Tests Every Developer Should Run on LLM Prompts Before Production

A software developer has compiled a 22-category checklist of tests that should be performed on large language model prompts before they are deployed to production. The checklist addresses security vulnerabilities such as prompt injection, jailbreaking, and data exfiltration, which can arise even when a system prompt appears well-written. It also highlights risks specific to AI systems with tool access, including the ability to send emails, query databases, or execute code, where a flawed prompt can have far-reaching consequences. Additional concerns covered include indirect prompt injection via external content, persistent memory manipulation, and the safe handling of AI-generated outputs like SQL or HTML that may be automatically executed. The guide aims to bring the same rigour applied to traditional software testing — unit tests, CI pipelines, and code reviews — to AI-powered application development.

0
ProgrammingDEV Community ·

Angular 22 Introduces injectAsync() to Lazy Load Services on Demand

Angular 22 has introduced a new injectAsync() API that allows developers to load services dynamically only when they are actually needed, rather than including them in the initial JavaScript bundle. This is particularly useful for rarely used features that depend on large third-party libraries, such as PDF or spreadsheet generators. Instead of returning the service directly, injectAsync() returns a function that resolves the service on first call and reuses the same promise on subsequent calls, avoiding redundant downloads. The API requires services to be auto-provided, either via the @Injectable({ providedIn: 'root' }) decorator or the newer @Service() decorator. Angular also supports a prefetch option using onIdle, which allows the browser to download the lazy dependency during idle time so users experience no delay when they eventually trigger the feature.

0
ProgrammingDEV Community ·

Anthropic to Embed Invisible Watermarks in Claude Outputs From August 2026

Anthropic has signed the EU AI Act's Article 50(2) Code of Practice on Transparency, committing to machine-readable marking of AI-generated content. Starting August 2, 2026, all new Claude models will embed an imperceptible watermark in generated text and cryptographically signed C2PA metadata in supported image files. The marking applies globally — not just in the EU — across the Claude Platform API, Claude Code, Claude Cowork, and Claude Tag, including deployments via AWS, Google Cloud, and Microsoft Foundry. Watermarks cannot be disabled and are embedded at the model level, meaning they can survive copy-paste across platforms. Importantly, the presence of a mark does not confirm Claude authored the content, nor does its absence prove human authorship.

0
ProgrammingDEV Community ·

Seven n8n Workflows a Solo Automation Agency Uses to Cut Manual Work

A solo automation consultant who builds n8n workflows for agencies has outlined seven recurring automations that consistently save significant manual labor each week. The workflows cover client onboarding, automated reporting, lead enrichment, follow-up sequences for proposals and invoices, AI-assisted email triage, content repurposing, and cross-platform data synchronization. Each is triggered by events such as a CRM deal being marked won, a form submission, or a schedule, and requires minimal human intervention once set up. The consultant notes that self-hosting n8n eliminates per-task fees, keeping costs fixed at roughly the price of a small server regardless of volume. The key advantage highlighted is not technical complexity but the elimination of repetitive manual tasks that are prone to human error and inconsistency.

0
ProgrammingDEV Community ·

Gubernator v2.13.0 Adds Google SRE SLOs, CoreDNS Suite and Caddy Ingress Support

Gubernator has released version 2.13.0, introducing several notable features for DevOps practitioners. The update brings support for Google SRE-style Service Level Objectives (SLOs), enhancing reliability monitoring capabilities. A native CoreDNS suite and Caddy Ingress integration for Docker Compose have also been added. The release was covered by Mario Ezquerro, a Google Developer Expert, on August 11. These additions aim to improve service management and networking for teams using Go-based containerized infrastructure.

0
ProgrammingDEV Community ·

Polymarket Overhauls CLOB Rate Limits and API Stack for Bot Developers in August 2026

Polymarket has introduced a volume-based, per-signer token bucket rate limiting system for its Central Limit Order Book, replacing its earlier simpler approach and tiering access from Standard to Elite based on trailing 30-day trading activity. The platform has fully deprecated CLOB V1, requiring all production bots to migrate to CLOB V2, which uses pUSD as collateral and follows current EIP-712 signing schemes. A key endpoint change makes order status responses paginated by default, meaning any code assuming full unpaginated replies must be updated to avoid incomplete deposit and withdrawal tracking. Collateral Return has gone live for multi-outcome markets, improving capital efficiency for market makers running combinatorial strategies. Additional updates to the official Python and TypeScript SDKs bring improved pagination, GTC order expiration support, take-profit and stop-loss primitives, and more robust retry behavior for automated trading systems.

0
ProgrammingDEV Community ·

Developer Builds AI Project Manager That Interprets Plain Language, Not UI Clicks

A developer has created an open-source project management tool called Project Manager, designed to eliminate the manual overhead of traditional task-tracking software. Instead of requiring users to update cards, fields, and statuses, the tool accepts plain-language descriptions of project reality and automatically translates them into coordinated project state changes. The system stores all project data in versioned Markdown files, keeping it portable, vendor-independent, and auditable through standard diff tools. It enforces a strict task lifecycle to prevent premature completion, requiring actual evidence before marking work as done rather than accepting agent or user claims at face value. The tool is aimed at addressing a growing problem in AI-assisted workflows, where an agent reporting a task as finished does not guarantee the work meets acceptance criteria.

0
ProgrammingDEV Community ·

Flutter vs React Native: How Startups Should Pick a Framework for Their MVP

Both Flutter and React Native enable cross-platform mobile development from a single codebase, making them attractive to early-stage startups aiming to reduce development overhead. React Native benefits teams already experienced with JavaScript or React, given the language's vast ecosystem and lower learning curve for those developers. Flutter, which uses Dart and manages its own rendering pipeline, suits products requiring highly customised interfaces, such as fintech dashboards or fitness apps. For most MVPs, performance differences between the two frameworks are unlikely to be decisive, as application architecture and optimisation matter more than the framework itself. Ultimately, the best choice depends on a startup's product requirements, existing team skills, and long-term hiring considerations rather than any single technical benchmark.

0
ProgrammingDEV Community ·

Freelancer Tripled Income by Pitching Non-Technical Executives Instead of CTOs

A freelance developer earning $3,210 a month made a strategic shift after 18 months of pitching CTOs, Tech Leads, and VPs of Engineering with little success. By switching his outreach to non-technical executives such as VPs of Product, Heads of Growth, and Operations Directors, his monthly revenue climbed to $14,830 within 87 days. He attributes the change not to improved skills or longer hours, but to targeting decision-makers who evaluate work by business outcomes rather than technical implementation. Technical leaders, he argues, tend to view expensive freelancers as a threat to their in-house teams and judge contractors on how they build rather than what they deliver. Repositioning his pitch from listing technical skills to offering specific business fixes — such as reducing mobile checkout drop-offs — allowed him to avoid competing with low-cost developers and instead compete against the cost of inaction.

0
ProgrammingDEV Community ·

Developer Launches LivePoll, a Free Open-Source Real-Time Audience Polling Tool

A developer has released LivePoll, a free and open-source polling tool designed for webinars, classrooms, workshops, and community events. The tool allows presenters to create polls or quizzes that participants can join instantly via a QR code or session code, without needing to register an account. LivePoll supports multiple choice questions, rating scales, and scored quizzes, with results updating on the presentation screen in real time. The project was born out of the developer's own frustration with the lack of simple, lightweight audience interaction tools during live sessions. The source code is publicly available on GitHub, and the developer is actively seeking feedback and contributions to improve the platform.

0
ProgrammingDEV Community ·

Open-source tool tokenscope helps developers track hidden AI agent context costs

A new open-source CLI tool called tokenscope lets developers scan their AI agent codebases and estimate the token footprint of prompts, tool schemas, and configuration files. The tool addresses a growing cost problem: most AI agent frameworks resend accumulated context on every model call, meaning a single bloated prompt multiplies across every request and every user. Developers can run tokenscope locally with a single npx command, integrate it as a pre-push Git hook, or deploy it as a GitHub Actions check to flag token-cost increases on pull requests. The tool is tokenizer-free and provides relative estimates rather than exact billing figures, requiring no API keys or provider SDK setup. It is released under the Apache-2.0 license and is available on npm and GitHub.

0
ProgrammingHacker News ·

France bans unsolicited telemarketing calls starting August 11

France is set to implement a ban on unsolicited telemarketing calls, with the measure taking effect on August 11, 2026. The move aims to protect consumers from unwanted commercial solicitations by phone. The policy represents a significant shift in how businesses are permitted to reach potential customers in France. The ban reflects growing public frustration with intrusive telemarketing practices across the country.

0
ProgrammingDEV Community ·

AI Evals Explained: Why Product Teams, Not Engineers, Must Define Quality

AI evaluations (evals) are structured systems that track whether an AI product's output quality changes over time, helping teams avoid subjective debates about performance degradation. At their core, evals consist of real user queries, written criteria for what a good response looks like, and a repeatable method to check outputs against those criteria. The central challenge is not technical but organizational: someone must explicitly define what 'correct' means for each use case, including tone, accuracy, and acceptable trade-offs. Experts argue that product managers should own these quality definitions in plain prose, while engineers handle the automated testing infrastructure. Teams that fail to assign clear ownership risk having product judgements made by default, embedded silently into dashboards and test scripts by whoever built them.

0
ProgrammingDEV Community ·

Kimi K3's 2.81T Parameters Put It Far Beyond Any Mac's Memory Capacity

Kimi K3 is a mixture-of-experts model with 2.81 trillion parameters, requiring roughly 1.4 TB of memory even at 4-bit quantization — far exceeding the 512 GB maximum available on Apple's most powerful Mac Studio. Despite MoE architecture activating only a small fraction of experts per token, all experts must remain in memory since the router can call any of them at any moment, meaning sparse activation reduces compute but not memory footprint. Ollama's only available Kimi K3 tag is labeled ':cloud', which silently routes requests to Moonshot's remote servers rather than running inference locally on the user's machine. In practical testing on a 128 GB MacBook M4 Max, the Qwen2.5-Coder 14B model delivered 13.3 tokens per second versus 5.6 tok/s for the 32B variant, making the smaller model significantly more usable for agentic workflows. The 14B model also fits within 16 GB of unified memory, meaning the base $599 Mac mini can run a capable local coding model despite being unable to handle frontier-scale models like Kimi K3.

0
ProgrammingDEV Community ·

Developer Builds Local AI Infrastructure to Reduce Cloud Dependency

A software developer has shared their journey of shifting focus from cloud-based systems to self-hosted, local AI infrastructure setups. Facing challenges like hardware bottlenecks and pipeline optimization, they worked to maximize performance on standard consumer hardware. Among their recent projects is an Employee Tracker tool designed to handle workforce management, attendance, and task monitoring with a focus on speed and data security. They have also been experimenting with local AI deployments using tools like ComfyUI to reduce output latency and improve resource efficiency. Looking ahead, the developer plans to build autonomous agents, expand local server capabilities, and release open-source utilities to help others run high-performance AI stacks independently.

0
ProgrammingDEV Community ·

Trusted Types Reaches Full Browser Support, Turning DOM XSS Into a TypeError

The Trusted Types API, a browser security feature that blocks dangerous DOM injection via raw strings, achieved Baseline status in February 2026 when Firefox 148 added support, completing coverage across all major browsers. Chrome and Edge had supported it since 2020, with Safari joining in version 26. The API works by enforcing that only values created through explicitly declared policies can be passed to risky sinks like innerHTML, outerHTML, and eval — raw strings now throw a TypeError. Developers can enable it via a Content-Security-Policy header, and are advised to start with report-only mode to identify violations before switching to full enforcement. Trusted Types does not sanitize content itself, but it narrows the entire DOM XSS attack surface to a small set of named policy functions that can be audited quickly.

0
ProgrammingDEV Community ·

A Beginner's Guide to YAML for GitHub Actions Workflows

YAML, which stands for 'YAML Ain't Markup Language,' is the file format powering every GitHub Actions workflow, stored under .github/workflows/ in a repository. Unlike XML or JSON, YAML uses no brackets or closing tags — structure is defined entirely through indentation and line breaks. This makes YAML highly readable but also fragile, as a single missing space can silently break a workflow without a clear error message. Key concepts include key-value pairs separated by a colon and space, nested mappings created through consistent two-space indentation, and lists denoted by a hyphen followed by a space. Mastering these three building blocks is enough to read and write functional CI/CD workflow files with confidence.

0
ProgrammingDEV Community ·

Practical Techniques to Keep Microservices Loosely Coupled

Tight coupling in microservices occurs when services depend on each other's internal details, causing a change in one to ripple through others and making systems fragile. Developers can reduce this by defining explicit, versioned API contracts so services interact through stable interfaces rather than shared database schemas. Asynchronous messaging, where services publish and subscribe to events via a message broker, eliminates temporal dependency between services. Patterns like the Backend for Frontend (BFF) aggregate data from multiple services for clients, shielding them from internal topology changes. Circuit breakers further improve resilience by failing fast when a downstream service is unresponsive, preventing cascading failures across the system.

← NewerPage 224 of 1343Older →