SShortSingh.

Programming

0
ProgrammingDEV Community ·

Study finds web blocks bots far more than it blocks countries

A developer tested geo-blocking by sending HTTPS requests to the 500 most popular domains from eight servers across eight countries, plus a home connection in Sofia as a control. Out of 345 domains that responded, only 29 showed any geographic difference in status codes or final hostnames, amounting to just 8.4% variation across regions. Most of those differences were routine country-specific subdomains from companies like Yahoo, CNN, and Kaspersky, rather than genuine access restrictions. Crucially, around 27% of sites refused requests at a near-identical rate across all continents, pointing to datacenter IP detection rather than geography. Fourteen sites, including Reddit, Patreon, and Dell, served content to the home broadband connection while blocking all eight datacenter addresses, revealing that the web filters more by client type than by location.

0
ProgrammingHacker News ·

Seattle Bans Surveillance-Based Dynamic Pricing for Grocery Sales

The Seattle City Council has voted to prohibit surveillance pricing in the sale of groceries. Surveillance pricing refers to the practice of using personal data and tracking technologies to charge individual shoppers different prices based on their behavior or characteristics. The ban aims to protect consumers from algorithmically driven price discrimination at grocery retailers. Consumer Reports, which has advocated against such pricing practices, highlighted the council's decision as a significant win for shoppers. Seattle becomes one of the first cities in the United States to formally restrict this form of data-driven retail pricing.

0
ProgrammingDEV Community ·

VoIPCall: Open-Source Kotlin Dialer Brings PSTN Calls to Android via Vobiz

Developer Nuvyntra Labs has released VoIPCall, an open-source native Android dialer built in Kotlin and Jetpack Compose that routes PSTN calls through the Vobiz VoIP platform. The app uses SIP over a secure WebSocket for signaling and WebRTC for audio, supporting Android 12 and later devices. Each device registers a single Vobiz SIP endpoint, with the caller ID tied to a Vobiz number in E.164 format, while authentication credentials are kept in a separate Node.js backend rather than compiled into the APK. Inbound calls can wake the app even when the process has been terminated, using Firebase Cloud Messaging to push notifications to the handset. The project, available on GitHub, serves as a proof-of-concept native client filling a gap left by Vobiz's existing Flutter sample and Java REST SDK, neither of which provided a full Kotlin dialer with WebRTC audio.

0
ProgrammingDEV Community ·

How a Home Network Tool Correctly Reported 'Online' Despite Poor Cell Signal

A developer built a personal tool to monitor whether a phone has an active, validated network connection, and it consistently returned an 'ONLINE' status even while the cell signal was rated 'POOR'. The tool is designed so that signal quality and device idle time are recorded as separate annotations and are explicitly prevented from influencing the core connectivity verdict. This separation is intentional: the green-light verdict answers only whether a valid network route exists, not how strong the radio signal is. During testing, the developer observed the radio signal drift between POOR and WEAK readings across multiple runs, all while the connectivity status correctly remained ONLINE. The case illustrates a deliberate software design principle where distinct measurements answer distinct questions and cannot silently override one another.

0
ProgrammingDEV Community ·

Developer Tests AI-Powered IDE That Auto-Manages Repos and Implements Feature Requests

A developer building a custom IDE for several months is stress-testing a feature that uses AI to simulate a software team, automatically triaging issues and generating pull requests. The system assigns tasks to specialized AI agents, with a lead agent reviewing code before a PR is submitted. As a public experiment, the developer plans to let users submit tagged comments on a DEV Community post, triggering the AI to create actual PRs and reply with links. To avoid flooding Forem's main repository, generated PRs will be directed to the developer's personal fork for human review before any upstream merge. The long-term goal is to commercialize the tool through a platform called Dwarven Stronghold, offering paid feature requests with a quote-and-refund model.

0
ProgrammingDEV Community ·

How Developers Can Organize and Share Project Links More Efficiently

Developers working on multiple projects quickly accumulate a large number of URLs, spanning repositories, documentation, dashboards, and public-facing resources. Managing these links through browser bookmarks alone is often insufficient, as bookmarks are designed for personal use rather than organized sharing and tracking. Separating private internal links from public-facing ones is a practical first step toward better link management. Tools like URL shorteners and link management platforms offer features such as custom slugs, click analytics, QR codes, and project-based collections to keep links organized. Grouping shortened links by project rather than managing them individually can make it easier to find, share, and update resources consistently.

0
ProgrammingDEV Community ·

Anthropic and OpenAI Launch Opus 5.5 and GPT-6 Sol on the Same Day

On September 22, 2026, Anthropic released Claude Opus 5.5 and OpenAI followed roughly 90 minutes later with GPT-6 Sol and a smaller companion model called Luna, marking an unplanned same-day launch from two leading AI companies. Independent benchmarks from Artificial Analysis showed Opus 5.5 outperforming GPT-6 Sol on quality metrics, including Terminal-Bench 4.0 scores of 52.5% versus 43.9%. However, GPT-6 Sol offered a significantly lower price point, with one developer analysis estimating it to be approximately 47% cheaper than Anthropic's offering. The two companies used different testing conditions in their official announcements, making direct comparisons difficult and highlighting the lack of a shared industry benchmark standard. Analysts note that the competitive focus in 2026 has shifted from raw capability to performance per dollar, with both firms emphasizing real-world task outcomes over leaderboard scores.

0
ProgrammingDEV Community ·

How WhatsApp Works: A Step-by-Step System Design Walkthrough

A DEV Community article documents a real adaptive learning session in which two developers, Pedro and João, collaboratively designed a WhatsApp-like messaging system from first principles. Rather than presenting concepts upfront, João guided Pedro through a series of engineering problems, letting solutions emerge organically from each challenge. The session covered key topics including WebSockets for persistent connections, load balancers for distributing traffic across multiple servers, and Redis as a shared state layer to track user-to-server mappings. Each solved problem revealed a new one, such as how to handle stale state in Redis when a user unexpectedly loses connectivity. The article aims to preserve this problem-driven learning process as a reusable educational resource for engineers studying distributed systems.

0
ProgrammingDEV Community ·

1 in 7 Software Dependencies Has No Active Maintainer, Study Finds

An analysis of 8,943 software components found that 13.4%, or 1,202 packages, show signs of having no active maintainer. About 80% of these were flagged through inference — specifically, no release or repository activity in over four years — rather than through an explicit deprecation notice. The study covered 24 public repositories across five ecosystems including npm, PyPI, Maven, Gradle, and Go, with npm showing the highest share of unmaintained packages at 15.1%. Researchers argue the key concern is not whether a package is flawed, but whether a fix would ever arrive if a new vulnerability were discovered. The findings highlight a gap in standard security reporting, which typically assumes an active maintainer exists to issue patches.

0
ProgrammingDEV Community ·

Per-Agent Cost Tracking Exposes Silent Overspending in Multi-Agent AI Systems

Multi-agent AI systems on AWS can silently overbill users by roughly 40% even when performance dashboards show no errors or latency issues. A 2025 research paper (MAST, arXiv:2503.13657) analyzed 150 traces across seven multi-agent systems and found failure rates between 41% and 86.7%, with many failures completing successfully on the surface. Traditional application monitoring tools are insufficient for AI agents because they do not track token usage, reasoning cycles, or per-step costs. A developer built a read-only AWS Account Investigator agent crew to demonstrate how per-agent cost data can be wired into trace spans to detect these hidden waste patterns. The project is designed to run locally at no cost without modifying any AWS account resources.

0
ProgrammingDEV Community ·

Offset vs Cursor Pagination: How to Choose the Right Strategy for Your API

Pagination is a fundamental API design choice that becomes critical as datasets grow larger. Offset pagination works by skipping a fixed number of records, making it simple to implement and ideal for admin dashboards, search results, and small-to-medium datasets where users need direct page access. However, at large offsets the database must scan through many rows before returning results, and shifting data can cause records to appear twice or go missing between requests. Cursor pagination instead marks a specific position in the dataset, letting the database efficiently retrieve only the records that follow, which makes it well-suited for infinite scrolling, social feeds, and frequently changing data. Choosing between the two depends on dataset size, how often data changes, and whether users need to jump directly to a specific page number.

0
ProgrammingDEV Community ·

MikroTik RouterOS Exploit Chain Leaves Detectable Log Trails, Devices Still at Risk

Two vulnerabilities, CVE-2026-67279 and CVE-2026-86060, form the 'MikroTrick' exploit chain targeting MikroTik RouterOS, documented by CERT Polska and patched in September 2026 releases covering versions 7.25beta3, 7.24.2, 7.23.4, and 6.49.21. The two-stage attack abuses SSH rekeying and a username-parsing flaw to gain full administrative access without valid credentials. Defenders can identify compromise attempts by looking for failed login entries for the username '-2' followed by the creation of an unauthorised 'ops' account in SSH logs. Observed attacks went beyond access, with attackers exporting device diagnostic files to external addresses, suggesting data collection as an additional goal. Security researchers warn that patching alone is insufficient — any internet-facing device that was unpatched during the active exploitation window should be audited, with credentials, certificates, and tunnel keys rotated if compromise indicators are found.

0
ProgrammingHacker News ·

Stripe Shares Details of Its Internal AI Knowledge Platform

Stripe has developed and revealed an internal AI platform called its Knowledge AI Platform, as detailed on the company's developer blog. The platform appears to be designed to manage and surface internal knowledge across the organization. Further details about its capabilities and architecture are available via Stripe's official developer blog at stripe.dev. The announcement was shared on Hacker News, drawing initial attention from the developer community.

0
ProgrammingDEV Community ·

How to Systematically Debug a Network That Seems Fine But Isn't Working

Network issues can be deceptive when a device appears connected — showing a valid IP, normal Wi-Fi icon, and local ping responses — yet fails to load websites or reach external servers. Experts recommend diagnosing the problem layer by layer rather than restarting blindly, starting with a clear definition of what exactly is failing and which devices are affected. The first technical step involves checking the local IP configuration and default gateway using tools like ipconfig, ip addr, or ifconfig to confirm a functional local connection exists. Once local connectivity is verified, the gateway should be pinged to confirm traffic can reach the router before testing broader internet access. DNS resolution is also flagged as a frequent hidden culprit, where the internet may be reachable but domain names fail to resolve, mimicking a full connectivity outage.

0
ProgrammingDEV Community ·

Five Common Reasons Your ZPL Label Prints Incorrectly Every Time

ZPL printers rarely report errors outright — they simply print something unexpected, making it hard to diagnose issues. The most frequent culprits include a missing ^FS field-close command, fields positioned outside label boundaries defined by ^PW and ^LL, and absent page-size declarations that force the printer into default settings. Non-Latin or accented characters also cause problems unless a proper character-set command like ^CI28 is declared at the start of the label. All these issues can be caught before printing by rendering the ZPL file in a viewer such as Labelixa, eliminating the need for multiple test prints.

0
ProgrammingDEV Community ·

How to Print ZPL Labels to Zebra Printers Over TCP Without Drivers

Networked Zebra thermal printers support driverless label printing by accepting raw ZPL files over TCP port 9100, a method also known as JetDirect or raw printing. Users can send labels directly from the command line using netcat, or via PowerShell and Python scripts that open a TCP socket and write the file bytes. No CUPS queue or printer driver installation is required for any of these approaches. Common issues include port 9100 being disabled on some printers, the printer being paused or in an error state, or ZPL files missing the required opening and closing tags that frame a valid label. Formatting problems such as incorrect density or clipping are considered a separate class of issue beyond basic connectivity.

0
ProgrammingDEV Community ·

Developer Builds Inventory-Balanced Trading Bot for Prediction Market Polymarket

A software developer has shared how they built an automated trading strategy for Polymarket, a prediction market platform where users trade on event outcomes like YES or NO. Rather than focusing solely on when to buy or sell, the strategy emphasizes post-trade management, including inventory control, hedging, and order lifecycle. The bot detects price trend reversals and executes trades in small cycles — for example, splitting a 100-share position across five cycles of 20 shares each — to reduce market impact. Protective rules automatically trigger aggressive position closures when hedges fail, markets near settlement, or orders remain unfilled beyond set time limits. The developer concludes that a trading signal alone is insufficient, and that a robust automated system must also handle execution, inventory balancing, and risk control.

0
ProgrammingDEV Community ·

Developer Runs Laya Decision Model Locally on Mac Studio Instead of Hosted Jev API

A developer chose to run Laya, a 421-million-parameter open-weight typed decision model, locally on a Mac Studio rather than using TypeSafe's hosted Jev service. Unlike large language models, typed decision models return structured outputs — such as a chosen option or a probability — instead of free-form text, making them suited for bounded agent decisions. The key reasons for choosing Laya were data privacy, local control over the model and its options, and the ability to operate without a per-token cost, though the developer noted hardware and time costs still apply. In a frozen 40-decision replay test, Laya outperformed a deterministic router, though the developer cautioned this does not prove general superiority over Jev. The article also details a loader error that caused significant debugging time and explains the technical differences in how Laya processes decisions using a bidirectional encoder rather than autoregressive text generation.

← NewerPage 989 of 3190Older →