Skip to content
0:00 / 0:00

#onosecond#databasedeletion#sqltypo

The Worst Typo I Ever Made

Tom Scott

6.7M subscribers • 29 videos on Hallway

YouTube
  • Recommended by 3 people: 2 on Hacker News and 1 in engineering communities.
  • A classic. People kept recommending it from 2020 to 2026.
  • Presented by Tom Scott, educational content creator

Beginner. No background in the topic needed.

6.4M views6 years ago3 recommendations

Tools and practiceDatabases and dataDebuggingTestingSQL

Tom Scott shares a cautionary tale about a subtle SQL typo he made early in his career that accidentally deleted a production database.

When 'undo' won't do. • Sponsored by Dashlane, the password manager. Get a 30-day free trial at dashlane.com/tomscott • MORE BASICS: youtube.com/playlist?list=PL96C35uN7xGLLeET0dOWaKHkAlPsrkcha Written with Sean Elliott twitter.com/SeanMElliott/ Graphics by Willow Marler wmad.co.uk Audio mix by Graham Haerther haerther.net/ 🟥 MORE FROM TOM: tomscott.com/ (you can find contact details and social links there too) ❓ LATERAL, free weekly podcast: lateralcast.com/ youtube.com/lateralcast/ 👥 THE TECHNICAL DIFFICULTIES: youtube.com/techdif

Why it's here

3 people recommend this

What people say. Highly recommended as a classic cautionary tale about the dangers of irreversible database operations and the 'onosecond'.

u/UncleQuentinin r/Database • Recommends

The Worst Typo I Ever Made - Tom Scott | (MySQL, Undo, Saving and Backticks)

rococosbasiliskon Hacker News • Recommends

On “The “Oh Shoot” Moment”

Tom Scott has a great video on his "Oh Shoot" moment ( link to this video ). Thinking back on the times I've had code exist nowhere else but the clipboard...

sneelaon Hacker News • Recommends

On “List of Humorous Units of Measurement”

…se I didn't know it would break production beforehand. Recently, I accidentally deleted my entire shell history which caused me quite a bit of slowdown for some time. I'm quite used to modifying complicated commands with Ctrl+R and fzf; the deletion of my shell was truly horrifying. Tom Scott, as usual, has a great video about the onosecond (sic): link to this video…

auroranilon Hacker News • Mentions

On “We deleted the production database by accident”

Tom Scott made a mistake with a similar outcome as this article, but with an SQL query that is much more subtle than DROP. link to this video By all means, find ways to fool-proof the architecture. But be prepared for scenarios where some destructive action happens to a production database.

Sophiraon Hacker News • Mentions

On “Facebook-owned sites were down”

Somebody just had their very own "onosecond". link to this video The video is one that Tom Scott published in June 2020 about the worst typo he ever made in one of his prior jobs, and while the Facebook mistake is almost certainly not going to be anything irrecoverable like this one, you can bet that Facebook pride themselves on being available all the time.

u/SidewaysGatein r/typescript • Mentions

On “Naming convention for interfaces + decorators”

Oh I'm sorry I thought this was a leaf in the dependency tree, as in an app not a library. If you plan on acting as a library you can still approach it in a couple of ways: 1. Different names (the easy way) 2. Rework your library slightly to support tree shaking and paths. Take a look at how rxjs does it. You import some stuff from `'rxjs'` and some stuff from `'rxjs/operators'`. So pick the `Middleware` that will be more commonly used (probably the decorator) and export that at the top level, then consumers can still import most of your stuff from 'ModuleA' and the interface from 'ModuleA/...'. This has the advantage of smaller bundle sizes when you're done, so that's something too. **EDI…