In my day job, I have created some tables for the features that I've built to improve functionalities for the company's application. I already knew that they (the infrastructure team) were moving our development database into a new environment, splitting the database into two databases in order to be used for debugging and testing. However, without us (the development team) knowing they have deleted the development database. And what's worse for me, my tables that I have created for various functionalities were not ported to the new databases.
Great! I just have to recreate the tables that I need just by retracing what I have done in the weeks before. It will be tedious, but doable. I've done it before, I can do it again.
Whoops! What?! My previous improvements are not there?! Now seriously. I know that it sounded like it's my fault but the truth is, it's not. We are supposed to have a GIT repository that we store our work, but when it comes to this particular application, just because the manager responsible for the GIT repository hasn't had time to create the environment, we're told to work on, drum roll please, production environment itself. Now, every developer would chuckle to hear this just because it's one of the greatest sin that could ever be done by developers these days. For a single application that only need the simplest functions developed just by one developer, yes, this is very common. But at enterprise level .... Anyway, I am not paid for just sitting around and so I just got to work, doing all the requested functionalities until there were some events unknown to me that my files were somehow got corrupted or deleted (my guess is a little about some different developers working on my file, and got it corrupted or that they took an old backup copy and slapped it into the production environment, overriding the work that I've done).
Anyway, it's work and it got to be done. And so I just have to work on it again and get it done. Meanwhile, this also happened on my side project! (Hahaha, what a week!). I was told by my client to create an application with a database as a collection of data. However, it takes a while for me to design that database, creating the relationships between the data, validating the types of data that need to be stored, etc). Once I've got the design and testing done that I started creating the database and the needed tables. It took me about 3 hours to do it just because I want to make sure that the data that I'm capturing is correct in the point of views of various case scenarios.
It was still early in the morning when I got it done. I still have some hours before I am needed at the office so I took a little nap. When I woke up, I got the email from my client saying that he needed to recreate the virtual machine just because he felt there were some configurations that he did wrong and since he thought it's a new environment, he was sure nobody had done anything to it yet. Little did he know ....
That's IT I guess, and repetition, redoing things over and over again is going to make you be better at what you do, even if you feel otherwise.