# Contribution Guide

Welcome to the WnCC wiki's contribution guide! This article will cover the basics of contribution, how to get started and what we expect from our contributors. This wiki is going to help a lot of people in the future, so it's a good idea to contribute as much as possible now.

## Why Should I Contribute?

For the betterment of all those who read this wiki. Your contributions are what will make this wiki worthwhile and useful. Of course, you can always read your own articles to re-learn stuff! Besides, this is a good place to showcase your blogs and projects under Community Resources and Community Projects.

## What Should I Contribute?

Well pretty much anything related to code is welcome! Of course, see if related articles exists before deciding to make one. If you are still unsure, have a look at -

## Getting Started

Here's how you can get started -

• Make an Account - You cannot contribute without making an account. This makes it easy for the admins to track contributions and you will also get featured on the homepage. To login, just go to our Create Acccount page and then you can login everytime you visit the wiki for contribution, on the Login page.
• Contribute! - You can contribute by improving an existing page or by creating your own new page. It's always best to Search Grundy (top right of page) for existing pages before deciding to make a new one.
• Edit Existing Page - While editing a page, you could either make changes in sections, or change the overall structure of the article. To make changes in certain sections, click on the Edit link next to the section's title. To change the overall structure of the page, click on the Edit tab on the top right area of the webpage. Make sure you provide a brief summary of your edit.
• Make a New Page - Simply, go to the link of the page you wish to create. For example, if you wish to create a page on Salamanders, visit the URL http://wncc-iitb.org/wiki/index.php/Salamanders and click on the Create tab.

## What we Expect?

This section lists our expectation for contributors with respect to the content. We don't expect you to have good formatting, but we would appreciate it.

• Don't Re-Invent the Wheel - This is very important! Don't copy paste existing tutorials. Rather make external links to those tutorials, and mention what you liked and what you did not like about that tutorial. If you have written some blogs on a topic, please hyperlink the blog as well as add it to Community Resources. You can also link your projects in that field in that article and under Community Projects.
• Add Pre-Requisites and Motivation - It's a good idea to add a section listing down the pre-requisites (along with links to existing articles on the pre-requisites) and a section on motivation to learn something.
• Code Snippets - A few code snippets are generally helpful to get an idea about what's going on. Use them to complement your articles.
• Exhaustive List of Resources - This wiki is meant to bring together all community recommendations under one umbrella. Try to add all the resources that have helped you, along with a line of pros / cons.

## Basics of Contribution

Now that you are ready, here are some key tips -

• Text Formatting - All wikis are powered by an organization MediaWiki. You can learn about basic text formatting on MediaWiki Formatting. In general, when you are unsure about something related to text formatting, it's a good idea to Google mediawiki <your doubt> to get relevant help. A lot of features require Extensions, and you should email us (email IDs are given in The Web and Coding Club) in case you need one.
• Do not Worry Too Much - Our admins are active enough to correct your formatting errors. Your contributions are most valuable.
• Linking your Page - This especially applies when you create a new page, you need to link your page to the existing ones so that it can be accessed by users. For example, our TensorFlow page has been linked inside the Machine Learning and Software Library Guides pages under the correct sections. After you make a new page, make sure you add its link to related pages (if you can't find any, ask us or add it to The Web and Coding Club as an internal link).
• Math Mode - Write as
`[itex]E = mc^2[/itex]`
to render ${\displaystyle E=mc^{2}}$
To have the equation on the next line, use
`:[itex]`
• Syntax Highlighting - Use
`<syntaxhighlight lang="python" line></syntaxhighlight>`
to render syntax highlighted code. You will have to change the language in lang, and can omit line if you do not want line numbers. For small code words, you can also use
`<code></code>`
• Images - Try to use images for illustration of graphical output whenever possible. Upload in '.png' format preferably, and use this guide to learn how to properly upload and format the image into your article.
• SEO - Use the `<seo></seo>` tag to optimize your article for search engines, and display thumbnails properly when you share your article link on social media. Put this tag at the top of your article. Although there are many attributes that can be applied in that tag, the following are recommended on Grundy.
• keywords - The relevant keywords to your article which search engines should look for
• description - The description of your article which will appear in thumbnails
• og:image - Permanent URL of the image that will appear in your thumbnail. If there is no image in your article, set it to "http://wncc-iitb.org/wiki/resources/assets/wncc.png"
• article:publisher - This field should always be set to "wncc", unless special permission is granted from the Managers.
An example is shown below,
`<seo keywords="scientific compuation, nyquist, machine precision, relaxtion, three body problem" description="Scientific Computation is described as using computational techniques to solve complex problems. That is a very broad definition, and only when you see some examples of SciComp (as we like to call it in slang), you would be able to get a better picture of what we're dealing with. This article dives into those examples and some general guidelines" og:image="http://wncc-iitb.org/wiki/images/thumb/1/1d/Twobodyproblem.png/796px-Twobodyproblem.png" article:publisher="wncc"></seo>`