In Gabe's post reflecting on blog portability, I definitely agree to number 1 and number 5 in his list.
I think for any nerd blogger/writer/person-who-posts-texts-on-a-website, having your posts in Markdown is probably the smartest thing you can do. Even if the engine you are working on doesn't support posting in Markdown, there are so many utilities out there that convert Markdown to HTML. But always keep a Markdown version of your post somewhere.
As for URL structure, sometimes your blog engine isn't customizable. However, you must choose one and commit to it before even starting a blog. Proprietary/randomly generated URL schemes are not your friend, especially if you plan on migrating.
Of course, I know this because those were a couple of the big mistakes I made when I first started.