November
3
,
2001
ICTCM Conference
1
Applied Calculus on the Web
Applets & Applications
Professor Michael S. Pilant
Department of Mathematics
Texas A&M University
November 3, 2001
ICTCM Conference
2
Applied Calculus on the Web
Applets & Applications
Background
Teaching
Training
Exploration
Assessment
November 3, 2001
ICTCM Conference
3
Applied Calculus on the Web
Applets & Applications
Background
Finite Math on the Web
Project
–
This began in
1998
as a way to present the core
mathematics curriculum to students at Texas
A&M University, a large public state university
with approximately
35
,
000
undergraduate
students.
November 3, 2001
ICTCM Conference
4
Applied Calculus on the Web
Applets & Applications
Background
Enrollments in 2000
Finite Math

Math 166
–
2,152 students
Business Math

Math 141
–
5,728 students
Applied Calculus

Math 142
–
4,054 students
Total = 11,934
November
3
,
2001
ICTCM Conference
5
Applied Calculus on the Web
Applets & Applications
Background
Enrollments in
2001
Finite Math

Math
166
–
2
,
070
students
Business Math

Math
141
–
5
,
735
students
Applied Calculus

Math
142
–
3
,
813
students
Total =
11
,
618
November 3, 2001
ICTCM Conference
6
Applied Calculus on the Web
Applets & Applications
Background
Use
Finite Math on the Web
as a model for
Applied Calculus on the Web
November
3
,
2001
ICTCM Conference
7
Applied Calculus on the Web
Applets & Applications
Overall Design Considerations
Initial use
–
to illustrate a concept, allow limited
interaction

teaching
Reinforcement of concepts
–
feedback, allow more
interaction

training
Exploration
–
full functionality and interaction
Assessment
–
checkpoint for students and/or instructors
November 3, 2001
ICTCM Conference
8
Applied Calculus on the Web
Applets & Applications
Teaching
Finite Math on the Web
–
Topical
Counting and Probability,
Conditional Probability,
Statistics,
Probability Distributions,
Financial Applications
Lines and Slopes,
Least Squares,
Matrices,
Linear Programming,
Sets,
November 3, 2001
ICTCM Conference
9
Applied Calculus on the Web
Applets & Applications
Teaching
Applied Calc on the Web
–
Sequential
Function Behavior,
Optimization,
Integration,
Area,
Multi

variable Applications
Polynomial Functions,
Logarithmic and
Exponential Functions,
Limits and Continuity,
Rates of Change,
Rules of Differentiation,
November 3, 2001
ICTCM Conference
10
Applied Calculus on the Web
Applets & Applications
Teaching
(Re

)Introduce basic concepts, for example:
Graph of a function
Intercepts (roots)
Intersections between curves
Maximum, minimum
Definitions of slope
November
3
,
2001
ICTCM Conference
11
Applied Calculus on the Web
Applets & Applications
Teaching
Initially, the applets should have very
simple “look and feel.”
Respond to mouse click and drag
Open with an image (or data) appropriate to
context
November 3, 2001
ICTCM Conference
12
Applied Calculus on the Web
Applets & Applications
Basic Applet
Plots a function
set by HTML
<param> flag
November
3
,
2001
ICTCM Conference
13
Applied Calculus on the Web
Applets & Applications
Basic Applet
Zoom in
Rescale coordinates
November 3, 2001
ICTCM Conference
14
Applied Calculus on the Web
Applets & Applications
Basic Applet
Select function
Show coordinates
November 3, 2001
ICTCM Conference
15
Applied Calculus on the Web
Applets & Applications
Basic Applet
Show axes
Show grid
set by HTML
<param> flag
November 3, 2001
ICTCM Conference
16
Applied Calculus on the Web
Applets & Applications
Training
Subsequently, the applet is used in such a
way as to reinforce basic concepts and
algorithms
Zooming in and out becomes proceduralized
November 3, 2001
ICTCM Conference
17
Applied Calculus on the Web
Applets & Applications
Basic Applet
Show plot tools
set by HTML
<param> flag
November 3, 2001
ICTCM Conference
18
Applied Calculus on the Web
Applets & Applications
Basic Applet
Zoom in
Zoom out
Show/Hide Axes
Show/Hide Grid
Reset
November
3
,
2001
ICTCM Conference
19
Applied Calculus on the Web
Applets & Applications
Basic Applet
Show function
Tools
set by HTML
<param> flag
November 3, 2001
ICTCM Conference
20
Applied Calculus on the Web
Applets & Applications
Basic Applet
Enter function
Plot function
Show secant
Show tangent
Clear
November 3, 2001
ICTCM Conference
21
Applied Calculus on the Web
Applets & Applications
Exploration
Once the basic concepts and processes
become familiar, students can explore
Apply concepts to new situations (domains)
November 3, 2001
ICTCM Conference
22
Applied Calculus on the Web
Applets & Applications
Investigating
limits of
Functions (e.g.
x*(sin(1/x))
November
3
,
2001
ICTCM Conference
23
Applied Calculus on the Web
Applets & Applications
Assessment
In order to provide feedback to the
instructor (and to the student!) some type of
assessment is required.
November 3, 2001
ICTCM Conference
24
Applied Calculus on the Web
Applets & Applications
Assessment
Basic (declarative) knowledge
Multiple choice, instant feedback
Algorithmic (procedural) knowledge
Multiple choice, short answer
Problem solving (strategic knowledge)
Workout, multi

step, applet based
November
3
,
2001
ICTCM Conference
25
Applied Calculus on the Web
Applets & Applications
Assessment
In order to provide meaningful assessment,
we require the applet to
Communicate with the browser via HTML
<param> …</param> tags
Allow communication via JavaScript through
public functions
November 3, 2001
ICTCM Conference
26
Applied Calculus on the Web
Applets & Applications
<applet name=“myApplet” …>
…
<param name="background_color" value="ffffff">
<param name="xmin" value="

2.0">
<param name="xmax" value="2.0">
<param name="ymin" value="

2.0">
<param name="ymax" value="2.0">
<param name="function" value="sin(x)">
<param name="show_grid" value="true">
<param name="show_axes" value="true">
<param name="show_plot_tools" value="true">
<param name="show_function_tools" value="true">
</applet>
Integration with HTML
November 3, 2001
ICTCM Conference
27
Applied Calculus on the Web
Applets & Applications
<script language="JavaScript">
function showSelection(){
var str = document.myApplet.plot2d.getSelectedObjectType();
document.myForm.object.value = str;
}
</script>
…
<form name=myForm>
<input type=button value="selected object"
onClick="showSelection();">
<input name="object" type=text size=30>
</form>
Communication with JavaScript/Forms
November 3, 2001
ICTCM Conference
28
Applied Calculus on the Web
Applets & Applications
Communication
with Scripts
November
3
,
2001
ICTCM Conference
29
Applied Calculus on the Web
Applets & Applications
Intersections
between two
curves (e.g.
sin(x), cos(x))
November 3, 2001
ICTCM Conference
30
Applied Calculus on the Web
Applets & Applications
Finding the slope
of the tangent
to a curve
November
3
,
2001
ICTCM Conference
31
Applied Calculus on the Web
Applets & Applications
Finding curve
based on a
formula
November 3, 2001
ICTCM Conference
32
Applied Calculus on the Web
Applets & Applications
Assessment methods using applets
JavaScript (client

side)
Cgi

bin scripts (client

server)
Assessment built into applet
Cookies
Databases
MySQL, PostgreSQL
November 3, 2001
ICTCM Conference
33
Applied Calculus on the Web
Applets & Applications
JavaScript example
// Answer to Q
10
is x=
55
/
102
=
0.539
and p=
745
/
306
=
2.43
// If x=
0.539
is substituted, p =
2.44
results
// allow
2.43
or
2.44
as answer
// must encode this answer!
function checkAnswerQ
10
() {
var x = deleteSpaces( document.myform.Q
10
x.value )
var p = deleteSpaces( document.myform.Q
10
p.value )
}
November 3, 2001
ICTCM Conference
34
Applied Calculus on the Web
Applets & Applications
JavaScript example
if ( eval(x) == 0.539 && Math.abs(eval(p)

2.43)<0.02 ) {
Tried[9] = "Incorrect"
alert( "Watch your units!" );
}
else if ( x == "539" && Math.abs(eval(p)

2.43)<0.02 ){
Tried[9] = "Correct"
}
else
Tried[9] = "Incorrect"
alert("Question 10: Answer has been graded.
\
n"
+ "Click Done to have your grade recorded.");
November
3
,
2001
ICTCM Conference
35
Applied Calculus on the Web
Applets & Applications
Cgi

bin scripts
<form name=“myForm” method=“Post”
action=http://server/cgi

bin/script.pl>
…
<input type=hidden name=“var
1
” value=val
1
>
…
</form>
November 3, 2001
ICTCM Conference
36
Applied Calculus on the Web
Applets & Applications
Cgi

bin scripts
<script language=“JavaScript”>
…
document.myform.action=
http://server/cgi

bin/newscript.pl
document.myform.submit( );
…
</script>
November
3
,
2001
ICTCM Conference
37
Applied Calculus on the Web
Applets & Applications
Assessment built into applet
1.
Data encoded into applet is very secure
2.
Parametrically generate problems from built in
templates
3.
Specialized grading and evaluation algorithms
can be built into applet
Example:
Venn Diagrams
November 3, 2001
ICTCM Conference
38
Applied Calculus on the Web
Applets & Applications
Cookies
function setCookie (name, value) {
var str;
if (value != null)
str = name + "=" + escape(value);
var now = new Date()
var nowplus1 = now.getTime() + (52*7*24*60*60*1000)
now.setTime(nowplus1)
str += top.cookieString;
str += ";expires="+now.toGMTString();
document.cookie = str+";";
}
November
3
,
2001
ICTCM Conference
39
Applied Calculus on the Web
Applets & Applications
Cookies
function getCookie(name) {
var cookie = " " + document.cookie;
var search = " " + name + "=";
var setStr = null;
var offset =
0
;
var end =
0
;
November 3, 2001
ICTCM Conference
40
Applied Calculus on the Web
Applets & Applications
Cookies
if (cookie.length > 0) {
offset = cookie.indexOf(search);
if (offset !=

1) {
offset += search.length;
end = cookie.indexOf(";", offset)
if (end ==

1) { end = cookie.length; }
setStr = unescape(cookie.substring(offset,
end));
}
}
return(setStr);
}
November 3, 2001
ICTCM Conference
41
Applied Calculus on the Web
Applets & Applications
Databases
Simple
–
file systems on server
Cookies
–
on client
SQL
–
MySQL, Access, SQL Server,
PostgreSQL, …
Connect via
Embed

perl, php, cgi

bin scripts, jdbc
Advantages: Security
Disadvantages: Complexity
Comments 0
Log in to post a comment