New Projects - Fresh from the Labs
If you've been playing around with other flashcard systems trying to learn Chinese or perhaps running into problems with switching between Traditional Chinese, Simplified Chinese and Pinyin, this may be the project for you. To quote the Freshmeat page and parts of the Web site:
Step Into Chinese is a flexible language-mining and flashcard system to assist English speakers seeking to understand the Chinese language. It was designed to address the lack of a one-to-one correspondence between Chinese characters and corresponding Pinyin morphemes.
The lack of a one-to-one correspondence between Chinese characters and the corresponding Pinyin is often regarded as the greatest difficulty facing learners of Chinese. Step Into Chinese has been designed to address exactly this difficulty.
Inside is an extensively cross-referenced data structure that allows the user to pursue deeper understanding of contexts, for example, by “locking on” to a particular Pinyin context and viewing successive instances of the same morpheme used in similar contexts.
The user can also “lock on” to English words in the Pinyin translations, English words in the collective phrase translations, and even Unicode strings used to represent Chinese characters in either traditional or simplified representations. Frequency information relative to the number of occurrences of each Pinyin morpheme, in each context throughout the data structure, is displayed for each entry.
The application data structure contains over 26,000 modern Chinese words and concepts, corresponding to over 8,300 separate Chinese characters. Colors are used consistently throughout the application for rapid location and absorption of information.
Apologies for the long project URL above—you're probably better off just visiting the main page at new.asymptopia.org. Why this confusion? Well, Step Into Chinese (SIC) is part of a collection of software developed by Asymtopia Software, a grass-roots open-source development company. In order to download SIC, you first need to create an account at the Web site, but don't worry, it's “free and only to prevent excessive download abuse by non-humans”. It also allows you to participate on the Web site. I'm interested in several projects from Asymtopia and probably will be highlight them in the coming months, so you might want to go ahead and make an account now.
Before I go further, in terms of library requirements, you need to install the pygame libraries, which on my Kubuntu system were named python-pygame. As far as package options go, there seems to be only a .tar.gz file (no binaries), but don't fret, the installation is easy. Download the newest tarball, extract it, and open a terminal in the new folder.
If your distro uses sudo, enter:
$ sudo setup.py
If your distro doesn't use sudo, enter:
$ su # setup.py
From here, you can run the program with:
First, a screen displays the status of some postprocessing, which has to do with Pinyin morphemes and their usage contexts. This may take a minute, but let it be. Soon you'll be inside the main screen. To give you an idea how it works, SIC already will have a word entered (that word being hello) and in the process of being displayed in “screensaver mode”, where each English word is shown along with its Chinese translation in both Pinyin (Romanized letters) and Chinese characters, which can be set to either Traditional or Simplified.
Now all this might be a bit confusing to take in at first, so let me break it down for you. The word hello will be on-screen, but you'll want to enter your own words to translate, so let's do that now. First, press backspace once, and screensaver mode (which I'll explain in a minute) will stop, allowing you to enter your own text. Now, keep pressing backspace until hello is gone, enter your own text, and press Enter. Your word now will appear in translated form above or at least a part of it in another English word (for instance, “car” may be inside “careless” or “carriage” and so on).
If the displayed translation isn't the one you want, press Enter again, and the next translation will be displayed. Keep pressing Enter, and you can scroll through all translated possibilities. Note that SIC accepts only American English. As an Australian and like most of the English-speaking world, I actually speak British English (this is an American publication; I don't normally spell this way), so entering something like “mum” or “colour” turned up with nothing. So if your entry doesn't produce any results, it might be that you're not using American English.
Let's move on to the screensaver mode. This is where the traditional flashcard system comes into place. Press F3, and all of the possible translation options will cycle through the display at a default rate of ten-second intervals. If you want to use SIC as a screensaver of sorts, pressing F12 puts SIC in full-screen mode.
As for Chinese characters, you probably will want to switch between Chinese Traditional and Chinese Simplified, so press F2 to do so for the standard display mode, and then press F4 for screensaver mode.
So far, I've dealt only with English text input, and SIC isn't restricted to that. You also can enter words in Chinese to display their meaning, albeit in the Romanized Pinyin form (actual Chinese text input is a much more complicated process in a non-Chinese OS setup, and this is aimed at foreign international users after all). Pressing F1 switches the search mode's parameters between English, Pinyin Chinese or Unicode searches.
That's about all I have space for this month, but ultimately, my time with Step Into Chinese has been a pleasant one. Although the interface is initially confusing, once you've been introduced to the basics, operating SIC actually is quite a simple process. I also like how the Asymtopia folks have shown some artistic flair in using fonts that are funky and colorful to make a pleasant working environment. SIC is highly recommended.
John Knight is the New Projects columnist for Linux Journal.
- A Switch for Your Pi
- Papa's Got a Brand New NAS
- Applied Expert Systems, Inc.'s CleverView for TCP/IP on Linux
- Returning Values from Bash Functions
- Simplenote, Simply Awesome!
- Tech Tip: Really Simple HTTP Server with Python
- Rogue Wave Software's TotalView for HPC and CodeDynamics
- Panther MPC, Inc.'s Panther Alpha
- Debugging Democracy
- NethServer: Linux without All That Linux Stuff