PureCode Software Interview Question

Can you explain the difference between synchronous and asynchronous programming, and provide an example of when you would use each in a web development context?