Below is a picture and description of how I keep my desktops organized.
+---+ +---+ +---+ +---+ +---+ +---+
| F | | T | |EF | |Ch | | G | |Pdf|
+---+ +---+ +---+ +---+ +---+ +---+
F = All my "fun" windows. Chrome with facebook, hn, reddit, etc; iTunes; Other programs that I open and close occasionally like chat, torrent software, etc.T = full screen terminal. I use the basic terminal included with OSX. I keep a bunch of tabs open on it. This window/desktop is the home base for my development work that touches any of my servers.
EF = Emacs and Finder. I spend a lot of time on this desktop since I use a GUI Emacs for all my local development and org-mode for all my notes/lists, etc. I also like having finder here to look for/organize files on the filesystem. This desktop is conveniently located between my terminal and webbrowser.
Ch = Google Chrome, open with documentation, tutorials, and other resources for development. This gets its own desktop since I will often keep multiple windows open with many tabs each. Each chrome window will relate to a different project that I'm working on.
G = The Gimp (also occasionally Inkscape or other image editing software)
Pdf = full screen PDFs that I'm reading like books. I could have many of these open, and I leave them open all the time so I don't loose my place.
These things really aren't too much of an issue for me though, mostly because I am loath to ever close a window or restart a program, which leads to everything happily sitting where I placed it.