• Hrm. Well, it's still rather early in my career (just under four years of being a DBA/Database programmer so far), but I'd say I've definitely failed so far, on several occasions :-P. The core failure in every case to date has simply been that I've failed at failing.

    I'd imagine it's not too different for most new programmers, but I could certainly be wrong. When I first started, I had a few screwups and mistakes, and the response I had was one of puzzlement. "How did that go so wrong? I tested it plenty! It shouldn't have done that!" and so on. Eventually, in my puzzlement, I'd stumble upon the answer.

    That's not the right way to go about it, though, at least from my current point of view. No, with each new bit of functionality, I should've been thinking "This WILL break. It won't work right. Something's not going to act as expected. But plan for every eventuality you can think of, trap the problems, and improve the process." That's a far better means of thinking, I'd say, and it sadly wasn't until recently that I'd had that epiphany.

    Granted, there are the occasional problems that blindside me, but thankfully it's fairly rare and still easily handled. I'm quite happy that, in the case of an unexpected problem, I can now troubleshoot it, institute a fix, and have it back to the users with no harm done by the problem in less than 15 minutes, in my current environment, anyhow. And from that, I learn another way that my code was faulty, and I slap on another lesson about what works and what doesn't.

    Now, the next fun bit will see where I fail at in the future other than in this area of thinking 😛

    - 😀