diff --git a/WordsOfWisdom.md b/WordsOfWisdom.md
new file mode 100644
index 0000000..f40d5c2
--- /dev/null
+++ b/WordsOfWisdom.md
@@ -0,0 +1,112 @@
+**Context**: Something that didn't work in Melange before, suddenly started to work without any known reason.
+
+"**Sometimes computer science is not really science, it's astrology!**" _Mario_
+
+
+---
+
+
+**Context**: Reviewal of tests which Praveen wrote.
+
+"**For testing, you want to test as much as possible. For coding, you may want to code as few as possible. :)"**   _Leo_
+
+
+---
+
+
+
+**Context**: When there is a divergence between a local repo and central mercurial repo and if one tries to push to the central repo.
+
+"**hg warns you but it says if you still want to shoot yourself in the foot, go ahead,
+here is the gun and it gives you hg push -f option. -f is the real gun to shoot yourself in the foot.:D "**  _Madhushudan_
+
+
+---
+
+
+**Context**: Rebasing of changesets.
+
+**"There are two schools of thought. They are really really "SCHOOLS OF THOUGHT", so loudly :P. There is always a flame war between the two groups. One of the faction- the faction of "Purists" claim that no history should ever be rewritten or misrepresented. But there is another faction, I call them "Whatever-ists" :P. They don't mind if small changes are missed up."** _Madhushudan_
+
+
+---
+
+
+**Context**: Asking the developers the reason behind some design choices, they responded giving blame to other libraries we're using.
+
+**"I hear a lot of proper nouns and not enough apologizing"** _Nathaniel_
+
+
+---
+
+**Context**: Triaging issue 1921 (on Google Code)
+
+**"Yes, I think this is fixed, but it's fixed in the same way as closing a toilet seat instead of flushing it."** _Daniel_
+
+
+---
+
+
+---
+
+
+### From June 2013 Melange All Hands
+
+**Context**: After a new change from Mario has been pushed to a ninja release and it didn't work.
+
+**"It works locally!"** _Mario_
+
+
+---
+
+**Inspirational quotes from the board**
+
+_Nathaniel_
+
+  * "Show me your flowchart and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won't usually need your flowchart; it'll be obvious" (_Brooks, "Mythical Man-Month"_)
+  * "Make illegal states impossible" (_Minsky_)
+  * "Amateurs practice until they get it right; professionals practice until they cannot get it wrong." (_unknown_)
+  * "Symbolic is better than literal" (_Nathaniel_)
+
+_Madhusudan_
+
+  * "Work expands to fill the amount of time available" (_Parkinson's law_)
+
+
+---
+
+
+---
+
+### From January 2014 Melange All Hands
+
+**"Spite-driven Software Development. It works!"** _Nathaniel_
+
+---
+
+**I still remember your rant... sorry... "constructive reevaluation"** _DrewR_ to _Nathaniel_
+
+---
+
+**Context**: About encapsulation of related types in an object to be passed to functions.
+
+**"There is a thingness to it."** _Nathaniel_
+
+---
+
+**Context**: When choosing the "fun activity" for the week.
+
+**"You want a fun activity? Pick something from the issue tracker!"** _Daniel_
+
+---
+
+
+---
+
+### February 2014
+**"I would not do that myself. I just included that option because you like injecting stuff in constructors."** _Daniel to Nathaniel_
+
+---
+
+
+---
diff --git a/WordsOfWisdom.wiki b/WordsOfWisdom.wiki
deleted file mode 100644
index b3cf6ff..0000000
--- a/WordsOfWisdom.wiki
+++ /dev/null
@@ -1,81 +0,0 @@
-#summary Some awesome statements and thoughts.
-
-*Context*: Something that didn't work in Melange before, suddenly started to work without any known reason.
-
-"*Sometimes computer science is not really science, it's astrology!*" _Mario_
-
-----
-
-*Context*: Reviewal of tests which Praveen wrote.
-
-"*For testing, you want to test as much as possible. For coding, you may want to code as few as possible. :)"*   _Leo_
-
-----
-
-
-*Context*: When there is a divergence between a local repo and central mercurial repo and if one tries to push to the central repo.
-
-"*hg warns you but it says if you still want to shoot yourself in the foot, go ahead,
-here is the gun and it gives you hg push -f option. -f is the real gun to shoot yourself in the foot.:D "*  _Madhushudan_
-
-----
-
-*Context*: Rebasing of changesets.
-
-*"There are two schools of thought. They are really really "SCHOOLS OF THOUGHT", so loudly :P. There is always a flame war between the two groups. One of the faction- the faction of "Purists" claim that no history should ever be rewritten or misrepresented. But there is another faction, I call them "Whatever-ists" :P. They don't mind if small changes are missed up."* _Madhushudan_
-
-----
-
-*Context*: Asking the developers the reason behind some design choices, they responded giving blame to other libraries we're using.
-
-*"I hear a lot of proper nouns and not enough apologizing"* _Nathaniel_
-
-----
-*Context*: Triaging issue 1921
-
-*"Yes, I think this is fixed, but it's fixed in the same way as closing a toilet seat instead of flushing it."* _Daniel_
-
-----
-----
-
-===From June 2013 Melange All Hands===
-
-*Context*: After a new change from Mario has been pushed to a ninja release and it didn't work.
-
-*"It works locally!"* _Mario_
-
-----
-*Inspirational quotes from the board*
-
-_Nathaniel_
-
-  * "Show me your flowchart and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won't usually need your flowchart; it'll be obvious" (_Brooks, "Mythical Man-Month"_)
-  * "Make illegal states impossible" (_Minsky_)
-  * "Amateurs practice until they get it right; professionals practice until they cannot get it wrong." (_unknown_)
-  * "Symbolic is better than literal" (_Nathaniel_)
-
-_Madhusudan_
-
-  * "Work expands to fill the amount of time available" (_Parkinson's law_)
-
-----
-----
-===From January 2014 Melange All Hands===
-
-* "Spite-driven Software Development. It works!"* _Nathaniel_
-----
-* I still remember your rant... sorry... "constructive reevaluation" * _DrewR_ to _Nathaniel_
-----
-*Context*: About encapsulation of related types in an object to be passed to functions.
-
-*"There is a thingness to it."* _Nathaniel_
-----
-*Context*: When choosing the "fun activity" for the week.
-
-*"You want a fun activity? Pick something from the issue tracker!"* _Daniel_
-----
-----
-===February 2014===
-*"I would not do that myself. I just included that option because you like injecting stuff in constructors."* _Daniel to Nathaniel_
-----
-----
\ No newline at end of file
