SShortSingh.

Programming

0
ProgrammingDEV Community ·

Developer Builds Lighthearted Dog Personality Quiz in a Single Weekend

A developer created a small, browser-based personality quiz for the DEV.to Weekend Doggos challenge that assigns users one of five dog breeds based on five casual questions. The quiz covers topics like Saturday morning habits, reactions to doorbells, and preferred compliments, matching users to a Golden Retriever, Corgi, Greyhound, Border Collie, or Pug. Results are intentionally temporary — the site encourages users to return the next day, as their breed may change. The project was built using React 19, TypeScript, Vite, and Tailwind CSS 4, with automatic deployment to GitHub Pages via GitHub Actions. It requires no login, no backend, and no user tracking, keeping the experience entirely lightweight and self-contained.

0
ProgrammingHacker News ·

Developer Releases Array-Backed LRU Hash Table for High Performance

A developer has published an open-source implementation of a high-performance LRU (Least Recently Used) hash table on GitHub under the handle adanil-code. The data structure uses an array-backed design, which can offer improved cache efficiency and speed compared to pointer-based alternatives. LRU hash tables are commonly used in caching systems to automatically evict the least recently accessed entries when capacity is reached. The project was shared on Hacker News, where it received minimal engagement at the time of reporting.

0
ProgrammingDEV Community ·

How to Build a Federated Learning System on Android Using Kotlin

Federated learning trains machine learning models locally on devices and sends only model updates to a central server, avoiding the need to share raw data. A tutorial published on DEV Community outlines how to build a federated learning prototype on Android using Kotlin, covering model download, local training, and update submission. The architecture relies on components such as a Model Manager, Training Engine, and Secure API Client, with Android's WorkManager handling background training tasks. Aggregation on the server uses Federated Averaging, combining weighted updates from multiple devices to produce an improved global model. The guide cautions that federated learning does not guarantee privacy on its own, and recommends additional measures such as HTTPS, device attestation, signed model artifacts, and server-side validation.

0
ProgrammingDEV Community ·

Custom Gradle Convention Plugins Help Scale Android Multimodule Projects

Large Android codebases often suffer from duplicated Gradle configuration spread across dozens of modules, making maintenance difficult. Custom Gradle convention plugins let teams centralize shared build rules — such as SDK versions, Kotlin settings, and testing config — into reusable plugins stored in a dedicated build-logic directory. A module can then apply a single plugin ID like company.android.feature instead of repeating the same setup everywhere. Best practices recommend keeping plugins focused and testable, using Gradle TestKit to verify behavior, and pairing them with version catalogs for centralized dependency management. The approach aims to reduce duplication and enforce consistent engineering conventions without obscuring what each module actually depends on.

0
ProgrammingDEV Community ·

Developer launches Adsyte, a free indie site directory ranked by real traffic

A solo developer has launched Adsyte, a free online directory designed to help indie websites, apps, and tools gain visibility. Unlike many existing directories that are outdated or prioritize paid listings, Adsyte ranks submissions based on actual visits and user upvotes. Each creator gets one permanent free listing, with browsing options including categories and a personalized recommendation feed. The platform is built on a static frontend with Vercel serverless functions, Upstash Redis, and Stripe for optional paid tiers. The directory is in its early stages with only a handful of listings, and the developer is actively seeking submissions and feedback from the indie builder community.

0
ProgrammingDEV Community ·

Kotlin Multimodule Architecture Offers Scalable Solution for Large Android Apps

As Android applications grow in complexity, a single Gradle module becomes difficult to maintain due to longer build times and tightly coupled dependencies. A multimodule architecture addresses this by dividing the app into independently managed modules organized around business capabilities such as auth, orders, and payments. Each feature module can internally follow Clean Architecture principles, while shared functionality is provided through focused core modules covering networking, database, and UI. Dependency inversion through interfaces prevents direct feature-to-feature coupling, keeping modules loosely connected. Convention plugins further reduce repetition by centralizing Gradle configuration, allowing teams to build, test, and modify parts of the application independently.

0
ProgrammingDEV Community ·

AEO for Developers: Why Crawl Access and HTML Structure Matter Most

Answer Engine Optimization (AEO) focuses on making websites easier for AI-powered answer systems to find, understand, and cite as sources. A developer reviewing a site for AEO should begin with crawler access, checking not just robots.txt but also CDN rules, firewalls, and rate limiters that can silently block bots. The next priority is ensuring key content — such as product details and pricing — is present in static HTML rather than loaded via client-side JavaScript. Different AI crawlers, including OpenAI's OAI-SearchBot, Perplexity's PerplexityBot, and Anthropic's bots, serve distinct purposes and can be controlled separately in robots.txt. Only after addressing access and structure should developers focus on entity data, answer-friendly content, and tracking AI mentions independently from traditional citations.

0
ProgrammingHacker News ·

Proxylity Launches Open WireGuard Endpoints with Async Lambda Support

Proxylity has announced the availability of open WireGuard endpoints alongside asynchronous Lambda functionality. WireGuard is a modern, lightweight VPN protocol known for its simplicity and strong security. The new offering appears to make WireGuard connectivity more accessible by providing open endpoints for users and developers. The addition of async Lambda support suggests the service is targeting developers building event-driven or serverless architectures. Full technical details are available on the Proxylity website.

0
ProgrammingHacker News ·

Firefox Remains Only Major Browser Supporting uBlock Origin Ad Blocker

Firefox has become the last major web browser to still fully support uBlock Origin, a widely used ad-blocking extension. Other major browsers, including Google Chrome, have phased out support for the extension, largely due to changes in their extension platform policies. The shift follows Google's transition to Manifest V3, which restricts the capabilities that powerful content blockers like uBlock Origin rely on. Firefox, maintained by Mozilla, continues to support the older extension framework that allows uBlock Origin to function at full capacity. This development has prompted some users to consider switching to Firefox to retain access to the popular ad-blocking tool.

0
ProgrammingDEV Community ·

MCP Protocol Revision 2026-07-28 Breaks All Pre-2026 Servers With Stateless Overhaul

A major update to the Model Context Protocol (MCP), versioned 2026-07-28, made the protocol fully stateless, removing the initialization handshake and several other core methods that earlier servers depended on. Developers began reporting broken MCP servers after updating their editors, with the most common error being a -32601 'Method not found: initialize' response, caused by a mismatch between modern clients and older servers. The revision eliminates methods including initialize, notifications/initialized, and server-initiated requests like sampling/createMessage, meaning every MCP server built before mid-2026 is affected to some degree. Instead of a one-time capability negotiation at startup, every request must now carry its own protocol version and client capabilities inside a _meta block. The update also renumbers error codes and replaces server-push interactions with a request-and-resume pattern, where servers return an 'input_required' result rather than interrupting a call to ask the client a question.

0
ProgrammingDEV Community ·

Python Data Model Explained: How Special Methods and Protocols Work

A detailed technical guide explores Python's data model, focusing on special methods — also called magic or dunder methods — and how they enable user-defined classes to integrate with built-in language operations. These methods, such as __len__, __iter__, and __eq__, act as behavioral contracts that tell the Python interpreter which operations a class supports. Rather than relying on type checks, Python uses these protocols to resolve operations like len(), iteration, and arithmetic uniformly across built-in and custom types. The article is based on Python 3.14 documentation and distinguishes between language-level guarantees and CPython-specific implementation details. It serves as Part 2 of a series building on foundational concepts like object identity, mutability, and references introduced earlier.

0
ProgrammingHacker News ·

Mole: Open-Source Terminal Agent for Private, Budget-Controlled Deep Research

A developer has released Mole, a free and open-source deep-research agent designed to run directly in the terminal. The tool enforces strict spending limits, reporting zero budget overshoot, and attributes every claim to a verified source. A key privacy feature ensures local data such as CSV files is analyzed entirely on the user's machine without being sent externally. Mole is compatible with most large language models, including local models and subscription-based coding agents. The project was shared on Hacker News by its creator, who is actively seeking community feedback.

0
ProgrammingHacker News ·

sandbox.bio lets developers embed a live Linux terminal into any website

A developer has shared sandbox.bio, a tool that allows website owners to embed a fully functional Linux terminal directly into their webpages. The project was posted on Hacker News as a community showcase submission. The terminal appears designed for training or educational purposes, as indicated by its URL structure. The tool could be useful for coding tutorials, documentation, or interactive learning platforms. At the time of posting, the submission had garnered minimal engagement with four points and no comments.

0
ProgrammingDEV Community ·

Two site-wide interaction failures traced to browser behavior, not buggy code

A development team experienced two separate incidents where their website appeared fully loaded but was completely unresponsive to user clicks and taps. The first issue stemmed from an AI chat widget configured to open automatically on page load, which applied the HTML 'inert' attribute to all other page elements, blocking all interaction by default. The second incident involved a floating WhatsApp button whose large transparent container was intercepting roughly 35% of the mobile screen's touch area, a problem misdiagnosed due to incorrect use of the CSS pointer-events property on the child element instead of the parent. In both cases, automated tests passed without detecting the failures because standard checks for visibility and DOM presence do not account for inert state or touch interception. The team recommends using elementFromPoint() to identify which element truly receives input, and adding explicit test assertions to confirm no unintended inert attributes exist on page load.

0
ProgrammingDEV Community ·

Developer finds hybrid RAG search underperformed vector-only retrieval in controlled test

A software developer built a retrieval-augmented generation (RAG) support assistant for a fictional B2B SaaS platform called Helix, grounding answers in a 100-document knowledge base of product docs, runbooks, and support tickets. The system passed production-readiness thresholds with a faithfulness score of 0.939 and context precision of 0.775 on a 50-query evaluation set. The developer hypothesised that combining BM25 keyword search with vector search via Reciprocal Rank Fusion would outperform vector-only retrieval, expecting the hybrid approach to handle both exact-term and semantic queries better. Controlled testing across all 50 queries showed the opposite: vector-only retrieval achieved a perfect Hit@5 rate of 100%, while hybrid search dropped to 94%, with lower document precision as well. The developer attributed the result to the corpus being mostly well-formed prose rather than text dense with exact-match triggers like error codes, where BM25 typically provides the most benefit.

0
ProgrammingDEV Community ·

Python Data Model Part 2: Special Methods and Behavioral Protocols Explained

A technical article on DEV Community explores Python's data model by focusing on special methods, also known as dunder methods or magic methods, which allow user-defined classes to integrate with built-in language operations. These methods, such as __len__, __iter__, and __eq__, enable objects to support behaviors like iteration, comparison, and arithmetic without inheriting from built-in types. The piece illustrates how Python resolves operations like len() through behavioral contracts called protocols, rather than type-checking chains. It also clarifies the distinction between Python's language specification and CPython's implementation details, particularly around object identity and memory addresses. The article references Python 3.14.7 official documentation and builds on concepts introduced in a previous installment covering object identity, mutability, and references.

0
ProgrammingDEV Community ·

Developer Builds Multilingual AI Voice Assistant for Indian Farmers in 10 Days

A developer built Kisan Mitra, an AI-powered voice assistant designed to help Indian farmers access agricultural information in Hindi, English, and Hinglish. The tool was created in 10 days as part of a voice agent hackathon focused on rural India, using Murf Falcon and LiveKit technologies. Kisan Mitra can provide real-time mandi (market) prices, weather forecasts, and crop advisories through voice calls, removing the need for farmers to navigate complex web portals. The system also supports outbound price alert calls, human escalation to agricultural officers, and retains caller memory for personalised interactions. It was built to address the challenge that millions of rural farmers face in accessing critical livelihood data while working in the field.

0
ProgrammingDEV Community ·

14-Year ASP.NET Veteran Shares Azure, Observability, and AI Architecture Lessons

A senior .NET engineer has published the final installment of a four-part series drawing on 14 years of enterprise ASP.NET experience, using a real-world system called Mattrx — built on .NET 9 with 110,000 monthly active users — as a running example. The article argues that most enterprise teams default to over-engineered cloud setups, recommending Azure App Service for standard workloads and reserving Kubernetes only for teams with genuine operational capacity to manage it. The author reports saving roughly $2,000 per month by right-sizing compute, switching to managed Redis, and introducing autoscaling instead of maintaining an always-on over-provisioned fleet. On observability, the piece emphasizes that structured logging, metrics, and distributed tracing tied by a correlation ID cut mean incident diagnosis time from around 35 minutes to approximately 4 minutes. The author also advocates treating large language models as untrusted, probabilistic dependencies — wrapping them with retrieval-augmented grounding, output validation, and cost tracking rather than deploying them as unguarded demo features.

0
ProgrammingDEV Community ·

ByteChef Workflow Editor Gets Full Flow Control Suite Including Parallel and Subflow

Open-source automation platform ByteChef has completed its full set of workflow flow controls, closing a long-running feature request tracked as GitHub issue #1057. The update adds Parallel, Fork/Join, Each, Map, and Subflow controls to the existing Condition, Branch, and Loop options in the visual workflow editor. Parallel and Fork/Join allow independent tasks or task sequences to run concurrently, addressing use cases like customer onboarding steps that do not depend on each other. The Each and Map controls handle list-based iteration, while Subflow enables reuse of common workflow sequences across multiple automations. Previously gated behind a feature flag, all controls are now available to all users without requiring custom code.

← NewerPage 114 of 1319Older →