Blessing in disguise
Posted: Mon Mar 26, 2007 11:48 pm
I've yet to implement any kind of SVN into my daily development bump and grind...yes I occassionally loose work, but honestly in my 10 or so years of professional experience I've maybe only had a dozen accidents which burned. 
I can still tolerate that I guess
Anyways (short of setting up a SVN) I had this problem today, when one of the apps I work on decided to go astray and recursively delete everything in my 'htdocs'. Usually I have daily backups but because I had several hours in before the brainfart (on behalf of my computer) I lost alot of work and became mildly enraged.
I just finished piecing togather my personal project (which suffered this biggest hit) and ironically it was a blessing in diguise. Why?
Well it was reaching a point where I was beginning to questions it's architecture. Code smell if you will. Usually when we feel funny about a design it's because we know it could be better, personal projects are no exception. Although I had plans on refactoring, I wasn't looking forward to it and was thinking this next weekend I'd get on it.
Loosing the codebase and having to resort to a backup which was a day or two old, I started from a milestone in which I considered stable and solid - no stinky!!!
Having taken what I learned over the weekend about my system and re-applied that to get the system back to where it was, I am now confident my system is as good as it can get architecturally speaking - considering my requirements.
This got me thinking, I wonder if I could use SVN and say every 2-3 days commit a "milestone" in which I feel the codebase is stable and architectually sound. After a couple more days when I think the code stinks, but I have a better insight into the design of the problem I could scrap my work and start fresh implementing using practical insight instead of best practice. I truely think this catastrophe was a blessing indisguise as my system is more solid and actually more efficient, better organzied, etc...
I could accomplish this using backups with a detailed notes.txt explaing what should be done, but I'm wondering would SVN have any facilities which would enhance this experience? Make it smoother?
It took me about 2-3 days to get the system where it was before trashing...it's taken me all of about an hour or so to bring it back to the spot it was in but without the code smell...
Cheers
I can still tolerate that I guess
Anyways (short of setting up a SVN) I had this problem today, when one of the apps I work on decided to go astray and recursively delete everything in my 'htdocs'. Usually I have daily backups but because I had several hours in before the brainfart (on behalf of my computer) I lost alot of work and became mildly enraged.
I just finished piecing togather my personal project (which suffered this biggest hit) and ironically it was a blessing in diguise. Why?
Well it was reaching a point where I was beginning to questions it's architecture. Code smell if you will. Usually when we feel funny about a design it's because we know it could be better, personal projects are no exception. Although I had plans on refactoring, I wasn't looking forward to it and was thinking this next weekend I'd get on it.
Loosing the codebase and having to resort to a backup which was a day or two old, I started from a milestone in which I considered stable and solid - no stinky!!!
Having taken what I learned over the weekend about my system and re-applied that to get the system back to where it was, I am now confident my system is as good as it can get architecturally speaking - considering my requirements.
This got me thinking, I wonder if I could use SVN and say every 2-3 days commit a "milestone" in which I feel the codebase is stable and architectually sound. After a couple more days when I think the code stinks, but I have a better insight into the design of the problem I could scrap my work and start fresh implementing using practical insight instead of best practice. I truely think this catastrophe was a blessing indisguise as my system is more solid and actually more efficient, better organzied, etc...
I could accomplish this using backups with a detailed notes.txt explaing what should be done, but I'm wondering would SVN have any facilities which would enhance this experience? Make it smoother?
It took me about 2-3 days to get the system where it was before trashing...it's taken me all of about an hour or so to bring it back to the spot it was in but without the code smell...
Cheers