惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Apple Machine Learning Research
Apple Machine Learning Research
Last Week in AI
Last Week in AI
Blog — PlanetScale
Blog — PlanetScale
V
Visual Studio Blog
月光博客
月光博客
博客园 - 三生石上(FineUI控件)
博客园 - Franky
IT之家
IT之家
博客园 - 叶小钗
Engineering at Meta
Engineering at Meta
The GitHub Blog
The GitHub Blog
雷峰网
雷峰网
腾讯CDC
博客园 - 聂微东
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
V2EX
人人都是产品经理
人人都是产品经理
MongoDB | Blog
MongoDB | Blog
大猫的无限游戏
大猫的无限游戏
Martin Fowler
Martin Fowler
宝玉的分享
宝玉的分享
博客园_首页
G
Google Developers Blog

Hacker News: Show HN

PurrrrrFocus: Pomodoro Timer App - App Store Workflow Engine — Multi-Step Orchestration for Bun RapidPhoto: Pro Photo Editor App - App Store GitHub - DheerG/swarms: Achieve extraordinary results with claude code across a variety of tasks SPICE simulation → oscilloscope → verification with Claude Code — Lucas Gerads Show HN: VCoding – A 5 MB native Windows IDE with no dynamic dependencies Show HN: LLMs don't hallucinate because they're bad at math, it's the format GitHub - Agent-FM/agentfm-core: AgentFM is a peer-to-peer network that turns everyday computers into a decentralized AI supercomputer. AgentFM lets you run massive AI workloads directly across a global mesh of idle CPUs and GPUs. Show HN: Tracking Top US Science Olympiad Alumni over Last 25 Years GitHub - Potarix/agent-hub: One place to talk to all your agents Show HN: Runtime security for AI agents(injection,tool abuse, data exfiltration) GitHub - dubeyKartikay/lazyspotify: Terminal Spotify client for macOS and Linux GitHub - the-banana-tool/king-louie: Easy to use GUI Personal AI Assistant. Win/Linux/Mac. Show HN I made my vacation rental bookable by AI agents–no Airbnb, 0% commission GitHub - basteez/jsf-autoreload: maven plugin to enable hot reload on jsf projects uvm32/hosts/host-gdbstub at main · ringtailsoftware/uvm32 GitHub - labsai/EDDI: Config-driven engine that turns JSON into production-grade AI agents. Multi-agent orchestration, 12+ LLM providers, MCP/A2A protocols, RAG, persistent memory, and enterprise compliance (EU AI Act, GDPR, HIPAA). Built on Quarkus. GitHub - glitchnsec/fortyone-oss: AI Executive Assistant Platform Quickstart | Alien GitHub - muxshed/shed: One stream in, or many. Every destination, simultaneously. No cloud middleman, no per-channel fees, no limits. GitHub - ocrbase-hq/ocrbase: 📄 PDF/IMG ->.MD/JSON Document OCR API for PaddleOCR and GLMOCR. Self-hostable. GitHub - impactjo/home-memory: MCP server that lets your AI assistant remember everything about your home. GitHub - Sets88/dbcls: DbCls is a powerful terminal database client that supports various databases GitHub - neptun2000/heor-agent-mcp GitHub - SeanFDZ/macmind: Single-layer transformer in HyperTalk for the classic Macintosh RollQuation: Math Puzzles - Apps on Google Play GitHub - dropbox/witchcraft Show HN: Agent-cache – Multi-tier LLM/tool/session caching for Valkey and Redis GitHub - opentalon/opentalon: OpenTalon is an open-source platform built from the ground up in Go as a robust alternative to OpenClaw LinkedIn™ 职位抓取工具 - Chrome 应用商店
Why code should never read B7 · logisky/LogiSheets · Disc...
logisky · 2026-06-16 · via Hacker News: Show HN

Why code should never read B7

TL;DR

I think humans and software break spreadsheets in different ways because spreadsheets lack structure.

LogiSheets adds typed blocks directly into the grid so users can still model with spreadsheets while software can safely read structured data.

Demo (Factory Simulator):
https://www.logisheets.com/

The spreadsheet backing the simulation can be revealed from the top-right corner.


I've been bothered by the same property of spreadsheets for years: they're at once too flexible for humans and too fragile for software.

A person can overwrite a formula, type "N/A" into a quantity column, or accidentally break a calculation. Nothing stops them. The mistake often isn't discovered until much later, after it has already affected downstream results.

Software has the opposite problem. It reads a value from B7, someone inserts a row above it, and now the program is silently reading the wrong number. Humans think in records and fields. Software ends up reading coordinates.

These look like different failures, but I think they're the same bug.

The spreadsheet grid has no structure.

Every cell can contain anything. Rows and columns don't have stable identities. A value's meaning exists only by convention. Humans are expected to follow the convention, and programs are expected to guess it.

What if spreadsheets had structure?

The traditional answer is to move the data somewhere else.

Databases, Airtable, and similar systems introduce schemas, types, constraints, and stable records. The tradeoff is that the user is no longer working in a spreadsheet.

That solves the software problem, but it often removes the thing spreadsheets are uniquely good at: building live models directly in the grid.

My goal with LogiSheets is different.

Instead of replacing the spreadsheet, I want to add structure directly into it.

Regions of the sheet become typed blocks. Fields have names. Values have types. Rules can constrain what users are allowed to enter. Records have stable identities independent of their physical position in the grid.

The important part is that the same structure serves both humans and software.

A user cannot accidentally enter invalid data into a field.

A program can read:

instead of:

Rows can move. Columns can move. Data can be reorganized for readability. The program still reads the same record.

Delete a row and it becomes a removed record, not silent corruption.

One structure. Both sides stop breaking.

It's still a spreadsheet

I don't want to turn spreadsheets into forms.

Users should still be able to write formulas, build models, run scenarios, and experiment with ideas directly in the grid.

The engineer constrains the shape of the result.

The user keeps the flexibility of a spreadsheet.

The software gets something it can trust.

How far can the model go?

One question I had early on was whether this idea only works for simple business records.

To test it, I built an entire factory simulation on top of the model.

Production chains, inventories, bottlenecks, and planning logic are all represented as structured spreadsheet blocks. Users can edit values, formulas recalculate instantly, and the entire state can be saved into a standard .xlsx file and loaded again later.

That experiment convinced me that the idea stretches much further than data entry forms.

Demo (Factory Simulator):
https://www.logisheets.com/

The spreadsheet backing the simulation can be revealed from the top-right corner.

2026-06-16.14.49.51.mov

How this differs from existing approaches

Excel Tables and Named Ranges

Excel Tables give names to regions of the sheet, which is useful.

But names are not guarantees.

A column can still contain unexpected values, broken formulas, or references that no longer make sense. Validation rules are optional and easy to remove. Software still has to trust that the workbook's structure hasn't drifted.

Airtable and Grist

These systems introduce real structure and constraints.

The tradeoff is that they move data into a database-style model.

LogiSheets attempts to keep the structure inside the spreadsheet itself.

Parsing spreadsheets from code

Libraries such as pandas or spreadsheet parsers can read workbook contents after the fact.

They don't prevent the workbook from drifting away from the assumptions your code makes.

The validation happens after the mistake.

I want the structure to exist before the mistake.

Current status

LogiSheets is implemented with a Rust core compiled to WASM and runs entirely in the browser.

It reads and writes real .xlsx files.

Some parts are working well. Some parts are still rough. There are many things I haven't tested yet.

What I'm most interested in right now is feedback on the idea itself:

Is the lack of structure actually the root cause of the problems people encounter when spreadsheets meet software?

I'd love to hear where this resonates, where it doesn't, and what existing tools you think already solve this problem well.