+ You can see what needs to be done in the class libraries <a href="class-status.html">here</a>
+
+* IRC Channel
+
+ Many developers get together on the <b>#mono</b> irc channel
+ on the <b>irc.gnome.org</b> server.
+
+** To start contributing
+
+ As a programmer, you can contribute in three different scenarios to Mono:
+
+ <ul>
+ * If you only have Linux/Unix.
+ * If you only have Windows.
+
+ * If you have both Linux and Windows.
+ </ul>
+
+ You might also want to check our <a href="#setup">common
+ setups</a> section that describes some common setups that people
+ use while working on Mono.
+
+*** Contributing to the class library, regression tests or the compiler
+
+ This only requires Windows currently.
+
+ To start developing classes or to contribute to the compiler,
+ you only need Windows and the .NET Framework 1.0 SDK. Please notice
+ that you do not need Visual Studio (although you can use it if
+ you want). The .NET Framework SDK requires some version of
+ Windows XP or Windows NT. If you are running Windows 98, 95
+ or Me, you could use instead the <a
+ href="http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/001/829/msdncompositedoc.xml">.NET Redist package</a>, but it
+ lacks the documentation browser and the ildasm program (C#, VB, JScript and IL
+ assembler are included).
+
+ You can get it <a href="http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/000/976/msdncompositedoc.xml&frame=true">here</a>
+
+ If you are new to .NET, writing regression tests is a good way
+ of starting to contribute: it will help you get used to C# as
+ well as getting comfortable with the .NET APIs.
+
+ This helps because at this point you might be the best
+ qualified person to fix a problem found by the regression
+ test, or you might have a new class to implement in the .NET
+ world that only has a test suite.
+
+ To get started writing tests see the <a href="testing.html">Test Suite</a>
+ section. <a href="mono-contribution-howto.html">Here</a> there is a good All-In-One introduction to the art of writing tests.
+
+
+*** Contributing to the runtime engine
+
+ This only requires Linux, currently some tasks are easier if you
+ have access to Windows as well.
+
+ Here are a few things you can do:
+ <ul>
+ * Port the runtime to other architectures.
+ * Port the runtime to other operating systems.
+ * Finish the IL code verifier in the runtime.
+ * Hack the JIT, improve the code generator, add new
+ pattern rules, improve the register allocator.
+ * Implement the debugging interfaaces
+ </ul>
+
+** Bug reporting
+
+ If you find bugs in Mono, please make sure you enter a bug
+ report so we can keep track of problems in Mono.
+
+ To enter bug reports go to <a href="http://bugzilla.ximian.com">
+ http://bugzilla.ximian.com</a> and enter bug reports against
+ your favorite component (Mono, Runtime, C# compiler).
+
+ You can review the list of current bugs by going <a href="http://bugzilla.ximian.com/buglist.cgi?product=Mono%2FClass+Libraries&product=Mono%2FMCS&product=Mono%2FRuntime&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&op_sys_details=&op_sys_details_type=substring&version_details=&version_details_type=substring&cmdtype=doit&order=%27Importance%27&form_name=query">here</a>
+
+ Check our <a href="bugs.html">Bugs</a> that contains links to
+ easily add a bug report, or to query the existing bugs.
+
+<a name="goodbugreport"/>
+** How to make good bug reports
+
+ A mail from Paolo to mono-devel-list contained this check list:
+ <ol>
+ * Submit a test case, the smaller it is, the better
+
+ * Use <a href="http://bugzilla.ximian.com">
+ http://bugzilla.ximian.com</a> to report the bug.
+
+ <p>In <b>addition</b> to bugzilla, posting to the list is
+ fine if the bug merits larger exposure or design
+ discussions to solve; posting to the list twice or more
+ is just a way to annoy people and make them waste time,
+ specially when you start a new thread about it.
+
+ * If the test involves libraries or assemblies that are
+ not part of mono, add info about where to download all
+ the dependencies, and how to compile/install them.
+
+ * If compiling the test case requires more than:
+ <pre> mcs test.cs </pre>
+ provide the <b>full command line</b> you used to compile
+ the test.
+
+ * If running the test requires more than:
+ <pre> mono test.exe </pre>
+ provide the <b>full command line</b> needed to replicate
+ the bug.
+
+ * Provide info about the version of the software you're
+ using (both mono and the operating system or relevant
+ libraries).
+
+ * Provide the output you expect the test case to produce.
+
+ * Provide the actual output <b>you</b> get from the test case.
+ </ol>
+
+ A good bug report complies with at least 6 items from the list.
+ If your bug report complies with 3 or less items, it is very
+ poor and it means it will take much more time to fix (when it's
+ not ignored).
+