pagekite.py localhost:9331 bananajour-youraccount.pagekite.me
Dvcs systems have that potential, but people still generally fall back to using a central repo for sharing, because the network gets in the way of direct push/pull. The point of the article is to show one way of working around that.
If you follow it to its logical conclusion, then every member of a team can expose their working repo and any member can pull from any other member at any time.
Why would you keep it that way instead of defining some central repository which contains the current dev branch?
I know a company that essentially only commits changes to their subversion server once they're ready to be shipped to the client. Their developers just work on (unrevisioned) private copies and distribute changes to one another manually. Makes me cringe. I've been introducing some of them to DVCS as I interact with them (they send me a zip file full of code to look at, I send them back a link to a repo containing their zip file contents and my patches), but I don't think they're quite getting it yet.
cp -r .git ~/public_html/foo.git
Of course, I'd wager not very many of us work all the time on web-visible machines, which is why adding PageKite changes things - I'm sharing repos off my laptop now.
I couldn't imagine not being able to ssh in to screen session with my exact current state of work and/or access work in progress websites directly...