SShortSingh.

Programming

0
ProgrammingDEV Community ·

Fitz framework achieves dual-target UI: same components run on server and browser

The Fitz framework's companion UI library, previously limited to server-side rendering, now compiles all 38 components to both server-rendered HTML and client-side WebAssembly using a single source file. Developers can switch compilation targets via a compiler flag rather than maintaining separate codebases for server and client. Three core technical barriers were resolved: raw HTML injection for SVG icons, support for list-driven components like Select and BarChart, and local list construction inside helper functions. Two additional components, Pager and ConfirmDialog, required a new mechanism to handle fall-through events that previously had no meaning in a browser-only context. The live gallery now runs 22 companion components compiled to WebAssembly, with no parallel hand-written client versions needed.

0
ProgrammingDEV Community ·

Developer Shares Practical Lessons on Building Truly SEO-Friendly Websites

A web developer discovered a bug in his own portfolio where a coding error caused industry labels to appear as geographic locations inside FAQ schema, making it indexable by Google and AI tools. The incident prompted him to outline what SEO-friendly development actually means: ensuring every page is discoverable, clearly understood by search engines, and fast on mobile. He highlights common pitfalls such as changing URLs without redirects, broken heading hierarchies from page builders, and misconfigured robots.txt or noindex settings. He also noted that after his domain served a default WordPress install for two years, Bing stopped crawling it entirely, requiring manual sitemap submission and IndexNow requests to recover. His key takeaway is that SEO outcomes are largely determined by construction decisions made during the build phase, not by plugins or post-launch fixes.

0
ProgrammingDEV Community ·

Meta Launches Muse AI Agent That Handles Tasks Autonomously, From Emails to Negotiations

Meta introduced Muse in early September 2026, a personal AI agent designed to go beyond answering questions by actively performing tasks on a user's behalf, including sending emails, booking reservations, making purchases, and negotiating prices. Unlike conventional chatbots, Muse continues working in the background even after the user closes the app, managing both quick one-off tasks and long-term multi-step goals. The agent operates within a dedicated Linux virtual machine called Muse Secure VM, hosted on Meta's cloud infrastructure, giving each user an isolated environment for their data and agent activity. For payments, Muse uses Stripe's Link system to generate single-use virtual card numbers per transaction, ensuring the user's actual card details are never exposed to the agent. A separate security process called Sentinel acts as the sole gatekeeper for all outbound connections, with user consent requests sent directly to the user rather than through the AI model, specifically to guard against prompt injection attacks.

0
ProgrammingDEV Community ·

LangGraph Multi-Agent Patterns: How to Build Supervisor-Worker Graphs Safely

LangGraph allows developers to build multi-agent AI systems as explicit directed graphs, where nodes are Python functions, edges define transitions, and a shared typed state flows through every step. A common pattern is the supervisor-worker model, where a central supervisor routes tasks to specialized agents such as a researcher or coder before deciding when to finish. Developers are warned that a hard step-limit counter is essential, as a supervisor that never outputs a stop condition can silently exhaust API budgets. For tasks that can run independently, LangGraph's Send primitive enables true parallel execution, with results automatically merged via Python's operator.add annotation before an aggregator synthesizes them. The article highlights that using a plain list annotation instead of the annotated reducer silently drops parallel worker results, making correct state typing a critical pitfall to avoid.

0
ProgrammingDEV Community ·

How iOS Developers Should Prepare Apps for Apple's Foldable iPhone Duo

Apple's anticipated foldable iPhone, referred to as the iPhone Duo, presents new UI and layout challenges for iOS developers. Unlike standard device upgrades, a foldable display dynamically changes the available screen space, making hardcoded dimensions and fixed layouts problematic. Developers are advised to shift from designing for specific screen sizes to building responsive, adaptive interfaces that adjust based on available space. Key areas to address include safe-area handling, flexible navigation patterns, and avoiding portrait-only or narrow-display assumptions. Experts recommend a screen-by-screen audit of existing apps to identify where fixed layouts may break before undertaking broader development work.

0
ProgrammingDEV Community ·

ArchSpec gem enforces Rails architecture rules in CI to catch AI-generated code violations

Rails development teams are increasingly using AI coding assistants like Cursor, Copilot, and Claude, which generate code quickly but often ignore project-specific architectural conventions. ArchSpec is a new Ruby gem that lets teams encode their architecture rules in a file called Archspec.rb, defining what each layer of the application can and cannot do. These rules are then checked automatically in CI pipelines, causing pull requests to fail if any violation is detected, regardless of whether the code was written by a human or an AI. The tool uses Rubydex and Prism to index Ruby source files statically, meaning it never boots the application and delivers fast feedback. Currently at version 1.1.0, ArchSpec requires Ruby 3.2 or higher and is released under the MIT license.

0
ProgrammingDEV Community ·

Developer connects personal Next.js portfolio to GitHub, Hackatime, and Sanity APIs

A developer recently upgraded their Next.js 16 personal portfolio by replacing hardcoded placeholder content with live data from three real APIs. GitHub's GraphQL API was used to fetch pinned repositories, since the REST API does not expose manually pinned repos. Hackatime, an open-source WakaTime fork by Hack Club, was integrated to display real coding hours and language statistics on the about page. Sanity, a headless CMS embedded within the Next.js app, replaced a static blog array and now allows publishing posts without touching code. Key lessons from the process included the necessity of GraphQL for GitHub pinned repos, the importance of API response caching to avoid rate limits, and a non-obvious CORS flag required to prevent an infinite login loop in the Sanity Studio.

0
ProgrammingDEV Community ·

Why AUC-PR Beats AUC-ROC for Fraud Detection on Imbalanced Data

A machine learning project built on the ULB Credit Card Fraud Detection dataset — comprising 284,807 real European card transactions with only 0.17% labeled as fraud — highlights a common pitfall in fraud detection modeling. The author argues that AUC-ROC scores, which can reach 0.91 with little effort on heavily imbalanced data, are misleading because they reward correctly classifying the dominant non-fraud class. By contrast, the AUC-PR metric more honestly reflects model performance on rare fraud cases, with the trained LightGBM model achieving an AUC-PR of 0.67 versus a baseline of 0.0012, roughly 550 times better than random chance. The model also delivers a precision of 0.88, recall of 0.71, and an F1 score of 0.79, with each prediction accompanied by SHAP-based explanations so analysts can audit why a transaction was flagged. The project emphasizes that transparent, explainable metrics matter more than inflated scores when building trustworthy fraud detection systems.

0
ProgrammingDEV Community ·

Published MCP Guide Found Outdated After Spec Deprecated HTTP/SSE Transport

An automated freshness check flagged a published MCP developer guide for requiring updates due to three specification changes. The most critical issue is that the guide still lists HTTP/SSE as a current MCP transport, despite it being officially deprecated on March 26, 2025. Streamable HTTP has been the standard remote transport since the July 28, 2026 spec update. The guide also recommends a max-iterations range of 3–5, which now conflicts with n8n's current guidance, though the updated figure was not disclosed. The product was marked as update-needed rather than obsolete, triggering a targeted rewrite of affected sections and file replacements on Etsy and Gumroad.

0
ProgrammingDEV Community ·

Developers Report Loss of Satisfaction as AI Agents Take Over Coding Tasks

Many software developers say that while AI coding agents have boosted their productivity, the shift has drained the satisfaction they once found in solving programming problems themselves. The hands-on struggle of debugging, searching documentation, and figuring out solutions was, for many, a core part of what made programming enjoyable. A widely discussed Reddit thread titled 'AI has made programming so boring' highlighted a deeper disagreement among developers about what programming is fundamentally for. Expert developer Nolan Lawson has compared AI's impact on frontend development to an asteroid strike, noting that even specialists in their own domains now defer to AI tools like Claude Code. As AI agents increasingly handle the problem-solving process, some developers worry that 'agent experience' may soon matter more than developer experience, fundamentally changing the nature of the job.

0
ProgrammingDEV Community ·

Git 2.55 reftable backend writes 10,000 refs in 40ms, but concurrency locks remain a concern

Git 2.55.0, released on 29 June 2026, ships the reftable ref storage format, which stores all references in compact binary-searchable table files instead of one file per branch or tag. Benchmarks show reftable creates 10,000 refs in roughly 40ms compared to 436–650ms with the legacy files backend, and also cuts disk usage dramatically — 272KB versus 40MB at 10,000 refs. However, a developer testing concurrent writes found that 94 of 150 simultaneous git update-ref processes failed with lock errors on reftable, while the old files backend handled all 150 without failure. Read performance gains were more modest, with git for-each-ref only about 1.3–1.4x faster, and claimed fetch/push speedups of 18–22x could not be reproduced in local file-transport tests. Git 3.0 is expected to make reftable the default format for new repositories, but the concurrency limitation is a trade-off that official benchmarks have largely not highlighted.

0
ProgrammingDEV Community ·

A single robots.txt rule cleared 957,000 ghost URLs left by a previous site owner

A developer discovered that six weeks after launching a 66-page static Next.js site, Google had indexed only one page while tracking nearly 957,000 URLs on the domain. The domain had previously hosted an e-commerce store, and Google was still crawling hundreds of thousands of old product and query-string URLs that no longer existed. Because the static site returned a 200 status for every query-string variant of the homepage, Google flagged over 335,000 of them as soft 404s and spent its crawl budget on the defunct store instead of the new content. Adding a single robots.txt directive — 'Disallow: /*?' — blocked all query-string URLs from being crawled, freeing the crawl budget for the actual site pages. The developer also corrected an over-eager sitemap that stamped every page with the latest build time, which had caused search engines to treat all pages as perpetually updated.

0
ProgrammingDEV Community ·

Developer releases CLI tool that auto-scaffolds auth, RBAC, and AI backend for SaaS apps

A developer has released an open-source CLI tool called @chimerai/cli that automates the repetitive setup work involved in building AI-powered SaaS applications. Running a single command generates a full project structure including authentication via NextAuth, role-based access control, an admin dashboard, analytics, and an AI service layer. The stack combines Next.js 14/15 with TypeScript on the frontend, a Python FastAPI and LiteLLM service for LLM orchestration, and Prisma with PostgreSQL or SQLite for the database. API keys for AI providers such as OpenAI and Anthropic are stored AES-256 encrypted at rest, and feature dependencies like requiring auth before enabling the admin dashboard are resolved automatically by the CLI. The generated code is inlined as owned, readable templates rather than external dependencies, since the shared packages have not yet been published to npm.

0
ProgrammingDEV Community ·

Python try/except Explained: A Beginner's Guide to Handling Errors Gracefully

Python's try/except block allows developers to catch runtime errors and prevent programs from crashing unexpectedly. When risky code — such as converting user input to an integer — is placed inside a try block, Python executes a corresponding except block if a specific error occurs. Multiple exception types like ValueError, ZeroDivisionError, and FileNotFoundError can each be handled separately for more precise control. A finally block can also be added to run cleanup code regardless of whether an error occurred. Beginners are advised to catch specific exceptions rather than using broad or silent handlers, and to wrap only code that is realistically likely to fail.

0
ProgrammingHacker News ·

Starlink Ground Station in Poland Damaged in Suspected Arson Attack

A Starlink satellite internet ground station in Poland was struck by fire in what authorities suspect was a deliberate arson attack. The incident was reported on September 24, 2026, according to Notes from Poland. The attack targeted critical communications infrastructure linked to SpaceX's Starlink network. Polish authorities are investigating the cause and origin of the fire. No further details on suspects or casualties were immediately available.

0
ProgrammingHacker News ·

Aalto University Launches Online Archive of Nokia's Iconic Design History

Aalto University has published the Nokia Design Archive, an online collection documenting the design heritage of the Finnish telecommunications giant Nokia. The archive is hosted on Aalto University's domain, suggesting an academic partnership in preserving Nokia's design legacy. The resource offers a publicly accessible look into the visual and product design history that defined Nokia during its peak years in the mobile industry. The archive attracted attention on Hacker News, where it garnered points and community discussion. It serves as a historical record for designers, researchers, and technology enthusiasts interested in Nokia's influential design era.

0
ProgrammingDEV Community ·

Generative Engine Optimization: How to Make AI Tools Recommend Your Website

As users increasingly turn to AI tools like ChatGPT, Perplexity, and Google Gemini instead of traditional search engines, a new discipline called Generative Engine Optimization (GEO) is emerging to help websites gain visibility in AI-generated answers. Unlike conventional SEO, GEO requires content to be discoverable through Retrieval-Augmented Generation (RAG), the process by which AI systems perform live web searches and synthesize responses from top results. Technical factors are critical: AI crawlers allow only two seconds per page load and cannot execute client-side JavaScript, making server-side rendering or static site generation essential for AI visibility. Content structure also matters significantly, as AI models break pages into small chunks of roughly 128 tokens, and a study of 10,000 queries found that intentional structural changes can boost AI citation rates by up to 40%. Websites that fail to adapt risk being invisible to AI answer engines, which are rapidly reshaping how people discover information online.

0
ProgrammingDEV Community ·

How a practice app learned to say 'we cannot tell yet' instead of faking progress

CogniPrep, a score-tracking practice platform, discovered that displaying trend arrows based on linear regression slopes was misleading users with false improvement or decline signals. With only 8–12 data points typical in practice sessions, the app found that statistical significance testing alone was insufficient — a result could be significant yet still indicate decline, not improvement. A separate performance bug was also uncovered where the same database query was being executed twice sequentially on every dashboard load, doubling Postgres round trips unnecessarily. The fix involved passing pre-fetched session data as an optional parameter to the analytics engine, eliminating the redundant query while keeping call sites flexible. The broader lesson highlighted is that Next.js fetch deduplication applies only to the React rendering path, not to API route handlers.

0
ProgrammingDEV Community ·

Solo Developer Builds Graph-Powered Agentic Fraud Investigation System at Hackathon

Developer Rohan Kumar, competing solo under team name BROTHERHOOD at Hacker House Goa '26, built an AI-driven fraud investigation agent as part of a TigerGraph challenge. The system uses TigerGraph's graph database to map relational connections between transactions, devices, cards, customers, and billing regions, treating fraud detection as an investigation workflow rather than a simple classification problem. Unlike conventional fraud models that flag individual suspicious transactions, the agent traverses connected evidence across the network, assesses uncertainty, and retrieves historical case context before recommending a next-best action. A policy engine sits between the evidence layer and the final decision, ensuring recommendations are grounded in structured data rather than LLM guesswork. The project includes a live dashboard, a public GitHub repository, and a demo video, with the core design principle being that the graph finds the evidence, the policy decides what to do with it, and the agent connects the two.

0
ProgrammingDEV Community ·

How one CSS media query handles mobile layout for all transactional emails

A developer at CogniPrep built a single HTML email shell function that wraps all transactional and campaign emails, accepting body rows and an unsubscribe URL as inputs. Because every content row is a direct child of the main card table, a single media query targeting .cp-card > tbody > tr > td is enough to adjust side padding for all emails on mobile screens under 600px. The use of child combinators instead of descendant selectors prevents the rule from bleeding into nested tables like score cards or buttons, preserving their individually set padding. The !important flag is intentional, not a shortcut, since inline styles dominate stylesheet rules in email clients and would otherwise override the media query. The template also handles preheader text — the inbox preview line — using four simultaneous hiding techniques and repeated zero-width spaces to stop email clients from appending unintended body copy to the preview.

← NewerPage 964 of 3189Older →