Friday, September 19, 2025

Transit Spotlight: Solving Three Big Challenges to Upgrade Our Iconic Cable Cars

Transit Spotlight: Solving Three Big Challenges to Upgrade Our Iconic Cable Cars
By John Gravener

Crews use a crane to lift one of our cable car sheaves to restore it. This Transit Month, we are going behind the scenes of our work to improve your Muni trips across the city. Today, we shine the spotlight on San Francisco’s cable cars. These cars are more than just iconic symbols of the city. They are a source of pride for those who live here. (Sorry, Golden Gate Bridge – we love you, but these beautiful cars have been around much longer!). Cable cars have been gliding down San Francisco streets since 1873. And the time has come to give them a little refresh. That’s why our teams are hard at...



Published September 18, 2025 at 05:30AM
https://ift.tt/OEFaHyG

Show HN: One prompt generates an app with its own database https://ift.tt/QSBAJoR

Show HN: One prompt generates an app with its own database Hey HN, manyminiapps is the world first massively multiplayer online mini app builder (MMOMA) *Here’s what it does:* You load the page. You write 1 prompt and you get a mini app back in under 2 minutes. There’s no sign up, and you can see what everyone’s creating in real-time! Each mini app comes with it’s own database and backend, so you can build shareable apps that save data. *What’s different* There are a lot of app builders that promise you’ll build production software for others. But we think true production software can take a long time to get right. Even if you don’t need to program there’s a lot of work involved. What if we turned the promise around? Instead of “you vibe code software companies”, it’s “you build fun software for yourself”. If you cut the problem right, LLMs as they are today can already deliver personal software. manyminiapps is meant to be an experiment to demonstrate this. You may wonder: do you really need personal software? We’re not 100% sure, but it’s definitely an interesting question. Using manyminiapps so far has been surprising! We thought our friends would just try to build the common todo app, but instead we found them building wedding planners, chord progression helpers, inspiration lists, and retro games. *How it works* Instead of spinning up VMs or separate instances per app, we built a multi-tenant graph database on top of 1 large Postgres instance. All databases live under 1 table, on an EAV table (entity, attribute, value). This makes it so creating an “app” is as light as creating a new row. If you have heard of EAV tables before, you may know that most Postgres experts will tell you not to use them. Postgres needs to know statistics in order to make efficient query plans. But when you use EAV tables, Postgres can no longer get good statistics. This is usually a bad idea. But we thought it was worth solving to get a multi-tenant relational database. To solve this problem we started saving our own statistics in a custom table. We use count-min sketches to keep stats about each app’s columns. When a user writes a query, we figure out the indexes to use and get pg_hint_plan to tell Postgres what to do. *What we’ve learned so far* We’ve tried both GPT 5, Claude Opus, and Claude Sonnet for LLM providers. GPT 5 followed the instructions the best amongst the models. Even if you told it a completely nonsensical prompt (like “absda”, it would follow the system prompt and make an app for you. But GPT 5 was also the “most lazy”. The apps that came out tended to feel too simple, with little UI detail. Both Claude Opus and Sonnet were less good at following instructions. Even when we told them to return just the code, they wanted to returned markdown blocks. But, after parsing through those blocks, the resulting apps felt much better. To our surprise, we didn’t notice a difference in quality from Opus and Sonnet. Both models did well, with perhaps Sonnet following instructions more closely. To get good results we iterated on prompts. We initially tried giving point-by-point instructions, but found that a prompt with a full example tended to do better. Here’s what we landed on: https://gist.github.com/stopachka/a6b07e1e6daeb85fa7c9555d8f... Let us know what you think, and hope you have fun : ) https://ift.tt/ZTliMGu September 18, 2025 at 09:56PM

Thursday, September 18, 2025

Show HN: A Cyberpunk Tuner https://ift.tt/Mr5YzPQ

Show HN: A Cyberpunk Tuner An offline first audio deck station Does need online access but can play offline. HTML5 needed. Load local files, up to 2 GB audio. Smooth transition between tracks. EQ. Compressor, pitch and speed controls. Uses tone.js https://un.bounded.cc September 18, 2025 at 12:37AM

Show HN: Vatify – Simple API for EU VAT validation and rate calculation https://ift.tt/JYgWh0D

Show HN: Vatify – Simple API for EU VAT validation and rate calculation I built Vatify, a lightweight API to take the pain out of EU VAT. With just three endpoints you can validate VAT IDs, fetch up-to-date rates, and calculate the correct VAT (including reverse charge logic). https://ift.tt/k6LlBEf September 17, 2025 at 11:01PM

Show HN: Web-based 2D geometry calculator https://ift.tt/BXVzbiZ

Show HN: Web-based 2D geometry calculator I often find myself trying to solve a geometry problem where the constraints are really simple to understand, but solving it algebraic is really hard and tedious. I built this whole thing from scratch with Claude Code. It's my first time trying it and I literally did not write a single line of code... That said, it still would be hard build this as a novice. I had to guide things along the happy path, but it saved me a ton of time! The code is open source! Let me know if you run into any issues. https://ccorcos.github.io/geocalc/ September 17, 2025 at 10:18PM

Wednesday, September 17, 2025

Show HN: Should v0.2.0 – debugging Go tests made easier https://ift.tt/PdVY2u1

Show HN: Should v0.2.0 – debugging Go tests made easier Hey everyone We’ve just released v0.2.0 of should: a lightweight assertion library for Go with zero dependencies and expressive error messages. This release brings several new assertions (e.g., BeError, BeWithin, BeSameTime), refactors for better type handling, and improved docs. We’ve also added support for formatted messages and streamlined some core functions based on user feedback. Repo: https://ift.tt/3bAS0wX Feedback and suggestions are very welcome! https://ift.tt/3bAS0wX September 17, 2025 at 02:50AM

Show HN: I Collected Every Emoticon I Could Find – All Mood and Generator https://ift.tt/PGsDIRj

Show HN: I Collected Every Emoticon I Could Find – All Mood and Generator https://ift.tt/RZyso30 September 17, 2025 at 01:14AM

Show HN: StarScope – Free astronomy dashboard for observers outside the US/UK https://ift.tt/LgOr41F

Show HN: StarScope – Free astronomy dashboard for observers outside the US/UK https://starscope.live/feed June 16, 2026 at 12:51AM