Welcome To Melange

Melange is the software that administers the Google Code-in contest and Google Summer of Code program through their respective websites. Created in 2008, Melange was first used to run Google Summer of Code in 2009 (earlier Google Summer of Code programs were managed with a Google-proprietary web application). As Google Summer of Code and Google Code-in grew in size and features each year, Melange grew with them to support their needs. Today Melange is a mature, actively maintained open source software project.

Melange, Google Code-in, Google Summer of Code...Huh?

Google Code-in and Google Summer of Code are two sister programs (respectively task-oriented and project-oriented) run by the Google Open Source Programs office. Melange is the software behind the websites that are used to administer these two programs. Depending on the time of year you visit the Melange home page, you may see program information for Google Code-in or Google Summer of Code.  You have the option to change your view by clicking the blue link in upper right hand corner.

Is this book for me?

This is the first book written solely for those interested in Google Code-in and how to interact with the Melange software. This manual is only intended for people who have questions about using the Melange-driven Google Code-in website itself.

Please note that we have existing user manuals for Students, Mentors, and Organization Administrators who are participating in Google Summer of Code. If you have general questions about the program or how to participate in a certain role, we recommend that you look at those user manuals instead. You can find the Google Summer of Code Student manual at http://en.flossmanuals.net/GSoCStudentGuide/ and the Google Summer of Code Mentor and Organization Administrator manual at http://en.flossmanuals.net/gsocmentoring/.

For the Melange manual about how to use the Google Code Summer of Code website you can view the book at http://en.flossmanuals.net/melange.

Can I use Melange for my own projects?

Probably! Melange is open source software, and we welcome you to deploy the software to use in whatever ways are applicable to your projects. Melange has a lot of features that are specific to Google Code-in and Google Summer of Code, so please note you may need to change the code to suit your needs. Feel free to reach out to the Melange developers at melange-soc-dev@googlegroups.com if you have any questions about your deployment. 

I want to volunteer to help develop on Melange

That's great! Melange is an open source project that can always use patches and additional contributing community members. We have an active developer base that you can get in touch with at melange-soc-dev@googlegroups.com. You can also visit the general project page at http://code.google.com/p/soc.

Using the Google Code-in website

The Google Code-in website has resources available to visitors that aren't participating in Google Code-in. However, what is accessible depends on the phase during which you are viewing the website. The pages that are always accessible are: 

About

Events and Timeline

Rules 

FAQ (Frequently Asked Questions)

Connect with Us 

We also publish the accepted Mentoring Organizations list for anyone to access, but only after the Mentoring Organizations' applications have been accepted for the current contest. You can find the list of the Mentoring Organizations by clicking on the Mentoring organization details underneath the logos of the Mentoring Organizations. You can also click on an individual logo of an organization underneath the Mentoring Organizations to read more about the organization.

It is also possible to view tasks that Mentoring Organizations posted for Students to work on during the previous contest. On the homepage, click on the Mentoring organization details link (in the middle of the page). Click on the Name of the Mentoring Organization that you are interested in, and a list of the Open tasks (tasks that students did not work on) are available and when you scroll down the page, the Closed tasks (tasks Students successfully completed) are available to view. This is a great way to check out the general type of work that Mentoring Organizations want students to work on.

Some portions and features of the website are available only to those actively participating in the contest in some capacity. If you would like to participate in Google Code-in you must have a Google Account. Google Accounts can be created at accounts.google.com/signup. Google has its own requirements for creating a new account, so you will need to be sure you meet those requirements as well before signing up. 

Once you have a Google Account you can log in to the website during the contest's registration periods and create a profile as a Student, Mentor, or Organization Administrator. You can read more about this process in the Profile section of this book. 

Roles

Your profile type on the website will be determined by the role with which you participate in the contest. The roles are Contest Administrator, Organization Administrator, Mentor, and Student. Information and website features will be accessible or inaccessible in part depending on your role.

What you see on the site changes depending on the active phase of Google Code-in and on your role in the contest. If you don't see what you expect to see, take a moment to:

ensure that you are logged in

confirm the current phase of the contest

Timekeeping

All dates and times on the website are expressed in Coordinated Universal Time (UTC).

Data Protection

Melange's datastore goes back to the website's first use for the 2011 for the Google Code-in contest. If you have questions that are not answered below regarding privacy concerns you can contact the Contest Administrators at ospoteam@gmail.com.

Who can see what information about me? 

The Contest Administrators (Google Open Source Programs employees) can always see profile information regardless of your role, your completed tasks and comments (Students), and your Parental Consent and Proof of Enrollment forms (Students).

When Students use the Google Code-in site, the "Public name" they choose (usually a nickname), is visible when they comment or work on any task in the contest. Students communicate with Mentors through the Melange site directly, no email information is exchanged from either role.

Mentor names and email addresses may always be viewed by the Organization Administrators of the Mentor's organization.

How long do you save information and what information does Melange save? 

Melange saves personally identifiable information (such as email and postal addresses) only as long as necessary to complete contests and meet applicable legal requirements. Melange may save participant work products (such as code written by students or comments written by mentors) indefinitely. Students who are Grand Prize Winners have additional information that is kept for a longer period of time per California legal requirements regarding contests for minors.

How do I delete my account? 

Press the Delete Account button at the bottom of your profile.

How do I confirm that Melange has deleted what I told it about me? 

Visit Melange and, after logging in with your Google account, you should see a My Profile link in the sidebar. If you don't see the link, you do not have a profile for the current year. If you also want to check if your profile has been correctly deleted for other instances of Google Code-in, you can visit the Google Code-in homepage, go to the URL, and change it to the year that you want to look at (e.g. if it is currently 2012, the URL will end with 2012 and if you want to look at 2011 then change the 2012 to 2011. If you don't see a link to My Profile, your profile for that year has been deleted as well. You can go through all the years of the contest and manually check the existence of the link (the first year of Google Code-in in Melange was 2010).

Can I undelete an account? 

No. Please do not casually request deletion of your profile.

When I delete my profile, does it mean I delete ALL my profiles or just for that contest?

When you delete a profile, it will only delete the current year. A profile is stored for every contest in which a user participates, so, for example, deleting a Student's Google Code-in 2012 profile will not affect the same Student's Google Code-in 2011 profile, if present.

General Information and Questions

Profiles are used in Melange to represent users participating in a particular contest. All profiles are created on a per-role basis. Because some user data may change between contests and users can take on different roles in different Google Code-in years, we ask users to create a new profile (without choosing a new username) every year. 

There are four main roles in Melange:

Students

Mentors

Organization Administrators

Contest Administrators

A Student may not also take on any other role concurrently, e.g. Students may not also be Mentors (even for different organizations) during the same Google Code-in year.

Mentors and Organization Administrators participate in Google Code-in on behalf of a Mentoring Organization. Mentors instruct, guide, oversee and review Students' work. Organization Administrators approve, assign, and manage Mentors within their Mentoring Organization as well as create the initial application for the organization to apply for the Google Code-in. These roles are not exclusive, and many Organization Administrators also choose to participate as a Mentor. Also, Mentors can participate on behalf of multiple Mentoring Organizations and supervise work being done by Students for several different Mentoring Organizations.

Contest Administrators are members of the Google Open Source Programs office and are responsible for administering Google Code-in.  

Creating and Editing

Profiles are created on the Register as a Student, Register as a Mentor, Register as an Organization Admin page. If you have not registered on the website for any previous contests, you also have to create a username (in addition to all the other profile information you are asked as described below) which will be a part of various URLs throughout the website. This username will be publicly exposed to other users, so it should not contain any sensitive personal information.

In order to create a Student profile, a user should click the Register as a Student link on the homepage in the left hand navigation bar when the Student registration period is open. Organization Administrator profiles are created as part of the organization application process (and existing Organization Administrators can invite new Organization Administrators at any point after an organization's acceptance into the contest). The Mentor registration link for Google Code-in is not publicly visible on the website. Organization Administrators will reach out to potential candidates for Mentors and invite them to be a Mentor in the contest. 

The actual form to create the profile contains the following sections:

Username - (only appears if you have not participated in a previous contest). The username will be a part of various URLs throughout the website. 

Public Info - This section contains public information which may be shown to other users. Public name is the name that will appear throughout the contest when you claim tasks, leave comments, correspond with mentors, etc. We recommend not using your real full name but a nickname or initials, etc.

Contact Info - This section contains various contact information by which Contest Administrators may get in touch with the participant. Apart from address information, it also has fields like email and telephone number. It is important to note that the email address provided in this section has nothing to do with the one associated with the Google account which is used to log in to the web site. This email can be the same as the one used to login to the site or it can be completely different. The Contact Info section is private and visible to Contest Administrators only. 

Shipping Info - This section contains address information to which all potential physical items will be sent. The Shipping Info section is also private and visible to Contest Administrators only.

Private Info - Other private data which is visible to Contest Administrators only. 

Notification settings - Preferences on what type of notifications should be sent to the user via email.

There is also a section dedicated to Student-specific information (such as school affiliation) which only has to be filled in by Students. Press the Submit button at the bottom when you have completed the fields. 

Profiles may be edited during the contest. It is particularly important to update your shipping address should it change during the course of the contest, as t-shirts, certificates and all other items will be sent to that address.

After the contest is completed, profiles become frozen and cannot be modified anymore. Users , should ensure their shipping address is accurate before the contest ends, as all potential packages associated with the contest will be sent to this location.

Users can still access their data in read-only form after the contest and until the legal requirements require the information be deleted or the user specifies the data be deleted (see Data Privacy section of this manual for more information).

What is a Contest Administrator?

A Contest Administrator is a Google Open Source Programs Office employee(s) who manages the contest. 

Contest Administrators:

decide the timeline, scope (number of participating organizations), rules, rewards, and all other contest details. 

decide admission into the contest for Mentoring Organizations. 

are the main point of contact for contest-wide questions and issues.

are responsible for ensuring that the contest complies with all data protection requirements.

are the final authority for any disputes during the contest. 

organize and host Grand Prize Winners trip.

Setting Up A New Contest

A new contest as defined in this section is a new year of Google Code-in. The first step to setting up a new contest in Melange is to become a Contest Administrator.  

How to Become A Contest Administrator 

Ask a Melange developer to create a new user and then to designate the given individual as a Contest Administrator.

How to Create a New Contest

Ask a Melange developer to create a new contest. 

How to Edit the Contest

Once the Melange developer has created the new contest, the Contest Administrator has many options available. Most of a contest’s data can be edited via the links in the Program Settings section of the contest's Admin Dashboard. The majority of the text that will need to be updated is stored in the Edit program settings, Edit messages and List of documents links. 

There are two types of data on the Edit program settings page, documents and non-document data. Documents, as explained in this section, is a list of webpages that exist on Melange for a specific contest and are created before the contest begins outside of Melange in a text editor. A contest’s non-text data (for instance, minimum age of Students, number of accepted Organizations, etc.) can be updated directly on the Edit program settings page. 

How to edit/view documents for the contest

New documents will need to be created for each new contest year. Create the following documents in a text editor (outside of Melange) before going into Edit Program: 

Organization Admin Agreement (same as Mentor Agreement)

Mentor Agreement

Student Agreement

About page

Events page (timeline)

Help document

Privacy policy 

Terms and conditions (contest rules)

Example tasks

Form translation url (link to wiki)

Once all of your documents have been created in a text editor go to: 

Admin Dashboard -> Program Settings -> Edit program settings

Scroll down to the documents that need to be updated (starting with Organization Admin Agreement). All the documents that are needed to run the contest are listed on this page. Click on Click here to edit this document under each corresponding text field.  Cut and paste your document text into the "Title" and "Content" Fields. Press Submit.  If you'd like to preview your documents before they go live, you can do so by changing the word "edit" on your web browser's URL to "show". For example http://www.google-melange.com/gsoc/document/show/gsoc_program/google/gsoc2012/events_page.  This page can be shared publicly if necessary.

If everything looks accurate, go back to Admin Dashboard-> Program Settings -> Edit program settings. Click on the field where the URL should be for each of the edited documents. Type the name of each document (for example, "Mentor Agreement"). A drop-down will appear of all Documents starting with that letter. Choose the appropriate document and the field will then be populated with the document URL. Success!  

Note: When the contest has started you can easily review the documents in a list view:

Admin Dashboard -> Program settings -> List of documents. Click on the Name of the document you wish to view under 'Title'.

Once you have added the URL's for each of the new documents continue to fill out the rest of the Edit Program settings (Student minimum age, Number of winners, etc.).

How to add new documents for the contest 

In the event that a Contest Administrator wants to create a document that is not linked from the Edit program setting" page, she would visit the following URL:

Example: 

http://www.google-melange.com/gci/document/edit/gci_program/google/gci2015/partyhats

This will automatically create the document "party hats". Pressing Submit will save the document. It will thereafter appear in the List of documents from the Admin Dashboard -> Program Settings. 

How to Change the Contest Timeline

The Contest Timeline defines when a specific contest begins and ends, student work periods, etc.

Go to Admin Dashboard

Program Settings -> Edit Timeline

Update the fields and Submit. Times are all in UTC. (Note: It is best to use 17:00, 19:00 UTC, etc.)

How to edit the messages for the contest 

After you have set up the documents and settings for the contest you should edit the messages for the contest. Go to the Admin Dashboard -> Program settings -> Edit messages section. You will find text editing fields for the emails that will be sent to accepted organizations, rejected organizations, accepted Mentors. 

Use the formatting below to send a custom email message to each accepted organization (text can be edited as necessary):  

Accepted organizations message 

Congratulations!

We are pleased to let you know that your Organization Application for "{{ org }}" has been accepted for Google Code-in 2012.  Please go to {{ url }}  to fill out the information for your Organization.

Additional text as desired.

Best regards,

Google Open Source Programs

"org" is the name that was filled in by the Organization Administrator in the "Organization Name" field of the organization application. 

"url" is the direct URL for the organization to fill in its organization profile. The link is specific to each organization.

The fields within the curly brackets are customizable and will be filled in as appropriate by Melange depending on the recipient. You can add more welcome text to this message if you choose. 

Rejected organizations message 

Thank you for submitting the "{{ org }}" organization application to Google Code-in 2012. Unfortunately, we were unable to accept your organization's application at this time.

We received many more applications for the contest than we are able to accommodate, and we would encourage you to reapply for future instances of the contest.

Best regards,

  {{ sender_name }}

The fields within the curly brackets are customizable and will be filled in as appropriate by Melange depending on the recipient. Please see the notes above for definitions of each of the types of fields. You can add more rejection text to this message if you choose. 

Mentor welcome message

This message will be sent to Mentors when they are accepted by their respective Organization Administrators into the contest. You can include information about participating as a Mentor generally to help Mentors get started with the contest.

Insert text as desired.

How do I switch the main page from one contest to another?

The main page will need to be updated when you are ready for users to access the new contest (i.e. when you announce your new contest publicly). Go to the site edit page: http://www.google-melange.com/site/edit.  Find the drop-down titled Active Program, and click on the site you'd like to switch to. You must also change the "Latest gci" text field to appropriate year. Please also make sure the contest is marked "visible" on the Program Profile (Admin Dashboard -> Program settings -> Edit program settings) on the drop-down for Program Status. The user will receive an "Access Denied" error if the contest is invisible at the time the site is switched over to be the main site. 

How to Change Logos and Contest Graphics

Ask a Melange developer. Why? Contest graphics and layout within Melange are not parameterized and generally require code and behavioral changes to update. Banners are the easiest to update (ask a developer to check in a new PNG at /app/soc/content/images/gci/logo/banner-<program link id>.png).

Organization Application and Acceptance Period

During the organization application period Contest Administrators will create an "Organization Application Template" for the organizations to fill out to apply for the program. After all organization applications are submitted, Contest Administrators will review the applications and accept a subset of the applied organizations.

Access and create the Organization Application Template

The blank template can be found via the Admin Dashboard -> Organizations -> Edit organization application. You can then add and edit questions to be filled out by Organization Administrators.

One of the input fields on the application template is a start and end date and time in UTC. The Organization Application will be "live" on the date/time indicated in the template. Organizations will only be able to access the application from the direct link given to them in the invitation from the Contest Administrator via email to the Mentor's list.  The link can be found at google-www.melange/gci/org/application/google/(GCI program year).

The list of the questions displayed to organizations can be built using the tool found at the bottom of the page. 

You can add different types of fields using the tool:

Text Field

Paragraph Field

Checkbox Group

Radio Group

You can add one by just selecting a new field in the dropdown menu.  

Text Fields

Creating a text field requires you to write down the label (generally the question you are posing) and select whether the field is required or not.

 A text field created as seen above will be displayed to the final user like this:

The red star after the name of the text field communicates to the user that the field is required. If a user does not fill out a required field they will receive an error after they attempt to Submit the form.

Paragraph Fields

A paragraph field requires you to complete the same steps:

This will be displayed to the final user as:

Notice the handle on the lower right corner of the field, which allows the user to change the dimensions of the field itself.

Checkbox group

Once you add a checkbox group you will see an interface like the following:

As before, you can specify a "Label", and then you can add different checkboxes that will be displayed in a group to the user. You can add a checkbox by clicking on the Add button. If you make a mistake you can delete the checkbox by clicking on the X button on the right of each checkbox. You can also move the checkboxes around inside the group:

The "Required" checkbox will work as specified above. The "Include other option" means that the final user will see an additional "Other" checkbox that, once clicked, will display an additional text field that will let the user specify something different if none of the other options fit their needs.

The checkbox group specified in the first picture of this paragraph will be displayed to the user like this:

Since we checked the "Include other option" box, if the user clicks on the "Other" checkbox, an additional editable text field will be displayed.

Radio group 

 The radio group works exactly like the checkbox group:

It will just display a radio selection instead of a group of checkboxes to the user. In this case we didn't check the "Include other option" feature, so the radio group will be displayed to the user like this:

Other features

 Using the tool, you can also:

delete a field using its Delete button.

temporarily hide a field using the upper right button, if the fields you're defining are too numerous and the interface gets cluttered.

move around the fields if you change your mind about their order, by clicking on the blue bar and dragging and dropping them.

Review Organization Applications

Contest Administrators will review submitted applications from applying organizations after the application deadline (as per the deadline listed on the Application Template) has passed.

Evaluate Applications 

To evaluate organization applications, the Contest Administrator should visit the organization application list (Admin Dashboard -> Organizations -> Organization application records) and mark applications as "pre-accepted", "pre-rejected", "ignored", or "needs review" by selecting the appropriate status in the drop-down and hitting return. Please note you must click directly on the text in the Status column to make a change. The list will refresh each time you press Return and your work will be saved.

Finalize Decisions 

Clicking the "Finalize decisions and send acceptance/rejection emails" button on the top of the page at any point will immediately send notification to all pre-accepted and pre-rejected organizations and mark them in the system as accepted and rejected, respectively. Only click this button when you are absolutely sure you are ready to approve/reject. The email text that is sent to the organizations can be specified in the Edit Messages (see the Setting up a new contest chapter in this manual) section on the Admin Dashboard. After notification, accepted and rejected organization applications will be filtered out (Status defaults to "needs review") of the organization application list and organizations will not be further notified if the "Finalize Decisions and Send Acceptance/Rejection Emails" button is pressed again. 

Any organizations listed in the "ignored" or "needs review" state when the "Finalize decisions and send acceptance/rejection emails" button is pressed will remain in the list in that state. No email will be sent to those organizations. 

Student Work Period

Once the contest begins, Students can start claiming tasks and working with the Mentoring Organizations directly. This chapter describes the Contest Administrator's duties during this period.

Viewing and Verifying Student Forms 

As soon as the Google Code-in contest begins Students can start filling in their Profiles in Melange. This includes submitting their Parental Consent and Proof of Student Enrollment forms. The Contest Administrator must individually review each form and manually verify it. 

Access Student forms

Admin Dashboard -> Participants -> List students 

It will take a few minutes for all of the Student information to load (it loads every student with a profile in all contest years).

Downloading and Verifying forms

Hold down the "Command" key and click anywhere on the line of the Student forms you'd like to download from the list of student.  A new tab is opened with the Student's profile. From there you can see the Student's entire profile with the Student forms at the top. Download each form to your desktop and view them.  If they are correct, go back to the Student's profile page and drag the slider bar for the appropriate form to "verified."

If the form is incorrect you will have to contact the Student directly using the email in their "Contact Info" further down the page.

Note: You will have to reload the Participating Students list to see any updates to the forms that you have Verified.  

Checking to see if Students have uploaded new forms 

After the Contest Administrator has sent an email (outside of Melange) to the Student describing how to fix their forms, the Contest Administrator will want to continue checking the forms every 2-5 days (every day during the first week of the contest). To view which Student Profiles (including forms) have been updated the most recently, go to Admin Dashboard -> Participants -> List students and then add the "Last Modified On" column to the list view and sort by date. Contest Administrators can then see the most recent Student Profile changes and can open those Student Profiles following the process above to view Student forms.

At the bottom of the page, you'll see a Columns button that you can click to view all of the available columns of information for Students. To add that column to your view (for example "date" or "country", click on the "+" button next to the field you'd like to move into your view.  If you would like to hide a column click on the "-" next to the field.  To move the order of the viewable columns click on the name of the column you'd like to reorder and drag it to the top or your desired location. Click Ok. 

To sort alphabetically or by highest to lowest click directly on the title of the column. 

Exporting Information to a Spreadsheet

To export all of the Student information to a spreadsheet:

CSV Export button at top right -> Select All -> Copy -> Open LibreOffice (or other text editor of your choice) ->Spreadsheet -> Paste -> (Make sure Tab and Comma are both checked) -> OK   

Viewing Organization Tasks

Contest Administrators will need to keep an eye on the Mentoring Organizations and verify there are enough tasks available at any given time for Students to work on. This is also a view that the public can see too.

Home -> Mentoring Organizations ->click on the name of each Mentoring Organization 

You can view the "Open Tasks" and the number of "Closed Tasks" further down the page. 

Contest Wrap-up Questions and Issues

Once the Google Code-in contest concludes, the Mentoring Organizations will choose their 2 Grand Prize Winners and a backup winner. Contest Administrators are responsible for announcing winners on the Open Source blog and on the Melange homepage.

After the contest Contest Administrators can also gather considerable statistics including: keeping track of Student and Mentor information, exporting forms, keeping PII (Personally Identifiable Information) records for the allotted amount of time, and more.  

Choosing Grand Prize Winners

The Contest Administrator will send an email (outside of Melange) to all Google Code-in Organization Administrators explaining the steps involved in choosing their Grand Prize Winners. After the deadline for Organization Administrators to Submit their Grand Prize Winners and backup has passed, the Contest Administrator will review the results by going to Admin Dashboard -> Organizations -> Proposed Grand Prize Winners

Proposed Grand Prize Winners will then be contacted directly (outside Melange) by the Contest Administrator prior to the announcement on the Open Source Blog or the posting on the Google Code-in homepage. 

Exporting Reports   

Student information

Admin Dashboard -> Participants -> List students

It will take about 2-3 minutes to download all of the Students (this includes all Students who submitted a profile for the contest for a given year).

At the bottom of the page, you'll see a Columns button that you can click to view all of the available columns of information for Students. To add that column to your view, click on the "+" button next to the field you'd like to move into your view.  If you would like to hide a column click on the "-" next to the field.  To move the order of the viewable columns click on the name of the column you'd like to reorder and drag it to the top or your desired location. Click Ok.

To sort alphabetically or by highest to lowest click on the 'Title' of the column.

To export all of the information to a spreadsheet:

CSV Export -> Select All -> Copy -> Open LibreOffice (or other text editor of your choice) -> Spreadsheet -> Paste -> Make sure Tab and Comma are both checked -> OK  

Mentors/Organization Administrators 

Admin Dashboard -> Participants -> List mentors and admins

At the bottom of the page, you'll see a Columns button that you click and view all of the columns of information we have available on the Mentors. To add that column to your view, click on the "+" button next to the field you'd like to move into your view.  If you would like to hide a column click on the "-" next to the field.  To move the order of the viewable columns click on the name of the column you'd like to reorder and drag it to the top or your desired location. Click Ok.

To sort alphabetically or by highest to lowest click on the Title of the column.

To export all of the information to a spreadsheet:

CSV Export -> Select All -> Copy -> Open LibreOffice (or text editor of your choice) -> Spreadsheet -> Paste -> Make sure Tab and Comma are both checked -> OK 

Student Work

To view past Google Code-in projects, click on Mentoring organization details in the middle of the page underneath the Mentoring Organizations icons. Here you can click on the organization name and view all of the Open Tasks and Closed Tasks for that year of the contest for that organization. To view Student's work scroll down to Closed Tasks, click anywhere on the line of the task you'd like to view and the task description and the "Uploaded Work" will appear.

How do I delete a student account?

Ask a Melange developer to manually delete the account.

Before Your Organization Applies

As an Organization Administrator, you are the overlord of your projects. You are the first and final point of contact for your organization throughout the contest. The Contest Administrators, in this case Google, depend on you to herd the cats (Mentors) in your organization to ensure they meet their obligations to their Students, your organization, and the contest.  

How do I create a profile in Melange?

The first step to participating as an Organization Administrator is to create a profile in Melange for the current year of the contest. Please remember that you must already have a profile in Melange from participating in either a previous Google Summer of Code program or Google Code-in contest. Once you have logged in with your Google account, click on the Sign up as organization button on the Google Code-in homepage.

You'll need to register as an Organization Administrator via the Register as an Org Admin page. 

Since you will already have profile in Melange from participating in one of the previous contests, the top part of the page indicates what user you are logged in as. If this is not correct and you want to use a different account, click on the Not you? link to sign out and sign in with a different account. 

Please review the Mentoring Organization/Mentor Participant Agreement and, if you agree to the terms therein, click the "I Agree to the Admin Agreement" check box. You will notice that this agreement incorporates our Contest FAQ and Terms of Service by reference. Make sure you have reviewed these documents prior to agreeing.

Complete the rest of the form. Note that information entered in the Contact Info and Shipping Info parts are available only to Contest Administrators.

Submit the form to create an Organization Administrator profile.

Once you have created a profile for yourself for that year's contest, you will need to go back to the Google Code-in homepage and click on the Register as organization button on the homepage again. This time you will be taken to the organization application. 

Where do I change what Notifications I get?

You can change your preferences at the bottom of your Profile by checking or unchecking the appropriate boxes.  You will see help text below each of the notifications describing more about how they function.

Applying to be a Mentoring Organization

The Organization application period is a very important time period for an Organization Administrator. The primary Organization Administrator submits the organization application to the contest and if accepted, ensures the organization's homepage on the Google Code-in website accurately and effectively represents the organization.

Please note: Only organizations that have participated in past instances of Google Summer of Code are eligible for acceptance as Mentoring Organizations for Google Code-in.

Submitting an Organization Application

The organization application is filled out on the Google Code-in website. To create a new organization application, go to the homepage login and click on Register as an Organization button. If you want to edit an existing organization application before the submission deadline, go to My Dashboard, click on My organization applications, and choose your organization from the list. 

Choose an "Organization id". Make sure that your Organization id is descriptive of the name of your project. For example, "The Apache Software Foundation" could be "apache" or "asf".  Please do not choose a Mentors' name, or something only a project insider would understand.

Your "Organization name" should be the full, formal name of your group, e.g. Google Open Source Programs Office or The Linux Foundation. Please be complete.

For "Organization description", please provide an overview of your organization that will be publicly displayed on its profile page should the organization be accepted. Here is an example:

"Google is a proud user and supporter of open source software and development methodologies. As a company, Google contributes back to the Open Source community in a variety of ways, including source code, Project Hosting on Google Code, and our student programs Google Code-in. For more information on Google's open source activities, visit code.google.com/opensource."

Please provide a URL for your organization.

Choose you organization's license from the drop-down menu. 

Please review the Mentoring Organization/Mentor Participant Agreement and, if you agree to the terms therein, click the "I Agree to the administrator Agreement" check box. You will notice that this agreement incorporates the Contest FAQs and Terms of Service by reference. Make sure you have reviewed these documents prior to agreeing, and please make sure that all of your Mentors understand that they are also bound by these terms.

As part of this process, you have to specify a backup administrator. Please keep in mind that they must also have a profile from having participated in Google Code-in or Google Summer of Code in a previous year. 

Link to your tasks page. This is one of the most important parts of your application as it lets us see what type of work you plan to have the students work on for Google Code-in. Please be sure to include at least 5 tasks from each of the 5 categories. This is similar to the Google Summer of Code Ideas page. A link to your bug tracker is not sufficient.

Be sure to include tags on your application. By entering tags such as programming languages and the version control system your project uses such as "Python" or "git", and descriptors of what your project does, such as "HFOSS" or "games", it makes it much easier for appropriate Students to find your organization in Melange.

For IRC channel and mailing list, please note that these are not required text fields. If your organization does not use IRC or you use forums instead of mailing lists, enter this information in these fields. 

Clicking the Submit button submits the application, and returns you to the organization application edit form. If you do not see an "Data saved successfully" confirmation message the submission was not successful. There is an error somewhere on the form, e.g. a required field missing. Such an error will be shown in red, but you may need to scroll down to find it. You can confirm the submission by visiting the My Dashboard -> My organization applications and click on your Organization name and you will be able to see the information that was sent to the Contest Administrators. 

You will be able to edit your submitted organization application from your dashboard until the application submission deadline. After the deadline, you cannot update your application. Should your organization be accepted, you will be able to update much of the information you submitted via updates to your organization profile.

Since the application can be edited at any time before the application deadline, there is no reason to wait the very last second to submit your application. So please don't.

How do I know if our organization has been accepted?

You will receive an email - sent to the email address indicated in your profile - from the Contest Administrator notifying you whether or not your organization was accepted. Emails will be sent at the time specified in the contest timeline for the announcement of accepted organizations.

Creating an Organization homepage 

You will receive a direct link to the Edit profile page for your organization in the email you receive announcing your acceptance into the contest. Please note that your organization will not appear in the Mentoring Organizations details list linked from the homepage until you have completed all the required fields in the organization profile form. Alternatively, you can edit your organization homepage by going to My Dashboard -> Edit organization profile -> click on the name of the organization whose profile you want to edit from the list -> edit the profile and Submit.

Much of the information you entered when submitting your organization's application to the contest will pre-populate to the organization profile page. The information requested is also largely self-explanatory, but here are some tips for filling out this page:

Short name: Please choose a short name for your organization that will be used at places where there is not enough space. E.g. Google for Google's Open Source Programs Office or PSF for the Python Software Foundation.

If there are fields that you are unsure of how to answer (and they are not required), feel free to leave them blank for the time being.  The Contest Administrator will send more information about these fields as contest progresses.

All the accepted organizations will be listed on the Google Code-in homepage only after the Organization Profile has been submitted.

Who can see which sections in Melange after my Organization has been accepted?  

All information you enter in the Public Info is publicly available. Only Organization Administrators can see:

Student's Organization scores 

Mentor emails 

The Proposed Grand Prize Winners

Designating Organization Administrators and Mentors

Anyone who wants to be an Organization Administrator or a Mentor must have first registered themselves on Melange with a Google Account.

Organization Administrators  

The default Organization Administrator is the user who submitted the organization's application. You can invite more users to be Organization Administrators if they have created a profile in Melange for the current year's contest. My Dashboard -> Invite Org Admin -> Click on the Organization name -> Enter the username of the person you would like to send invitations to and enter the message you would like to send those you are inviting to be Organization Administrators.

Mentors

Because Google Code-in involves working with young students, Melange is designed so that Organization Administrators needs to invite the Mentors to be a Mentor for the contest rather than Mentors registering on their own. 

To invite Mentors go to My Dashboard -> Invite Mentor -> Click on the Organization name -> Enter the "email or username" of the person (people) you would like to send invitations to and enter the message you would like to send those you are inviting to be Mentors. 

Accepting a Mentor

Once a user has been invited to be a Mentor for an accepted organization, that Organization's Administrator will be able to view whether a Mentor has accepted the request by going to My Dashboard -> Outgoing Invitations. You can view all of the invitations sent out by your organization and if the Mentors has Accepted the invitation.

How does a Mentor resign? How do I fire a Mentor? 

The Mentor informs their Organization Administrator that they no longer wish to be involved with the contest. The Organization Administrator then sends a request via e-mail (outside of Melange) to a Contest Administrator to have the account of a former (resigned or dismissed) mentor deleted from Melange.

How do I resign as Organization Administrator? 

First, contact the Contest Administrators to notify them you will be leaving and that your Backup Administrator is aware of the change. 

Send a request to melange-soc-dev@googlegroups.com requesting to resign as a Mentor and have your account deleted from Melange.  

I administer an umbrella organization. How do I identify my sub-organizations? 

When creating your task list (for more information see the Creating Tasks chapter in this manual) be sure to designate the sub-organization that the task is for in the task title. Your organization homepage should have information describing the sub-organizations for students to reference.

Loading an organization logo into Melange

This is done in your My Dashboard -> Edit organization profile.  Click on the corresponding organization in the list. Under "Logo URL", enter the URL where your logo is available for download as a JPEG, sized 64 pixels by 64 pixels or smaller.

If you don't like how your logo displays in Melange and cannot fix the problem on your own, please send an email to melange-soc-dev@google.com. 

Creating Tasks

Organization Administrators are responsible for creating many of the tasks that are published for their Mentoring Organization. They can assign Mentors to tasks and edit a task as long as it has not been claimed by a Student. 

My Dashboard -> Create task -> click on Organization name 

Include a descriptive "Task title" for Students who are searching through the task lists of all of the Mentoring Organizations and use the description in the title to determine if they are interested in the task or not.

The "Type" check boxes refer to whether it is a Coding, Documentation, UI, etc task.  You can choose multiple types if appropriate. 

"Tags" are also important to help Students when they are searching for coding languages or other elements they are familiar with (e.g., UI, video-editing).

The "Description" is where you should include more detailed information about the task often including more information about your organization, or links to examples of what they are looking for or anything they may need to be aware of before claiming the task such as possible programs they should download before attempting the task.

"Time to complete" is where you decide how long you wish the Student to have to work on the task, generally a minimum of 36 hours.

You can assign Mentors using the "Mentors" drop-down on the bottom right. You can also click the + add another mentor link to have multiple Mentors assigned to a task (highly recommended).

Click Submit. At the top of the page, "The form was successfully saved" appears inside a green bar when all of your information is complete and has been recognized by Melange.

Maintaining your task list  

Organization Administrators will be responsible for making sure that there are a minimum of 25 open tasks on their list at any given time for Students to claim.  If more tasks are needed Organization Administrators may want to reach out to the Mentors or others in their open source community for ideas.  There should be tasks available from each of the 5 categories (coding, documentation/training, user interface, outreach/research, and quality assurance) at all times.

During the Contest

During the contest the Organization Administrator is responsible for the following:

Adding Tasks to the Task List as needed (minimum of 25 tasks at all times)

Monitoring the list of Tasks to make sure Mentors are reviewing submitted tasks promptly (under 36 hours)

Answering questions 

Covering any Mentor absences  

Workflow 

 A brief overview of how the task process works (in Melange):

Organizations Administrators create tasks for Students to perform and assign at least one Mentor to each task.

Tasks must contain a descriptive title, tags (C++, UI, documentation) and descriptions of the tasks so that Students can understand what is entailed in completing the task.

Students sign up for a contest profile using a Google Account - See the Section on profiles within this manual.

Students search for tasks by clicking on Search for Tasks on the homepage, and reviewing the list on the "Tasks" page.

Students requests a task from a Mentoring Organization.

Mentors assign claimed tasks to Students.

Students work on their tasks under the guidance of the Mentors assigned to each task.

Students then submit the work through Melange. The Mentor assigned to the task will then receive an email that the task is ready for review. 

Mentors then review the task, marking the task as "closed" or "needs more work". If the task needs more work, the Mentor should submit a comment to the Student on what needs to be fixed/added. 

Organizations have the ability to use a group notification email where all Mentors and Organization Administrators receive notifications when a new task is claimed or ready to be reviewed. 

Assigning Mentors

Organization Administrators can assign Mentors to a task by selecting the Mentor from the Assigned Mentor drop down on and clicking on the Submit button. The Organization Administrator can change the assigned Mentor at any time by going to the desired Task, clicking on the Edit Task button in the top right corner and then scroll down to the bottom of the page and choose a different Mentor from the Assigned Mentor select list.

Mentors appear in the Mentor drop-down list on a proposal only after they have toggled the "Wish to mentor" switch on the proposal to "yes." The Organization Administrator can also add multiple Mentors to the proposal by clicking on the Add Mentors link below the Mentors drop-down menu.

Reviewing student tasks

Go to My Dashboard -> All tasks for my organizations. From this list, Organization Administrators can sort the list by opened tasks so that they can see all of the tasks that are available. The states of a task that are visible are: open, closed, re-opened, unapproved, unpublished,needs review. The Organization Administrator can click on a task from the list and see the work product or post a comment using the Post new comment button.

Organization Administrators can review a Student's work if a Mentor is unavailable. Melange allows any Mentor from the Mentoring Organization to review Student work and mark it as "Complete" or "Needs review."

Can I send a bulk email / "form letter" from Melange?

In general "No", except for the email sent by Melange to people requesting to be a Mentor or Organization Administrator for your organization.  

How do I delete a Mentor?

Contact a Contest Administrator. 

Can we customize Melange for our organization's workflow? 

There are several ways to customize the Melange workflow for your organization, all of which can be found on your organization profile, readable from the Edit link on your organization homepage. Customizations include:

The message to display when someone requests to be a Mentor/Organization Administrator of your organization

Extra fields that you can use to store additional data on Student tasks 

Do I have to work in Melange? 

Yes. Everyone participating is required to work within Melange. You are welcome to file bugs and feature requests, but please do not expect immediate change. Any Organization Administrator, Mentor and/or Student who refuses to use Melange should be removed from the contest.  

After the Contest

Once the contest period has closed, Mentoring Organizations will have a designated window to determine their Grand Prize Winners and one backup winner.

The 5 Students with the highest accumulated number of points with your organization are the Grand Prize Finalists for your Organization. To view these 5 Students, the Organization Administrator will need to go My Dashboard -> Propose the Grand Prize Winners link -> Click on your Organization.  A drop-down list appears with the names of the 5 Grand Prize Finalists. 

Organizations will discuss amongst themselves the comprehensive body of work of these 5 students considering thoroughness, creativity and quality of work. Once Mentoring Organizations have determined their 2 Grand Prize Winners and their backup winner, the Organization Administrator will use the drop-down lists at My Dashboard -> Propose the Grand Prize Winners link -> Click on your Organization and choose their 1st Grand Prize Winner, 2nd Grand Prize Winner and backup winner. When you press Submit your choices are sent to the Contest Administrator.

All Grand Prize Winners are officially announced on the Google Open Source blog first and then the Grand Prize Winners will appear on the Google Code-in site. These tasks are completed by the Contest Administrator.

Shipping and Payment Questions

As the the contest winds down, you may be contacted by Students with regards to shipping issues. Please refer the Students to the Contest Administrator for help.

Before The Contest

If you have been contributing to an organization that has been accepted into Google Code-in you might discover that you want to be a Mentor for Google Code-in. Here's some information about participating as a Mentor.

Mentor registration

Melange intentionally does not support self-nominated Mentors for Google Code-in. Mentors must be named by the Organization Administrator of a Mentoring Organization.

If you have already had a discussion with the Organization Administrator of the organization(s) you're interested in mentoring for, and you have both agreed that you are qualified, the first step to mentoring is to receive an invitation to participate from an Organization Administrator. This invitation will take you to a link to create a profile in Melange.

Please remember that you need to have a Google account in order to register and create a profile with the contest. If you don't have a Google account, you will need to sign up for one at accounts.google.com/signup.

You will need to fill in your name, email address, home address, and other optional information. You can also fill in your shipping address (if different from your home address) for any items that will be mailed to you during the contest. 

Important points:

Make sure that your Public name is professional and consistant with the name or handle you use within your project. For example, if your name is Bill Chow and you go by "bchow" on your project mailing list, you might choose "Bill Chow" or "Bill_Chow" or "bchow" as your "Public name".  Please do not choose a Public name that is potentially offensive, such as "jacktheripper".

For "Email address", please enter an email address to be used by Organization Administrators. It is strongly advised that you use the email address associated with the Google account information you provided during the application process but it is not required. This email will be used as the primary mode of contact by Google throughout the contest, e.g. the email address which we will use to subscribe you to the Google Code-in Mentors/Organization Administrators-only mailing list or the email to contact you if there is a shipping issue.

For IM handle and Home page URL and Blog page URL, please note that these are not required text fields. Leave the fields blank if you do not use IM, blogs, etc. or you prefer not to share that information.

You will remain able to edit your profile after submission.

Once you have created a profile you will be taken to the invitation to become a Mentor link for Google Code-in. Press the "Accept" button. The page will refresh and you will get a confirmation.

You can then click on My Dashboard to see your new list of available options for Google Code-in.

During the Contest  

Viewing a Task 

You can view all the tasks for all the organizations for which you are a mentor on the My Dashboard -> All tasks for my organizations page.  

You can then view a task by clicking on the name of the task in the list and visiting the View Task page.

Accept the Task 

You can also create a new task for your organization by visiting My Dashboard -> Create Task. 

Your task must be approved and then published by your Organization Administrator before it will become publicly viewable and available for Students to claim. Once it is published and publicly viewable, the Student can click on its name in the task list, view the task, and then request to claim it. If the Student requests to claim the task you will find the task status change to "ClaimRequested." You can press the Assign button on the task to assign the task to the Student and approve the request. 

The Student can then work on the task for the amount of time allowed as per the task's "Time to Complete." The task will remain in the "Claimed" status and the clock on the task will mark the amount of time left to finish the work on the task.

If the Student does not complete the task in the allotted amount of time you can choose to extend the deadline for the Student by using the Extend Deadline button on the task.

Once the Student has uploaded work to the task you will receive an email notification that the work is ready for review. The email will include a direct link to the task so you can view the uploaded work. The Student has one of two options when uploading work: they can upload a file (which you can then download by clicking on the file's name on the task) or they can provide a URL for the work. If they provide a URL it will appear as a clickable link on the task. In either case the work will appear in the "Uploaded Work" section and the task's status will appear as "NeedsReview."

If you approve of the work the Student has done on the task you can Mark Task as Closed to complete it. If the task needs more work you can click the Needs More Work button on the task to send it back to the Student for improvement. If you ask the Student to improve their work you will want to give them some guidance as to what you want added/changed, etc. either by posting a new comment or chatting with the student directly on your IRC channel.

In addition to viewing the full text of the task and using the options mentioned above you can also:

Unassign Task: If you believe the Student won't complete the task or has claimed it in error, you can unassign the task from the Student. Please don't use this option lightly.

Leave a Comment: You can leave public comments for the Student directly on the task. Melange also leaves automatic comments when a task changes status. You must give the comment a Title (it is a required field) so maybe ' Need to be more specific on documentation' or such.  If you do not enter a title for the comment and you then enter the text for your comment and press submit, all of the text will be gone and you will have to start writing your comment and title again.

You will receive email notifications of comments on the tasks you are a Mentor for and/or those that you have subscribed to receive mailing list notifications for. You can unsubscribe from these email notifications by pressing the Unsubscribe From Updates button on the task.

Please note that if you choose to edit a task after the task has been published, you cannot edit most of the properties. You can only modify the tags or assigned Mentors or delete the task.

After The Contest

Once the contest is over, you will continue to be able to access your submitted Students' tasks by going to My Dashboard -> Evaluations.  

Before the Contest

Here are some things you can do to learn more about Google Code-in before the contest officially begins.

View List of Mentoring Organizations

All past and current Mentoring Organizations from 2010 on can be found in Melange. From the Melange homepage, click on the "Mentoring organization details" under the Mentoring Organizations box to see a list of the Mentoring Organizations from the most recent year of Google Code-in. When you click on an organization, you can see a list of that organization's Open Tasks and Completed tasks, a description of the organization, and Contact information. 

To contact an organization before the contest starts, look on the right hand side of the organization page and use the various communication channels listed (IRC, email, Blogger, Google+, etc.).

The Mentoring Organizations for that year's contest will be announced a few weeks before the Contest begins. 

Before claiming any tasks

Before claiming any tasks, you must create a profile in the contest.

Creating a Melange Profile

To participate in Google Code-in you will need to create a profile in Melange. Please remember that you need to have a Google account in order to register and create a profile with the contest. If you don't have a Google account, you will need to sign up for one at accounts.google.com/signup.

Once you have a Google account, the first step to creating a profile is to press the Login button on the left hand navigation bar. You can also press the Register As Student button on the homepage. 

You will then be taken to an age verification page to make sure you are an age that qualifies to participate in the contest (13-17 years old). Fill in your birthday in the format Year-Month-Day.

Press Submit when you are done. 

Once you have successfully entered your age you will be asked to login to your Google account. Once you have logged in to your Google account you will be brought to the Register As A Student page.

You will need to fill in your name, email address, home address, and other optional information. You can also fill in your shipping address (if different from your home address) for any items that may be mailed to you after the contest concludes. 

Important points: 

Make sure that your Public name is professional and consistent with the name or handle you may already be using online. For example, if your name is Jane Chow you might choose "jchow" or "skierj" as your Public name. We recommend not using your real full name "Jane Chow" for your Public name. Please do not choose a Public name that is potentially offensive, such as "jacktheripper".

For "Email address", please enter an email address to be used by Organization Administrators or Mentors to communicate with you via comments and to make you aware of changes in status to your tasks. It is strongly advised that your Google account email address but it is not required. This email will be used as the primary mode of contact by Google throughout the contest, e.g. the email address which we will use to notify you of incorrect forms or any issues with the shipping address for your prizes.

For IM handle, Home page url and Blog page url, please note that these are not required text fields. Leave the fields blank if you do not use IM, blogs, etc. or you prefer not to share that information.

You'll need to press Submit at the bottom of the page. 

If you do not fill out a required field or put invalid data in the form, fields with errors will be highlighted in red.

If you have successfully completed your profile, you'll see a yellow box at the top of your profile that reads "Profile saved successfully. You need to upload your forms here before you can claim any tasks in the program."

Press the link for here on the page to be taken to the "Student form upload" page.

Forms

When you first visit the "Student form upload" page you will have green Attach a file buttons to upload each form.

Press the Attach a file button when you are ready to upload each form. When your form is uploading you will get an orange progress bar.

Upload the second form using the same process. Once you have uploaded both forms you can go and claim your first task. A Contest Administrator will Review your forms within 5 days. Your forms will remain in the "To be verified" state until the Contest Administrator has marked them as "verified". Please note that you may be contacted in this time to re-upload your forms or make changes. You can re-upload your forms using the Re-upload button next to the appropriate form.

When the Contest Administrator has Verified your forms, the orange "Verified" button will be displayed on your Dashboard.

Congratulations! Once your forms are submitted you can start to claim and work on tasks. 

Claiming and Working on Tasks

You will see a "Get Started Now!" section on the homepage when you can start to claim tasks. Click on Search for tasks to search for tasks that can be claimed.

You can see the full list of tasks on the Tasks page.

You can click on a task in the list to be taken to that task's page with more description about the task.

You can click on Claim this task! to request to claim the task. Please note that your request must be approved by the Mentor or Organization Administrator for the organization before the task is yours. The page will refresh and the task view will change.

Because you can only work on one task at a time, even when you have requested to claim a task but the request has not yet been approved this task will be listed as your current task.

The Mentor for this task will be notified of your request to claim the task. You can comment on the task if you would like to give the Mentor more information, but you must wait until the Mentor or Organization Administrator has approved your claim before you can start to work on it.

Once the request has been approved the task view will change again.

You will see that Melange puts automatic comments on the task when the status of the task changes. You will now have the option to upload work in the form of a URL or a file upload. Upload your work when you are ready to do so. Click the Mark task as complete button to send a notification to your Mentor that the work is uploaded and ready for review. 

You also have some other options on your current task:

Unclaim task: If you have decided that the task is too difficult or you do not want to work on it any longer you can press the Unclaim task button. The page will automatically refresh and the task will no longer be yours and you can go claim another task.

Unsubscribe from updates:  If you do not want to receive email notifications about comments or status changes to this task you can press Unsubscribe from updates.

Comment: You can make a public comment on any task if you would like to get more information from the Mentor about it. Note: you will need to give the comment a "Title" and enter your comment text into the Content field before hitting the Submit button.

If the amount of time allotted to the task runs out before you can upload work and/or have the task marked as complete, you will see the task change to "ActionNeeded" status. You will need to speak to your Mentor about extending the deadline for the task in order to give you more time to complete it. You can also unclaim the task if you aren't going to be able to finish it.

Once you have uploaded your work, marked it as complete, and your Mentor marked the task as closed, you are done with your task! You can now claim a new task to work on from the open tasks.

After the Contest

What can a Student do in Melange after the current Google Code-in contest has ended?

View List of Mentoring Organizations

All past and current Mentoring Organizations can be found in Melange back to the 2010 contest. From the Melange home page, please click on the "Mentoring organization details" under the Mentoring Organizations link. From there, you can search by year of the contest by going to the URL and changing the last four digits to 2012, 2011 or whatever Contest year you are looking for.

When you click on an organization, you can see a list of that organization's Open and Completed Tasks, a description of the organization and Contact information. 

To contact an organization after the contest ends, look on the right hand side of the organization page and use the various communication channels listed (IRC, email, Blogger, etc.)

View Your Profile

Your Dashboard remains available for viewing, but it can not be edited after the Contest ends.

View Completed Tasks

To view past Google Code-in Tasks that Students completed for each Mentoring Organization, please click on each Mentoring Organization logo on the home page and scroll down to Completed Tasks.

Lists How-To

Lists in Melange are everywhere, and since they have more features than meets the eye, here are some tips and tricks on how to use them.

Lists in Melange load slowly, and you will see them populating dynamically as soon as data is available from the server. The cause of this behavior is out of the scope of this book but is a consequence of how the backend Google AppEngine infrastructure works and its limitations.

Furthermore, what you tweak in each list is saved in a cookie in your local browser. This is done both per page and per list (this means that options for each different list are saved independently from one another). Since the options are saved in a cookie, that also means that you won't see your settings preserved if you use a different browser or different computer than the one used to set your settings. That also means that all the settings will be lost if you clear your browser cookies.

The lists are generally structured in five main sections:

Ordering

Searching

Actions and Options

Content

Filtering and Pagination 

Ordering

Clicking a column header will order the list by the selected column. Subsequent clicks will toggle between ascending and descending order (indicated by an arrow that appears on the right of the column's header).

Searching

By writing something under a specific column header in the search section (or selecting one option from a drop-down menu if the possible states for the column are limited to certain possible entries), the list will automatically and dynamically be filtered according to the substring requested. This can be done on more than one column at once, and that would result in searching the list for entries that match both requests (logical AND).

Actions and Options

On the upper side of each list there is some space reserved for optional buttons to appear in order to do some action over the listed entries. You can usually find at least two options: RegExp Search and CSV Export.

RegExp Search

By clicking this checkbox you will be able to search on the columns by using regular expressions rather than plain substring search. If you don't know what regular expressions are you can ignore it. 

CSV Export

Most of the lists have a button available which allows exporting the content of the list in CSV (Comma-Separated Values) format. By clicking on that button, a popup window will appear showing the content properly formatted as CSV. You will have to copy and paste the content to a new file on your computer in order to work with it.

Since the data is loaded from the server incrementally, you will want to wait until the whole list has been loaded before pressing the CSV Export button. Hitting the CSV Export button before the list completely loads will display only the data that has already been loaded, which may be incomplete.

Furthermore, the CSV Export has another convenient feature: it will export the data shown on the list in the current state. That means that it will reflect the order, the filtered subset, and the visible columns that are available in the moment the button is clicked.

Advanced Actions on multiple entries

Sometimes (only for some roles), you will be able to apply some actions to one or more entries displayed on the list.

When available, the actions you can take on the selected entries are available on the left side of the Actions and Options section of the list. You can select the desired entries by clicking on the checkbox shown in the first column of the corresponding row. You can also select/deselect all the currently visible rows by clicking on the checkbox shown on the left of the column headers.

Content

This is where the list data is displayed. Sometimes the rows can be clickable, and you'll be able to reach a page with details about the clicked row. In those cases, since the list data needs to be downloaded again from the server each time a page loads, if you have to look at more than one detail, we suggest you open a new browser window instead of clicking the row, since doing the latter will send you to a different page and you will have to click the back button of your browser to reload the previous page all over again.

Furthermore, you can resize any column by dragging and dropping the vertical lines between them.

Filtering and Pagination

The footer of each list displays, from right to left:

The number of entries currently displayed against the number of entries that are available within the current (eventually filtered) dataset.

The current page against the total number of pages of the current (eventually filtered) dataset. There are also clickable arrows that allow you to go to the previous, next, first or last page. Furthermore, the current page is editable, so it's easy to change to a specific page by writing the number of the desired page and pressing Return. You might also see a dropdown that allows you to change the number of rows displayed at once for each page. 

A toolbar with different buttons that can be used to tweak the list appearance and/or filter the dataset with something more complicated than the simple string searching that we already explored above.

Show/Hide/Order Columns

Most lists have more data than necessary or useful for your current task. We don't display all of them by default because it might be overwhelming for the interface; we show by default only a subset of data most relevant for the selected page. Also, the columns are displayed in an order that made sense to us. Both these choices might not make sense to you, hence the option to tweak the columns in the list.

By clicking on the Columns button, you will see a simple but powerful interface with the following features:

On the left hand side of the interface you can see the columns that are currently visible in the list. The other available columns, currently hidden, are shown on the right.

You can make a column visible either by dragging and dropping it from right to the left, or by clicking on the + button. You can even look for a column name by writing part of its name on the text field displayed above the list of hidden columns.

You can hide a currently visible column by clicking on the - button.

You can reorder the currently visible columns by dragging and dropping columns names on the left hand side.

Finally, you can hide all columns at once or display all columns at once by clicking on theRemove All or Add All links.

Advanced filtering

By clicking on the Filter button, you will be shown a popup window that gives you various options to create an advanced filter on the current list data.

You can create more than one filter that will be applied over the list dataset at once, either by logical AND or logical OR. Each filter consists of a column name, a type of filter to apply, and a substring that the type of filter should match (if applicable).

You can reset the filter(s) applied by visiting the interface again, clicking Reset and either clicking Find or closing the popup window.

Refreshing the lists

Another button might be available on the lists, the Refresh button, which will allow you to reload the data in the list without reloading the whole page and/or other lists that might appear in the same page. This is especially useful when the underlying data changes frequently or you're expecting it to change soon and you want to monitor it.

Editable lists

Some lists have live editing enabled. For those lists you just need to click on the row that you want to change and the cells which are editable will turn into text fields/dropdowns/checkboxes/etc. In order to modify one row you can just change whatever you want and then press Return to automatically save the modified row to the server.

There are currently some gotchas to remember:

Even though these editable lists have a "Save" button, that button is disabled and doesn't do anything. The only way to save is to change something and then press Return, so don't rely on that button. This is a temporary issue that will hopefully change soon.

Pressing Return to save the row is required even when you're just modifying a dropdown. So when you change a dropdown, make sure that you press Return afterwards to save the data.

When you press Return after editing a row, you're not able to change the same row immediately by clicking on the row again. You have to select another row first and then select the original row you want to change again. If your list has just one row, then you can press the Refresh button on the list: refreshing the list will deselect that row automatically.

When you're editing a row, if you select another row without pressing Return the row will revert back to the previous state, without saving anything to the server.

Credits

Melange's lists are built on top of the jQuery Grid Plugin, A.K.A. jqGrid. More information on that plugin can be found at http://www.trirand.com/blog/.

Troubleshooting

Sometimes you will run into a problem with Melange that you're not sure how to fix. Here are some answers to common questions we've run into with the website in the past.

Where do I file bugs or feature requests for Melange?

We track all the bugs and feature requests for the website at http://code.google.com/p/soc. You can look at all the current issues in the Issues list or file a new issue with the Issues -> New Issue link.

What do I do if I can't log in anymore?

There are various reasons why you might not be able to log in to the website. Try some of these options:

If you use multiple email addresses regularly, you might want to try logging in with a different email address. It is possible to create a profile in Melange using a different email address than your Google account email address: try logging in with one or the other. 

If you were using either an @gmail.com or an @googlemail.com email and migrated to the other, you will have trouble logging in. You'll need to contact a Melange developer on the melange-soc-dev@googlegroups.com email list to have it fixed. 

Why doesn't "Connect With Us" have direct contact information?

We are a small team administering this program and can't answer your questions individually. Please make use of the IRC channel, mailing lists, and social networking sites we use to connect with our users so that we can distribute the workload amongst us evenly. Thank you for being patient when you ask a question on our mailing list or in IRC. We'll try to respond as soon as we're able. The mailing list is the best place to ask questions as other students, mentors, and organization administrators are likely to respond to your inquiry quite quickly (there are thousands of people on the list who enjoy helping out fellow open source enthusiasts).

I got a 404 error -- what do I do now? 

A 404 error means that the webpage is not found. Most likely you are trying to access a webpage that doesn't exist, has been moved, or has been deleted. If you feel like this is really a mistake, please contact the Melange developers at melange-soc-dev@googlegroups.com to see if the page was mistakenly moved. 

I got a 500 error -- what do I do now? 

Most often the solution to this error is to wait a little while and refresh the page. Melange sometimes has intermittent timeouts or load issues. Try again a little later. If the defect is persistent and repeatable, please contact the Melange developers at melange-soc-dev@googlegroups.com with as many details about it as possible. Helpful details include which operating system and browser you are using, including the version number of each, what you were trying to do when you encountered the problem, and exactly what happened.

Glossary

These are some of the terms most commonly used throughout the Melange website as well as this documentation.

Contest Administrator 

One or more of the Google Open Source Programs Office's employees who manage the Google Code-in contest.

Contest Timeline 

The time frame and important dates of a given contest.  

Dashboard 

Participants who have filled out a profile have a My Dashboard in Melange where they see contest information specifically relevant to them.

Internet Relay Chat (IRC)

A somewhat archaic but still common means of real-time multi-participant conversation, IRC is Internet text messaging (chat) or synchronous conferencing. It is mainly designed for group communication in discussion forums, called channels, but also allows one-to-one communication via private message as well as chat and data transfer. Many Mentoring Organizations use IRC as a place for Students to ask questions. IRC requires client software, much of which is freely available for a variety of platforms. See http://en.wikipedia.org/wiki/Internet_Relay_Chat for more information.

Melange

Melange is the software application used to run the Google Code-in contest. Melange is used via a web browser such as Chrome, Firefox, or any other modern standards-compliant browser. 

Mentor

A member of an accepted Mentoring Organization who has filled out a profile on Melange and has been accepted to participate as a Mentor by the organization's Organization Administrator. 

Mentoring Organization

An open source organization that was accepted into the Google Code-in contest and supervises work done by Students during a contest. A Mentoring Organization is managed by one or more Organization Administrators.

Organization Administrator 

The primary manager of an accepted Mentoring Organization's responsibilities. Please see the Google Code-in FAQ (located on the Google Code-in homepage) for information on the full complement of their responsibilities. 

Organization Application Template

The set of questions to be answered as part of an organization's applying to participate in a contest. Contest Administrators create this template and Organization Administrators complete it in their application.

Profile 

The personally identifying information you fill out that includes your name, address, t-shirt size, gender, etc. Completed on the Google Code-in website. 

Role

This is a user's function on Melange. Any user can be one of 4 roles: Contest Administrator, Organization Administrator, Mentor, or Student. (Organization Administrators can also serve as a Mentor.)

Student

A user who meets the Student participation criteria for the Google Code-in contest and has completed a Melange profile.   

Task List

The page or series of pages where an Organization describes possible tasks for Students to work on during the contest.  

Umbrella Organization 

Some Mentoring Organizations in Google Code-in have small features or participants who do not fit into the larger schema of their work. The organization can become an "Umbrella Organization" and allow multiple projects to function independently during the program while still remaining cohesive. 

Attribution

Cat Allman

Mario Ferraro

Daniel Hans

Nathaniel Manista

Sverre Rabbelier

Mary Radomile

Carol Smith

Stephanie Taylor

.. and.. the awesome Adam Hyde!

Welcome to Melange

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
sttaylor - Stephanie Taylor 2013
catallman - Cat Allman 2013
maryr - Mary Radomile 2013
nathaniel - Nathaniel Manista 2013

Using the Google Code-in Website

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
maryr - Mary Radomile 2013
sttaylor - Stephanie Taylor 2013

Data Protection

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
maryr - Mary Radomile 2013
sttaylor - Stephanie Taylor 2013
fadinlight - Mario Ferraro 2013

General Information and Questions

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
sttaylor - Stephanie Taylor 2013
dhans - Daniel Hans 2013
catallman - Cat Allman 2013
maryr - Mary Radomile 2013

Creating and Editing

Modifications:
booki - adam or aco 2013
sttaylor - Stephanie Taylor 2013
dhans - Daniel Hans 2013
catallman - Cat Allman 2013
fadinlight - Mario Ferraro 2013
maryr - Mary Radomile 2013

What is a Contest Administrator?

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
maryr - Mary Radomile 2013
sttaylor - Stephanie Taylor 2013
catallman - Cat Allman 2013

Setting Up a New Contest

Modifications:
maryr - Mary Radomile 2013
catallman - Cat Allman 2013
sttaylor - Stephanie Taylor 2013
fadinlight - Mario Ferraro 2013
booki - adam or aco 2013

Organization Application and Acceptance Period

Modifications:
carols - Carol Smith 2013
sttaylor - Stephanie Taylor 2013
fadinlight - Mario Ferraro 2013
maryr - Mary Radomile 2013
booki - adam or aco 2013

Student Work Period

Modifications:
carols - Carol Smith 2013
maryr - Mary Radomile 2013
fadinlight - Mario Ferraro 2013
sttaylor - Stephanie Taylor 2013
booki - adam or aco 2013

Contest Wrap-up Questions and Issues

Modifications:
maryr - Mary Radomile 2013
fadinlight - Mario Ferraro 2013
sttaylor - Stephanie Taylor 2013
booki - adam or aco 2013

Before Your Organization Applies

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
catallman - Cat Allman 2013
sttaylor - Stephanie Taylor 2013
maryr - Mary Radomile 2013

Applying to be a Mentoring Organization

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
sttaylor - Stephanie Taylor 2013
catallman - Cat Allman 2013
fadinlight - Mario Ferraro 2013
maryr - Mary Radomile 2013
nathaniel - Nathaniel Manista 2013

Creating Tasks

Modifications:
carols - Carol Smith 2013
sttaylor - Stephanie Taylor 2013
maryr - Mary Radomile 2013
nathaniel - Nathaniel Manista 2013
booki - adam or aco 2013

During the Contest

Modifications:
booki - adam or aco 2013
catallman - Cat Allman 2013
maryr - Mary Radomile 2013
sttaylor - Stephanie Taylor 2013
nathaniel - Nathaniel Manista 2013

After the Contest

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
sttaylor - Stephanie Taylor 2013
catallman - Cat Allman 2013
fadinlight - Mario Ferraro 2013
maryr - Mary Radomile 2013
nathaniel - Nathaniel Manista 2013

Before The Contest

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
catallman - Cat Allman 2013
sttaylor - Stephanie Taylor 2013
dhans - Daniel Hans 2013

During the Contest

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
sttaylor - Stephanie Taylor 2013
dhans - Daniel Hans 2013
catallman - Cat Allman 2013
maryr - Mary Radomile 2013

After The Contest

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
catallman - Cat Allman 2013
sttaylor - Stephanie Taylor 2013

Before the Contest

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
sttaylor - Stephanie Taylor 2013
dhans - Daniel Hans 2013
catallman - Cat Allman 2013
srabbelier - Sverre Rabbelier 2013
maryr - Mary Radomile 2013

During the Contest

Modifications:
carols - Carol Smith 2013
booki - adam or aco 2013
sttaylor - Stephanie Taylor 2013
dhans - Daniel Hans 2013
catallman - Cat Allman 2013
fadinlight - Mario Ferraro 2013
srabbelier - Sverre Rabbelier 2013
maryr - Mary Radomile 2013

After the Contest

Modifications:
booki - adam or aco 2013
catallman - Cat Allman 2013
sttaylor - Stephanie Taylor 2013

Lists How-To

Modifications:
sttaylor - Stephanie Taylor 2013
catallman - Cat Allman 2013
maryr - Mary Radomile 2013
fadinlight - Mario Ferraro 2013
booki - adam or aco 2013

Troubleshooting

Modifications:
booki - adam or aco 2013
catallman - Cat Allman 2013
sttaylor - Stephanie Taylor 2013
maryr - Mary Radomile 2013

Glossary

Modifications:
maryr - Mary Radomile 2013
catallman - Cat Allman 2013
sttaylor - Stephanie Taylor 2013
nathaniel - Nathaniel Manista 2013
booki - adam or aco 2013

Attribution

Modifications:
fadinlight - Mario Ferraro 2013
maryr - Mary Radomile 2013