
… I was doing my routine maintenance of the computer. Checking drive space, moving stuff around the partitions. I have several partitions and each serves a purpose but one is more important then all the others: The Developement partition.
The Developement drive is where I keep all my work: software and web developement. It was about 5GB in size and I needed more space. Looked around and noticed a lot of extra space on the other partitions. Ok … I decided to give it a little more juice!
This software is now reffered to as Norton Partition Magic. I used it before and did live changes to the drive partitions and everything went smoothly. So I disregarded all the warnings about the system disk and so on.
I did some math and decided on how to split the partitions. I needed another 5GB to the developement partition in order to keep things going well. I configured the software and hit the Whatever means GO button. It started to work, doing its thing, and at one time it hit a blue screen. I was using Windows XP and it was the first blue screen seen in quite a while.
Ok I said. It's a minor glitch, I'll restart it and it'll work. The catch is the developement partition was D which is right after C and the extra 5GB was coming from C. So, surprise surprise! I could not boot anymore as main partition was damaged.
Piece of cake. I reinstall Windows (which for me is common practice) and it's done. Not really! The partitions were completely messed up. I had to repartition it.
I realized I was like doing brain surgery. I was too close to my life's work. I decided to make drive C much smaller so it will never run over drive D. Said and done. Installed Windows and never touched the rest of the drive. What I expected happened, my entire drive D was gone.
I partitioned the missing in action disk space but I did not format it. I did not touch anything on the other logical drives. All my work took place on C without touching any of the other partitions.
I have a pure C++ library written in Win32 SDK no MFC, ATL, WTL or anything else. Many classes that do virtually anything I need. It grew over 7 years to over 200.000 lines of code going from extremely advanced string manipulation to multi-threading classes; web access classes; my own Arrays, Lists; file manipulation; database access … a lot of source code put together over many years.
I did backups but last was done over 2 months ago and I made major changes to the core and a lot of new classes in the interval (I used to code more the web script back then). I was devastated!
Thank God there's something in me that helps me stay cool in the worst situations. I never lost focus even when disperation was taking over me. I decided to go for a data recovery tool. And GOD, have I tried them all! Most were just Undelete Tools which could not find anything as the partition was messed. And for 3 days, virtually no sleep, I tried them all. None worked.
God wanted to give me a lesson. Left me boil in my own juice and, finally, gave me redemption. I found a demo of a tool: Stellar Phoenix and it has saved my work and life. The demo managed to find all the missing data but would not recover it. I was 'a struggling artist' back then, no money included and had to find the cracked version. And I managed to do it. After a day of work I recovered about 75 source C++ header files (my library is inline, only headers).
But I was happy! All the rest were recoverable but there was so much fine-tuned source code that needed to be rewritten that I thanked God for both the lesson and the valuable files I managed to recover.
If you made it this far I'll share a little secret with you:
BackUP your Work!
Do not gamble your work or other sensitive data. Make sure you do, in worst case scenario, weekly backups of your data. Save them not only on another partition but on External Media, External Server even on your cellphone. I backup on my cellphone my two libraries: the C++ one and the PHP one; so I can have them with me anywhere!
Try not to go where I went but if you do remeber:
Thanks for reading, Good Luck and backup often.
Post Feedback