Facebook announces Feature eXtraction Language

Last week, Facebook announced Graph Search, its own in-house search engine that will also link up to Microsoft's Bing engine for web-based search result. Today, the company announced it has developed its own programming language in an effort to help combat spam on the social networking service.

In a post on Facebook's blog, the company said, "Spam threats to Facebook's site integrity change on a daily, or even hourly, basis. Attackers peddling a 'free iPad 5' scam one day might tempt users with false promises of various gift certificates the next." So Facebook has created the Feature eXtraction Language to be a fast way to fight spam.

The company admits that creating a new programming language "is almost always a bad idea." In fact, FXL is described as " ... a narrowly-optimized implementation of a well-chosen subset of Standard ML (with some customized syntax)"

The blog posts some example FXL code to show how the language can be used to combat spam on Facebook. The post then gets highly technical as it describes how the code finds malicious URLs. The blog adds:

A conventional implementation would evaluate this code top to bottom, left to right. We would fetch data sequentially, conducting an excessive number of network round trips between the machine executing FXL and the reputation service. This is a classic problem of large computer systems: naively mixing business logic with data fetching logic, resulting in pathologically bad performance. A more sophisticated approach would find a way to batch these data fetches in a single network round trip. FXL was designed to do precisely this and automate these data fetches.

With Facebook now at over a billion users, it makes sense to create code that will find and do away with spam attacks. Facebook seems to think FXL does this job as fast and as efficiently as possible.

Source: Facebook | Image via Facebook

Report a problem with article
Previous Story

Lenovo exec open to some kind of deal with RIM

Next Story

Microsoft: $21.46 billion in revenue for Q4 2012

15 Comments

Commenting is disabled on this article.

To the first poster, Its a Technology they can license off when they need a cash injection or they need to sell off. Just like Nokia, Kodak etc ;-) So its not really a waste of time.

ChuckFinley said,
To the first poster, Its a Technology they can license off when they need a cash injection or they need to sell off. Just like Nokia, Kodak etc ;-) So its not really a waste of time.

Except that Facebook is so well regarded for their development wherewithal that other companies offer to build Facebook's apps... LMAO

Please be advised that a noticeable taste of blood is not part of any social protocol but is an unintended side effect of the Zuckerberg Science Feature Extraction Grill, which may, in semi-rare cases, extract dental fillings, crowns, tooth enamel, and teeth.

It amazes me how many engineers and how much effort goes into maintaining what is, essentially, nothing.

Don't get me wrong, the scale of it all is impressive, but I can't imagine investors are impressed by the news that they figured out a way to cut out spam more efficiently rather than, say, getting to the root of the problem.

Exactly. It's odd really. It's like watching a company spin their wheels... The best way I can think of to describe Facebook, is they're that one employee that spends all of their time trying to "look" busy... Nothing get's accomplished, when they do do something it's not what anyone wants, they're always working on the most useless stuff... lol

Their stock has risen to almost $30. Although, this spam protection system might not attract investors, but their advertising systems does. With so many users and so much data at hand, it is bound to be worth something to advertisers. I can understand how you feel about it just being a social network and being worthless, but this is the same story with almost every other big web startup. Whether it be square/stripe/paypal developing systems for secure money transfer, or amazon/ebay developing fraud detection schemes, or zynga developing systems to scale their games. The truth is most products might seem like a waste of time, but a lot of great engineering goes behind it and a lot of new technologies are developed to scale large clusters, natural language input, bug tracking tools, and so many other things. Essentially many of the big websites may seem like a waste of time, but they're big a part of our lives today and people do visit them everyday. Hence, a lot of engineering does go behind it.

I agree, but the root of this is "Facebook is full of spammers". So, rather than figure out a way to stop that, they go after the spam itself. For advertisers, that reads that yes, there's less spam to worry about their message getting lost in, but it doesn't address the issues that some (large) % of Facebook users are just bots, and that real users have to acknowledge that some (large) part of the things being advertised on Facebook is just crap spam.

Requiring some bit of info to verify their users would help, but then they wouldn't have a billion users any more.

You do realize that Google faces similar issues and had big issues with content farms in their search index. Then they majorly improved their search algorithms and page ranking systems with the PANDA update and so many of the content farms were kicked out of the first few pages of the searches. Spam is everywhere and if you develop systems to detect fraud, then investors will be happy with your ad network systems because it gives more accurate targeting and data.

Facebook is a very very complicated website. If you've read their engineering blog, their entire website is one big C++ executable file that they compile everyday. They developed the HipHop to PHP compiler to convert PHP code into C++ to become more efficient. This is just one of many big technical achievements. Whatever the case, they have very smart people constantly working to detect bots and fakes. You really have to develop complicated systems that scale at a large scale. From what I can see, the bot issue has gotten less, but spammers quickly adapt to figure out new ways to develop bots and annoy you. If you consider the ads annoying, just block them. It's expensive to run facebook and advertising is the best way to pay for all that. Unless, they start subscriptions like how Path plans to do.

threetonesun said,
I agree, but the root of this is "Facebook is full of spammers". So, rather than figure out a way to stop that, they go after the spam itself.

Spammers go where they can spam. If you make it impossible to spam, then spammers will stop going there/using it or find an exploit, and generally they're pretty unlikely to find exploits.

Yes, it's all very impressive, but what they're doing is akin to pulling flyers off of telephone poles.

I only occasionally use Facebook at this point, but currently you'd have to pay me to click a link on it.

threetonesun said,
It amazes me how many engineers and how much effort goes into maintaining what is, essentially, nothing.
Your value of what Facebook provides is not all that matters. It only matters how everybody values it. Granted, I don't see it surviving in its current size long term, but if Facebook can find a way to monetize the insane traffic it handles than it has a long term business ahead.

IMO, the "fab" will wear off and it will become a "check once a day" service for most. At that point it will have to tighten it's belt and keep that pony making money.

szo said,
You do realize that Google faces similar issues and had big issues with content farms in their search index. Then they majorly improved their search algorithms and page ranking systems with the PANDA update and so many of the content farms were kicked out of the first few pages of the searches. Spam is everywhere and if you develop systems to detect fraud, then investors will be happy with your ad network systems because it gives more accurate targeting and data.

Facebook is a very very complicated website. If you've read their engineering blog, their entire website is one big C++ executable file that they compile everyday. They developed the HipHop to PHP compiler to convert PHP code into C++ to become more efficient. This is just one of many big technical achievements. Whatever the case, they have very smart people constantly working to detect bots and fakes. You really have to develop complicated systems that scale at a large scale. From what I can see, the bot issue has gotten less, but spammers quickly adapt to figure out new ways to develop bots and annoy you. If you consider the ads annoying, just block them. It's expensive to run facebook and advertising is the best way to pay for all that. Unless, they start subscriptions like how Path plans to do.


I'd love to see how a "Facebook" would run w/o SSD's and super cheap ram. Much of its speed has more to do with data in RAM than super amazing coding tactics.

MrHumpty said,

I'd love to see how a "Facebook" would run w/o SSD's and super cheap ram. Much of its speed has more to do with data in RAM than super amazing coding tactics.

Yo do realize that any typical SQL database has lots of caching systems that result in having all your frequently accessed data in RAM anyway right?

And your whole statement is rather childish. Facebook really does put in a lot of work into making their site scale well with their growing amount of users and the content they create along with implementing features.