i Polyglot
Project Home
Use Model
Used Technologies
Project Members
Help Wanted
i Polyglot on SourceForge.net



Help children of Beslan!
SourceForge.net Logo
Popups by overLIB!

Use Model

1. Main concepts:
  • 1.1. Course/lesson/word hierarchy
  • 1.2. What is Word
  • 1.3. Inline Help System


  • 2. Any registered user will be able to log in and perform the following learning tasks:
  • 2.1. Create/modify/delete courses
  • 2.2. Create/modify/delete lessons
  • 2.3. Enter/modify/delete words and their translations
  • 2.4. Do drilling sessions


  • 3. Other tasks:
  • 3.1. User self-registration
  • 3.2. Address book (list of friends/students)
  • 3.3. Share courses and lessons with connections
  • 3.4. Create/modify/delete reference sources
  • 3.5. Administrative activities/routines


  • 4. Some other stuff:
  • 4.1. Affiliation with other Language Learning sites/companies
  • 4.2. Advertisement
  • 4.3. Competitors




  • 1.1. Course/lesson/word hierarchy

    Course contains lessons, lessons contain words. Every registered user can create a limited number of courses, paying users can create unlimited number of courses.
    For example, if a user learns French using book "Entre amis" he can create a new course called "Entre amis".
    Lessons in this case will correspond to chapters of the book, and after each chapter most of language books have lists of words to memorize after reading this chapter.
    So, the hierarchy of the material is course->lesson->word, which can be implemented in a way similar to Windows Explorer (but in HTML). I.e. two panes: left for courses and lessons, and rigth for words and translations. It can be called "Course Navigator" or "Course Explorer". Scroll down for the example.





    1.2. What is Word

    A Word is not necessarily is going to be only a word. It can be a word, a phrase, an idiom, i.e. any verbal construction. Translation can be either too.



    1.3. Inline Help System

    Every time a user sees the following icon: he should be urged to move mouse over it and read what it says.



    2.1. Create/modify/delete courses

    A user should be able to create new courses, modify theirs names, delete courses. When adding a new course user will have to specify two languages: language for words (typically user's native language) and language for translations. This will allow to handle encodings on the pages and in the database (This is questionable though and needs more investigation). The of courses is suggested to be two separate pages: "Course Directory" and "Course Detail"

    My Courses > Courses
    Name Description Words Language Translation Language
    American Idioms American Idioms English English
    English Idioms English Idioms English English
    French - Entre Amis Using Entre Amis book French English
    French Miscellaneous Miscellaneous French Words French English

    Picture 2.1.1. Course Directory

    Important Note: The following behavior is going to be common for all directories of the application.
  • Typing something in the "Search" text field and pressing search will filter the directory, leaving visible only those lines which contain the typed string;
  • Clicking on a hyperlinked table header will sort the table on this column in descending order, second click will reorder in ascending order;
  • Selecting the checkbox in the table's header will select all checkboxes, ditto for de-selecting;
  • In order to delete one or more courses user has to select checkboxes next to courses names and press "Delete" button;
  • In order to share a course with other users user has to select a checkbox next to a course name and press "Share" button;
  • If user selects "Shared Courses" on the left pane, in the right pane will be displayed the Course Directory of courses shared to this user in Read-Only mode (no buttons, no hyperlinks)
  • Clicking on "Create New Course" button or on a hyperlinked course name will display the Course Detail page (if Create New is clicked the fields on the detail page will be blank):

  • Course Detail
    Course Name:
    Course Description:
    Word Language:
    Translation Language:
    Defautl Reference Source:


    Picture 2.1.2. Course Detail page

    Important Note: On all detail pages of the application "Reset" button has to restore the initial state of the page from the database. It is not enough simply to use embedded HTML 'reset' button.

    Clicking "Submit" will change the database and return to the directory page with success notification.



    2.2. Create/modify/delete lessons

    A user should be able to create new lessons, modify theirs names, delete them. A lesson can be created only within a course. Modifying lessons is done in the same Directory-Detail paradigm.

    The Lesson Directory has similar layout as the Course Directory and contains the following columns:
  • Lesson Name
  • Course Name

  • French Miscellaneous > Lessons
    Name Description
    Lesson 1 Le Francais commence
    Lesson 2 Facile encore
    Lesson 3 Pas tres facile

    Picture 2.2.1. Lesson Directory

    The Lesson Details page contains the following fields:
  • Lesson Name
  • Lesson Description

  • Number of lessons created by not paying user should be limited (about 30), paying users enjoy unlimited number of lessons.



    2.3. Enter/modify/delete words and their translations

    The right pane of Course Explorer will contain the Word Directory of already entered words for this lesson, hyperlinked so that they can be modified.

    Lesson 1 > Words
    Word Translation
    une balle a ball
    un cheval a horse
    un avion an airplane

    Picture 2.3.1. Word directory

  • Several text input fields give a convenience of doing bulk entering without doing submit after each word. This calls for "New Words Page":

  • New Words
    Word Translation Reference Source


    Picture 2.3.2. New Words Page

  • We should not allow creation of more than 20-25 words per lesson
  • Clicking Submit button changes the database, returns to the Word Directory and shows the success notification message.

  • Modifying words should be done only one at a time because internally this will not be just a simple UPDATE, but remapping of existent words and translations ()
  • Clicking on hyperlinked word will display Word Detail page:

    Word Detail
    Word:
    Translation:
    Reference Source:


    Picture 2.3.3. Word Detail page

  • Clicking Submit button changes the database, returns to the Word Directory and shows the success notification message.




  • 2.5. Do drilling sessions





    3.1. User self-registration

    The self registration page is going to look like this:

    Self-registration
    * Email Address:
    * Password:
    * Confirm Password:
    First Name:
    Last Name:
    Preferred Language:
    I would like to receive emails on iPolyglot updates


    Picture 3.1.1. Self-registration Page



    3.2. Address book (list of friends/students)

    Creation of address book is useful mostly for teachers and users who would like to share their courses/lessons with other users. Users can share only with other users that are in their address books.
  • In order to create a new connection user has to sent an invitation email to this person (or multiple invitations) through the "Invite Connections" page
  • Sent invitations are displayed on the "Sent Invitations" page
  • Only those users who accepted the invitation are going to be included to the address book
  • The invitee has to be registered user in order to accept the invitation, i.e. before accepting the invitation this person has to go through the registration process (there is a caveat when a user is already registered using one email but receives the invitation on another email; such case should be resolved gracefully)


  • Address Book
    Connection
    Brother, Big (bb@bigbro.org)
    Doe, John (jd@john.doe)
    Ga, Misha (mg@mg.ga)
    Stopsmoking, Bill (bill@stopsm.net)
    Ve, Misha (mv@mv.ve)

    Picture 3.2.1. Address Book page

    Invite Connections
    First Name Last Name Email address
    Invitation Message:





    Picture 3.2.2. Invite Connections Page

    Sent Invitations
    Connection
    Babbadubba, Ben (bb@babbad.org)
    Mary, Doe (md@john.doe)

    Picture 3.2.3. Sent Invitations Page

  • The invitation email contains a link clicking on which the invitee goes to iPolyglot site to the I Am Invited Directory (not shown here, looks the same as Sent Invitations Directory) and clicks button "Accept Invitation"


  • I Am Invited by
    Connection
    Belveder, Vodka (bv@blvdr.org)
    ZhuZhu, Ke (z@zh.ke)

    Picture 3.2.3. I Am Invited by Page

  • After invitee clicks "Accept Invitation" he appears in the Address Book of the inviter and vice versa. An acception email is sent to the inviter.




  • 3.3. Share courses and lessons with connections

    Sharing lessons can be seen as a teacher-students work. A teacher creates a course which refrects his or her program, creates lessons for this course and enters words for these lessons. After that the teacher can use Sharing feature of the application to share these courses with his/her students. Students (if they are registered users) will be able to see these courses in the Course Explorer under "Shared Courses" in Read-Only mode and do the drilling sessions based on the lessons from these courses.

    Another use model for sharing is affiliation with well-established language sites. In this case the companies like RosettaStone.com will create their own courses (for bulk word creation our system will have to provide web-services) and share them with their clients.

    Before going to the Share page the user has to have a list of connections. To open the Share page user has to select a checkbox in Course Directory or Lesson Directory and press "Share" button.

    The Share page is going to look like this:

    Share > Lesson 1
    Share with Connections:


    Curently Shared With:

    Picture 3.3.1. Share Page




    3.4. Create/modify/delete reference sources

    Almost in all cases the user will find the translation for a word in some source: it can be a dictionary (paper, electronic, online), language workbook, etc. I.e. this information is somebody's copyrighted property. This is not clear at the moment whether allowing users to refer to certain sources will solve the problem.

    Maybe it makes sense to consult with a copyright specialist? Anyway this needs thorough investigation.

    Anyway, meanwhile the Reference Source Directory will look like this:

    Reference Sources
    Name Description
    Webster English Dictionary Webster English Dictionary 2 Edition
    Entre Amis French Course Book Entre Amis French Course Book
    RosettaStone.com Online language learning site RosettaStone.com

    Picture 3.4.1. Reference Source Directory

    The Reference Source Detail page will contain fields Name and Description.

    Back to the copyright issue. Here are some quotes:
    http://www.ipwatchdog.com/copyright_basics.html:
    <QUOTE> The fact that the copyright owner enjoys "exclusive rights" should not be understood to mean that only the copyright owner may engage in the listed activities (i.e., copying, distributing, performing, etc.). The right of the copyright owner is exclusive in nature, but far from absolute. This is true because of what is called "faiir use." The Copyright Act allows for copyright works to be used, and for such use not to be considered infringement, for purposes such as criticism, comment, news reporting, teaching, scholarship, and/or research, so long as the work is "fairly used." In determining whether the use in any particular case is a fair use Courts must consider four factors: (1) the purpose and character of the use, including whether such use is of a commercial nature or is for nonprofit educational purposes; (2) the nature of the copyrighted work; (3) the amount and substantiality of the portion used in relation to the copyrighted work as a whole; and (4) the effect of the use upon the potential market for or value of the copyrighted work. </QUOTE>

    <MG comment> Seems like main possible violators of dictionary's copyrights will be our users/teachers, i.e. these materials will be used for educational purposes. We ourselves are not going to enter the words/translations, although we are going to get a profit from advertising on the site. </MG comment>



    3.5. Administrative activities/routines

  • There should be a set of pages to allow Administrators to perform administrative tasks and see statistics of site usage:
    • Most active users
    • Most active languages
    • Clicks demographical statistics
  • Some administrative routines should be done automatically (if this is possible using hired hosting)
  • Administrative automatic routines can be following:
    • Remove users with no activity during certain period of time
    • Remove words and translations that do not have counterparts
    • Remove words and translations with no activity during certain period of time
    • etc.




  • 4.1. Affiliation with other Language Learning sites/companies

    Let's take, for example, RosettaStone.com. This is a well-known language learning site with excellent product and a good customer base.
    We could offer them affiliation with our site. That is we (or them) create courses based on their courses and share them with their online and offline customers. As a minimum, it will increase the number of our customers, hence traffic. As a maximum, we could charge RosettaStone for this affiliation.

    This kind of affiliation can be done with many other course publishers. And in case of them creating the courses it is necessary to provide web-services for bulk entering information from their databases.



    4.2. Advertisement





    4.3. Competitors

    QuizHub: http://quizhub.com/quiz/quizhub.cfm
    Disadvantages: It is not free, learning only from English to English, French, Spanish, German, users cannot enter their own words, work on their own plan, no statistics gathered.