SShortSingh.

Programming

0
ProgrammingDEV Community ·

Storing User Documents: Database Blobs Versus Object Storage for Large Files

For most SaaS document uploads, the recommended approach is to keep file bytes in object storage while saving searchable metadata in a relational database like Postgres or MySQL. This separation tends to scale more cheaply and keeps the database smaller and faster, with a clearer audit trail. Large files such as scanned contracts can turn a database-blob design into a backup and replication burden. The article suggests the database row act as the source of truth, storing ownership, status, checksum, and an object key, and it advises using unique keys per upload so originals are never silently overwritten. It also compares options including Postgres bytea, Amazon S3, Cloudflare R2, and MinIO, noting that Postgres can still suit small, tightly coupled files.

0
ProgrammingDEV Community ·

Hammock condenses WhatsApp group chats into two lines using an in-browser Gemma model

Hammock is an open-source tool that turns an exported WhatsApp group chat into a short digest: what happened, and what needs the user's attention. Code first filters out noise such as greetings, forwards, stickers, and deleted messages, and keeps only messages after the user's last reply that mention their name or nickname. Gemma, a small language model, then writes the summary and phrases each item needing action as a to-do, with one-tap reply drafts. Everything runs inside the browser with no server or account, and the model is downloaded once and cached for offline use. The project is MIT-licensed, with the first model download being about 0.8 GB.

0
ProgrammingDEV Community ·

Delayed JavaScript Broke a WordPress Mobile Menu Despite Strong PageSpeed Scores

A WordPress site scoring in the high 90s on mobile PageSpeed Insights had a hamburger menu that failed to respond reliably when tapped on a real phone. The site used the Kadence theme and LiteSpeed Cache, with JavaScript deferral enabled to reduce initial page load work. Desktop and emulated mobile checks did not reproduce the issue, but bypassing LiteSpeed's Page Optimization layer made the menu work again. The author then excluded the Kadence navigation scripts from delayed loading, noting these filename-based exclusions depend on the specific theme and setup. The author stresses this was not a controlled experiment and that the exact cause was not fully confirmed.

0
ProgrammingDEV Community ·

Sloth Nap: a local agent picks two morning tasks from a skipped-chores pile

A submission to the Hacktoberfest Open-Source AI Challenge describes Sloth Nap, a tool that ranks chores likely to be skipped and surfaces the one dated note in a pile of notes. It then leaves two short tasks for the morning, such as filing receipts and replying to a landlord, totaling about 55 minutes. Nothing is deleted, and archiving notes requires a human approval that is recorded before the copy and confirmed afterward. The demo ran fully offline using a template, since Ollama was not installed, and the author explicitly notes it was not a Gemma model run. The project is MIT-licensed and has no public GitHub remote yet.

0
ProgrammingDEV Community ·

Binary BMFont v3 parsing: block size counts only the payload, not the header

The guide explains that in binary BMFont v3 files, a block's size field gives the payload length after its one-byte type and four-byte size header. Counting the header twice or using an older layout rule shifts later fields and can corrupt values such as filenames. It recommends checking the format version before parsing, since a BMF signature alone does not identify the correct parser. A Python example skips an unknown block and reads a page-name block, with length checks performed before slicing. The author notes this is a limited example rather than a complete secure font importer, and that the test used only synthetic input with Python 3.12.10.

0
ProgrammingDEV Community ·

PHP Patches Two Critical Flaws That Allow Code Execution Without Login

PHP released fixed versions 8.5.12, 8.4.27, 8.3.36, and 8.2.35 on October 21 to address two critical vulnerabilities, CVE-2026-109618 and CVE-2026-109619, dubbed PHP2Shell. Both carry a CVSS v4.0 score of 9.2 and allow attackers to execute code on a server without authentication. Because the flaws sit in PHP itself, updating WordPress or its plugins will not remediate them, and even fully updated WordPress installs remain exposed on unpatched PHP. Versions 8.1 and older are past end of life and receive only source backports or patched distribution packages, while 7.3 and older have no fix at all. Site owners are advised to verify their PHP version, confirm patches with managed hosts, or update through their Linux distribution, and to move to PHP 8.3 or newer.

0
ProgrammingDEV Community ·

Mobile apps only pay off for businesses whose customers have a reason to return

A sales approach for mobile apps argues that an app's value depends on whether a business's customers have a reason to open it repeatedly. The author notes that an app icon acts as a standing invitation to return, so businesses that sell one-off purchases gain little from one. A quick test is to imagine the customer's phone and ask what would prompt an ordinary tap on the business's icon. The piece suggests the best prospects include businesses with frequently changing schedules, existing recurring revenue or repeat online sales, and appointment-based services that can benefit from reduced no-shows.

0
ProgrammingDEV Community ·

Why an Aseprite sheet and image export can have different proportions

Aseprite can display sprites with non-square pixels, while exported PNGs are usually read as square-pixel grids. Applying the pixel ratio stretches geometry along one axis, whereas uniform export scaling changes both axes, so the two exports can differ without any lost pixels. The article's example uses a 12 by 21 source with a 2:1 pixel ratio, which becomes 24 by 21 square pixels and reaches 72 by 63 after a uniform scale of three. Its advice is to record stored dimensions, pixel ratio and export scale separately, and to compare a decoded frame from each export path. It also notes that changing PNG resolution metadata does not fix the geometry and that sheet exports may need a separate presentation copy.

0
ProgrammingDEV Community ·

Four Publisher test files show how a batch conversion run reports REVIEW and FAILED verdicts

Microsoft dropped Publisher from Microsoft 365 on October 1, 2026, and ended support for the perpetual version on October 13, 2026, though the files themselves remain usable. A developer ran the PubAudit tool with LibreOffice 24.2.7.2 on October 19, 2026, against four pre-labelled sample files kept on copies to protect the originals. Two real Publisher files converted successfully but were flagged REVIEW because their extractable text fell below the threshold, suggesting content held in images that needs visual checking. A 48-byte plain-text file with a .pub name was marked FAILED for lacking the required OLE2 header, and a truncated Publisher file was also FAILED after the converter exited without producing a PDF. All four verdicts matched the expectations recorded before the run.

0
ProgrammingDEV Community ·

Managed Object Storage Versus Self-Hosting for Marketplace Backup Retention

The article argues that a managed object-storage bucket is usually the safer choice for a beginner marketplace retaining signed documents, unless a team already runs redundant infrastructure, offsite copies, monitoring, and restore drills. It emphasizes that storage is only one part of the problem, since backups must also reflect a consistent application state and respect deletion deadlines. Recommended practice includes tagging each backup run with an immutable identifier, recording a manifest of documents with checksums and deadlines, and writing a completion record only after readback succeeds. A deletion worker can then remove expired copies while keeping a minimal audit trail. The author also cautions that self-hosted storage shifts responsibility for capacity, replication, access control, and offsite copies onto the team.

0
ProgrammingDEV Community ·

Reading Crypto Liquidations and Funding Rates as Risk Signals, Not Forecasts

A DEV Community tutorial lays out a workflow for interpreting crypto liquidation data alongside funding rates to gauge leverage stress. It stresses that forced-order dashboards describe positioning pressure rather than serving as buy or sell signals. The guide defines liquidations, funding rates, and open interest, and explains how each reflects where risk sits in the market. It proposes checking short and longer time windows, the long-versus-short split, coin and exchange concentration, and the largest single prints. The author frames the material as informational only and warns that derivatives trading carries substantial risk of loss.

0
ProgrammingDEV Community ·

USDT Is Several Distinct Tokens Across Networks, and Registries Should Reflect That

A developer article argues that what wallets label as USDT actually comprises at least three structurally different assets: native USDT issued by Tether, exchange-pegged versions such as Binance-Peg USDT on BNB Chain, and omnichain USDT0 issued by Everdawn Labs. These variants differ in issuer, redemption path, and risk profile, even though they trade at roughly one dollar. The author recommends that token registries record fields such as kind, issuer, and backing, and keep an explicit allowlist of chain and contract pairs to avoid symbol-based misresolution. The piece also highlights Tron's TRC20 fee model, in which transfers consume bandwidth and energy that must be staked or paid for in TRX, and cross-chain USDT moves that are effectively token swaps.

0
ProgrammingDEV Community ·

ZoomEye Scan Finds Thousands of Shopware Instances, Highlighting Admin Exposure Risks

A DEV Community analysis reports ZoomEye search results for the German commerce platform Shopware, showing 2,667 title matches, 1,094 on port 443, and 80 certificate matches as of 23 October 2026. The author notes that a single application fingerprint match suggests web-facing titles and certificates do not reliably reveal the underlying product. The piece argues that commerce admin panels hold sensitive customer data and payment provider credentials, making their exposure the key concern rather than storefront counts. Recommended safeguards include restricting administration access to trusted networks, auditing extensions, and securing staging environments and payment credentials. The analysis also suggests monitoring administrative logins for unfamiliar sources.

0
ProgrammingDEV Community ·

Multi-Tenant Help Center Retrieval: Node.js Design and Three Citation Checks

A developer guide argues that retrieval design for multi-tenant SaaS help centers should prioritize freshness, control, and citation requirements over the choice of vector database. It recommends separating durable indexed content from live lookups, with every answer traced to a tenant-scoped source. The author proposes an ingest, index, query, and cite pipeline, with logging and alerts at each stage so that wrong answers can be traced to a specific step. A small TypeScript validator is presented that confirms every cited chunk was actually returned for the same tenant. The piece also covers trade-offs between re-indexing frequency, latency, and citation stability, and mentions a runtime capability discovery approach tied to a specific API service.

0
ProgrammingDEV Community ·

Solo founder of TalkOctopus weighs open-sourcing its DocSend alternative

The solo founder of TalkOctopus, a platform for sharing documents and tracking engagement similar to DocSend, is considering an open-core model or fully open-sourcing the application. The main goal is to build trust with users. The founder's main concern is losing competitive advantage. The founder has asked for firsthand accounts from others who have open-sourced a SaaS product about what worked well.

0
ProgrammingDEV Community ·

Rebuilding AWS Cloud Skills on Azure: A Week of Lessons in Networking and Cost Control

A developer spent a week recreating familiar AWS architecture concepts on Microsoft Azure, starting with cost-conscious VM sizing and regional capacity limits. Subscription quotas on public IPs and forgotten resources, including an idle Bastion host that bills around $140 monthly, caused unexpected failures and cleanup work. The main project was a three-tier Book Review application with a Next.js frontend, a Node/Express API, and a managed MySQL database, each isolated in its own subnet with NSGs controlling traffic. The author debugged a series of issues, including a mistyped load balancer IP, an unquoted password character read as a comment, and a doubled API path, by testing each network hop in sequence. The week reinforced the value of querying the platform directly and critically reviewing instructions.

0
ProgrammingDEV Community ·

Ticket tracker switches board views with zero Firestore reads

An open-source ticket tracker called ticket-tracker loads each board's active tickets once and keeps them live, so switching saved views costs no database reads. Firestore cannot OR across fields and would need a composite index for every filter combination, which custom user-defined views would make impractical. Instead, filtering, sorting, grouping and swimlanes run as pure functions in the browser over the loaded tickets. Filters are nested and/or trees over built-in and custom fields, and tokens like 'me' or 'thisWeek' resolve against the viewer when the view is applied. The approach is designed for boards of roughly 5,000 active tickets, or about 5 MB.

0
ProgrammingDEV Community ·

Why Cloud Permission Approvals, Not Installs, Often Delay ROSA Projects

A ROSA install cannot begin until the customer accepts marketplace terms, which takes only minutes. The larger delay comes from the STS-based installer role, whose elevated trust policy must be reviewed by the customer's cloud security team. On the author's engagements that review took three to five days, with one customer needing nearly two weeks. The fix was a runbook change making identity and permissions approval a required pre-check before any install starts. The article also stresses separating authentication (who is making the request) from authorization (what that identity may do), a distinction that applies equally across AWS, Azure and GCP.

0
ProgrammingDEV Community ·

Developer guide compares AI text-to-speech platforms on latency, cost and voice quality

A DEV Community guide published for 2026 compares the leading text-to-speech platforms for developers building voice-first products. It evaluates criteria such as naturalness, latency, voice diversity, cost and developer experience, noting the trade-offs each involves. The article includes a sample cost calculation showing ElevenLabs priced higher per second than Google Cloud, though Google's latency is described as higher. The piece strongly promotes ElevenLabs as the best overall choice, citing its voice cloning, emotion layers and low-latency model. It also contains a promotional link to the company's trial page.

0
ProgrammingDEV Community ·

Candidate Search Retrieval: A 7-Point Release Checklist for Fresh, Citable Results

The article argues that candidate search should be treated first as a retrieval product rather than an LLM feature, with the answer a recruiter needs defined before any system design begins. It proposes a retrieval contract covering candidate identity, matching evidence, tenant scope, recency, and source identifiers. A vector index serves as durable memory for owned content, while live web search covers recent public material, and the two should not silently substitute for each other. The author recommends a two-lane pipeline that filters by tenant and access metadata before ranking, merges results by candidate ID, and labels which evidence came from durable versus live sources. An illustrative TypeScript example shows bounded requests with rate-limit retries, and the article notes the right tooling choice depends on ownership and operating constraints.

← NewerPage 18 of 2835Older →