How to explain technical information to someone with no technical knowledge

Last week as I was asked to describe what a JavaScript callback is to someone without any technical background. I thought about it for a few seconds and couldn’t think of a non-technical way to explain that a callback is a function that gets executed after another function has finished its execution, so then I was asked to explain a 500 error instead. Explaining what a 500 status code is to someone with zero technical knowledge sounded more interesting and fun to me so this is what I remember saying… A 500 status code is what you’ll get when a…