diff --git a/GSoC2012Ideas.wiki b/GSoC2012Ideas.wiki
new file mode 100644
index 0000000..b2bc6a7
--- /dev/null
+++ b/GSoC2012Ideas.wiki
@@ -0,0 +1,72 @@
+#summary Ideas List for GSoC 2011
+#labels Importance-Useful,Contents-Skeleton
+
+= Introduction =
+
+ _We will be applying as an organization for GSoC 2012.  You're invited to drop by at #melange on !FreeNode to discuss._
+
+
+== [PossibleMentors Possible Mentors] ==
+These are, in order, the most likely or best mentors for this project idea.
+
+== Skills ==
+
+  * All developers will need to have experience in, or be willing to learn Python.
+  * Prior experience with Django or an equivalent framework would be a distinct plus.
+  * Knowledge of JavaScript (AJAX), and a feeling for web design is big plus as well.
+
+== Difficulty==
+'Easy', 'Moderate' or 'Hard'.  Hard is not necessarily better!  We are risk averse!
+
+== Early Spinoffs ==
+
+We want code that we can actually use, not code that shows great promise.  At the half way stage, you MUST have something complete that we can actually use as a 'spin off' of the work.  In discussing projects we will try to help you find ways to have spinoffs along the way.
+
+----
+= Idea Details =
+----
+
+=Testing, Code Guru, Code Quality Assurance=
+
+===Description===
+
+Melange is sorely lacking tests, and it's hurting our development speed significantly. What we need is a extensive set of unit tests for our logic and views, as well as functional tests to make sure that all views work as expected. This will require learning the codebase first, so as to know what something should do. Test-based exploring would be most suitable (learning how the codebase by writing tests that confirm that things work a certain way). We want test coverage such that it is possible to refactor a core function without doing any manual testing, and still be fairly certain that everything works as expected. On top of that, we want to be able to start doing TDD, which is a lot easier if there are a lot of tests already. All developers will be asked to include tests with their changes as soon as we start doing TDD, so once the momentum picks up things should get easier.
+
+A lower priority, that can be pursued once we have decent test coverage, is to make sure that all pylint errors are fixed, and that all warnings are fixed or suppressed as appropriate. This way we can require that each commit introduces no new pylint errors, which will ensure some level of code quality.
+
+===Skills===
+
+  * Python
+  * Django
+  * Testing
+
+===Difficulty===
+
+Moderate, but requires a lot of effort
+
+===Mentors ===
+* Still need to be confirmed, left this idea here as an example *
+
+ * Leo (Chong Liu)
+ * Sverre Rabbelier (SRabbelier on #Melange)
+
+----
+
+= Other ideas =
+
+  * add functional tests using twill
+  * Profiling and Caching developer tools
+  * extend functionality of our buildbot (post commit hooks, pylint integration, application deployment to testing App Engine instance)
+  * add features that will enable to organize GSoC/GHOP Meetings (creating new events, managing participants, integration with Google Calendar API),
+  * Melange API allowing any external page to list current status of tasks and tasks list, participating projects etc.
+  * generating pdfs, docs of student applications
+  * integrating export functionality of tables, proposals with Google Docs (use Google Docs API)
+  * work on selected issues from Melange Issue Tracker
+  * Melange should enable admins/host to easily autogenerate CPT letter or letter of acceptance if one is needed/requested by student. This would generate pdf file ready to print based on the data from student profile (including program logo).
+  * Messaging module allowing to send messages to other users (emails) (Way to improve communication between GSoCers, GHOPers)
+  
+
+= Some Rough Notes =
+
+   * Did we mention that we have an active IRC channel, #melange?
+   * Some words for you, to inspire more ideas: *[http://code.google.com/p/soc/wiki/TestingGuidelines Automated Testing]*, *World Domination* (ask), *Access Control Module*, *Profiling*, *Log Analysis*, *[http://code.google.com/p/soc/issues/list?can=2&q=&sort=-id Issue Tracker]*, *[http://code.google.com/p/soc/wiki/AccessControl Security]*, *Optimization(s)*, *Mentor Summit*, *Wiki*.
\ No newline at end of file
