An Introduction To Our System
================================

Please read the following and watch the videos.

Basic: Solving Write Code Problems
==================================

If you see a problem like the one below, you will need to write code.  The problem
will have unit tests that you can run to check that your code is working
correctly.  Click on the "Run" button to compile and run your code.  Look after
the code area for compiler errors and/or unit test results.

See the video below for an example.

.. youtube:: piPz0kh8gMk
    :divid: si206-code-cls
    :optional:
    :width: 650
    :height: 415
    :align: center

Basic: Solving Mixed-up Code Problems
=====================================

If you see a problem like the one below you will need to put the mixed-up code in the correct order on the right side. 
You need to indent the blocks as well.  Click the "Check" button to check your solution.
Click the "Reset" button to start over.  You can check your solution as many times as you want.
You can also click the "Copy" button to copy the finished solution to the clipboard.

See the video below for an example.

.. youtube:: Rf7oWHlo-e0
    :divid: si206-parsons1-cls
    :optional:
    :width: 650
    :height: 415
    :align: center

Try to solve the following mixed-up code problem. This problem requires indentation and has extra blocks that are not needed in a correct solution.

.. parsonsprob:: si206-sample-parsons-indent-with-dist-cls
   :numbered: left
   :adaptive:
   :practice: T
   :order: 3, 1, 2, 0

   Drag the blocks from the left and put them in the correct order on the right with the correct indentation.
   There is an extra block that is not needed in the correct solution.
   -----
   First block
   =====
   Second block
   =====
   Extra block that is not needed #paired: This block is not needed
   =====
       Third block that needs to be indented

The mixed-up code problems have a "Help me" button at the bottom of the
problem. Once you have checked at least three incorrect solutions you can
click the button for help.  It will remove an incorrect code block, if you used
one in your solution, or combine two blocks into one if there are more
than three blocks left.

See the video below for an example.

.. youtube:: QejZ7u642IU
    :divid: si206-parsons2-cls
    :optional:
    :width: 650
    :height: 415
    :align: center

In this practice: Write Code with A Pop-Up Mixed-up Code Example Problem 
=========================================================================

In the practice, you may see a write code problem that allows you to pop-up an mixed-up code problem of an example problem. 
You can use this problem to help you solve the write code problem.  
To pop-up the mixed-up code problem, click on the drop down near the top of problem.


In this practice: Write Code with A Pop-Up Code Example Solution
=================================================================

In the practice, you may also see a write code problem that allows you to pop-up a completed solution with step-by-step comments for an example problem.
You can use this problem to help you solve the write code problem.  
Similarly, to pop-up the code example demostration, click on the drop down near the top of problem.




What to do next
================

.. raw:: html

    <h4>Click to finish a survey about your perceptions of your abilities to complete programming learning tasks 👉 <b><a href="presurvey-cls.html">Survey</a></b></h4>


