using_sage_to_teach/script.rst
author Nishanth <nishanth@fossee.in>
Tue, 12 Oct 2010 11:44:33 +0530
changeset 335 d5248a15274c
parent 334 4b1e81da1c80
child 459 68c324a9981c
permissions -rw-r--r--
Finished writing_python_scripts
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
256
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     1
.. Objectives
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     2
.. ----------
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     3
334
4b1e81da1c80 Finished using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents: 256
diff changeset
     4
.. By the end of this tutorial you will be able to
4b1e81da1c80 Finished using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents: 256
diff changeset
     5
4b1e81da1c80 Finished using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents: 256
diff changeset
     6
..  * use ``@interact`` feature of SAGE
4b1e81da1c80 Finished using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents: 256
diff changeset
     7
..  * learn to share, publish and edit SAGE worksheets
256
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     8
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
     9
.. Prerequisites
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    10
.. -------------
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    11
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    12
..   1. Getting started with lists
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    13
     
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    14
.. Author              : Nishanth Amuluru
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    15
   Internal Reviewer   : 
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    16
   External Reviewer   :
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    17
   Checklist OK?       : <put date stamp here, if OK> [2010-10-05]
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    18
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    19
Script
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    20
------
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    21
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    22
Hello friends and welcome to the tutorial on "Using SAGE to teach"
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    23
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    24
{{{ Show the slide containing title }}}
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    25
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    26
{{{ Show the slide containing the outline slide }}}
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    27
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    28
In this tutorial, we shall learn
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    29
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    30
 * How to use the "@interact" feature of SAGE for better demonstration
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    31
 * How to use SAGE for collaborative learning
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    32
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    33
Let us look at a typical example of demonstrating a damped oscillation.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    34
::
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    35
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    36
    t = var('t')
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    37
    p1 = plot( e^(-t) * sin(2*t), (t, 0, 15))
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    38
    show(p1)
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    39
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    40
Now let us reduce the damping factor
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    41
::
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    42
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    43
    t = var('t')
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    44
    p1 = plot( e^(-t/2) * sin(2*t), (t, 0, 15))
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    45
    show(p1)
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    46
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    47
Now if we want to reduce the damping factor even more, we would be using
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    48
e^(-t/3). We can observe that every time we have to change, all we do is change
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    49
something very small and re evaluate the cell.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    50
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    51
This process can be automated using the ``@interact`` feature of SAGE.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    52
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    53
::
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    54
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    55
    @interact
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    56
    def plot_damped(n=1):
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    57
        t = var('t')
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    58
        p1 = plot( e^(-t/n) * sin(2*t), (t, 0, 20))
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    59
        show(p1)
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    60
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    61
We can see that the function is evaluated and the plot is shown. We can also
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    62
see that there is a field to enter the value of ``n`` and it is currently set
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    63
to ``1``. Let us change it to 2 and hit enter.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    64
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    65
We see that the new plot with reduced damping factor is shown. Similarly we can
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    66
change ``n`` to any desired value and hit enter and the function will be
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    67
evaluated. 
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    68
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    69
This is a very handy tool while demonstrating or teaching.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    70
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    71
{{{ Pause here and try out the following exercises }}}
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    72
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    73
%% 1 %% Plot the sine curve and vary its frequency using the ``@interact``
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    74
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    75
{{{ continue from paused state }}}
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    76
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    77
::
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    78
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    79
    @interact
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    80
    def sine_plot(n=1):
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    81
        x = var('x')
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    82
        p2 = plot(sin(n*x), (x, 0, 2*pi))
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    83
        show(p2)
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    84
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    85
Often we would want to vary a parameter over range instead of taking it as an
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    86
input from the user. For instance we do not want the user to give ``n`` as 0
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    87
for the damping oscillation we discussed. In such cases we use a range of
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    88
values as the default argument.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    89
::
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    90
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    91
    @interact
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    92
    def plot_damped(n=(1..10)):
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    93
        t = var('t')
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    94
        p1 = plot( e^(-t/n) * sin(2*t), (t, 0, 20))
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    95
        show(p1)
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    96
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    97
We get similar plot but the only difference is the input widget. Here it is a
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    98
slider unlike an input field. We can see that as the slider is moved, the
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
    99
function is evaluated and plotted accordingly.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   100
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   101
{{{ Pause here and try out the following exercises }}}
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   102
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   103
%% 2 %% Take a string as input from user and circular shift it to the left and
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   104
        vary the shift length using a slider
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   105
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   106
{{{ continue from paused state }}}
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   107
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   108
::
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   109
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   110
    @interact
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   111
    def str_shift(s="MADAM", shift=(0..8)):
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   112
        shift_len = shift % len(s)
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   113
        chars = list(s)
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   114
        shifted_chars = chars[shift_len:] + chars[:shift_len]
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   115
        print "Actual String:", s
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   116
        print "Shifted String:", "".join(shifted_chars)
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   117
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   118
Sometimes we want the user to have only a given set of options. We use a list
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   119
of items as the default argument in such situations.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   120
::
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   121
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   122
    @interact
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   123
    def str_shift(s="STRING", shift=(0..8), direction=["Left", "Right"]):
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   124
        shift_len = shift % len(s)
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   125
        chars = list(s)
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   126
        if direction == "Right":
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   127
            shifted_chars = chars[-shift_len:] + chars[:-shift_len]
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   128
        else:
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   129
            shifted_chars = chars[shift_len:] + chars[:shift_len]
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   130
        print "Actual String:", s
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   131
        print "Shifted String:", "".join(shifted_chars)
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   132
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   133
We can see that buttons are displayed which enables us to select from a given
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   134
set of options.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   135
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   136
We have learnt how to use the ``@interact`` feature of SAGE for better
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   137
demonstration. We shall look at how to use SAGE worksheets for collaborative
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   138
learning.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   139
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   140
The first feature we shall see is the ``publish`` feature. Open a worksheet and
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   141
in the top right, we can see a button called ``publish``. Click on that and we
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   142
get a confirmation page with an option for re publishing.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   143
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   144
For now lets forget that opion and simply publish by cliking ``yes``. The
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   145
worksheet is now published. 
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   146
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   147
Now lets signout and go to the sage notebook home. We see link to browse
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   148
published worksheets. Lets click on it and we can see the worksheet. This does
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   149
not require login and anyone can view the worksheet.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   150
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   151
Alternatively, if one wants to edit the sheet, there is a link on top left
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   152
corner that enables the user to download a copy of the sheet onto their home.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   153
This way they can edit a copy of the worksheet.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   154
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   155
We have learnt how to publish the worksheets to enable users to edit a copy.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   156
Next, we shall look at how to enable users to edit the actual worksheet itself.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   157
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   158
Let us open the worksheet and we see a link called ``share`` on the top right
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   159
corner of the worksheet. Click the link and we get a box where we can type the
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   160
usernames of users whom we want to share the worksheet with. We can even
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   161
specify multiple users by seperating their names using commas. Once we have
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   162
shared the worksheet, the worksheet appears on the home of shared users.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   163
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   164
{{{ Show summary slide }}}
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   165
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   166
This brings us to the end of the tutorial.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   167
we have learnt
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   168
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   169
 * How to user interactive feaures of SAGE
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   170
 * How to publish our work
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   171
 * How to edit a copy of one of the published worksheets
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   172
 * How to share the worksheets with fellow users
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   173
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   174
{{{ Show the "sponsored by FOSSEE" slide }}}
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   175
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   176
#[Nishanth]: Will add this line after all of us fix on one.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   177
This tutorial was created as a part of FOSSEE project, NME ICT, MHRD India
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   178
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   179
Hope you have enjoyed and found it useful.
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   180
Thankyou
a3aa223c1662 added script to using_sage_to_teach
Nishanth <nishanth@fossee.in>
parents:
diff changeset
   181