SShortSingh.

Programming

0
ProgrammingDEV Community ·

Dev team open-sources SeaSearch, an S3-backed Elasticsearch alternative for multi-tenant search

A development team has open-sourced SeaSearch, an Elasticsearch-compatible search engine built to overcome the scaling limits of running one index per tenant on Elasticsearch. Rather than replicating data across nodes, SeaSearch stores all index data in S3-compatible object storage and routes query ownership via a partition map held in etcd. The system is built on ZincSearch and the Bluge indexing library, with compute nodes holding no authoritative data, making failover a metadata update instead of a data migration. To address the latency penalty of object storage, SeaSearch uses parallel segment warm-up and distributed query execution across multiple compute nodes. The team notes the architecture suits workloads with a small active data subset, and has been running in production for two years, though it omits some Elasticsearch features such as shard and replica settings.

0
ProgrammingHacker News ·

Chaos Computer Club Announces 40C3 Congress Under 'Model Citizens' Theme

The Chaos Computer Club (CCC) has officially announced 40C3, the 40th edition of its annual hacker congress. The event is themed 'Model Citizens,' as revealed in an invitation published on the CCC events website. The congress is a flagship gathering for the hacker and digital-rights community, traditionally drawing thousands of attendees from around the world. No specific dates or venue details were provided in the available announcement text, though the event page was published in September 2026.

0
ProgrammingDEV Community ·

DeepDeck tool lets developers benchmark whether WebMCP cuts AI token usage

A developer has added a WebMCP benchmarking feature to DeepDeck, an MIT-licensed macOS desktop project built on DeepSeek Harness, to test whether exposing a structured browser tool genuinely reduces time and token consumption for AI agents. The experiment runs two arms — one with WebMCP enabled and one with it disabled — across fresh browser profiles to isolate the tool's impact on task completion. Users can configure a custom URL, query, and tool file using the project's Node/pnpm setup without needing Docker or a registered benchmark site. Each completed run outputs a comparison report covering token usage, elapsed time, tool calls, and both final answers, though correctness is not automatically scored. Developers are advised to verify answers independently before drawing conclusions about efficiency gains from WebMCP integration.

0
ProgrammingDEV Community ·

SearchD flags data-modelling pitfalls when mixing ChatGPT UI and API observations

Digital agency SearchD ran an identical agency-selection query about Korean beauty products once in the consumer ChatGPT interface on 14 September 2026 and five times via the Responses API with web search enabled on 16 September. One agency appeared consistently across all five API runs, despite having an Ahrefs Domain Rating of just 0.7, while SearchD itself appeared in neither setting. The team warns that treating the UI observation as a sixth API run is a data-modelling error, since the two collection environments differ in surface, configuration, and knowable metadata. They recommend logging each surface separately, using per-run domain sets to avoid inflating recurrence counts, and recording unknown fields explicitly rather than inheriting API settings. The post stresses that five runs of a single question cannot support causal claims or broad market conclusions, and urges preserving raw observations for more targeted follow-up tests.

0
ProgrammingDEV Community ·

Poor Multi-Tenant Architecture, Not Performance, Is What Stalls Enterprise SaaS Growth

Engineering teams often blame database performance or API latency for slow SaaS growth, but the real bottleneck is typically multi-tenancy that was never properly designed from the outset. Most SaaS products begin as single applications with basic tenant separation — such as a tenant_id column — which functions adequately at small scale but becomes entrenched technical debt as customer counts and compliance demands rise. Because the problem surfaces as gradual friction rather than outright failure, it often goes unrecognised until enterprise onboarding, security audits, or data requests expose the gaps. Properly implemented multi-tenancy requires structural data isolation, per-tenant configuration without forked codebases, consistent access control, tenant-scoped backups, and correctly scoped audit trails — all built into the platform's core infrastructure. Without these capabilities working together, every subsequent scaling effort in performance, security, or feature development ends up fighting the architecture rather than being supported by it.

0
ProgrammingDEV Community ·

A Developer's Plain-Language Guide to Understanding Regular Expressions

A software developer has published a beginner-friendly breakdown of regular expressions (regex), aiming to demystify a tool many programmers avoid or copy blindly from online sources. The guide explains core concepts including anchors, character classes, quantifiers, and capture groups using simple JavaScript examples. It highlights common pitfalls such as greedy matching, where operators like * and + consume more text than intended, and recommends using lazy quantifiers as a fix. The author also covers useful regex flags like g for global matching and i for case insensitivity, along with modern JavaScript methods such as matchAll for cleaner iteration. Practical advice includes building patterns incrementally and using tools like regex101 to test and debug, while noting that regex is unsuitable for parsing nested structures like HTML or JSON.

0
ProgrammingDEV Community ·

AI Developer Benchmarks 10 FFmpeg Presets on a 2-Core ARM Server With No GPU

An AI-run content account that publishes one vertical video daily tested ten FFmpeg encoding settings on a two-core ARM Neoverse-N1 server to find the best file-size-to-quality trade-off. The benchmark compared libx264 options including variable quality (-crf), fixed bitrate (-b:v), and encoding effort (-preset) across two test materials: a real black-and-white video and a synthetically generated hard-to-compress pattern. Results showed that switching from -preset medium to -preset slow at the same quality level saved only 0.16% in file size while adding 3–5 seconds of encoding time. A fixed 2 Mb/s two-pass encode produced the highest quality scores but nearly tripled the file size and took the longest to process. The findings suggest that for social-media vertical video on CPU-only infrastructure, moderate CRF values with the medium or veryfast preset offer the most practical balance.

0
ProgrammingDEV Community ·

Flutter Build Failures After Toolchain Upgrades: A Gradle and Android SDK Fix

A developer encountered critical Flutter build failures after upgrading tools on their machine, caused by incompatibility between Java 25.0.3 and Gradle 8.14, which requires Gradle 9.1.0 or newer. The Android Studio installation was also outdated, running the older 'Panda 4' release instead of the latest 'Quail 4' version. Fixing the issue required downloading and installing the new Android Studio release, then updating SDK Platforms and SDK Tools via the SDK Manager. Flutter and Dart versions were also refreshed using the mise version manager's upgrade command. Finally, a cluttered shell environment was resolved by rebuilding a clean PATH configuration in the bashrc file with properly ordered Android SDK and mise tool entries.

0
ProgrammingDEV Community ·

Zone01 Kisumu Developer Learns Architecture Is Built by Decisions, Not Diagrams

A software developer at Zone01 Kisumu shares how hands-on project experience shifted their understanding of software architecture from an advanced career concept to an everyday practice. They observed that skipping deliberate architectural thinking does not eliminate architecture — it simply produces one that was never consciously chosen. The developer argues that technology selections like React or PostgreSQL should only follow after key questions about users, data, and system constraints are answered. Using examples such as a profile picture upload and an online payment flow, they illustrate how tracing data end-to-end reveals hidden design decisions at every step. Their core takeaway is that architecture lives not in system diagrams but in the accumulated choices made as a project grows.

0
ProgrammingDEV Community ·

Medium blocks major AI training crawlers but remains open to AI search indexing

A developer discovered that Medium's robots.txt file explicitly blocks eight AI-related crawlers — including GPTBot, ClaudeBot, and Bytespider — preventing bulk data collection for model training. However, the platform remains accessible to search-grounded retrieval bots such as Googlebot, Bingbot, PerplexityBot, and OAI-SearchBot, meaning Medium articles can still appear as cited sources in AI-powered search tools. Notably, Google-Extended and CCBot are also left unblocked, leaving open indirect pathways to AI training through Google's existing crawl data and the Common Crawl archive. The finding prompted the developer to abandon plans for a Medium column on AI search visibility, since the platform's setup works against the strategy being advised. A comparison of similar platforms — including DEV, Substack, and Hacker News — shows none have singled out AI crawlers the way Medium has, while Reddit takes the opposite approach by blocking all crawlers and licensing its archive directly.

0
ProgrammingDEV Community ·

Pre-Launch AI Checklist: What Teams Must Verify Before Production Deployment

Deploying an AI feature to production requires far more than a successful demo, as real traffic exposes issues like bad inputs, token spikes, and slow dependencies that test environments rarely replicate. Teams should verify reliability through fallback paths, human escalation routes, and clearly defined SLOs before exposing any system to live users. Latency must be measured end to end — covering model response time, retrieval, network overhead, and time to first token — since staging performance often understates real-world slowness. Cost controls, including token usage tracking, query caching, and model selection reviews, should be built in early rather than addressed after launch. Security measures such as prompt validation, data redaction, secrets management, and access logging are considered essential from day one, alongside post-launch monitoring to catch gaps that testing alone cannot surface.

0
ProgrammingDEV Community ·

How to Build a 'Find Stores Near Me' Feature Using JavaScript Geolocation

Developers can build a store locator feature using the browser's Geolocation API, which returns a user's latitude and longitude after requesting permission. The coordinates are then compared against stored location data using the Haversine formula, which calculates straight-line distance between two geographic points. Results are sorted by proximity to surface the nearest stores first. Since users may deny location access or use unsupported browsers, the implementation should include a fallback option such as ZIP code or address search. For production use at scale, straight-line distance calculations may need to be replaced with a routing service to provide accurate driving distances.

0
ProgrammingDEV Community ·

Why Tool Descriptions Are the Real API Contract in MCP Servers

A developer building a Model Context Protocol (MCP) server discovered that prose descriptions — not code or schemas — function as the true API contract, determining whether an AI agent selects and uses a tool correctly. Across a small three-tool sample maintained for just one week, the same tool description drifted between two files, with minor but meaningful wording differences emerging within days. The author warns that at scale — fifty tools, multiple teams, a year of changes — such description drift could cause an MCP gateway to describe backend behavior that no longer matches its actual implementation. Unlike REST APIs, which rely on routes, status codes, and diffable OpenAPI documents as a ground-truth contract, MCP servers have no such fallback, making accurate prose the sole interface. The piece concludes that the highest-value content in any tool description is provenance — explaining where parameter values must come from — since this is information a JSON schema alone cannot convey and its absence can cause agents to hallucinate identifiers.

0
ProgrammingDEV Community ·

A Practical Guide to Python Loops: for, while, break, continue, and enumerate

Loops are control flow structures that repeatedly execute a block of code while a condition holds, reducing redundancy and handling data of any size. Python offers two main loop types: the for loop, used when iterating over a known sequence or range, and the while loop, used when repetitions depend on a condition that may change at runtime. Control keywords like break and continue modify loop behavior — break exits the loop entirely, while continue skips the current iteration and proceeds to the next. The built-in enumerate() function simplifies indexed iteration by automatically pairing each item with its position, eliminating the need for a manually tracked counter variable. Together, these tools allow developers to write cleaner, more maintainable code by replacing repetitive manual logic with structured, readable loops.

0
ProgrammingDEV Community ·

AI Medical Imaging Tools Consistently Swap Left and Right in Scan Reports

A developer building an AI tool to interpret MRI and CT scans discovered that the most frequent error across four vision models — Claude, Gemini, Grok, and MedGemma — was incorrectly labeling left and right anatomical sides. Testing eight real studies against verified radiologist reports revealed mistakes such as a right-kidney cyst placed on the left and a medial meniscus tear attributed to the lateral meniscus. The root cause is that models trained on everyday photos describe what appears on screen, while radiology convention displays axial scans mirrored — the patient's right appears on the image's left. The developer addressed this by cross-checking each model's coordinate output against the NIfTI affine matrix, which maps voxel positions to real-world space where positive x always corresponds to the patient's right side. A language-agnostic regex covering multiple languages and an 8 mm midline dead zone were also added to reliably flag any mismatch between the model's written description and its coordinate data.

0
ProgrammingDEV Community ·

How to Install and Configure Kubeflow for Machine Learning on AWS EKS

Kubeflow is an open-source machine learning platform built on Kubernetes that manages model building, training, deployment, and scaling workflows. Setting it up on Amazon EKS involves provisioning a cluster using eksctl, which automates VPC, subnet, and IAM resource creation in a single command with nodes of at least m5.xlarge size. The Kubeflow installation relies on Kustomize overlays from the official manifests repository, requiring a retry loop during deployment to resolve component interdependencies and missing CRDs. Once all pods reach a running state, the Kubeflow dashboard is accessible via port-forwarding the Istio ingress gateway to avoid public exposure on a fresh cluster. Default login credentials provided during setup are placeholders and should be replaced immediately to prevent unauthorized access.

0
ProgrammingDEV Community ·

How to Handle AI Image Generation Timeouts Without Duplicate Charges

When a backend request to an AI image provider times out, developers cannot confirm whether the provider accepted the task or not, creating a risk of duplicate charges and accounting errors. Blindly retrying can trigger a second paid generation task upstream while also incorrectly deducting user credits twice. A robust approach requires assigning a persistent local request ID before calling the provider and linking it to the provider's task ID only once a response is confirmed. A dedicated state model — distinguishing uncertain outcomes from confirmed failures — prevents premature credit releases or redundant submissions. Application credits should be reserved before any submission attempt and held until the outcome is definitively established, not released simply because a response was lost.

0
ProgrammingDEV Community ·

India's DPDP Act Forces Fintechs to Overhaul KYC Stacks Within 18 Months

India's Digital Personal Data Protection Act 2023 runs alongside RBI's KYC Master Directions rather than replacing them, creating a separate layer of compliance obligations for fintech companies. The law introduces stricter consent requirements, meaning pre-checked or bundled consent forms are no longer sufficient, and any data use beyond regulatory KYC — such as marketing or credit scoring — requires its own explicit, revocable consent. Purpose limitation is now enforceable, preventing identity data from being quietly repurposed, while retention rules require actual deletion once the legal basis for holding data has ended. Fintechs must also build real workflows to handle data access, correction, and deletion requests within 30 days, and must update vendor contracts to explicitly name DPDP obligations. Non-compliance can attract penalties running into hundreds of crores from the Data Protection Board, with teams having roughly 18 months to make the necessary changes.

0
ProgrammingDEV Community ·

How to Deploy Cloud-Native Apps Securely on Azure Container Apps

Azure Container Apps offers a managed alternative to AKS, providing Kubernetes-style scaling without requiring users to operate a control plane or manage nodes. The platform uses KEDA for event-driven autoscaling and Dapr for service communication, making it suitable for teams wanting container orchestration with less operational overhead. A secure deployment setup involves authenticating to Azure Container Registry via managed identity rather than shared credentials, limiting access to only the required AcrPull role on a specific registry. Each deployment generates an immutable revision, enabling traffic splitting for canary releases or instant rollbacks without redeployment. Continuous deployment can be configured through Azure Pipelines, with scale rules tied to real demand signals such as HTTP request counts or queue depths.

← NewerPage 1181 of 3224Older →