We spent months tracking down a rare SQLite corruption bug. Working with SQLite’s core developers, we found it—then uncovered a second bug along the way.
The story of the rare race condition we eventually caught:
https://t.co/QJtGHo06PR
I am excited to announce that we are officially writing a new version of Postgres. In Rust - and creating the LLVM of databases in the process.
In the span of a year, we have rewritten SQLite. Keeping the compatibility, increasing its feature set. MVCC, Types, (Live) Materialized Views, among other things. In the process of doing that, we have realized: At the end of the day, what makes SQLite special is that it compiles SQL to a database-specific bytecode. So why can't we compile *Postgres* to the same bytecode?
Turns out we can. I ran an experiment called pgmicro as a way to prove this hypothesis, and it works very well. It is time to make this official, and put the weight of Turso behind it. We shall give the world a modern take on Postgres. Wire compatible, but built on a new architecture.
We have already heard of others wanting to extend this. MySQL? Redis? the sky is the limit. What can we do if we do for databases what LLVM did for compilers? To prove how powerful the SQLite bytecode is, we are actually running DOOM compiled to the unmodified SQLite instruction set. And because Turso runs natively in the browser, you can play the game in your browser. With the database executing it.
Read the full story below! 👇
Students need to learn how to use AI, but they also need to learn how to think for themselves. So in schools there should be some kinds of work where students are expected if not required to use AI, and others where it's banned, and no mushy middle ground in between.
Absolute game changing way to prompt agents. I add this to every prompt and have seen internal evals improve by over 23%
"You gotta be
You gotta be bad, you gotta be bold, you gotta be wiser
You gotta be hard, you gotta be tough, you gotta be stronger
You gotta be cool, you gotta be calm, you gotta stay together
All I know, all I know, love will save the day"
The brain doesn’t need a gym, it needs this everyday:
- Linear Algebra
- Calculus
- Statistics
- Probability
- Differential Equations
- Mechanics
- Thermodynamics
- Electromagnetism
- Quantum Mechanics.
I've got an agent in a loop optimizing a renderer with the goal to minimize frame times (and tests to measure). It got times down from 88ms to 2ms and allocations down from ~150K to 500. Sounds good, right? Wrong. This is exactly why agent psychosis is a big fucking problem.
As an experiment, I rewrote the Ghostty core render state in Go, with access to identically laid out data structures as Ghostty and the exact same validation tests. I made a purposely naive renderer (simple, correct, but slow). 88ms per frame with 150,000 allocations (horrendous, lol)!
I then kickstarted a Ralph loop to bring the frame times down. I told it it can't modify input data structures or the public API or tests (they're correct), but it can do anything else it wants. It got to work.
It has worked for about 4 hours. I've spent around $350 on this experiment so far. The results?
88ms => 1.5ms
150K allocs => ~500 allocs
Incredible right? Nope.
My hand-written renderer I ported has frame times (same benchmark) of ~20us (0.020ms) and 0 allocations in the update path.
This is the problem with psychosis and lacking systems understanding. If you don't understand the system, you're going to accept that this is an incredible result. If you understand the system, you'll see better solutions immediately and can do roughly 75x better on throughput.
The people who blindly trust agent output are in the former camp. They're sheeple, overdrinking from a fountain of mediocrity.
Standard disclaimer: I use AI all the time. I like AI. The point I'm making is to not blindly accept results. Think. Analyze. Learn.
How to make your engineering job application stand out (from the perspective of someone looking at hundreds of resumes):
1. Your resume should be one page. If you really need more space, link to a website. You don't need 10+ bullets for each job.
2. You will immediately stand out >90% of applications if you link a personal website that has some intentionality behind it.
3. If you are going to link your X, you might want to clean up your posts? Seems obvious but... people post some wild stuff.
4. You should link your GitHub. Please avoid doing a profile README that looks like a MySpace profile with the badges and images. I'm trying to look at code and your ability to build interesting ideas.
5. You should try to customize your application to the company. If you're applying to a startup, the courses you took in college probably don't matter as much. Maybe more if you're trying to make it through the ATS screening for FAANG.
6. I'm seeing a surprising number of resumes which don't talk about AI or agents at all. Software engineering is changing and it's a pretty fair assumption that you will be expected to learn or understand coding with AI for your job. That should be reflected on your resume and projects (and I'm not just saying this because I'm at Cursor).
7. Take your LinkedIn seriously. Most devs are here hanging out on X but surprisingly still most people will send around your LinkedIn internally.
8. Find ways to show your unique strengths/tastes/interests. It's nice to see people are smart, well-rounded, and thoughtful. Maybe this is a collection of books you enjoyed and why. Or some writing you've done. Or films you liked. At the end of the day, people want to work with other people they like and respect. If nothing else, it will be a good conversation starter ("oh I love [book] as well!").
9. Do not use AI to write your cover letter or resume text. It's incredibly obvious, especially if you are applying to an AI company. You can still use it to ideate on ideas or phrases, but write it by hand (don't fall victim to the overused in-the-distribution-AI-phrases). See: /humanizer skill.
10. No photos on resumes. Save those for whatever you link out to.
11. Quality over quantity. 3 really good, thoughtful, detailed, interesting projects versus a wall of 27 AI-slop ones.
Remember that hiring managers / recruiters are getting hundreds or thousands of applications for a role. They're not going to spend 20 minutes on every single application. You need to cut the cruft and get to the point. I hope this helps you stand out!
New fun thing I did to secure my VPS even further
I installed @Cloudflare Tunnel, many of you recommended me this
I already had 443 inbound firewall limited to Cloudflare's IP range, but this is even better
Cloudflare Tunnel is outbound, which means it connects from your server to Cloudflare, and keeps the connection active, then if someone opens your site, Cloudflare sends you the package via the tunnel and your server responds
Then you can block ALL inbound traffic on your firewall (in my case the Hetzner firewall in the dashboard), so now NOBODY can ever access my server, only Cloudflare and Tailscale (which is my own subnet which just my server and my laptop on it)
You can just ask AI to set it up on the server etc., very easy
@sama hey sam! since you’ve been super active lately here’s my one request and hopefully you see this :). any chance we can use our $200/month subscription with the whisper/transcriptions api ? this would make life very, very smooth for me and i assume others!
For 50 years, software engineering ran on code rationing. Writing code was expensive, so we rationed it carefully through roadmaps, RFCs, prioritization meetings, and scope reviews.
This created a role: the No Engineer. No, that won't scale. No, we don't have bandwidth. No, that's out of scope. No, we need a design doc first. The No Engineer was valuable for 50 years. Every "no" saved real money. Their judgment was the rationing system.
LLMs will be the end of code rationing. Code is cheap now. And while the No Engineer is explaining why something can't be done, the Yes Engineer has already shipped three versions of it.
If you're a Yes Engineer, the next decade is yours.