~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to www/apps/tutorial/help.html

  • Committer: mattgiuca
  • Date: 2008-02-22 00:53:35 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:540
Refactored error handling and reporting. Much friendlier error messages, for
both developers and users.

Note that PythonDebug is now going to be ignored. IVLE itself selects when to
display a traceback. (So IVLE will display tracebacks even in a production
environment, for internal server errors).

common/util.py: Added class IVLEError, which is now used for throwing
user-readable errors inside IVLE instead of throwing apache SERVER_RETURN
exceptions.

dispatch/request: throw_error now throws an IVLEError instead of a
SERVER_RETURN. It also takes a new argument, "message", which can be used to
place an optional message inside the exception which will be displayed to the
user.
Finally, added a method get_http_codename which returns the name and
description of common HTTP error codes. (Used to report errors which don't
have a message supplied).

dispatch/__init__: Added a wrapper around handler which catches all exceptions
thrown out of IVLE.
The handler for this selectively handles exceptions.
4xx level exceptions thrown are user errors, so these are reported in a very
friendly way, with no traceback, and in the familiar IVLE environment.
5xx level exceptions and any other exceptions are reported in a minimal
environment (to avoid cascading errors) with a traceback and a request for the
user to report it to the administrators.

As many calls to req.throw_error as possible should now have a message
included, to make identifying errors easier.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<div class="helpfile">
2
 
<p>A key part of the IVLE worksheets are the programming exercises. You will 
3
 
find several of them interspersed
4
 
amongst the text of a typical worksheet.</p>
5
 
<!-- The exercises come in three levels of difficulty: basic,  -->
6
 
<!-- intermediate and advanced.  -->
7
 
<p>To complete a worksheet you must solve all of exercises that it contains.</p>
8
 
<!-- The advanced exercises will require more time and thought, and you are encouraged to try them if you yearn for a challenge. -->
9
 
<p>Normally each exercise will require you to write a piece of code, and submit it for verification.
10
 
Your submitted code will be automatically tested by IVLE against a number of different inputs. You will
11
 
get feedback from IVLE about which test cases your solution passed, and which ones (if any) it failed. 
12
 
To complete the exercise you must pass all the test cases.</p>
13
 
 
14
 
<p>If you want to check how your code behaves before submitting it, click on the button
15
 
labelled <strong>Run</strong>, at the bottom right hand corner below the exercise box. 
16
 
The result of Run will be displayed in the console window.
17
 
When you believe your solution is ready
18
 
for submission, click on the button labelled <strong>Submit</strong>, next to the Run button.  
19
 
You can submit as many attempts as you like for a particular problem.</p>
20
 
<div class="note">
21
 
<p class="first admonition-title">Note</p>
22
 
<p class="last">The IVLE system keeps a record of each submission you make,
23
 
including which test cases were passed or failed.
24
 
This information is aggregated and made available to teaching
25
 
staff and curriculum developers so they can monitor student
26
 
progress and improve the quality of the worksheets.</p>
27
 
</div>
28
 
<p>The test cases can be <strong>very</strong> picky about small details, things that we humans tend to
29
 
overlook. Therefore you should pay close attention to the requirements of the exercise, and watch out for
30
 
things such as:</p>
31
 
 
32
 
<ul class="simple">
33
 
<li>Capitalisation of letters.</li>
34
 
<li>The format of the output. In particular the amount and location of whitespace (spaces, tabs, line breaks).</li>
35
 
<li>Punctuation.</li>
36
 
</ul>
37
 
<p>Normally there are several test cases for each exercise. The first tests are usually the simplest and the most lenient
38
 
in terms of correctness. Later tests become more challenging and stringent. When you fail a test case you will
39
 
see a short message about the kind of thing your program did not do properly. This should give you some idea about
40
 
what needs to be fixed in order to pass the test, although sometimes it might take a bit of thinking before
41
 
you can resolve the problem. Don't be afraid to ask for help.</p>
42
 
</div>
 
1
<p>Tutorial</p>
 
2
<p>TODO: Write Tutorial help</p>