HNHacker News
TopNewBestAskShowJobs

mritchie712

2,975 karma · joined March 16, 2015

Founder at Definite (https://www.definite.app/).

Definite is ETL, a data warehouse and BI in one app.

Previously founded SeekWell (https://seekwell.io/), acquired in 2021.

twitter: https://twitter.com/thisritchie

email: mike@definite.app

meet.hn/city/us-Philadelphia

submissionscomments
mritchie712··on Pg_ClickHouse: A Postgres extension for querying ClickHouse
Once you have meltano installed, it's just be:

    ```
    meltano run tap-postgres target-ducklake
    ```
Setting up meltano would be a bit more involved[0]

0 - https://www.notion.so/luabase/Postgres-to-DuckLake-example-2...

mritchie712··on Pg_ClickHouse: A Postgres extension for querying ClickHouse
We released a meltano target for DuckLake[0]. dlt has one now too. Pretty easy to sync pg -> ducklake.

I've been really happy with DuckLake, happy to answer any questions about it.

DuckDB has always felt easier to use vs. Clickhouse for me, but both are great options. If I were you, I'd try both options for a few hours with your use case and pick the one that feels better.

0 - https://www.definite.app/blog/target-ducklake

mritchie712··on The Walt Disney Company and OpenAI Partner on Sora
> commoditized

not for disney content. Disney can pick OpenAI as the winner for this by not signing deals and suing anyone else.

mritchie712··on Microsoft has a problem: lack of demand for its AI products
I just had a sales call with someone from Microsoft who was looking for an AI tool to automate some Excel work they were doing. I doubt they'll buy our product, but it gave me a good laugh.
mritchie712··on Launch HN: Nia (YC S25) – Give better context to coding agents
Cursor promises to do this[0] in the product, so, especially on HN, it'd be best to start with "why this is better than Cursor".

> favorite doc sites so I do not have to paste URLs into Cursor

This is especially confusing, because cursor has a feature for docs you want to scrape regularly.

0 - https://cursor.com/docs/context/codebase-indexing

mritchie712··on Super fast aggregations in PostgreSQL 19
it's faster than previous Postgres.

e.g. the gender_name example would already be optimized in duckdb via columnar execution and “aggregate first, join later” planning.

mritchie712··on Anthropic acquires Bun
you have anthropic confused with something like lovable.

anthropic's unit margins are fine, many lovable-like businesses are not.

mritchie712··on Anthropic acquires Bun
> At the time of writing, Bun's monthly downloads grew 25% last month (October, 2025), passing 7.2 million monthly downloads. We had over 4 years of runway to figure out monetization. We didn't have to join Anthropic.

I believe this completely. They didn't have to join, which means they got a solid valuation.

> Instead of putting our users & community through "Bun, the VC-backed startups tries to figure out monetization" – thanks to Anthropic, we can skip that chapter entirely and focus on building the best JavaScript tooling.

I believe this a bit less. It'll be nice to not have some weird monetization shoved into bun, but their focus will likely shift a bit.

mritchie712··on A new AI winter is coming?
claude code + opus4.5 does exactly what it says on the box.

Today I pasted a screenshot of frontend dropdown menu with a prompt "add a an option here to clear the query cache". Claude found the relevant frontend files, figured out the appropriate backend routes / controllers to edit, and submitted a PR.

mritchie712··on Why Is ChatGPT for Mac So Good?
they clearly believe "native is better, electron bad" and are trying really hard to make ChatGPT a case for that.

The problem is, chatgpt for mac isn't better then the web version. I've tried to use it and always go back to the web.

mritchie712··on Launch HN: Onyx (YC W24) – Open-source chat UI
w24, those were different times.
mritchie712··on Claude Opus 4.5
> only Claude Code has been able to really solve; Sonnet 4.5 in there consistently performs better than Sonnet 4.5 anywhere else.

I think part of it is this[0] and I expect it will become more of a problem.

Claude models have built-in tools (e.g. `str_replace_editor`) which they've been trained to use. These tools don't exist in Cursor, but claude really wants to use them.

0 - https://x.com/thisritchie/status/1944038132665454841?s=20

mritchie712··on Agent design is still hard
yep, that's exactly where we've landed.

focus on the tools and context, let claude handle the execution.

mritchie712··on Agent design is still hard
Some things we've[0] learned on agent design:

1. If your agent needs to write a lot of code, it's really hard to beat Claude Code (cc) / Agent SDK. We've tried many approaches and frameworks over the past 2 years (e.g. PydanticAI), but using cc is the first that has felt magic.

2. Vendor lock-in is a risk, but the bigger risk is having an agent that is less capable then what a user gets out of chatgpt because you're hand rolling every aspect of your agent.

3. cc is incredibly self aware. When you ask cc how to do something in cc, it instantly nails it. If you ask cc how to do something in framework xyz, it will take much more effort.

4. Give your agent a computer to use. We use e2b.dev, but Modal is great too. When the agent has a computer, it makes many complex features feel simple.

0 - For context, Definite (https://www.definite.app/) is a data platform with agents to operate it. It's like Heroku for data with a staff of AI data engineers and analysts.

mritchie712··on Data-at-Rest Encryption in DuckDB
in which one? restarts are no problem on ducklake (ACID transactions in catalog)

the others, I haven't tried handling it in.

mritchie712··on Data-at-Rest Encryption in DuckDB
For pure duckdb, you can put an Arrow Flight server in front of duckdb[0] or use the httpserver extension[1].

Where you store the .duckdb file will make a big difference in performance (e.g. S3 vs. Elastic File System).

But I'd take a good look at ducklake as a better multiplayer option. If you store `.parquet` files in blob storage, it will be slower than `.duckdb` on EFS, but if you have largish data, EFS gets expensive.

We[2] use DuckLake in our product and we've found a few ways to mitigate the performance hit. For example, we write all data into ducklake in blog storage, then create analytics tables and store them on faster storage (e.g. GCP Filestore). You can have multiple storage methods in the same DuckLake catalog, so this works nicely.

0 - https://www.definite.app/blog/duck-takes-flight

1 - https://github.com/Query-farm/httpserver

2 - https://www.definite.app/

mritchie712··on Replicate is joining Cloudflare
replicate "only" raised $50m, so I'd wager the founders, investors and early employees did well here.

If they raised $500m... then yes, the wouldn't have done so well.

mritchie712··on GPT-5.1: A smarter, more conversational ChatGPT
when 4o was going thru it's ultra-sycophantic phase, I had a talk with it about Graham Hancock (Ancient Apocalypse, alt-history guy).

It agreed with everything Hancock claims with just a little encouragement ("Yes! Bimini road is almost certainly an artifact of Atlantis!")

gpt5 on the other hand will at most say the ideas are "interesting".

mritchie712··on Show HN: Data Formulator – interactive AI agents for data analysis (Microsoft)
This was too perfect of a setup, had to record a video[0] showing how we do this.

Yes, you definitely need need for a codification layer.

I think a semantic layer is the best way to do that for analytics. Having an LLM write bespoke SQL to answer every question will fail fast.

e.g. if you ask for "revenue by month" against a Snowflake warehouse with hundreds of tables, you are guaranteed to get different answers over multiple attempts.

We[1] use an agent to build a semantic layer over time at Definite so you get consistent results.

0 - https://www.loom.com/share/2da829dd440e489a8f7e3906c7083048

1 - https://www.definite.app/

mritchie712··on Deepnote, a Jupyter alternative, is going open source
seems you completely missed the point. marimo does everything you're looking for in plain .py files that render as notebooks.

https://marimo.io/blog/python-not-json

mritchie712··on Pg_lake: Postgres with Iceberg and data lake access
> For instance, it can handle >100k single row inserts/sec.

DuckLake already has data-inlining for the DuckDB catalog, seems this will be possible once it's supported in the pg catalog.

> Postgres also has a more natural persistence & continuous processing story, so you can set up pg_cron jobs and use PL/pgSQL (with heap tables for bookkeeping) to do orchestration.

This is true, but it's not clear where I'd use this in practice. e.g. if I need to run a complex ETL job, I probably wouldn't do it in pg_cron.

mritchie712··on Deepnote, a Jupyter alternative, is going open source
> Teams need notebooks that are reactive, collaborative, and AI‑ready

reactive: this matters, but all the alternatives have it

collaborative: this matters very little in the Figma / Google Docs sense of collaborative in practice. It's very rare you want two people working on the same notebook at the same time. What you really want is git style version control.

AI‑ready: you want something as close to plain python (which is already as AI-ready as it gets) as possible.

if you're measuring across these dimensions, I'd go with marimo.

marimo is saved as plain .py files, easy to version control and has a reactive model.

mritchie712··on How I use every Claude Code feature
> /clear + /catchup (Simple Restart): My default reboot. I /clear the state, then run a custom /catchup command to make Claude read all changed files in my git branch.

I've found myself doing similar workarounds. I'm guessing anthropic will just make the /compact command do this instead soon enough.

mritchie712··on Use DuckDB-WASM to query TB of data in browser
what did you use instead? if you hit OOM with the dataset in duckdb, I'd think you'd hit the OOM with most other things on the same machine.
mritchie712··on Launch HN: Propolis (YC X25) – Browser agents that QA your web app autonomously
I've been looking for this exact thing. A couple questions:

Are your agents good at testing other agents? e.g. I want your agent to ask our agent a few questions and complete a few UI interactions with the results.

How do you handle testing onboarding flows? e.g. I want your agent to create a new account in our app (https://www.definite.app/) and go thru the onboarding flow (e.g. add Stripe and Hubspot as integrations).

mritchie712··on Poker Tournament for LLMs
> lie

LLMs are capable of lying. ChatGPT / gpt-5 is RL'd not to lie to you, but a base model RL'd to lie would happily do it.

mritchie712··on Show HN: Erdos – open-source, AI data science IDE
We started with a product like this at Definite (https://www.definite.app/), but it became clear there weren't enough people willing to spend real money on a product like it when Cursor / VS Code already have good coverage on data science.
mritchie712··on Why I code as a CTO
he's also casually trashing their engineering team... "I built it in a day" is suggesting no one else could have.

I personally don't think there's anything wrong with doing it (i.e. shipping a feature quickly that a customer needs), but writing a blog post about it is questionable.

mritchie712··on My favorite cult sci-fi and fantasy books you may not have heard of before
I'm with you. My favorite sci-fi is something like Project Hail Mary, which is radically different from fantasy.
mritchie712··on A sharded DuckDB on 63 nodes runs 1T row aggregation challenge in 5 sec
DeepSeek released smallpond

0 - https://github.com/deepseek-ai/smallpond

1 - https://www.definite.app/blog/smallpond (overview for data engineers, practical application)

← PreviousPage 3 of 34Next →