SShortSingh.

Programming

0
ProgrammingDEV Community ·

How to Let AI Agents Deploy to Servers Safely Without Sharing SSH Keys

AI coding agents can now handle most development tasks like branching, patching, and opening pull requests, but deploying changes to live servers has remained a security bottleneck. The core problem is that SSH private keys are bearer credentials — once shared with an agent's environment, there is no reliable way to confirm they weren't exposed in logs or transcripts. Security experts recommend a broker-based model where the agent never directly holds credentials, but instead requests actions through a custodian process that authenticates on its behalf. This approach enables explicit scope control, real-time human oversight, and simple access revocation without requiring credential rotation across multiple servers. Tools like Termalin are emerging to implement this model by pairing an SSH client with a built-in MCP server, making secure agent deployments more accessible without complex custom infrastructure.

0
ProgrammingDEV Community ·

Linxr v3.0.0 Merges Docker Dashboard into Flutter App, Cuts RAM Use by 45%

The Linxr development team has released v3.0.0, integrating the standalone Docker management app Pockr directly into the Linxr Flutter application for non-rooted Android devices. Previously, running both tools required two separate QEMU virtual machine instances, doubling RAM and disk consumption on mobile hardware. The unified release runs a single Alpine Linux 3.20 guest VM hosting both a root shell and the Docker daemon. A lightweight Python API server inside the VM bridges Flutter's UI to the Docker Unix socket via REST endpoints on port 8080, enabling container deployment, start/stop controls, and real-time log streaming. The consolidation reduced memory usage by 45% and allows developers to manage containers and inspect their files from a single unified interface.

0
ProgrammingDEV Community ·

Linxr Uses Virtio-9P and Android SAF to Enable Linux VM File Sharing

The Linxr engineering series has reached Part 6, detailing how the team solved host-to-guest file sharing between Android and a Linux virtual machine. The core challenge was Android 10+'s Scoped Storage restrictions, which block raw file path access required by standard Linux VMs running under QEMU. The team implemented a dual-layer approach: Virtio-9P for high-speed POSIX passthrough and Android's Storage Access Framework (SAF) for user-selected folder access. A Kotlin MethodChannel handler lets users pick custom folders, whose URI is resolved to a POSIX path and passed to QEMU's Virtio-9P driver, making files instantly accessible inside Alpine Linux. Part 7 of the series will cover embedding the Docker Engine and building a container management dashboard in Flutter.

0
ProgrammingDEV Community ·

Linxr v3.0.0 Adds Live Boot Logs, SAF File Sharing and Built-In Docker Management

Linxr, an app that runs Alpine Linux in QEMU on non-rooted Android devices, has released version 3.0.0 with several major architectural upgrades. The update introduces a real-time boot log console in the Flutter UI by redirecting Alpine's kernel output to a serial interface, giving users visibility into VM startup for the first time. File sharing between the Android host and the Linux guest is now handled via Android's Storage Access Framework and QEMU's virtio-9p driver, allowing users to mount custom folders inside Alpine. Docker container management, previously a separate app called Pockr, has been merged directly into Linxr, enabling users to monitor containers and stream live logs from within the same interface. Linxr v3.0.0 is available now on Google Play and GitHub Releases.

0
ProgrammingDEV Community ·

How to Build a Resilient OTP State Machine for SMS 2FA in Node/Express

A software engineer has outlined an architecture for handling SMS two-factor authentication (2FA) delivery failures in Node/Express applications using a state machine approach. The design separates delivery status from identity verification, ensuring that a failed or unconfirmed SMS delivery cannot grant a user login approval. A managed verification service owns the OTP secret and code-checking logic, while the application controls session management, abuse limits, attempt lifecycle, and audit trails. Delivery callbacks update the attempt record asynchronously but cannot change a terminal state or approve a login. Client-side polling reads a local attempt projection rather than querying the external verification service directly, improving both security and user experience.

0
ProgrammingDEV Community ·

Developer Builds Repeatable C++ Grader to Rigorously Evaluate AI Coding Assistants

A software developer frustrated with benchmark screenshots built a small automated grader to objectively evaluate AI coding assistants on real C++ tasks. The grader subjects each model-generated fix to three mechanical checks: whether the code compiles under the project's existing strict flags, whether its output matches a hidden expected result, and whether edits stayed within the permitted scope. Tasks are drawn from actual past defects, such as off-by-one errors, dangling references, and missing virtual destructors, keeping the corpus small but meaningful. Running multiple samples per task rather than relying on a single completion revealed that some models oscillated between clean fixes and warning-introducing rewrites, making consistency a more useful signal than peak cleverness. The author notes the approach is language-agnostic in method and that the first common failure point was warnings-as-errors, not algorithmic correctness.

0
ProgrammingDEV Community ·

Ripple Tool Auto-Creates Fix PRs Across Repos When an API Breaking Change Is Pushed

A developer has built an open-source tool called Ripple that automatically detects breaking API changes and opens fix pull requests in all affected consumer repositories within roughly 15 seconds. The tool supports 10 contract types including Protobuf, OpenAPI, GraphQL, and Avro, and works across GitHub, GitLab, and Bitbucket. Ripple identifies downstream consumers using five strategies, including import graph analysis and git history correlation, to locate files that may be indirectly affected. For each affected file, it generates targeted fixes using either template-based rules or an LLM, then opens a labeled PR explaining what changed upstream and why. The tool aims to eliminate the two-to-three days of manual cross-team coordination that typically follows a breaking API change at most organizations.

0
ProgrammingDEV Community ·

Developer Proposes 20-Task Coding Harness to Replace Vibe-Based Model Comparisons

A developer writing on DEV Community argues that most informal comparisons of AI coding models amount to little more than subjective guesswork, since pasting prompts into two models and skimming results is not a rigorous evaluation. To address this, they propose a lightweight, repeatable testing harness consisting of just two files — a JSONL task list and a Python runner — covering 20 fixed coding tasks with deterministic and rubric-based scoring. The suite is designed to test failure modes specific to a developer's own stack, such as hallucinated imports, meaningless test assertions, or SQL edge-case errors, rather than relying on public benchmarks built around others' priorities. Running the harness multiple times across several candidate models can generate hundreds of API calls, making free-tier model access practically significant for iteration. The author disclosed the article was prepared as part of outreach for MonkeyCode, though the harness itself is compatible with any OpenAI-compatible API endpoint.

0
ProgrammingDEV Community ·

Dev Tool Lets You Benchmark Local vs. Hosted AI Coding Models With Real Data

A developer has published a lightweight, reproducible benchmarking harness designed to help engineers objectively compare local AI coding setups against free hosted model services. The tool, saved as a single Node.js script with no external dependencies, measures three key metrics: time to first token, total task latency, and whether the model output passes a mechanical correctness check. It is compatible with any OpenAI-compatible chat endpoint, covering popular local servers like Ollama and llama.cpp as well as most hosted providers. Users define a fixed suite of 6–10 coding tasks drawn from their actual workflows, with prompts frozen verbatim to ensure consistent, drift-free comparisons across runs. The goal is to replace anecdotal impressions about local versus cloud AI performance with self-generated, reproducible numbers.

0
ProgrammingDEV Community ·

How a Race Condition in a Shared Auth Library Was Traced Across Three Teams

A senior full-stack developer at a large corporation encountered an intermittent authentication bug where opening an app in multiple browser tabs would cause token refresh failures, returning a 403 Forbidden error. Investigation revealed a race condition: one tab would refresh and invalidate a token while another tab simultaneously attempted to use the same token. The bug traced back to a shared frontend authentication library maintained by a separate team, though both the frontend and backend teams initially deflected responsibility. The developer compiled detailed logs, requests, and timestamps into a single ticket involving both teams, and eventually organized a cross-team meeting to reach consensus. After weeks of back-and-forth, the frontend team agreed to own the fix, though resolution remained delayed as user frustration continued to grow.

0
ProgrammingDEV Community ·

Developer Builds Multi-Agent AI Hiring Workflow Using LangChain4j and Spring Boot

A software developer built a multi-agent hiring workflow using LangChain4j, LangGraph4j, and Spring Boot to move beyond basic AI demos and explore real-world agentic design. The system uses four concurrent AI agents to independently score job candidates across skills, experience, cultural fit, and red flags, then aggregates results to route decisions automatically or escalate to human review. LangGraph4j's StateGraph was chosen to enable parallel agent execution, durable state via a Postgres checkpointer, and resumable human-in-the-loop pause points that can persist across restarts. Each agent is defined as a plain Java interface, with LangChain4j handling model calls, JSON parsing, and tool invocation without manual boilerplate. The developer also tested the workflow against a local CPU-only Ollama model, drawing practical lessons about running agentic pipelines outside controlled demo environments.

0
ProgrammingDEV Community ·

How to Objectively Evaluate Free AI Coding Models Before Using Them Daily

A developer-focused evaluation method proposes running a fixed battery of five task types — bug localization, feature addition, refactoring, explanation, and test writing — to assess free AI coding models systematically. Each task is run three times using identical prompts, with responses scored on a 0-to-3 rubric, producing 15 scored runs per model. The approach emphasizes that score distribution matters more than averages, since inconsistent models are unreliable daily tools even if they occasionally perform well. Results, prompts, and scores are logged in a reusable file so models can be compared over time against a personal baseline. The method is designed to take roughly one hour and replace gut-feel assessments with reproducible, evidence-based conclusions.

0
ProgrammingDEV Community ·

Dev builds reproducible harness to benchmark AI coding models on real codebases

A developer has published a lightweight, language-agnostic evaluation framework designed to test AI coding models against a team's own codebase rather than relying on public benchmarks or anecdotal comparisons. The harness organises tasks as directories, each containing a prompt, a relevant code snapshot, and a shell-based verification script, so correctness is judged by the project's own tests and linters. A minimal Python runner applies model-generated patches to each task in an isolated temporary environment and records a simple pass or fail result. The tool deliberately separates patch generation from verification, allowing teams to compare outputs across multiple models or re-run checks at any time. The author argues this approach produces more defensible, context-specific answers about model usefulness than cherry-picked examples or leaderboard scores.

0
ProgrammingDEV Community ·

How to Build a Reproducible Harness to Compare AI Coding Models on Your Own Repo

Generic AI coding model benchmarks often fail to reflect real-world codebases, which have unique build systems, legacy code, and test suites. A developer has shared a roughly 120-line shell and Python harness that lets teams evaluate models against their own repositories using actual test results. The approach mines a project's git commit history for small, self-contained bug fixes or feature additions, then asks each model to reproduce those changes without seeing the original solution. Models are scored across three axes: correctness, edit locality, and iteration cost. The author notes that repetition across runs matters more than most expect, as variance within a single model can exceed the gap between different models entirely.

0
ProgrammingDEV Community ·

Developer shares three rare CSS tricks solved after deep spec diving

A frontend developer at Taiga UI, an Angular component library, has documented three uncommon CSS solutions discovered during real production work. One technique uses the largely forgotten float property combined with sticky positioning to create a fixed overlay inside a scrollable container without disrupting content flow. Another approach leverages CSS mask-image to display colorable icons using only background color, avoiding extra DOM elements. The author notes these solutions emerged after extensive research through specification documents and old GitHub threads. The post, published on DEV Community, invites other engineers to explore these underdocumented CSS patterns.

0
ProgrammingDEV Community ·

Study Identifies Three Compute Regimes Driving Test-Time Scaling in LLMs

A new study by Hariri et al. (2026) offers a formal framework for understanding test-time scaling, a growing approach that improves AI reasoning by allocating more compute at inference rather than during training. The research categorizes test-time scaling into three structural regimes: single-path deliberation, where a model extends its reasoning along one token sequence; leaf-level scaling, which generates multiple independent responses and selects the best via voting or verification; and prefix-level scaling, which uses tree-search methods to evaluate and prune partial reasoning paths mid-generation. The study comes as the AI industry faces diminishing returns from traditional pre-training scaling due to data and hardware constraints. The framework builds on earlier work and provides clearer terminology for techniques popularized by models such as OpenAI's o1 series.

0
ProgrammingDEV Community ·

Developer launches Toon Tone, a free browser-based cartoon color-memory game

A developer has built Toon Tone, a free, lightweight browser game designed to help users practice color memory by matching cartoon character colors. The game uses HSB (Hue, Saturation, Brightness) sliders instead of traditional RGB inputs, making color reasoning more intuitive. Players receive instant feedback as they attempt to replicate a given color using the sliders. The project requires no account and includes daily prompts along with shareable scores. The creator is seeking community feedback on the interaction design and whether HSB controls feel more natural for this type of casual warm-up game.

0
ProgrammingDEV Community ·

Solo Developer Builds AI App That Turns Dish Photos Into Home Recipes

A solo developer has built DishLens, a mobile app that lets users photograph a dish and receive a cookable recipe along with nutritional information. The project, built using React Native (Expo) for the frontend and a custom API backend, relies on Google Vision for dish classification, Anthropic Claude for recipe generation, and Edamam for nutrition data. The developer also engineered a companion service called DriveSync, which keeps a Pinecone vector database synchronized with recipes stored as Google Docs. Key technical challenges included building a robust image preprocessing pipeline — covering blur detection, EXIF stripping, and content moderation — to avoid passing poor-quality inputs to AI models. The entire project lives in a single monorepo and was developed without a team, with the developer noting that AI coding tools accelerated development but could not substitute for domain knowledge and engineering judgment.

0
ProgrammingDEV Community ·

Claude refused 41% of Stripe coding tasks in controlled AI benchmark test

A developer building SDKProof, a tool that tests whether AI models generate up-to-date library code, discovered that Claude (claude-opus-5) refused 62 out of 150 Stripe-related coding tasks — a 41.3% refusal rate. The refusals were silent completion-level declines, not readable error messages, which initially caused them to be misclassified as successful outputs due to a bug in the testing harness. By contrast, the same model refused zero out of 100 tasks on Zod, a control library, confirming the pattern was specific to Stripe. Refusal rates varied sharply by task type: payment initiation was refused in all 10 trials, while refund and webhook tasks were rarely or never refused. The findings suggest AI models may apply inconsistent content or safety filtering to financially sensitive API operations, even when the tasks mirror official documentation examples.

0
ProgrammingDEV Community ·

Today's AI Cloud-Ops Agents Are Already Obsolete, and Vendor Roadmaps Prove It

AI agents used in cloud operations today are rapidly being outpaced by advances already shipping across major platforms, according to a developer analysis. AWS Bedrock AgentCore, Azure Foundry Agent Service, and Google Vertex have all rolled out managed long-term memory this year, replacing the stateless, session-blind agents most teams currently run. Standardization of tool protocols like MCP, context windows expanding to one million tokens, and platform-native governance features are four key axes along which current setups will soon look outdated. Crucially, these are not speculative roadmap promises — memory, extended context, MCP support, and agent observability tools are already shipping, just not yet universally adopted. When AWS, Azure, and Google converge on the same capabilities within a single year, the author argues, the shift from novelty to default tends to happen fast.

← NewerPage 32 of 1006Older →