While browsing some popular websites, I noticed that occasionally the url would change to include these characters "#" or "#!". Why is this? From a programmers perspective, what techniques, technologies are they implementing to cause this. Is this a best practice for a certain solution?
Examples: http://twitter.com/#!/ http://www.facebook.com/#/