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: 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