Difference between revisions of "Smart Content"

From PAWS Lab
Jump to: navigation, search
(Annotated Examples)
Line 2: Line 2:
  
  
== Problems ==
+
== Semantics Problems for Java and Python ==
We have developed a content application [[QuizJET]] providing problems to learn Java Programming. Here are two problems for Java. The left one shows a problem with a single class asking the value of a variable in a piece of code. The right one shows a problem with multiple classes asking the console output of a piece of code. Correctness is accessed by the content application and students can attempt multiple times with different instantiations of the variables in the problem. Similarly, we have developed a content application [[QuizPET]] providing the same type of problems to learn Python Programming.
+
We have developed a content application [[QuizJET]] providing problems to learn Java Programming. Here are two problems for Java. The left one shows a problem with a single class asking the value of a variable in a piece of code. The right one shows a problem with multiple classes asking the console output of a piece of code. Correctness is accessed by the content application and students can attempt multiple times with different instantiations of the variables in the problem. Similarly, we have developed a content application [[QuizPET]] providing the same type of problems to learn Python Programming.
 +
 
 +
New problems for [[QuizJET]] and [[QuizPET]] could be easily created with [[QuizJET Authoring System]] tool and [[QuizPET Authoring System]].
  
 
[[Image:Problems.jpg|650x1300px]]
 
[[Image:Problems.jpg|650x1300px]]
 +
 +
 +
== SQL Problems ==
  
 
For learning SQL, we have developed a content application [[SQLKnoT]] providing another type of problem. Students are asked to write a complete query to achieve a task in each problem. Here is a problem for SQL.  
 
For learning SQL, we have developed a content application [[SQLKnoT]] providing another type of problem. Students are asked to write a complete query to achieve a task in each problem. Here is a problem for SQL.  
Line 11: Line 16:
 
[[Image:Problems_Sql.jpg|500x750px]]
 
[[Image:Problems_Sql.jpg|500x750px]]
  
== Parson Problems ==
+
== Parson Problems for Python ==
 
Here is a parson problems for Python. In such problems, students are asked to drag different fragments of a code to construct a complete code in order to achieve a task.
 
Here is a parson problems for Python. In such problems, students are asked to drag different fragments of a code to construct a complete code in order to achieve a task.
  
Line 18: Line 23:
 
== Annotated Examples ==
 
== Annotated Examples ==
 
We have developed a content application [[WebEx]] providing annotated examples. Here are two annotated examples for Java (left) and Python (right). Students can click on the left side box to learn about each line’s related concepts.
 
We have developed a content application [[WebEx]] providing annotated examples. Here are two annotated examples for Java (left) and Python (right). Students can click on the left side box to learn about each line’s related concepts.
 +
 +
New examples for Java, Python, SQL, C, and other programming languages could be created with  [[Example Authoring System]].
  
 
[[Image:AnnotatedExamples.jpg|750x1000px]]
 
[[Image:AnnotatedExamples.jpg|750x1000px]]
  
== Animated Examples ==
+
== Animated Examples for Python and Java ==
 
Here is an animated example for Python. In such examples, the line-by-line execution of a piece of code is visualized by animations.
 
Here is an animated example for Python. In such examples, the line-by-line execution of a piece of code is visualized by animations.
  
 
[[Image:AnimatedExamples.jpg|750x1000px]]
 
[[Image:AnimatedExamples.jpg|750x1000px]]

Revision as of 02:50, 4 April 2016

Mastery Grids supports and provides multiple types of learning materials. It has been applied in three domains (Java, SQL, and Python) as a supplementary E-learning system for undergraduate and graduate level programming and database classes since 2013. In each learning domain, courses are organized by topics and different types of learning contents are arranged under each topic. Learning contents contain problems (quizzes), parson problems, annotated examples, and animated examples collected from experienced course teachers, textbooks or domain experts. We present examples of each content type as follows.


Semantics Problems for Java and Python

We have developed a content application QuizJET providing problems to learn Java Programming. Here are two problems for Java. The left one shows a problem with a single class asking the value of a variable in a piece of code. The right one shows a problem with multiple classes asking the console output of a piece of code. Correctness is accessed by the content application and students can attempt multiple times with different instantiations of the variables in the problem. Similarly, we have developed a content application QuizPET providing the same type of problems to learn Python Programming.

New problems for QuizJET and QuizPET could be easily created with QuizJET Authoring System tool and QuizPET Authoring System.

Problems.jpg


SQL Problems

For learning SQL, we have developed a content application SQLKnoT providing another type of problem. Students are asked to write a complete query to achieve a task in each problem. Here is a problem for SQL.

Problems Sql.jpg

Parson Problems for Python

Here is a parson problems for Python. In such problems, students are asked to drag different fragments of a code to construct a complete code in order to achieve a task.

ParsonProblems.jpg

Annotated Examples

We have developed a content application WebEx providing annotated examples. Here are two annotated examples for Java (left) and Python (right). Students can click on the left side box to learn about each line’s related concepts.

New examples for Java, Python, SQL, C, and other programming languages could be created with Example Authoring System.

AnnotatedExamples.jpg

Animated Examples for Python and Java

Here is an animated example for Python. In such examples, the line-by-line execution of a piece of code is visualized by animations.

AnimatedExamples.jpg