Some years ago I found myself making a small seminar for the course Algorithms and Data Structures II, having had very conceptual explain it in half an hour.

The goal of Link Analysis Ranking algorithms consists in inferring the importance of a web page based on the topological structure of the graph of the World Wide Web. Link analysis ranking algorithms are widely used by search engines to make the sort of web pages.

The web is then represented by a graph in which the nodes represent the HTML pages and anchors are the links between pages (indicated by the anchor <a href='…'>), each node points to zero or more links (forward links) and is pointed by zero or more links (backward links). More

Some days ago Ocramius talked well about me to a company, that’s really great, but he always leaves to me the work of proving that’s true :P then, here I am, ready to write about a not-so-simple argument: advanced search engine query parsing.

As you know I tried to build a search engine, but when I was 19 of course this argument wasn’t clear in my mind, I understood that it was harder than a regular expression, but how could I know how hard it was? A search query can’t be parsed using regular expressions, for example:

” site:”example.com OR example.net”

This is a not so simple example, but it will show you how hard it can be. Too hard? Let me simplify this query:

site:example.com OR site:example.net

Now it’s simpler than before, but it’s still hard to translate it into a SQL query like this: SELECT s.* FROM sites s WHERE s.url = "example.com" OR s.url = "example.net" We need something more sophisticated: a parser.
More