Main > Software > jFlash

April 1, 2006

jFlash 1.6 Reviewed (in Japanese)

I was just perusing over the referrer logs for the site when I noticed a bunch of hits coming from a Japanese domain. I followed it and found it led me to a review of jFlash 1.6 (Freshmeat). Neat!

The review is here. It looks like they didn't have a bad thing to say! That's too bad because I could probably use some inspiration to come up with a web-based flashcard editor and clean up the front end a bit...

Posted by jordanh at 1:09 PM | Comments (0) | TrackBack |

Main > Software > jFlash

March 26, 2006

jFlash 1.6 Released

I wanted to add a couple of lessons tonight in order to study for an exam I've got on Tuesday and I discovered that since I updated my server to PHP 5, the darned PHP frontend was no longer functional.

I am becoming very inspired to re-write the entire thing in about 50 lines of ruby.

After some research I discovered that they changed the XML DOM API for PHP 5. Someone has nicely added a compatibility script that I've integrated into the project to keep it compatibile with both PHP 4 and PHP 5. Things seem to work well.

The CHANGELOG is here.

Please browse over to the main jFlash entry or download the 1.6 release here: jFlash-1.6.tar.gz

Posted by jordanh at 11:18 PM | Comments (0) | TrackBack |

Main > Software > jFlash

November 20, 2005

jFlash 1.5 Released

After more than a year of on-and-off development I finally got up the intertia to release a new version of jFlash. There are many changes in this release. Here is what is most important:

jFlash v1.5 Screenshot

JavaScript Code Clean-Up

The real value of the jFlash system is within the JavaScript source. It is fairly well thought out, well organized, and portable. There have been many enhancements to the JavaScript side of things this release, most importantly compatibility bug fixes and the breaking out of the many JavaScript classes into seperate files. I am using the method outlined in "Javascript includes - yet another way of RPC-ing" over at

UI Updates

Visual feedback on whether you got an answer correct or not is more clear now. Counters change color, your score is updated likewise, and a little message is printed. Keybindings were added so that a user doesn't accidentally terminate their jFlash session by pressing the enter key. There were also a few other, smaller tweaks.

Fuzzy-Logic Answering Capability

I must be crazy.

About a year ago, I experimented with a few fuzzy text-matching algorithms and discovered that the simple MCWPA string-distance algorithm wasn't bad for drawing a line on how close to answers were to eachother.

My purpose was simple: have jFlash ask the user to type in a phrase or translation and score it as "correct" if they do not butcher it too badly.

The result was a 100% JavaScript implemenation of the MCPWA algorithm and an extra parameter in the XML format that allows a user to set a threshold for how close an answer must be before it is scored as correct. I could imagine it might be useful to use this algorithm in other spots, including (possibly) form validation.

You can try your hand a this rather contrived Italian phrase translation demo here.

What's Next

It had been a year since the last release and I am hoping that it will take substancially less time before I make another. As I stated before, the "good parts" of this application are all within the JavaScript. The PHP front-end is hackish and poorly organized.

I would like to reimplment the front end, possibly in ruby, and remove any web-server requirements. Let me know if you have any thoughts.

As before, pleasse drop me a note and tell me how you find the software!

Posted by jordanh at 6:40 PM | Comments (0) | TrackBack |

Main > Software > jFlash

April 21, 2005


What is jFlash?

jFlash is a multilingual, web-based flashcard system based on open web standards, PHP, and XML. It consists of two principal software modules:

  1. A PHP system for indexing and delivering flashcard content.
  2. A browser-neutral Javascript application that parses out and presents a set flashcards represented in XML.

What is it good for?

jFlash is useful when you want to memorize something, and perhaps share the ability to memorize things with other people over the web. In addition, jFlash is language neutral since its content is presented in UTF-8, so theoretically you could use jFlash to drill anything from Arabic airports to zoo names in Tamil.

Who is using jFlash?

A number of learners around the globe and about 15 students in a University of Minnesota Korean class.

Please let me know if you find my software useful and I'll add a link to your jFlash content here if you wish!

You may view my live jFlash installation here.

What do I need to run jFlash?

jFlash is a server-side web application, so you must at present have a PHP-enabled web server. Other requirements and features can be read in jFlash's README file.

Latest release:

Version Date Filename Change Log README TODO
1.6 3/26/2006 jFlash-1.6.tar.gz CHANGELOG README TODO

Latest, and other releases:

Version Date Filename Change Log README TODO
1.0 2/5/2004 jFlash-1.0.tar.gz CHANGELOG README TODO
1.5 11/20/2005 jFlash-1.5.tar.gz CHANGELOG README TODO
1.6 3/26/2006 jFlash-1.6.tar.gz CHANGELOG README TODO

Posted by jordanh at 4:51 PM | Comments (2) | TrackBack |