I'm already quite excited about Turso being SQLite-compatible, but adding many features on top.
And when a feature is not directly compatible with SQLite (ie: you can't directly read the file with `sqlite3`, it's straightforward to convert). This is great because you know you'll always be able to continue working with that database. Even if Turso stopped working, it's still a valid SQLite database.
A combination I would be excited about is:
- Full support for Postgres protocol/wire format (ie: Postgres, but in-process, backed by a single file).
- Optional: Client/server architecture for further scaling and remote management using existing Postgres tooling
- All backed by a SQLite-compatible file
They are already adding MVCC to SQLite anyway. So their effort seems doable, and I hope they succeed.
On one hand, this had to happen at some point. I feel the split between ChatGPT vs. Codex wasn't helping OpenAI.
Anthropic did it right from the beginning by unifying everything in the same application. From my perspective, Codex is much better than any other app, but for non-technical users they were still stuck in ChatGPT only, and "nobody" knew about Codex. Anthropic also did it better by putting everything under the "Claude" brand: Claude Code, Claude Cowork, etc. Compared to ChatGPT vs Codex. OpenAI seems to be trying to revert that unwanted split.
With that said, I share the sentiment that it's 100% unclear what's the difference between Codex and Work. Chats now are a second-class citizen of the app. Although the "Attach to task" feature of chats looks useful. Putting "Chats" below the "Tasks" section would have been much better.
This may end up badly. Most people use ChatGPT just for regular chats, and they are not used to "agentic" interactions. It may take people time to adapt, and you can definitely lose users during that transition.
This also seems to have indirect implications regarding pricing. Codex (and Work) consume credits. Chats were also limited before, but you could mostly use ChatGPT without thinking about it. Now people will inevitably use Codex/Work more, simply because that's what the UI shows them, thus consuming credits. This will force you to keep an eye on credits a lot more.
Others have mentioned that the old ChatGPT can't be installed any more. Only if you had it installed before, it now became ChatGPT Classic. However, you can still add the chatgpt.com page as a Web App. You'll need an internet connection to use it, but the old ChatGPT app wasn't working properly without internet anyway... so the overall experience may not be that different. I'd even say that, to me, the web UI has always felt more polished than the native app.
I believe that's like saying we should only have a single "throw" event in athletics. Or why having hurdles events when you already have regular running ones.
I like that we can have more variety, more people competing, and overall different modalities to test human performance.
Finswimming is actually a separate sport, just not an olympic sport. Although it has some exciting characteristics like very fast 50 meter races, which I enjoy as a "regular" (non-fins) swimmer.
I find this a very exciting release. I was actually hoping we would somehow get macOS on mobile 'A' chips some day. And I think this is better than putting 'M' chips on an iPad.
My iPad with an 'M1' chip actually consumes more battery than much older iPads when both are locked and with the screen off. I ended up figuring it was probably because, in the 'M' chip, the lowest possible energy usage is way higher than the 'A' chip. So even small background wake-ups used more energy.
I'm still hoping one day we have an iPad with macOS.
I do this, and it's a huge quality of life improvement. No so much because of shadowing existing binaries, but for better command auto-complete. For example: I have a bunch of tmux utilities and all start with `,t` which is not a polluted command-name prefix compared to just `t`.
But I'm now facing the problem that LLM agents don't like this, and when I instruct them to run certain tools, they remove the leading comma. It's normally fixed with one extra sentence in the prompt, but still inconvenient.
I think this is something people ignore, and is significant. The only way to get good at coding with LLMs is actually trying to do it. Even if it's inefficient or slower at first. It's just another skill to develop [0].
And it's not really about using all the plugins and features available. In fact, many plugins and features are counter-productive. Just learn how to prompt and steer the LLM better.
I share the same feeling. I waited as much as possible to upgrade to iOS 26 / macOS Tahoe.
Two days ago, I finally upgraded. Liquid Glass is one of the worst things I've ever seen in terms of design. It reminds me of when I personalized old cheap android phones or Linux distros just "to look cool". Cool-looking: yes. Unusable: also yes. Tasteful design: almost absent.
Just the increase of the border-radius in all elements makes it hideous. Apps with a search bar on a scrollable list look like a CSS bug when the search bar is on top of the elements. Neither the search bar nor the element underneath are visible. Although this applies to most transparency effects on Liquid Glass. Neither the elements above nor below the "glass" are visible. And the extra value added is zero.
The thing is, I can still adapt to it, or tweak transparency and contrast. But I've seen elderly relatives struggle just because WhatsApp decided to add the "Meta AI" floating button. I can't imagine what this "inaccessible" UI changes can do.
I've been using z.ai models through their coding plan (incredible price/performance ratio), and since GLM-4.7 I'm even more confident with the results it gives me. I use it both with regular claude-code and opencode (more opencode lately, since claude-code is obviously designed to work much better with Anthropic models).
Also notice that this is the "-Flash" version. They were previously at 4.5-Flash (they skipped 4.6-Flash). This is supposed to be equivalent to Haiku. Even on their coding plan docs, they mention this model is supposed to be used for `ANTHROPIC_DEFAULT_HAIKU_MODEL`.
Not sure about the impact of these, I guess it depends on the context where this engine is used. But there seems to be already exploits for the engine:
It's a pattern I saw more often with claude code, at least in terms of how frequently it says it (much improved now). But it's true that just this pattern alone is not enough to infer the training methods.
A few comments mentioning distillation. If you use claude-code with the z.ai coding plan, I think it quickly becomes obvious they did train on other models. Even the "you're absolutely right" was there. But that's ok. The price/performance ratio is unmatched.
I enjoyed the post. I was about to link the "Let Me Speak Freely" paper and "Say What You Mean" response from dottxt, but that's already been posted in the comments.
I'm a huge fan of structured outputs, but also recently started splitting both steps, and I think it has a bunch of upsides normally not discussed:
1. Separate concerns, schema validation errors don't invalidate the whole LLM response. If the only error is in generating schema-compliant tokens (something I've seen frequently), retries are much cheaper.
2. Having the original response as free text AND the structured output has value.
3. In line with point 1, it allows using a more expensive (reasoning) model for free-text generation, then a smaller model like gemini-2.5-flash to convert the outputs to structured text.
There is too much focus on students cheating with AI and not enough on the other side of the equation: teachers.
I've seen assignments that were clearly graded by ChatGPT. The signs are obvious: suggestions that are unrelated to the topic or corrections for points the student actually included. But of course, you can't 100% prove it. It's creating a strange feedback loop: students use an LLM to write the essay, and teachers use an LLM to grade it. It ends up being just one LLM talking to another, with no human intelligence in the middle.
However, we can't just blame the teachers. This requires a systemic rethink, not just personal responsibility. Evaluating students based on this new technology requires time, probably much more time than teachers currently have. If we want teachers to move away from shortcuts and adapt to a new paradigm of grading, that effort needs to be compensated. Otherwise, teachers will inevitably use the same tools as the students to cope with the workload.
Education seemed slow to adapt to the internet and mobile phones, usually treating them as threats rather than tools. Given the current incentive structure and the lack of understanding of how LLMs work, I'm not optimistic this will be solved anytime soon.
I guess the advantage will be for those that know how to use LLMs to learn on their own instead of just as a shortcut. And teachers who can deliver real value beyond what an LLM can provide will (or should) be highly valued.
Me too! I also have a bunch of hooks in claude code for this. But codex doesn't have a hooks feature as polished as claude code (same for their command permissions, it's worse than Claude Code as of today). That's why I explored this "workaround" with bash itself.
It depends. If you allow running any of bash/ruby/python3/perl, etc. and also allow Claude to create and edit files without permission, then it won't protect against the pattern you describe.
Instead of containers, which may not always be available, I'm experimenting with having control over the shell to whitelist the commands that the LLM can run [0]. Similar to an allow list, but configured outside the terminal agent. Also trying to make it easy to use the same technique in macOS and Linux
ricardoanderegg.com
Twitter: [at] ricardoanderegg Contact: hn [at] polyrand [dot] net