https://medium.com/@shirhabeelawan_2383/error-handling-and-debugging-techniques-a-comprehensive-guide-3bd25c13a2c5