diff --git a/LifeOfaGhopTask.md b/LifeOfaGhopTask.md
new file mode 100644
index 0000000..1684019
--- /dev/null
+++ b/LifeOfaGhopTask.md
@@ -0,0 +1,35 @@
+_This may be way off the mark, it's just a starting point._
+
+
+  1. Mentor **writes 'Awesome Task'**.  In the 2008 GHOP organizations wrote their tasks on a wiki first, because once in the tracker the task could not be edited.  We'll be writing tasks in Melange.
+  1. Admin Adam notices that there are more than 102 tasks, and **deletes** some.  However 'Awesome Task' survives.
+
+... wait some time ... GHOP announced ... site goes live ...
+
+  1. Student Anna marks the task as **'requested'** and starts work on it (even though it hasn't been confirmed that it is claimed)
+  1. Student Zing **tries to claim** the task too, but he got there too late.  :-(
+  1. Mentor Michael marks 'Awesome Task' as **claimed** by Anna.
+  1. Anna posts some **work in progress**.
+  1. Michael gives some **feedback** by e-mail - the task is harder than Anna had thought.
+  1. Anna notices that a task involving translating the Awesome Code manual into Inuit has just come free, and decides she'd really rather work on that.  She marks the task as **open** again.
+  1. 3 minutes later Zing **requests** the task and starts working on it.  He looks at what Anna has done previously and Micheals comments.  He's off to a good start.
+  1. Michael marks the task as **claimed** by Zing and sends him some e-mail with some more advice about how to tackle it.
+  1. Admin Adam **notices** that "Awesome Task" was abandoned, and has a gTalk chat with Michael about it.  Sounds like the students are doing fine.  No problem.
+  1. Michael sends an e-mail reminder to Zing, there's only 12hrs to go for this task and Michael's had no contact from him.  Is everything OK?  He also gives Zing the e-mail of a mentor who is in Zing's **time zone**.
+  1. Zing says he had some trouble compiling the WOMBAT driver, but has that part done now, and asks for a 24 hour **extension** to complete the task.  Michael says 'fine, no problem'.
+  1. With 12 minutes to spare Zing **submits** his completed work on "Awesome Task" to Melange.
+  1. Michael has a gTalk discussion about Zing's work with Adam.  Awesome Task was a lot harder task than intended, and Zing has only just about done it.  They decide to count it as **done**.
+
+# Notes
+
+  * Zing cannot claim a new task until the task he has 'completed' is reviewed.
+
+# Questions
+
+Add questions about the life of "Awesome Task" here.
+
+**Q:** Are there tasks such as 'Do a presentation on Drupal at Your School' for which it makes sense to allow multiple people to do them?
+
+**A:**
+
+# Other Discussions
diff --git a/LifeOfaGhopTask.wiki b/LifeOfaGhopTask.wiki
deleted file mode 100644
index 0cc1d33..0000000
--- a/LifeOfaGhopTask.wiki
+++ /dev/null
@@ -1,40 +0,0 @@
-#summary Life of a GHOP Task
-#labels Importance-Details,Phase-Design,Contents-Draft
-
-
-_This may be way off the mark, it's just a starting point._
-
-
-  # Mentor *writes 'Awesome Task'*.  In the 2008 GHOP organizations wrote their tasks on a wiki first, because once in the tracker the task could not be edited.  We'll be writing tasks in Melange.
-  # Admin Adam notices that there are more than 102 tasks, and *deletes* some.  However 'Awesome Task' survives.
-
-... wait some time ... GHOP announced ... site goes live ...
-
-  # Student Anna marks the task as *'requested'* and starts work on it (even though it hasn't been confirmed that it is claimed)
-  # Student Zing *tries to claim* the task too, but he got there too late.  :-(
-  # Mentor Michael marks 'Awesome Task' as *claimed* by Anna.
-  # Anna posts some *work in progress*.
-  # Michael gives some *feedback* by e-mail - the task is harder than Anna had thought.
-  # Anna notices that a task involving translating the Awesome Code manual into Inuit has just come free, and decides she'd really rather work on that.  She marks the task as *open* again.
-  # 3 minutes later Zing *requests* the task and starts working on it.  He looks at what Anna has done previously and Micheals comments.  He's off to a good start.
-  # Michael marks the task as *claimed* by Zing and sends him some e-mail with some more advice about how to tackle it.
-  # Admin Adam *notices* that "Awesome Task" was abandoned, and has a gTalk chat with Michael about it.  Sounds like the students are doing fine.  No problem.  
-  # Michael sends an e-mail reminder to Zing, there's only 12hrs to go for this task and Michael's had no contact from him.  Is everything OK?  He also gives Zing the e-mail of a mentor who is in Zing's *time zone*.
-  # Zing says he had some trouble compiling the WOMBAT driver, but has that part done now, and asks for a 24 hour *extension* to complete the task.  Michael says 'fine, no problem'.
-  # With 12 minutes to spare Zing *submits* his completed work on "Awesome Task" to Melange. 
-  # Michael has a gTalk discussion about Zing's work with Adam.  Awesome Task was a lot harder task than intended, and Zing has only just about done it.  They decide to count it as *done*.
-
-=Notes=
-
-  * Zing cannot claim a new task until the task he has 'completed' is reviewed.
-
-=Questions=
-
-Add questions about the life of "Awesome Task" here.
-
-*Q:* Are there tasks such as 'Do a presentation on Drupal at Your School' for which it makes sense to allow multiple people to do them?
-
-*A:*
-
-=Other Discussions=
-
