Home - Text - Welcome

Welcome to JTLanguage.

Welcome!

Welcome to JTLanguage, a free cooperative web site (and phone apps) for learning and teaching languages.

This is a place you can come to learn or to teach any language supported on a computer. By "cooperative", I mean that all the learning content is provided by users who would like to help to teach a language. I provide the technology in the form of this web site, but I depend upon the generosity of users like yourself who are or want to be language teachers to sign up and create lessons, whether it be to supplement your teaching of a specific group of students, or to provide a public service to anyone in general.

JTLanguage can help you teach or learn languages in two main ways, first, as a content organizer/browser and second, as a collection of study tools. I'll expand a bit on this in the following sections.

For a quick start, you can jump to the Getting Started section. However, I really recommend reading the rest of this page first, as JTLangauge is rather unlike other language-learning programs you may have used.

Language Learning Content Organizer/Browser

Browse courses tree panel.

JTLanguage helps you organize your language learning lesson content hierarchically, quickly accessible via a course browser panel, and a variety of text or audio/visual media content pages.

The overall unit for your content is called a "Course". Courses consist of multiple "Lesson" or lesson "Group" components. A "Lesson" contains one or more media or textual "Content" components. Courses, groups, lessons, and content items each have pages describing the item and listing the subordinate items they may contain. Courses and groups also can have associated content components that collect study items from like content in subordinate lessons, allowing you to see all the vocabulary word, sentence, expansion, and character content in courses and groups in bigger collections higher in the hierarchy, or smaller collections lower in the hierarchy.

Media player.

Media content items can include audio or video recordings or generated content for lesson podcasts, example dialogs, vocabulary study, and other types.

A provided media player can play the audio/video files, including support for subtitles, quick-access text mapping, and even changing the playback speed without changing the pitch of the voices.

Alternatively, very flexible mechanisms are provided for the students to download media files at course, group, lesson, and content item levels, for use offline in other media players or mobile devices.

Media content items can also be other types which store images, .pdf files, or raw text.

Text content.

Textual content items can be "Study List" components such as text transcripts, example dialogs, and character, word, sentence, or expansion vocabulary.

Special "Document" content pages for summary, grammar, and other lesson notes can be included. Both document and study list content can have custom layouts formatted via a "Markup Template" mechansim.

"Comment" pages provide a place for user comments, questions, and discussion.

There is also another organizational component called a "Plan". A plan functions like a course, but it is only visible to you as a logged-in user. It's a mechanism for collecting study items, content, lessons, groups, and even other courses into a private collection, just for more convenient access to the stuff you want to study. On the pages for these items throughout JTLanguage, you will see "Add to plan" links. This is how these items get put into an existing plan, or a plan created on the spot. The Course page for adding a course to a plan even has an option for adding the course to your plans as a new plan itself. The "Plans" menu item lists your plans.

Language Learning Study Tools

JTLanguage provides a number of "Tool" mechanisms to help students study the lesson content.

Flash tool.

One key tool is the "Flash" card mechanism, which is extremely flexible and configurable, and takes as source a study list from a lesson, group, or course. Flash "Card Side" elements present the "Study Item" objects as text, audio, or pictures in a variety of tool "Configuration" modes, including text output, text input, descramble, fill-in-the-blanks, multiple choice, audio output, and audio recording and playback with optional speech-to-text recognition. The tool configurations are grouped under an associated tool "Profile", which also specifies one of several algorthims the flash card mechanism will use to pick study items to display, including spaced repetition. Special "Hybrid" configurations let you mix it up with multiple configurations. Drop-down menus let you conveniently select different configurations and profiles during your study sesson.

In addition to the flash tool, there is also a "Match" tool for a vocabulary and sentence matching exercise, a "Test" tool for testing memory on items presented all together in formats specif-yable via the tool configuration mechanism, and a "Hands Free" tool for reviewing content on-the-go.

Although not specifically a "Tool", a special "Automated" media mechanism is like a cross between the study tools, media player, and content browser, and lets you interactively study or review content items in scripted fashion. For example, the automated player could play an example dialog interactively using a media player at normal and slow speeds, with or without translation, explain vocabulary, and then run one or more study tool sessions in different configurations so you can memorize the study items, which are selected on-the-fly, possibly using spaced repetition or other algorithms. A "Choose" mechanism in the script can let the student choose among multiple activities. This mechanism is implemented using a very high-level scripting language included in the "Markup Template" mechanism which can be specified for multiple or individual lessons.

Lesson/Content Creation

Edit content.

If you want to be a teacher, or you're a student who just wants to collect your own study material, JTLanguage provides extensives means for creating and editing courses, lesson groups, lessons, and lesson content. You also have a lot of flexibility to arrange and format lesson content as you wish.

You can manually create lesson components individually, or you can use the lesson "Master" mechanism, which allows you to create lesson templates that pre-configure lessons, groups, and courses, and the associated content items, such that you just have to fill in the actual content.

JTLanguage provides extensive editing support for entering and editing the content items, both text and audio, the latter including audio recording, editing, and mapping text to the audio/video, for subtitles and the quick-access text list mechanisms in the media player. Are you a student or teacher without access to native voice actors? Use the built-in text to speech synthesis mechanism to create the audio. You still have the option to replace it later, either by yourself or by others in cooperative fashion.

Course and lesson content can also be imported and exported in a growing number of formats.

Markup example.

By means of a "Markup Template" mechanism, in addition to standard pages, teachers can format text pages or documents in the lessons in a variety of ways. Unique to JTLanguage, this markup language is actually like a scripting language including flow control and looping elements that can access study list content and other lesson components. Embedded string and variable substitution helps you support multiple host or target languages.

In addition to formatting text pages, the markup template mechanism can also be used to "Generate" audio media files, drawing from existing audio content or using voice synthesis. An "Automated" media content item also uses the markup template mechanism to generate audio and text output on-the-fly, using the same study item selection algorithms as the flash card tool.

JTLanguage doesn't support the UI, host, or target language you want? Teachers have access to pages for adding languages and editing the text JTLanguage displays. You could even make up your own language, though it needs to use a character set that computers and browsers support.

Other Language Learning Resources

These are not implemented yet (actually, the previous version of JTLanguage had some of them, but I haven't implemented them yet in the current rewrite), but my vision for JTLanguage includes having support for a number of other language learning resources. These include an extensive dictionary for all languages, a translator, a searchable grammar reference, teacher and user blogs, forums for questions and discussions, a chat mechanism for textual and audio chatting with other JTLanguage users, and a place to list references for other web sites and tools.

JTLanguage's Menu System

Main menu.

JTLanguage has a dual menu system for navigating it's many parts. These consist of the drop-down menu at the top of the screen, and a two-level graphical menu page system. Both of these menu systems are equivalent. The drop-down menu is the fastest for naviation, and is the line at the top of the browser content area.

On mobile devices, the drop-down menu can be displayed by clicking on the three-bar button at the upper right. To go to the graphical menu main page, click the "JTLanguage" label at the top at any time. Go to graphical sub-menus by clicking on buttons in the main menu page.

JTLanguage's Panel Layout

JTLanguage's main window will display one or more panels, which are the portions of the screen with white backgrounds.

The first and usually largest panel is the main content area, where the content of focus is displayed.

There will also usually be one or two titled help panels describing the current page.

When browsing courses, there will be a titled panel with the title "Browse courses". This panel display a drop-down menu for selecting a course. If a course is selected, it will also display a tree control for navigating in the course.

When the screen is small, such as in a mobile device, the panels will appear in vertical order. For a desktop browser, the secondary panels will appear on the right of the browser window.

JTLanguage's Help Information

To see descriptions of items in the main content area, you can click the "Show Field Help" link in the page help panel. This will embed descriptive information in blue text above or below the item being described.

Click "Hide Field Help" to toggle the help option off.

Getting Started

First, if you haven't already done so, create an account by clicking the Register link at the upper right. You can can skip this to just browse some courses and look around, but you wan't be able to use the study tools, which need to save some study data keyed to your account.

Next, go to the Languages page under Home to specify the language you want to study and the language JTLanguage uses for text and labels.

Then, go to the Courses page under Lessons to see the courses available for your language of study.

Select a course to browse by clicking on its "go to" green arrow button, or use the "Select course" drop-down menu in the "Browse courses" panel. The course's main page will appear, showing information about the course and listing it's included lessons.

At this point, you can look around the course by clicking on a lesson's "go to" green arrow button, or by clicking on items in the tree view control in the "Browse courses" panel, expanding items by clicking on the "+" icon. Note that the tree view uses different icons to represent courses, groups, lessons, and the differnt kinds of content items. Here's a description:

Icon Description
Course
Group
Lesson
Media List
Document
Audio
Video
Automated
Image
TextFile
PDF
Media
Transcript
Text
Sentences
Words
Characters
Expansion
Exercises
Notes
Comments
Content Study Tool
Automated Lesson Study Tool
Plan

For a place to start, take a look at an example course I produced for several common languages. It's not a real course, but has a few lessons that show different features of JTLanguage, using content I generated directly from JTLanguage using the built-in translate and speech synthesis mechanisms provided (which means it's probably wrong or of bad quality, so please ignore the content, and instead pay attention to the technology presenting it). To see this example course, go to the "Lessons" menu, select "Courses", and in the tree view to the right, select the "Example Course" from the drop-down menu, and have a look at it. I only implemented it for 10 or so languages, so if you don't see it listed in the courses list page, you might have to set a different target language.

Also available are the "JTLanguage Survival Phrases" and "JTLanguage Survival Vocabulary". These courses primarily contain study lists of words and phrases ready-to-go for use in the flash card and other study tools, as a starting point for learning or getting by in a new language. Again, I basically wrote them in English, and then used the translate and voice generation mechanisms as a starting point. But in this case, they support over a hundred languages, basically all the languages Google Translate supports.

Hopefully, some teachers will sign up and create some additional courses.

There's a lot here, so have a look around, and stay tuned for more coming. Android and iPhone mobile app versions of JTLanguage are being developed in tandem, and will be released soon.

As you can see, JTLanguage is a very ambitious platform for teaching and studying languages.

Please do send me your comments, bug reports, and suggestions via the Contact page.

There are Android and iPhone versions of JTLanguage available here which support offline usage of JTLanguage. Get them here (or by searching for "JTLanguage on the Play Store or App Store):")

Get it on Google Play          Download on the App Store

Google Play and the Google Play logo are trademarks of Google Inc. App Store and the App Store logo are trademarks of Apple Inc.

Home menuHome menu