I would like to know how does add-on for the Firefox web browser with a custom proxy server prevent Google from collecting information about your browsing? Does it prevent also from your internet provider to collect information about you as well as your location? Are there any other ways to keep your privacy from your internet provider as well as Google?
Google sharing worked as a "search exchange".
You'd offer your computer as a restricted proxy (only for google) for other users, and use proxies of other users who did the same for your searches.
The main trick was the use of https - SSL sessions were still maintained by your computer and you could still verify google certificate - only the raw tcp session were proxied.
That way users still kept their searches confidential. Sadly google cracked down on this (because it was used by bots for automated searches) - quality of service degraded to that of google behind Tor, meaning a LOT of captcha, and mandatory cookies for all "exit IPs" - effectively all users in of the google sharing IP anonymity set. Instead of fixing this, moxie discontinued the service.
I'm currently in the middle of reviving the concept, with tit-for-tat (search-for-search) implementation, so that bots can't ruin the service again.
EDIT: As per request expanding the answer. Just to clear up how it exactly worked, the life cycle of each request went like:
searchclient's http_POST-> tunnel server <-http_GET_longpoll proxyclient->google
The HTTP POST / GET pair serve just as mere TCP tunnel (the tunnel server was written in python with twisted and they were federated IIRC).
What alternative is there at the moment? Just use Tor. You'll have to fill captcha now and then, and google will keep track of your search session (ie they could group searches together as belonging to one person), but they can't identify who it is. If you drop breadcrumbs through searches, switch identity in tor browser every time you do.
As for the proposed reincarnation of google sharing, the idea is to run some sort of overlay P2P network (no more tunnel server as an entry hop to proxy) - we have WebRTC these days - it didn't exist in 2010.
The tit for tat mechanism to prevent bots works on proxied data usage (because you can't guess how many searches were done over ssl, only the amount of results). The proxies will talk one to another similiar to how bittorrent works - they'll be reluctant to proxy for somebody who didn't proxy for us first, with some random altruism to bootstrap the exchange.
This "karma" could be also delegated from common friends, so one is not restricted only to peers being proxied for in the past.
The peers generally knowing each other isn't perceived as a problem as it would be in Tor, because nature of this traffic would be to switch proxy per every search. At best an adversary could uncloak one or two of our searches, but not most. In the original Moxie's design, the intermediate servers could uncloak all clients, assuming google would be complicit adversary. This was deemed inpractical (and still probably is), as google would have to log packetdumps of all SSL traffic they get, so they could cross check with packet captures from tunnel server.
The advantage of exchange compared to Tor is mainly having comfort of search near to that of direct connection (assuming your upload bandwidth can accomodate the tit-for-tat exchange) and being less suspicious overall as anything originating from Tor or even well known VPN services is sure under heavy scrutiny.
Ordinary user IPs is a drop in the ocean.