Has Stylefeeder just proven that e-commerce can live inside Facebook?
Stylefeeder, a Boston-based social shopping site centered around a recommendation and rating algorithm dubbed the Maximum Margin Matrix Factorization, just passed the million-member mark with its Facebook app.
The gist of the app is this: it connects to your Stylefeeder account and syncs your "shopping finds" between the two properties. Your picks then display on your profile box while incoming product recommendations stream to you from within the app.
In effect, it replicates the experience you'd find on the main property within Facebook.
It appears that the application has had a positive effect on Stylefeeder's main property, as well, shooting up past ThisNext and 200,000 monthly uniques in February to ~1 million uniques in April, according to Compete.
Stylefeeder's also ahead of Mark Cuban's RadicalBuy (3,000 installs), Amazon's Giver (1,300 installs) and Grapevine (1,000 installs).
written by Scott Hurff -- scott.hurff at channeladvisor

#!/usr/bin/python
import os
import rdiff_backup.Main
from rdiff_backup.Main import Main as backup
BACKUP_ROOT = "/mnt/backup/"
def get_jobs(config):
src_prefix = ""
target_prefix = "%s%s" % (BACKUP_ROOT,
config.get("target", "localhost"))
if "remote" in config:
src_prefix = "%s@%s::" % (config.get("user", "root"),
config["remote"])
target_prefix = "%s%s" % (BACKUP_ROOT, config["remote"])
for item in config["entries"]:
job = []
for (option, value) in item["options"]:
job.append(option)
job.append(value)
job.append("%s%s" % (src_prefix, item["path"]))
target_dir = "%s%s" % (target_prefix, item["path"])
if not os.path.exists(target_dir):
os.makedirs(target_dir)
job.append(target_dir)
yield job
configs = [
{"remote": "foobar.com",
"user": "root",
"entries": [
{"options": [],
"path": "/etc",
},
{"options": [
("--exclude", "**src"),
("--exclude", "**svn*"),
("--exclude", "**csv"),
],
"path": "/home/user",
},
],
},
{"entries": [
{"options": [],
"path": "/etc",
},
{"options": [
("--include", "**src/google_appengine"),
("--exclude", "**src"),
("--exclude", "**mp3"),
("--exclude", "**iso"),
],
"path": "/home/user",
},
],
},
]
for config in configs:
for job in get_jobs(config):
print "rdiff-backup %s" % " ".join(job)
reload(rdiff_backup.Main)
backup(job)
Hmm, the config section is really messy, but the order of options is relevant - dunno how to make it simpler...
To avoid getting asked for your ssh passphrase over and over again, you could use screen and ssh-agent:
screen -S backup ssh-agent bash ssh-add time ./backup.py
Powerset, which provides a new relationship with web data via innovative interfaces and natural language processing, launched this evening. Take a look at this video:
I'll write more later, but for now, check out other posts I've made on Powerset and NLP. I'll try to keep abreast of the commentary as it comes in. Meanwhile, I'm waiting for Fernando to pounce.
Update: ok, some comments. A couple of things that people are going to get hung up on. Firstly, writers seem to be referring to the technology as context or contextual search - why not call it NLP. Not sure where that is coming from. Secondly (actually, this is more important) pundits are going to write about the wikipedia-only issue. They're not getting it. 90% of search results come from a tiny fraction of web pages due to the huge redundancy on the web and the differences between searcher needs and author/publisher intents. The task isn't to always search that huge set, but to get the answers to the user.
factoryjoe : Announcing pydataportability 0.1 (technical) — mrtopf.de - "Right now the library is very barebone, supporting basic parsing of the hCard microformat, the XFN microformat and XRDS Simple. What comes out of the parser are then VCard, XFNRelationships or Service objects, depending on which parser