I used to play with pic stuff back awhile ago now and switched to arduino, arduino has a lot more support and the stackable boards work better for me. I would consider myself to be just about beginner, even though I have been playing with micro's since the 90's, just that it is an on-off hobby for me. One of the things I like about arduino also is that you can get it down to an extremely small foot print.
One trick I use when writing programs for any thing is that I put a large amount of descriptions right in to the program, when I come back to a project then the program will have all the work I did, sitting inside to refresh my memory. Not just the beginning description I put notes in to the program so I can refresh why things need to be a certain way.
As far as structuring your program, have a look at some of the sites for picaxe. Most of the programming at this level is very similar for the modern micro controllers, if you want to get some of the arduino sketchs I have found around the web I can pm them to you.