Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 158 Stack Exchange communities.

What is meta?
Here's how it works:
  1. Any Stack Exchange user can ask a question
  2. The community provides support, votes on ideas, and reports bugs
  3. Your voice helps shape the way Stack Exchange operates

I've read through What was Stack Overflow built with? and a few searches but can't find much information about how the team built the revision side to the software.

What libraries or resources were used, if any, to build the revisioning and allow it to recognise HTML and none-HTML changes? Or is that a trade secret?

share|improve this question
I'm 90% sure that it is a home brewed solution. – jjnguy Oct 2 '09 at 16:10
How many deleted answers are there to this question? – random Oct 2 '09 at 16:30 + love – waffles Dec 30 '09 at 4:57
@waffles: what does loving your Local Comic Shop have to do with anything? – quack quixote Dec 30 '09 at 6:18
up vote 3 down vote accepted

From CodingHorror: Mixing Oil and Water: Authorship in a Wiki World

I played around with Levenshtein for a while, but even optimized implementations are brutally slow as the size of the input increases. I quickly realized that a line-based comparison was the only workable one. We used this C# implementation of An O(ND) Difference Algorithm and its Variations (pdf).

share|improve this answer

Did a little searching and I bet it is home grown. But there are libraries out there that current do this type of revisions.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .