There is an old saying, "A short pencil is better than a long memory."
I always keep a list of programs that I remove and add to a fresh install. Then I just cut and paste into a terminal and go have a cup of coffee and a piece of pie while it loads everything.
I keep a list in a text file like this:
sudo aptitude -y install preload kcontrol koffice program4 program5 etc. for however many programs I am adding.
Then I just paste the whole list into a terminal and let it run. I do the same for programs I am removing.
sudo aptitude -y --purge remove digikam program2 program3 etc.
It is pretty much pain free, but does require that you keep your list up to date as you add programs or delete them, so that the list will be accurate when you are ready to upgrade.