Eyegrade 0.4.4 released

I've just released Eyegrade 0.4.4. This version fixes a bug introduced by the bugfix of version 0.4.3. Version 0.4.3 solved the problem for the older versions of Python, but inadvertently introduced exactly the same problem for the newer versions, which were previously unaffected. I've reverted the erroneous fix and solved the problem in a better way. This new version should be able to export grades in any 2.6 and 2.7 version of Python, both Windows and Linux.

This is the only change with respect to version 0.4.3.

As always, if you have installed Eyegrade through git, you can easily update the program by executing the command git pull from inside the directory in which Eyegrade is installed.

Eyegrade 0.4.3 released

I've just released Eyegrade 0.4.3. This release fixes a bug that made the functionality that exports grades fail when the program is run with the Python 2.6 version I distribute for Windows. Linux users with a reasonably recent version of Python were not affected. This is the only change with respect to version 0.4.2.

If you have installed Eyegrade through git, you can easily update the program by executing the command git pull from inside the directory in which Eyegrade is installed.

Improved documentation about how to edit an exam with LaTeX

The official way of editting your exams for Eyegrade consists of creating an XML file with the questions, running on it the create_exam script provided by Eyegrade and compiling the resulting files with LaTeX in order to get the final PDF documents.

Although exams can also be edited with a word processor such as OpenOffice or Microsoft Word (see Creating the exams in a word processor), following the official way has some advantages:

  • Eyegrade shuffles the questions and produces several models with different question orderings.
  • Eyegrade creates the exam configuration file (the .eye file) automatically.
  • LaTeX-style equations may be used inside the questions.

However, editing an XML file and dealing with LaTeX may scare some users that are more used to graphical word processors. In order to make the procedure more approachable, the user manual describes now more in depth how to edit exams the official way in the section Editing exams. Suggestions on how to improve that section further are most welcome.

Eyegrade 0.4 released!

I've released eyegrade 0.4 (actually, eyegrade 0.4.2 after a couple of minor changes and a bug fix). There is only one main change in this release with respect to the 0.3 series, the ability to export grade listings from the user interface.

When you select in the menu Exams / Export grade listing you get a dialog like the following one that allows you to configure the export options:

The new export dialog.

This new feature is easier to use and more flexible than the mix_grades script that was available in the previous versions. The script is now obsolete and will probably be removed in the future.

Eyegrade 0.3 released!

I've just released eyegrade 0.3. The main changes in this version are:

  • Previously, exams could only be reviewed immediately after capturing them. Now you can review the exams, change answers or change the student id any time you open the session.
  • A consequence of the previous change is that now grading does not start automatically when the session is opened. Once you open a session, you can view or edit the exams you have already graded, or click on the Start grading action in the menu / toolbar in order to start grading more exams.
  • The graphical user interface is now prepared for translations. This release features an interface in English, Spanish, Galician and Catalan. Volunteers for other languages are welcome.
  • There are changes to the layout of the graphical user interface. There is a vertical area at the left were the thumbnails of the exams graded for this session are displayed. In addition, there is a new status bar at the bottom.
  • Other fixes.

Be aware that the sessions created with eyegrade 0.3 are not compatible with previous versions. Conversely, sessions created with previous versions cannot be opened with eyegrade 0.3. The reason is that now session are stored internally as a SQLite database and store more information about the exams than the previous versions.

If you have installed eyegrade through git, you can easily update the program from versions in the series 0.2.x by executing the command git pull from inside the directory in which eyegrade is installed.

If you find bugs or problems with this new release, please open an issue at the GitHub project page, or just let me know by commenting on this post or sending me an email.

Eyegrade moved to a new location

I've just moved Eyegrade to a new Web location at eyegrade.org. These are the important links:

Requests for the old addresses will automatically be redirected to the new location. However, the old server may be down for some periods of August. In fact, the frequent downtimes of the old hosting are one of the main reasons for the change. During those downtime periods redirections won't work. However, the new addresses will work properly even in that case.

The new website is hosted at the GitHub Pages service. My experience so far with this service has been very satisfactory. The availability of the website with the new hosting will definitely be much better.

Requests for Eyegrade 0.3

I'm planning the next major release (0.3) of Eyegrade for September. There are some features I have in mind, but listening to the users from time to time does not harm ;) If there is a feature you are especially interested in, just let me know by commenting on this post.

Apart from some polishing here and there, these are things I'm thinking about:

  • Right now, you can review and fix detection errors in an exam only at the moment you scan it. What if you discover an error later on? It think it would be great if the interface allowed you to open a grading session anytime later and use the same reviewing/fixing features. This feature would probably include a list of students and grades in the interface, so that you can quickly access the exam of a specific student.
  • A user interface for entering the questions of an exam, creating the PDFs, etc. This would probably include dropping LaTeX in favor of something else (my main option is the ReportLab library). Using the current command-line interface and LaTeX would still be possible, but not the preferred method.
  • Making life easier for users that only want to use Eyegrade for grading, but not for creating the exams. I include here features such as creating a .eye file through guided dialogues or creating the PDF of a personalized answer sheet in the user interface. It's about time to close issue 36.
  • Adapting the user interface for multiple languages. I can start with an English, Spanish and Galician interface, and wait for volunteers to translate it to other tongues.

I won't have time for all the features in the list, so you can help me to prioritize. Of course, you can also request features not in the list ;)

Eyegrade 0.2 released!

Eyegrade 0.2 has been released! It features the shiny new PyQt-based user interface that I showed in previous posts.

The Eyegrade User Manual contains up-to-date instructions for using the new interface. If you have Eyegrade 0.1.x installed, you need to install PyQt and change the value of an environment variable. See the section about upgrading Eyegrade.

This new user interface will facilitate other usability improvements in the future, such as the possibility of reviewing previously graded exams, editing the student list, writing grades to disk in several orders and formats, etc.

If you experience problems with this new version, please let me know by commenting on this blog or posting an issue at GitHub.

Preview of the improved new-session dialog

I've been working on the new session dialog. Now it is a wizard with three pages. The main novelties are that:

  • You can now select more than one student list. All of them are used when detecting the student id.
  • You can now enter the scores for correct and incorrect answers. If the exam configuration file already contains the scores, you'll see them as default values. In addition, you can let Eyegrade choose appropriate values for you, by just entering the maximum score of the exam and choosing whether incorrect answers should penalize or not.

You can try the new dialog in the development branch at GitHub, and see it this screenshots gallery!

Screenshot of a page of the new session dialog

This new dialog will appear in the 0.2 release. I have in mind for a future release the possibility of entering the exam configuration from the new session dialog, as an alternative to reading it from a file. This may be handy for users who do not create the exam with the command line tools that Eyegrade provides.

Comments and suggestions are welcome.

Teaser of the new PyQt-based eyegrade user interface

I'm programming from scratch the graphical user interface of Eyegrade. The old user interface uses Pygame. It allowed me to build the first interface of the program very quickly, but its lack of graphical components (buttons, dialogues, menus, etc.) was preventing me from programming a more user-friendly interface. I've decided to use PyQt for the new interface. Why PyQt? I programmed a game with Qt in C++ many years ago, and I liked the library a lot. With the python bindings, it is even easier to use.

The new user interface will be released with Eyegrade 0.2 (hopefully, before the end of January). Check the first screenshots gallery!

Screenshot of the new user interface of Eyegrade

Right now the program does more or less the same as the old interface, but it will be easier to add new features in the future.

The brave can give it a try before the release (it is available at the development branch of Eyegrade at GitHub). Suggestions are welcome (just post a comment here or write me an email.) I have tested it only in Linux, although it should work in Windows too. If you try it, notice that:

  • You need PyQt (package python-qt4 in Debian and Ubuntu).
  • There is no src directory anymore. Following the Python conventions, the Python files are now directly under the eyegrade subdirectory of the main directory of the project.
  • The main program does not receive command line arguments. The .eye file and student list are selected at the new session dialog.