SShortSingh.

Programming

0
ProgrammingDEV Community ·

Mixed Naming Conventions in APIs Can Cause Silent Data Bugs in Production

Inconsistent use of camelCase and snake_case across codebases — such as between a Python backend and a TypeScript frontend — can cause fields to be silently misread or written as null, with no error thrown. The bug often survives code review because each side of the codebase appears internally consistent, masking the mismatch at the boundary. The root cause is the absence of a dedicated serialization or mapping layer that enforces a single naming convention at the API boundary. Developers are advised to pick one convention per boundary layer and validate it with automated tests, such as snapshotting a real API response in CI to catch unexpected field name changes. Common pitfalls include inconsistent handling of acronyms during case conversion and filesystem case-sensitivity differences between macOS and Linux environments.

0
ProgrammingDEV Community ·

How to Fix Apple's Guideline 2.1 'Information Needed' Rejection Before It Happens

Apps built with tools like Lovable, Bolt, v0, or Replit frequently receive Apple's Guideline 2.1 'Information Needed' rejection, typically because reviewers cannot access the app past a login screen. Unlike crashes, this issue is preventable by correctly completing the App Review Information section in App Store Connect before submission. Developers are advised to provide a working demo account with no SMS or email verification, clear navigation paths to paid features and account deletion, and explanations for any hardware-dependent functionality. In-app purchase flows should also be tested end-to-end in sandbox mode, as a broken paywall triggers a separate but related rejection under Guideline 2.1(b). Keeping review notes concise — three to five lines — improves the chance that a reviewer reads them fully rather than skimming past critical details.

0
ProgrammingDEV Community ·

CERT-BUND Flags 16 Drupal Modules at Critical Risk Under CVE-2026-96357

CERT-BUND advisory WID-SEC-2026-3554, published on 23 September 2026, identifies 16 contributed Drupal modules across 19 affected version ranges under CVE-2026-96357, carrying a critical CVSS v3.1 base score of 9.8. The vulnerability is rated high risk, remotely exploitable, and impacts modules including Webform, Project Browser, REST & JSON API Authentication, and Smart Content, among others. All 36 identifiers share a common impact profile covering arbitrary code execution, privilege escalation, security bypass, data tampering, and cross-site scripting. A ZoomEye scan conducted on 25 September 2026 found over 436,000 publicly visible Drupal instances, though not all necessarily run the affected modules. Site administrators are advised to audit installed modules against the affected ranges and apply fixes detailed in Drupal security advisories sa-contrib-2026-154 through sa-contrib-2026-191, verifying the installed version after updating.

0
ProgrammingDEV Community ·

HardwareMind: AI Tool Built at Hackathon to Diagnose Hardware Failures

A hackathon team developed HardwareMind, an AI-powered system designed to help engineers investigate and diagnose hardware failures. The platform consists of three core components: a Streamlit-based user interface, a backend API, and an AI engine with memory for contextual diagnosis. One team member served as the Demo, Testing, and Documentation Engineer, responsible for structuring the live demonstration, building a testing checklist, and writing project documentation. Testing covered functional workflows, input validation, and backend integration to ensure reliability before the final presentation. Clear documentation was prioritized to help the team communicate the system's architecture, setup process, and usage during the hackathon.

0
ProgrammingDEV Community ·

How to implement service discovery and load balancing in Node.js without Consul or Kubernetes

Distributed Node.js applications typically rely on external infrastructure like Consul, Kubernetes, or service mesh sidecars to handle service discovery and load balancing, but an alternative approach embeds the registry directly into the application framework. Using Moleculer, a Node.js microservices framework active since 2017, each process maintains a full local copy of the service catalogue and communicates changes peer-to-peer over a message bus such as NATS. When a service broker starts, it broadcasts its available actions and metadata to all other brokers, which update their local registries accordingly; regular heartbeats keep the catalogue current, and a clean shutdown sends an explicit disconnect packet. Load balancing decisions are made client-side using configurable strategies such as Round Robin or custom zone-preference logic, with no central registry server or additional network hop required. The approach is demonstrated with live scenarios, including a node killed mid-traffic via SIGKILL, to show exactly how the system detects and responds to failures.

0
ProgrammingDEV Community ·

8 Real-World n8n Automation Workflows That Cut Manual Work for Businesses

A developer on DEV Community has shared eight n8n automation workflows actually built and deployed for real clients, covering use cases from invoice processing to contract renewal tracking. One workflow uses Claude Vision and PostgreSQL to auto-approve matched invoices with 97%+ straight-through processing, cutting monthly close time from five days to one. Other automations handle lead enrichment via Apollo and HubSpot, daily production reporting over Telegram, and WhatsApp customer support that resolves 75% of queries without human involvement. A weekly competitor monitoring workflow scrapes rival pricing and feature pages every Monday, using Claude to summarise changes before the team begins their workday. Across all examples, the key outcomes highlighted are drastic reductions in manual effort, faster response times, and improved business visibility through connected tools like Slack, Notion, and various APIs.

0
ProgrammingDEV Community ·

Why Blue-Green Deployments Can't Save You From a Bad Database Migration

A software team experienced a full outage when a database migration dropped and recreated a column in a single step, breaking both environments in a blue-green deployment. Because both blue and green stacks share the same database, running the migration before the router flip left the old app code querying a column that no longer existed. Unlike application code, schema changes are not atomic or easily reversible — dropping a column permanently destroys its data, making a simple rollback impossible. The incident highlights a critical distinction between reversible schema changes, such as adding a nullable column, and irreversible data changes like dropping or backfilling columns. Engineers are advised to spread such migrations across three separate releases — expand, backfill, then contract — to ensure safe rollback at every stage.

0
ProgrammingDEV Community ·

Ethical Hacking Is Just One Piece of a Broader Cybersecurity Skill Set

Cybersecurity professionals are increasingly expected to go beyond penetration testing to address risk management, cloud security, data governance, and compliance. Discussions in Nigeria's tech community, including a Nigeria Computer Society workshop, have highlighted the growing overlap between technical security skills and broader frameworks like privacy-by-design and digital governance. Nigeria's National Digital Cloud Policy further raises questions around data sovereignty and infrastructure governance that directly affect security engineers. Aspiring ethical hackers are being encouraged to expand their learning roadmap to include cloud security, security operations, and compliance alongside traditional skills like Linux, networking, and web vulnerability testing. The broader goal, experts note, is not just identifying weaknesses but helping organisations build resilience around them.

0
ProgrammingDEV Community ·

Web Tool Offers Pre-Publish Audio Health Check Beyond LUFS for Creators

A browser-based audio analysis tool called Creator Audio Pre-Publish Health Check has been developed to help YouTubers, podcast editors, and musicians catch technical issues before uploading content. The tool measures loudness, peak headroom, clipping, and DC offset separately, providing explicit thresholds instead of a single composite score. It uses the Web Audio API to decode uploaded files at 48 kHz and calculates an approximation of ITU-R BS.1770-style K-weighted integrated loudness. The tool compares results against platform-specific loudness targets, including -14 LUFS for YouTube and Spotify, -16 LUFS for Apple Music and podcasts, and -23 LUFS for EBU R128. Developers note that while the tool flags common problems effectively, its peak measurement does not oversample for inter-sample peaks, so a passing result does not guarantee compliance with professional true-peak meters.

0
ProgrammingDEV Community ·

wine.co.za upgrades 145,000-record archive search using Manticore Search alongside MariaDB

South African wine industry platform wine.co.za has integrated Manticore Search to improve how visitors search its archive of nearly 145,000 records spanning wineries, wines, contacts, news articles, and classified adverts. Previously, the site relied on MariaDB full-text indexes and wildcard queries, which required users to know exact names or spellings before finding results. Manticore Search now enables flexible, multi-word queries — such as combining a wine style, grape variety, and region in a single search — making the experience far more intuitive. The setup, which took IT Director Kevin Kidson roughly 24 hours spread over two days, uses a daily sync from MariaDB into Manticore, with the .NET application routing search queries to Manticore while MariaDB continues to manage primary data. Kidson praised the solution's stability and low maintenance, describing it as effectively a 'build and forget' system that has run reliably for years.

0
ProgrammingDEV Community ·

What Your Artifact Verification Actually Contacts — And Why It Matters

A developer building ProofLedger, a file-integrity tool that anchors SHA-256 hashes to Polygon and Bitcoin blockchains, shares lessons learned from the verification side of the system. Artifact verification involves three distinct checks: a local hash comparison, a structural commitment check, and an external lookup to confirm the commitment exists on a public ledger. A key risk is fail-open behavior, where verifiers silently pass checks even when external endpoints are unreachable, making a broken verification look identical to a passing one. Another concern is circular trust, where the only proof of validity is a JSON response from the same issuer whose claim is being verified, which offers no independent assurance. The author argues a truly self-contained proof should allow verification using only the proof file itself plus a single lookup against a publicly auditable source.

0
ProgrammingDEV Community ·

Developer Builds Browser-Based JSON Tool That Processes Data Locally Without a Backend

A developer frustrated with CLI friction for quick JSON tasks built JsonForge, a browser-based tool for formatting, validating, and diffing JSON data. The tool runs entirely in the browser using WebAssembly and on-device AI, meaning no data is sent to any external server. It supports features like schema generation, structural diffing, and pretty-printing, aimed at reducing context-switching during API debugging or code reviews. The local-processing architecture addresses privacy concerns common with web-based developer tools, particularly when handling sensitive payloads. JsonForge requires no login or account setup and is designed for speed in ad-hoc workflows rather than as a replacement for IDEs or CLI tools.

0
ProgrammingHacker News ·

How Delhi Slashed Electricity Transmission Losses from 50% to Just 5%

Delhi dramatically reduced its electricity distribution losses from around 50 percent to approximately 5 percent, a transformation documented by IEEE Spectrum. The improvement came through a combination of infrastructure upgrades, anti-theft measures, and privatization of the city's power distribution network. The reforms were implemented over several years following the restructuring of Delhi's electricity sector in the early 2000s. This achievement is widely regarded as one of the most significant turnarounds in urban power distribution in the developing world.

0
ProgrammingHacker News ·

Infections Responsible for 1 in 8 Cancer Cases Globally, Study Finds

A new study has found that approximately one in eight cancer cases worldwide are attributable to infectious agents. The research highlights the significant role that viruses, bacteria, and other pathogens play in cancer development globally. This finding underscores the potential for infection prevention and treatment to reduce the overall cancer burden. Vaccines and antimicrobial interventions targeting known cancer-causing infections could therefore have a meaningful public health impact.

0
ProgrammingDEV Community ·

Next.js 16 Turbopack Bug Turns require.resolve Into Integer, Breaking Runtime File Paths

A developer at a private company discovered a critical runtime bug after deploying a Next.js 16 service, where a tool designed to convert PDF pages into JPEG images returned no output. The root cause was Next.js 16's default bundler, Turbopack, which resolves require.resolve calls at build time and replaces them with integer module IDs instead of file path strings. When this integer was passed to path.dirname, a TypeError crashed the feature — an issue undetectable by type checks, unit tests, or direct script calls, since none of those go through the Turbopack build step. The fix involved resolving the package location relative to the process's working directory, though this solution works only with Turbopack and not with webpack. Following the incident, the team added a pre-deployment checklist item requiring a production-equivalent build to be started and tested externally, and documented the procedure ten days later.

0
ProgrammingDEV Community ·

How to Use ADB to Diagnose and Fix Android APK Installation Failures

Android's generic 'App not installed' error can stem from multiple causes including CPU architecture mismatches, signature conflicts, version code issues, or insufficient storage. A structured debugging workflow using Android Debug Bridge (ADB) and standard Android SDK tools can help developers, testers, and advanced users pinpoint the exact failure. Before troubleshooting, users should record device details, APK metadata, and available storage, while avoiding an uninstall that could erase user data. Running ADB commands such as 'adb install' returns specific failure codes that map directly to root causes, making guesswork unnecessary. Comparing APK properties against device specifications using tools like aapt and apkanalyzer further narrows down compatibility problems before attempting a reinstall.

0
ProgrammingDEV Community ·

Adding usage instructions to MCP tool descriptions triggers AI agent calls, study finds

A developer built a parallel-execution MCP tool that assigns independent tasks to AI subagents and tested whether three coding agents — OpenHands, OpenCode, and Qwen Code — would call it on their own. None of the agents called the tool until a single sentence describing when to use it was added directly to the tool's description field. Across 24 controlled runs, the tool was called in 7 of 12 runs with the sentence present, versus 0 of 12 without it, yielding a p-value of 0.0046 by Fisher's exact test. However, when only methodologically consistent runs were compared, the p-value rose to 0.182, falling short of statistical significance. A separate lighter-weight consultation tool showed the opposite pattern, responding reliably to rule-file instructions rather than tool descriptions, suggesting that the optimal way to prompt AI agents may depend on how resource-intensive the tool's processing is.

0
ProgrammingDEV Community ·

SQL Subqueries vs CTEs: When to Use Each and Why It Matters

SQL offers two primary tools for querying within a query: subqueries and Common Table Expressions (CTEs). A subquery is nested inside another query using parentheses and can appear in the SELECT, FROM, or WHERE clause to return a value, list, or table-like result. A CTE, defined using a WITH clause, acts as a named temporary result set that exists only for the duration of the query and is written above the main statement for clarity. While both tools often solve the same problem with similar performance in modern databases, CTEs are generally easier to read, can be referenced multiple times, and support recursion for hierarchical data. Subqueries are best suited for simple, one-off inline logic, whereas CTEs are preferred when a query involves multiple steps or requires reusability and readability.

← NewerPage 812 of 3170Older →