ICDL Dictionary - define the world my way!

Ran Liu

Final paper:


There are existing different types of dictionary for children nowadays. From the traditional paper dictionary to some online dictionary. Yahoo! Kids has a dictionary for children, which allow kids to search for definition. But the definitions are very wordy, systematic and definitive. It will show large paragraph of Etymology and word history which seems less likely to attract kids to read. A Maths dictionary for Kids is a cute interactive dictionary, it has easy to understand definitions and interactive example allows kids to have fun with the abstract maths concepts. But the definitions are made by adults, and it contains only the words in maths domain.

I hope to design and develop a online collaborative dictionary community for children, which allow children to define words in their way and search for definitions by other children. The site will use multiple definition to one word model, and support basic social activities, such as voting, commenting, etc. To gain more user activities, I am planning on link the dictionary to ICDL: User (probably teachers) can get top 50 words in a children's book in ICDL, and they can choose a subset of the words they are interested in to create a word list. Teacher can then assign this word list to their students. For a specific word, the user can view which ICDL book has this word in it.To encourage children to participate, I will also design a reputation/badge system as incentives for children. To evaluate the prototype, I am planning on appoint a kids team session for usability testing in November.

Technology: I am plan to use Django Framework for Python, and Google App Engine.

Comment (Ben): This is fine. I'd like you to think more clearly, though, about the pedagogical value of this approach. You should be looking at the literature about technology supported vocabulary learning and socially motivated learning in addition to other dictionaries. Also, what lessons can you learn from Urban Dictionary? And how are you going to avoid the problems they face?

Requirements Statement

The users are categorized as children and grownups. For each user class, they should be able to do the following tasks:

  • Look up a word. Using the search bar on the top of the page, they can search for anything, a domain, a user, or a word. Using incremental search to help them search.
  • Define a word.
  • Rate a definition, like/dislike and undo by revoke the vote.
  • Maintain a vocabulary book, which contains all the words the user defined, and viewed (user need to click on the add to vocabulary book, but the word that the user defined will be included automatically.) This is designed for motivate children to learn new word. They could share their vocabulary book with friends. By the increase of the size of the list, hopefully they will feel accomplished.
  • Look up word in a ICDL book. There will be a page in the site which contains a collection of the books in ICDL, children can view the interesting words in each book.
  • Change personal profile (profile picture for example), just to keep things personal and fun. But I decide not using the real picture for safety reason. Basically I will include a collection of predefined pictures for them to choose.
  • (optional) Keep gain participate points as rewards, to keep them participate. They will reach to next level if they gain an amount of points.
  • If the user registered as either teacher or parent, they are able to register a child. (maybe by their email, and create a non-identifiable pseudo-username for the child they are registering.
  • Flag a questionable entry. This option will only show up when they log in as grownups.
  • A teacher can choose book and edit the vocabulary list to send to the children he/she registered. (need revise)
  • A teacher can create new domain for his/her students.
  • A teacher can reward extra points for excellent definition in his/her class.


Designing for children, safety of the online community is the No.1 rule. To ensure the site is safe for children I will use the following technologies:
1. Let parents and teachers to register children.
2. Using the existing ICDL user database so the user can use this site.
3. Allow adult users to flag questionable entries. The entries be flagged will be hide immediately.
4. I am thinking of using some filtering to block the entries to submit if there are certain bad words.


To motivate children to learn, I will add a reputation system and a badge system. Also, I will include vocabulary book for a child to keep track of the learning progress.

Implementation stages

Design Mockups

The initial design for the previous version is tested by Kids Team. I will use a simliar layout for the main page. In the testing, I got a feedback is the children want more color, so I will use more vivid colors to keep the design fun. And I will increase the button and font sizes to increase usability for children. At last, I will add more leader board and "word of the day/week" to motivate users.
Added an "entrance" for adults.

In the user testing section, the voting system design turned out to be very confusing, so I change the design of the voting.
1- the word being defined.
2- user avatar
3- score and voting. The big number is the total score, and under that are the number of like and dislike votes.
4- the definition the user wrote.
5- show comments and add comments.

Midterm implement progress

Functionality implemented so far:
  • creating, saving, viewing a definition.
  • redesigned the database schema, to support words, definition and domain.
  • fixed the voting bug of the previous version.
  • added voting ranking, the entries with highest ranking are shown on top of the page.
  • finished a demo version of the login system with user name and password. Implemented sessions.
  • Recursive domain. If the domain equals "all", the user can see everything in the system. Similarly, the user will see all the entries in the same domain and the domain under this domain. Such as, in "sport" domain, user can see the definitions in domain sport, as well as baseball, football, etc.
  • Implementing searching. Now I finished whole word matching in domain name and word. Still need to polish the code a bit in the future.


9/14/2011 - Meeting with Dr. Ben Bederson and Dr. June Ahn
  • Discussed two major issue to solve:
    • Online content safety issue for children.
      • We decide not using flag mechanism for children, because they may abuse it by flagging their friend.
      • Let teachers register themselves using their email account and register children. (I am thinking of let parents register for children as well to make sure children have access to it if their teacher will not using the site for classroom activities)
    • What's makes this project different from Urban dictionary.
      • Connect this site to ICDL, so the teacher can check the top/interesting words in one book and create a list of words for his students.
  • interesting functionality to implement
    • vocabulary book - to motivate children and let them be able to share their work on this site
    • separating words and definitions in the data model so it is possible to get top 5000 English words, and top 50 (TBD) interesting words in children's book.
    • metalanguage approach- see what's this word looks like in other language.
11/10/2011 - Meeting with Dr. Ben Bederson
  • About relevant literature to support the design
    • Dr. Bederson suggested to look into Mitch Resnick's view of remixing content from other kids in their use of scratch.
  • Specified "words in the book" feature
    • From ICDL, add link to this site to view a list of interesting words of the selected book.
    • When child selected a word, show a list of ICDL books that have this word in them. Link the word to the page which contains the word.
    • Asked Anne Rose to send book transcriptions (need follow up)
  • Discussed the interface for teacher to select a list of word from a book, and an interface for children to see the book with a list of words to define. (new priority)
    • Made an appointment with Alex to go through SearchParty code.

11/23/11: Comment (Ben)
You are making fine progress with this, and I think you understand the issues reasonably well, but still have a lot to do, so I am looking forward to the final presentations.