SShortSingh.

Programming

0
ProgrammingDEV Community ·

Why Reconnaissance Must Come First in IP Camera Security Assessments

Security professionals assessing IP cameras should begin with reconnaissance rather than attempting direct device access, according to a structured methodology outlined in a new technical series. The process involves local discovery, Google dorking, and internet-wide scanning tools like Shodan to map potentially exposed camera interfaces and services. Search engines can surface indexed camera login pages, while platforms like Shodan can reveal exposed ports, protocols, and authentication behaviours linked to specific devices. Identifying a camera as potentially affected by a known vulnerability or default credential is not proof of compromise — it is an evidence-based starting point requiring authorised validation. The approach aims to give security teams a clear picture of a client's exposed camera estate before any deeper testing begins.

0
ProgrammingDEV Community ·

AI Tutor Uses Skill Dependency Graph to Pinpoint Where Students Truly Struggle

A developer built an AI-powered tutoring tool that maps academic skills as a dependency graph to identify the root cause of a student's learning gaps rather than re-teaching surface-level topics. The system models 58 skills across five layers, from exam-level tasks down to basic arithmetic, with each skill linked to the prerequisite skills it depends on. An LLM generates targeted questions while the graph determines which skill to probe next, drilling downward until the underlying broken concept is found. To ensure the hand-authored graph remained valid, the developer implemented cycle detection using a three-colour depth-first search algorithm. An initial breadth-first traversal approach proved impractical, as a struggling student could face up to 42 questions before the diagnostic walk completed.

0
ProgrammingDEV Community ·

Unmoor: Open-Source Encrypted UDP Terminal Offers Post-Quantum Security

A developer has released Unmoor 0.1.0, an experimental encrypted and authenticated UDP-based remote terminal for Linux and macOS that aims to improve on existing tools like Mosh. Unlike Mosh, which synchronizes terminal screen state, Unmoor repairs the byte stream and applies backpressure to prevent silent data loss when history buffers fill. Sessions are tied to cryptographic identities rather than network addresses, allowing them to survive IP changes or NAT transitions as long as a UDP path is available. Authentication is bootstrapped over SSH, and each session uses hybrid X25519 plus ML-KEM-1024 key agreement, with post-quantum encryption enabled by default. The project is experimental, has not undergone an external security audit, and was developed with AI assistance, with the author retaining responsibility for all design decisions.

0
ProgrammingDEV Community ·

Single Matrix Update Shared Across Multiple Three.js Render Passes in Browser Game

Developer of the browser game Vesper implemented a lightweight TypeScript wrapper that updates a Three.js scene's world matrices once per frame before submitting multiple render passes — including main view, reflection, and ambient occlusion. The approach prevents redundant transform calculations and keeps render ordering predictable by separating animation updates from per-pass rendering callbacks. A key design detail is the use of a finally block, which ensures the scene's original matrix auto-update policy is restored even if a render pass throws an error. Render callbacks are permitted to change object visibility but must not alter poses or bone positions after the shared matrix update has occurred. Two automated tests covering transform correctness and error-case policy restoration passed successfully as of September 15, 2026, against Three.js version 0.180.

0
ProgrammingDEV Community ·

How One Developer Built a Near-Zero-Cost Website Stack for a Humanitarian Project

A French developer behind BROCCONOTTE, an association planning a humanitarian raid in Morocco, needed professional websites to communicate with sponsors on an extremely tight budget. Standard platforms like WordPress cost around €48 per year, while basic hosting providers such as OVH charge roughly €24 annually — both deemed too expensive. Instead, the developer opted to hand-code simple HTML, CSS, and JavaScript sites and explored free hosting alternatives, starting with GitHub. The project required three core features: a static presentation site, a live location map, and a newsletter email-collection tool. The article aims to guide non-technical readers through ultra-low-cost web infrastructure solutions discovered during this process.

0
ProgrammingDEV Community ·

Aspiring AI Engineer Builds Linear Regression from Scratch Using NumPy

A developer on a self-described 280-day journey to becoming an AI/ML engineer spent Day 4 implementing linear regression using Python's NumPy library rather than relying on high-level frameworks like scikit-learn. The exercise focused on understanding the underlying mechanics, including how data is vectorized into arrays and how a model updates weights and biases through gradient descent. The learner drew connections between core mathematical concepts — linear algebra and calculus — and their practical application in code. The experience reinforced the value of a strong mathematical foundation before moving on to abstraction-heavy tools. The post also invited experienced developers to share whether they similarly built algorithms from scratch before adopting frameworks like PyTorch or scikit-learn.

0
ProgrammingDEV Community ·

Why TargetId and RootId Break D365 F&O Automation Across Sessions

Developers automating Microsoft Dynamics 365 Finance & Operations often encounter mysterious request failures caused by two session-specific fields: TargetId and RootId. These identifiers are not static — they are reassigned by the server each time a form loads and stored as HTML attributes on DOM elements, making any hardcoded or saved values potentially invalid. Reusing stale TargetId or RootId values from a previous session can cause certain actions to silently fail, even when the rest of the request payload is unchanged. The issue affects all automation tools equally, including Postman, JMeter, RPA scripts, and custom code. The recommended fix is to inspect the target control via browser DevTools before each session and read the current attribute values directly, rather than relying on cached payloads.

0
ProgrammingDEV Community ·

As AI Handles Junior Dev Tasks, Who Gets the Chance to Gain Experience?

AI tools can already perform many tasks traditionally assigned to junior developers, such as writing code, fixing bugs, and building APIs, raising questions about entry-level hiring. The concern is less about whether AI will replace experienced engineers and more about whether newcomers will have opportunities to gain the foundational experience needed to grow. Junior developers have historically been hired for their potential, with companies investing in their learning through hands-on, often messy real-world work. If AI absorbs that beginner-level workload, the traditional pipeline for producing senior engineers could be disrupted. Some argue the developer role may shift toward problem framing, solution design, and AI oversight rather than writing code directly.

0
ProgrammingDEV Community ·

Developer Builds AI Voice Sales Agent That Lets Dealers Order by Phone Call

A developer has shared the architecture behind an AI voice sales agent designed to let dealers place orders through a natural phone conversation, without needing an app. The system uses Twilio for telephony, OpenAI's Realtime API for conversational intelligence, and LangGraph to manage a structured workflow of tools such as inventory checks and order creation. To minimize conversational lag, the developer opted for real-time voice processing rather than a basic speech-to-text-to-LLM pipeline. PostgreSQL serves as the source of truth for dealer data, product catalogs, and inventory, keeping the LLM focused on reasoning rather than data storage. The project is still in development, and the author documented the architectural decisions to share progress and invite feedback from the developer community.

0
ProgrammingDEV Community ·

Building multilingual support bots: why language is a routing problem, not translation

A software team building AI support bots for Southeast Asian businesses found that multilingual deployment is actually three distinct problems: detecting code-switching, matching model size to language complexity, and routing within a single conversation turn. They discovered that data residency regulations like Singapore's PDPA and low-latency requirements pointed to the same architectural solution — running inference in-region on locally hosted infrastructure. Rather than relying on a single large model, the team routes queries across 25+ models behind one unified endpoint, using smaller models for English and larger ones for lower-resource languages like Malay or Tamil, which significantly reduced costs. A key blind spot emerged in monitoring: a single aggregate quality score can mask drift in low-resource languages for days until a customer complaint surfaces, prompting a shift to per-language Macro-F1 tracking.

0
ProgrammingDEV Community ·

Why AI-Generated Code Demands Its Own Pre-Screening Process Before Review

As AI coding assistants contribute a growing share of pull requests, traditional code review processes are struggling to keep pace with a fundamentally different failure mode. Unlike human-written bugs that stem from fatigue or inattention, AI-generated code tends to look syntactically clean and plausible while silently introducing hallucinated methods, duplicated logic, or misunderstood requirements. A GitClear analysis of over 200 million changed lines found duplicated code blocks rising sharply alongside increased AI authorship — a pattern human reviewers often miss in large diffs. Pre-screening tools designed specifically for AI-generated code are emerging as a distinct category, tasked with resolving references against real codebases and flagging inconsistencies with established patterns before a human reviewer ever sees the diff. Experts argue that because the failure mode has changed, review workflows built around human error are now checking for the wrong things.

0
ProgrammingDEV Community ·

Eight Supabase security flaws in AI-built apps that expose user data — and how to audit them

Apps built with AI coding tools like Lovable and Bolt on Supabase may function correctly while silently exposing sensitive user data. In March 2025, a reported vulnerability — later assigned CVE-2025-48757 — revealed that over 170 Lovable-generated apps shipped without effective Row Level Security, leaving emails, payment data, and API keys accessible. Lovable responded with a built-in security scanner in version 2.0, but the scanner only checks whether RLS is enabled, not whether the underlying policies actually restrict data access. A security researcher has identified eight common RLS failure patterns, including user-writable role metadata, disabled RLS on public tables, and overly permissive policies that grant all authenticated users access to all records. Each flaw can be identified within minutes using Supabase's SQL editor, and the researcher recommends developers audit their own projects immediately.

0
ProgrammingDEV Community ·

How AI Can Actually Produce a Manufacturable PCB by Splitting Judgment from Geometry

Most 'AI designs your PCB' claims fall short because language models generate plausible-looking layouts that no manufacturer would accept. A more reliable approach splits the design process into two distinct halves: the LLM handles component selection and netlist generation, while a separate deterministic engine handles physical placement and copper routing against hard constraints. This division matters because language models cannot measure clearances or verify trace geometry, making their physical layout estimates untrustworthy. Reproducibility is another key reason to keep routing deterministic — an LLM-routed board can change with every model update or rephrasing, which is unacceptable in hardware development. When routing fails, naming the exact unrouted nets is more useful than a completion percentage, as it directs designers to fix component placement rather than chase a smarter algorithm.

0
ProgrammingDEV Community ·

Why Free Proxies Remain Unreliable and Risky for Users in 2026

Free proxies are typically validated with a single successful request, which reveals nothing about operator identity, traffic privacy, or connection stability. A working connection can mask serious issues such as header leaks, geolocation mismatches, and exit IPs already flagged on reputation lists. Operators of free HTTP proxies can read all unencrypted traffic, including URLs, form data, and session headers, while even HTTPS connections expose metadata like timing and destination hosts. Security risks escalate further if a proxy requests installation of a third-party root certificate, which would allow full interception of encrypted traffic. Experts recommend isolating test environments from production networks, using disposable credentials, and running multi-property checks covering anonymity, protocol support, and subnet reputation before trusting any free proxy node.

0
ProgrammingDEV Community ·

How Switching Mental Models Made Neural Networks Finally Click

A developer writing on DEV Community describes how a purely mechanical understanding of neural networks — tracking data through layers and weight updates — left the bigger picture unclear. Watching Josh Starmer's StatQuest explainer introduced the idea of neural networks as systems that sculpt functions, providing a useful zoomed-out perspective. The author then explored multiple mental models, including stack-of-transformations and function-approximation views, finding that each one made different questions easier to answer. Framing neural networks as function approximators connected the technology to familiar models like linear regression, reducing much of its perceived mystery. The key insight was that fluency came not from any single model but from learning to switch between several depending on the question at hand.

0
ProgrammingDEV Community ·

How enterprises are engineering trust out of AI hallucinations in 2026

As generative AI moves deeper into enterprise production in 2026, hallucinations — outputs the model fabricates — are now treated as an inherent risk requiring structured engineering solutions rather than informal checks. Modern quality assurance frameworks rely on three pillars: self-correction through separate generation and critique agents, standardized metrics such as faithfulness and answer correctness, and human oversight to curate verified datasets. Specialized validation agents can catch inconsistencies in real time, which is particularly critical for precision tasks like converting natural language into SQL queries. Human QA engineers are evolving into strategic roles — tuning AI judges, building ground-truth datasets, and embedding quality gates into CI/CD pipelines to catch errors before deployment. The core argument is that AI reliability must be a deliberate engineering outcome, combining automated observability tools with human judgment to make large-scale AI deployment trustworthy.

0
ProgrammingDEV Community ·

8 Role-Based AI Agents You Can Build Using MCP Servers

A practical guide from DEV Community outlines how to build Model Context Protocol (MCP) agents tailored to specific workplace roles, including sales, marketing, support, and engineering. Each agent is defined by four core components: a language model, two to three MCP servers, a system prompt, and a write guardrail. The guide recommends a three-server limit per agent, as connecting more degrades tool-selection accuracy and consumes context window space. Server combinations vary by role — for example, sales agents pair HubSpot with Exa and Google Calendar, while engineering agents connect GitHub, Sentry, and Linear. A key safety rule emphasized throughout is that agents should propose write actions rather than execute them automatically, to prevent unintended changes to live data.

0
ProgrammingHacker News ·

Developers Explore S3-Compatible Storage Alternatives to MinIO for Single-Node Use

A technical blog post published in January 2026 examines alternatives to MinIO for running a single-node, local S3-compatible object store. The article, shared on Hacker News, addresses use cases where developers need lightweight or simpler S3-compatible solutions without MinIO's overhead or licensing constraints. The post evaluates various tools that can replicate S3 functionality in local or self-hosted environments. It has attracted modest early engagement on Hacker News with a small number of points and comments.

0
ProgrammingDEV Community ·

EU AI Act GPAI Rules Now Enforceable, Putting New Duties on Engineering Teams

The European Union's AI Act enforcement regime for general-purpose AI models took effect on August 2, 2026, making compliance obligations legally binding with real financial penalties. Providers who fail to meet these rules face fines of up to 15 million euros or 3% of global annual turnover, whichever is higher. The rules apply to any team whose model is available on the EU market or produces outputs used there, regardless of where the company is based. Three requirements directly affect engineering workflows: publishing a detailed summary of training data sources, honoring machine-readable opt-out signals such as robots.txt during web crawling, and ensuring GDPR compliance when scraped data includes personal information. Teams relying on web-scraped training data must now treat data provenance and opt-out signal handling as compliance requirements rather than optional best practices.

0
ProgrammingDEV Community ·

Developer Reaches 100 Examples Milestone with Spring Advanced Module Project

A developer working on an open-source project called spring-by-example has completed Module 12, covering advanced Spring internals such as BeanFactory, ApplicationContext, SpEL, and method injection. The project was created to address a gap in existing tutorials, which often demonstrate Spring features without explaining the underlying reasoning or trade-offs. Each module consists of small, focused examples paired with explanations, tests, and documentation rather than a single large application. The completion of the Spring Expression Language example marked the project's 100th entry overall, spanning topics from Spring Core and AOP to Spring Boot and MVC. The developer says the advanced module provided deeper insight into the container-level abstractions that power higher-level Spring features.

← NewerPage 1237 of 3228Older →