Borrowing on David Lettermans Top Ten List, I have come up with my Top Eight (I tried to come up with two more but it was a little bit of a stretch on the last two) for using XTutor.
Drum roll.........The Eight Reasons why you would want to use XTutor.
Number 8 Because I have done some of the leg work necessary to get started, you can take advantage of some of the experience I have gained. With any new technology, there are some bumps in the road. The documentation could be easierto follow and more complete but if you read this Blog and watch my Camtasia video lessons; you should be able to get started on your own.
Number 7 - Its small with few moving parts. You can use your own PC to develop XDOCS to create content and add XTutor problem sets. You can very easily add status check questions to your web content that will ask your student to answer questions that verify their comprehension of the topic. You can do this on your own on your own PC or Linux machine (sorry Mac folks..)
Number 6 - It is an Open Source Solution which means all of the components of the XTutor development and server environment are open source. Open source means that the programs source code, design goals and documentation are freely available on the Internetfor anyone to contribute to (add program code or content to make the product better). XTutor includes no proprietary solutions that require a lot of money or problems with vendors not supporting each other. The XTutor environment is support by these open source products:
a. XML A data description standard and relative of HTML.
b. PYTHON An open source interpreted Object Orientated Programming language that can be downloaded at www.python.org.
c. SQLite a single file relational open source database available for download at www.sqlite .org.
Number 5 - Its Free! Yup, given that it uses open source products and the fact that XTutor can be acquired freely by requesting from iCampus (MIT), it is easy for anyone to try and experiment with XTutor. Take it for a test drive so to speak,without software purchases and without IT support (unless you decide to use in a production environment in which case you would want to talk to your local IT support representative.)
Number 4 - XTutor allows you to create custom problem sets. This is not an easy feature to explain and it does require a programmers knowledge of object orientated programming, relational databases, PYTHON and XML to use (yes, it isdaunting) but it can create new problem set items for your content. One problem set that I was able to build allowed me to set how many times a student could process their answer before a hint would appear. I could reuse my problem set and when I reused the problem set on another XDOC, I could set the number of tries and the hint that would be provided. Problem set XTags are reusable. As a District library of problem set XTags are created, we could share problem sets across the different campuses.
Number Three - You can convert existing HTML web pages without a lot of effort. XTutor comes with a set of XTags to support multiple choice, fill in the blank and true false questions that you can easily insert into existing HTML documents. The documentation has examples on how to get started. XTutor does not have to be hard to use if you take advantage of existing problem set XTags.
Number Two - You can add status check type questions to on line content. Web pages can sometimes be unidirectional. You can see content but you can not interact with it. With XTutor, you can add status or check point questions to ensure the student understands what they are reading.
AND THE NUMBER ONE REASON...... - It works!I have taken one of my lessons on Pseudo Code and converted it from just an HTML web page to a self paced XTutor web page that asks the student checkpoint questions and saves their responses for my examination after they are finished.
I have set up an example to be started with a guest username (no password is needed) that you can use to test. Since XTutor can be programmedto remember responses in a database (that is what is happening on my page), you will see the answers of the last person logged in as guest. Just type over the responses. A green check mark means you got the question right and a red x meansyou have the wrong answer.
http://gnix.gc.maricopa.edu:9080/xtutor/pseudocode1.xdoc
Check it out........ or let me know if you have any questions.
More information:
More information about the Ocotillo experience with XTutor and other Ocotillo projects can be found on the Ocotillo web site http://www.mcli.dist.maricopa.edu/ocotillo/
My XTutor experiences can be read in the Ocotillo Emerging Technologies Blog http://zircon.mcli.dist.maricopa.edu/emerging/). This can be be set up as a RSS feed. The Blog contains narrative along with links to important web sites that contain examples and instruction using XTutor.
For those of you following my blog, there is a little change in direction this week. I have two projects I have been working on in hopes of giving those visual learners a break from the blog.
The first exhibit is a Camtasia demo I created to show how to create an Xdoc for use with XTutor. This session follows me on my PC (with narration) as I explain some of the ins and outs of XTutor and the steps necessary for creating and rendering an XDoc. You can see this Camtasia presentation at http://glory.gc.maricopa.edu/~gmarrer/xtutor/xtutorxdoc.html.
My second project was to take a web page presentation I have used for my programming classes and convert it to XTutor. The big addition to the content was a set of status check questions at the end of each web page. You can follow a link to access the psuedocode1.xdoc on the GNIX XTutor server at GCC. Click here to access these XTutor pages. You will need to use a username to access these pages. When you access the page you will get a certificate warning. This is something you can ignore. Click OK to continue. The test username is: guest with no password. There are links at the bottom of the pages to display the XDoc files. If anyone has any questions you can comment to this page or send me an email. at gary.marrer@gcmail.maricopa.edu
On the Database Front:
Another week and a little closer…. I spent most of the past week working on a better understanding of how the XTutor PYTHON based server uses SQLite to keep track of current session and previous session data. Current session data is important because the database holds program state. State allows the program to retain values within the PYTHON tag handlers after each server visit. Without state, a web page loses data saved in program handler variables when ever it goes to the XTutor server (i.e. on every submit button click). Without an understanding of how state works with the XTutor server and SQLite, you can not create new XTutor problem set tags and tag handlers.
For assessment purposes, the SQLite database can keep track of previous visits to the XTutor server and also the responses (correct and incorrect) to questions and problem sets. These visits can be stored in the SQLite database and retrieved for student reporting/grading after the fact.
SQLite strengths are that it is open source and a single file implementation. This makes is much less complicated then service based database engines such as would be found with Oracle, MySQL or MS SQL Server. It is somewhat like MS-Access in that all of the database structure and data is saved within the file. Simply put, Open the database file and you can access/change data. This makes it a very useful way of storing data needed by a web server like XTutor. I have found a SQLite tool that allows you to issue SQL commands against the database and I have been able to write a PYTHON program and also use Visual Basic.Net (http://adodotnetsqlite.sourceforge.net/) to access SQLite databases. I have been able to access the XTutor database with the SQLite tool (http://www.sqlite.org) and PYTHON ( http://glory.gc.maricopa.edu/~gmarrer/SQLiteTest.py) but Visual Basic.Net and its ADO Ole Data Providers insists that the database has been encrypted and therefore not accessible. As with open source code and contributed software, the documentation for how to get around this with VB.Net remains a mystery. SQLite does support encryption but I can not see anywhere in the XTutor documentation or the sample PYTHON files any clue as how I might solve this problem with VB.Net. This is not a show stopper but would be important in creating user tools to interrogate the database for student assessment. I may have to talk to the folks at MIT on this one.
New Stuff on the custom XTutor Tag front:
I have built a custom XTutor problem set tag. This tag allows the user three tries at a question. If it does not get answered correctly the question is locked and can only be unlocked with a password from the teacher. Not terribly impressive but since the standard tags cover the most common question types (true/false, multiple choice, fill in the blank) it was different and needed to be created from scratch so it was an instructive exercise. I have big plans for a custom tag to validate pseudo code for my entry level programming students.
Again…. Don’t be alarmed:
The focus of this blog post is the extensibility of XTutor and should be considered a advanced topic. Using XTutor with its template tags is much less complicated and XTutor pages are easily built with just a average experience with HTML.