=Paper=
{{Paper
|id=Vol-2147/p01
|storemode=property
|title=System Aiding Learning Japanese Language
|pdfUrl=https://ceur-ws.org/Vol-2147/p01.pdf
|volume=Vol-2147
|authors=Piotr Halama,Joanna Janiszewsk
|dblpUrl=https://dblp.org/rec/conf/system/HalamaJ18
}}
==System Aiding Learning Japanese Language==
System Aiding Learning
Japanese Language
Piotr Halama Joanna Janiszewska
Faculty of Applied Mathematics Faculty of Applied Mathematics
Silesian University of Technology Silesian University of Technology
Kaszubska 23, 44-100 Gliwice, Poland Kaszubska 23, 44-100 Gliwice, Poland
Email: piotr.halama@o2.pl Email: joa.j711@gmail.com
Abstract—In this paper creating platform for language e- most of the popular languages. We present an application of
learning was discussed in both theory and as an example web service to help in learning of the Japanese in proposed
implementation. We present a discussion on used work-flows to annotations based on different alphabets. We have measured
show programming background of our project but we also discuss
it from the user oriented quality of service. For these we present opinions from our users on the application developed for e-
opinion results that our users gave us after using the applications. learning to evaluate which approach gives the best results. Our
Finally we propose the way of development and possible future findings are presented in this article and discuss to show our
works. approach.
I. I NTRODUCTION II. I NTRODUCTION TO JAPANESE ALPHABETS
Japanese language usually uses three notations: hiragana,
Web services are important software developments. There
katakana and kanji. Hiragana is a Japanese syllabary, one
are several possibilities to implement each of them. In [10] was
character is one syllable, it is used in children’s books and
presented a survey on various possibilities for implementation
in textbooks before person’s learn kanji.
of automated approaches used in on-line technology. Also a
Kanji are the adopted logographic Chinese characters, one
quality of service is very important especially for users, the
character can mean one word, or be a part of the word. Each
better quality the more potential users will be interested in the
kanji have Onyomi and Kunyomi, the former being Chinese
service. In [8] was proposed a standard for composing dynamic
pronunciation at the time of its introduction, the latter Japanese
services oriented on the user needs. In [1] was presented
pronunciation.
a discussion of work-flows management for web services.
We let user choose if they want to use hiragana or kanji.
However it also crucial to think about the ontology of web
If the user language knowledge is advanced enough, they
services, a very interesting aspects of this were discussed in
can choose kanji since it is more common. Otherwise they
[11]. Also some models for verification of web services are
can choose hiragana which is easier to learn but not used as
very useful for quality of applications [4].
common as kanji.
There are many techniques which directly adhere to prac-
tical aspects of web services. In [7] was presented a survey III. E XISTING IMPLEMENTATION AND SERVICE OVERVIEW
discussing their positive and negative aspects. In [3] authors
proposed WFSM framework for web services. There are also Data in the database is split into categories (called courses
frameworks devoted for special purposes. In [6] was discussed in the database and API), each category have assigned one of
a framework OWLS-MX developed for semantic web services, three types, that is vocabulary, kanji and definitions, which de-
while in [9] was proposed Meteor-s annotation framework. termines the data scheme in response body of an API requests.
One of most interesting applications of web services are For instance, type ”vocabulary” determines that response will
these oriented on e-learning applications. In [12] were pre- contain entry id, Kanji notation, Kana notation and Polish
sented possible directions for the development in e-learning notation, whereas in ”Kanji” that would be entry id, Kanji
technologies, while in [14] were presented the uses and com- notation, Kunyomi and Onyomi.
ments on the empirical results from e-learning technologies. Both Android application and the website frontend retrieves
In this article we present our web service developed for e- data from the database using JSON API.
learning of Japanese language. There are not many services Our service uses one API for both website and Android
that would allow user to learn Japanese language with the application to get and save data to the database, Fig. 2
help of e-learning, especially given that this language due describes available API endpoints. This way we ensure that
to its complexity needs individual treatment as opposed to every application uses the exact same data served in the same
format. However we need to copy most of the logic into every
Copyright held by the author(s). application since received data needs to be processed to format
1
used internally in given application and processed back to }
JSON format for writing data to the database through API.
@Override
public void onFailure(Call>
call, Throwable t) {
//failed to retrieve data
}
});
}
Website implementation written in Vue.js that achieves the
Fig. 1. Diagram showing data flow.
same goal as Android one looks like follows:
The Android application or web application sends a request
the need as shown on Fig 1. The server application that uses
Model-View-Controller design pattern routes request to proper Category: {{category.name}}
controller which retrieves data from the database, parse it and
create JSON encapsulated response which is send back to the
requesting application.
In the following example, we would like to retrieve data
from API about all available categories. Android implemen-
builder.client( httpClient.build() ).build();
We need to add following code to main Javascript file to
//bind recieved data to Java class inform Vue to use JSON format in communication and set
CategoriesClient client = retrofit.create( correct ULR address used for communication with API:
CategoriesClient.class); Vue.http.options.root = ’http://localhost/api/’;
Vue.http.options.emulateJSON = true;
Call> call = client.coursesList(type
); API is written in PHP using Laravel framework and the
corresponding API endpoint code looks like this:
call.enqueue(new Callback>() { /∗database connection parameters are stored in Laravel
@Override application configuration∗/
public void onResponse(Call> public function getAllCourses() {
call, Response> response) $coursesTableContents = DB::table(’courses’)−>get();
{ return response()−>json($coursesTableContents);
//we were able to receive JSON and }
deserialize it
courses=new ArrayList(response. As we can see, most of the logic have to be implemented in
body()); each application using API as stated previously.
2
Fig. 2. Diagram showing API endpoints.
For instance, android application uses Retrofit2 library to
retrieve data from API and GSON to convert it to existing
Java classes.
Upon entering the website user sees list of three activities,as
seen on Fig 3: quiz, flashcard and dictionary. After selecting
activity a list of all categories is retrieved through API and Fig. 3. Diagram showing user interface transitions in web application and
API calls.
shown to user to select from. After that, user selects direction
of translation, for example from Kanji to Polish. List of words
in given category is retrieved using API and selected activity know”. ”I know” button removes word from list and next word
is run. is presented to the user. ”I don’t know” adds the word at the
Quiz shows one word in a given language and four buttons end of the words list. Tapping field with hidden translation
with answers in another language where only one contains reveals it.
correct answer. Upon pressing correct button one point is
added to user score and next question is shown. After pressing
wrong button one point is removed from user score and
correct and selected answers are highlighted in green and red
color respectively.
Flashcards shows one word in a given language and hidden
translations as well as two buttons: ”I know” and ”I don’t
know”. ”I know” button removes word from list and next
word is presented to the user. ”I don’t know” button reveals
translations of given word and adds the word at the end of the
words list.
Fig. 4. Diagram showing user interface transitions in Android application
Dictionary is a table of words with corresponding transla- and API calls.
tions.
As seen on activity flow for Android application (as seen
on Fig. 4), the user sees list of three data types and an option IV. D ESCRIPTION OF THE TRADITIONAL SCHOOL
menu. In options menu user can select activity they want to Learning process in traditional school is divided by diffi-
launch, direction of translation as well as additional help in culty level into semesters or even smaller units. Usually each
form of hiragana notation. After selecting one of the types, a unit is concluded with exam testing students’ knowledge and
list of categories in given type is retrieved through API and degree of their understanding of given topic. Students needs to
shown to user to select. After that, user selects category, then have passed minimal percentage of correct answers on exam
list of words in given category is retrieved using API and to proceed to the next learning unit. Teacher can also see
selected activity is run. student’s exam and provide them with custom exercises or
Quiz shows one word in a given language and four buttons explain them what they can change or pay more attention to.
with answers in another language where only one contains
correct answer. Upon pressing correct button one point is V. I NTRODUCTION TO E - LEARNING
added to user score and next question is shown. After pressing E-learning have a fair share of pros as well as cons over
wrong button one point is removed from user score and correct traditional learning and can supplement it if implemented
and selected answers are highlighted in green and red color correctly.
respectively. Physical location of the student does not matter. E-learning
Flashcards shows one word in a given language and hidden is a chance to learn for the people who live in places where
translations as well as two buttons: ”I know” and ”I don’t traditional schools and language courses are unavailable. Users
3
can also learn from the specialist online, even if they live far
away apart.
E-learning can be cheaper than traditional courses, not
requiring physical copies of books and exercise books, making
it affordable substitute for people with low income.
E-learning does not require a fixed schedule making it
attainable for people with irregular lifestyle or unusual waking
hours.
The best way to learn language however requires native
speaker teacher which e-learning cannot provide without sac-
rificing some of its strength, for example not requiring to be
online at fixed schedule.
User also have to be self-disciplined to learn regularly,
which may be hard and can result in dropping e-learning.
Internet connection is usually required, given the the of the
course it may be one-time download or constant connection
for courses that use data from the web.
VI. I MPLEMENTATION OF TRADITIONAL SCHOOLING IN Fig. 5. Six interfaces used in questionnaire
E - LEARNING
Material of the e-learning platform can be split into units,
VIII. I NTERFACE QUESTIONNAIRE
as it is in traditional learning but we need to remember that
some users would have previous contact with Japanese and we
need to provide them some way to skip those units. We would
suggest either asking user to take all exams prior to selected
by them unit or automatically create new custom exam using
knowledge from all previous units. On failure first approach
would allow user to access some of the previous unit to the 11
selected one given user’s score. Second approach however 10
would make it harder to differentiate which knowledge user
3
already has and which not.
As a supplement to traditional learning, e-learning can pro-
vide a platform to both student and teacher, giving opportunity 4
6
for teachers to see their students’ marks and giving them
advices and additional exams, like in traditional learning. 14
Teachers could create custom units and use them instead
of built-in ones, using e-learning platform as a framework
rather than complete system with pre-existing knowledge base,
taking time but giving more flexibility and tailoring learning
curve specifically for their students or even for each student
individually.
VII. I MPLEMENTATION OF THEORETICAL
CONSIDERATIONS
Our implementation divides knowledge into smaller units as
in traditional school, however we do not have requirement to
pass all previous units to proceed to the next one. Our service
does not implement user authentication and authorization so Fig. 6. Pie chart showing users’ answers.
the usage of the service is anonymous but also forces user to
keep track of their progress since our service does not have We asked users of mobile application which one of the
means to do it. 6 application interfaces (as shown on Fig.5) suits them the
Our service have all aforementioned advantages of e- most and shown the collected data on a pie diagram (Fig 6).
learning, being available online all the time and offline in Out of 48 answers, votes for the white background and black
a limited version since Android application have built-in background were split evenly. On white background smaller
database allowing it to operate without internet connection, spaces between buttons were preferred, whereas on black
however this database is smaller than the one available through background wider spaces were chosen more often. Considering
online API to keep small application size. only padding size, medium spacing was preferred with 25
4
votes, small gaps were chosen 14 times and big padding was [13] A. Venckauskas, A. Karpavicius, R. Damaševičius, R. Marcinkevičius,
selected by 9 respondents. J. Kapočiūte-Dzikiené, and C. Napoli. Open class authorship attribution
of lithuanian internet comments using one-class classifier. In Computer
Science and Information Systems (FedCSIS), 2017 Federated Conference
IX. C ONCLUSION on, pages 373–382. IEEE, 2017.
[14] E. T. Welsh, C. R. Wanberg, K. G. Brown, and M. J. Simmering. E-
Depending on the student, e-learning may not be as effective learning: emerging uses, empirical results and future directions. inter-
as traditional learning but it can supplement it strengthening national Journal of Training and Development, 7(4):245–258, 2003.
[15] M. Wróbel, J. T. Starczewski, and C. Napoli. Handwriting recognition
memorizing or in some conditions can be viable alternative to with extraction of letter fragments. In International Conference on
traditional courses. Artificial Intelligence and Soft Computing, pages 183–192. Springer,
2017.
The implementation of an e-learning platform can be used
by students on very early development stages and with help of
automated surveys help in development of new functionalities
and in understanding users’ needs and expectations as the
survey results may be unexpected to the development team.
The results of our findings show these services are very
useful in e-learning, especially when it comes to foreign
languages. In the future we plan to develop our service for
the latest technologies like virtual reality or other interactive
approaches.
The use of API allows us to add new applications and
replace the server application, Android application or web
applications with different ones as long as common commu-
nication schema established in API is preserved thus allowing
for easy migration of the individual applications.
R EFERENCES
[1] J. Cardoso, A. Sheth, J. Miller, J. Arnold, and K. Kochut. Quality
of service for workflows and web service processes. Web Semantics:
Science, Services and Agents on the World Wide Web, 1(3):281–308,
2004.
[2] R. Damaševičius, C. Napoli, T. Sidekerskienė, and M. Woźniak. Imf
mode demixing in emd for jitter analysis. Journal of Computational
Science, 22:240–252, 2017.
[3] D. Fensel and C. Bussler. The web service modeling framework wsmf.
Electronic Commerce Research and Applications, 1(2):113–137, 2002.
[4] H. Foster, S. Uchitel, J. Magee, and J. Kramer. Model-based verification
of web service compositions. In Automated Software Engineering, 2003.
Proceedings. 18th IEEE International Conference on, pages 152–161.
IEEE, 2003.
[5] T. Kapuściński, R. K. Nowicki, and C. Napoli. Comparison of effective-
ness of multi-objective genetic algorithms in optimization of invertible
s-boxes. In International Conference on Artificial Intelligence and Soft
Computing, pages 466–476. Springer, 2017.
[6] M. Klusch, B. Fries, and K. Sycara. Automated semantic web service
discovery with owls-mx. In Proceedings of the fifth international joint
conference on Autonomous agents and multiagent systems, pages 915–
922. ACM, 2006.
[7] Y. Kun, W. Xiao-Ling, and Z. Ao-Ying. Underlying techniques for web
services: A survey. In Journal of software. Citeseer, 2004.
[8] Y. Liu, A. H. Ngu, and L. Z. Zeng. Qos computation and policing in
dynamic web service selection. In Proceedings of the 13th international
World Wide Web conference on Alternate track papers & posters, pages
66–73. ACM, 2004.
[9] A. A. Patil, S. A. Oundhakar, A. P. Sheth, and K. Verma. Meteor-s web
service annotation framework. In Proceedings of the 13th international
conference on World Wide Web, pages 553–562. ACM, 2004.
[10] J. Rao and X. Su. A survey of automated web service composition
methods. In International Workshop on Semantic Web Services and
Web Process Composition, pages 43–54. Springer, 2004.
[11] D. Roman, U. Keller, H. Lausen, J. De Bruijn, R. Lara, M. Stollberg,
A. Polleres, C. Feier, C. Bussler, and D. Fensel. Web service modeling
ontology. Applied ontology, 1(1):77–106, 2005.
[12] M. J. Rosenberg and R. Foshay. E-learning: Strategies for delivering
knowledge in the digital age. Performance Improvement, 41(5):50–51,
2002.
5