Wednesday, August 1, 2018

ማስሊያ: The Amharic Calculator V2 QnA

I have updated my Amharic Calculator app, and it is now available here. Feel free to download it and leave a comment on how I could improve it. Criticism is always welcome!





Screenshot Image
Screenshot of app in landscape mode (with numbers).

App Technical Information:


Q: What platform was used to create the app?

A: The coding platform used was Android Studio 3.1.3. Android Studio is an application made to help developers create and release apps on mobile. The primary languages used for coding are XML for the UI (User Interface) and Java for the functionality. However, it is possible to import new languages to use.

Link to download the latest version of Android Studio: https://developer.android.com/studio/

Q: What language is the app programmed in?

A: I used Java for the functionality (calculations, storing numbers, etc), and XML to create the layout and display XML is very similar to HTML, only the tags are much more varied. I didn't use much XML directly, but instead used the UI to drag and drop elements onto the test screen, only using XML for customization. I learned how to use these languages with Android Studio with this video series: https://www.youtube.com/playlist?list=PL6gx4Cwl9DGBsvRxJJOzG4r4k_zLKrnxl

Q: What device will work with the app?

A: Theoretically, any Android phone should work with the app. However, as one of the characters on the buttons is an image, the scaling of the character might be off on bigger or smaller devices (such as tablets). The recommended size of device to use the app is from 4.5 to 5 inches diagonally (the screen only, not the entire device).

Q: What font/language was used for the app?

A: The language used for the characters is Amharic, also known as Ethiopic. Since Ethiopic characters are not included on the keyboard, I used the Unicode equivalent of those characters in order to write it out. Unicode is how developers and other people write characters not included on the keyboard without having to copy and paste it. An example of a Unicode key that represents a character is U+1206, which represents ሆ.

Link to the Unicode website I used: https://unicode-table.com/en/

Q: How did you decide what to name the app?

A: I decided to name the app ማስሊያ: The Amharic Calculator to accurately describe what it does. It is a calculator that can calculate in Amharic, and the translation for calculator in Amharic was ማስሊያ, so I decided to name it ማስሊያ: The Amharic Calculator.

Q: What is the recommended resolution for the app?

A: The recommended resolution is 2560 x 1440. However, it is possible to use the app at lower resolutions as well. The recommended aspect ratio is 16:9, so that it can fill the screen without any leftover space. Rounded screens, such as smart watches, or very large screens, such as smart TVs are not recommended.

Q: How was the display of the app organized, and what does each part do?

A: The display was mainly organized using XML. At the top of the screen is where all the inputs and outputs are displayed. All the buttons are organized beneath it, including the number, operations, backspace, clear, and enter buttons. Underneath the buttons is where the previous answer is displayed, which can only be seen in portrait mode. If the phone is turned to landscape mode, the display and buttons will be shrunk a bit, and and to the left of them is a scrollable history, where all the answers are stored.



The below pictures are screenshots of the app in portrait mode with and without numbers.

Screenshot Image
Screenshot Image


























Experience:

Q: What were some of the challenges faced in making the app?

A: In order to add the Amharic characters to the display, I had to redo how the calculator calculated. Since computers can only calculate using Hindu-Arabic numerals (1, 2, 3), I needed to make a "translator" to convert the Amharic number characters to numbers. That meant I had to get rid of all the display code and replace the numbers with Amharic characters. Another issue was that the "zero" button was not scaling properly on other devices, due to the fact that it is a custom image and images don't scale the same as regular characters. I researched in order to fix this issue, but was unable to.

Q: What solutions did you use to fix these problems?

A: To fix the display problem, I made a translator that converted Amharic numbers to numbers the computer can use. Also, since the calculator was based around English numbers, I got rid of all the variables that store the numbers and instead made them use Amharic for the entire time they were used. My attempt at fixing the scaling issue is to make several copies of the folders used to store the XML variable. Each folder is for different screen sizes, and therefore makes the calculator look smaller or bigger. However, I did not know how to actually make the app choose which file to use.

Q: What was some of the feedback given to you?

A: Below is some of the comments given to the previous version of my app. I used the feedback given to improve it:

"This is really interesting. It is functional, simple, and clean. I really like it. The theme also looks more Ethiopian. I can imagine the arduous task of mapping the actual numbers and the final result into their Geez equivalence. But it would be nice to have that in your next release. I have some minor suggestions, like replacing "ባዶ" by "ዐፅዳ" and renaming the app "መቀመሪያ" instead of "ካልኩሌተር". I am proud of you Tsegazeab (and your Dad should take some credit too)!"

"የመጀመሪያ ጥያቄ የመጣልኝ ዜሮ ቁጥር በ አማርኛም ሆነ በግእዝ እንዳለ ስለማላውቅ በምን እንደ ተካህኸው ማየት እና አፑ እንዴት እንደሚሰራ ማየት ነበር የተካኽው ፩ ሲሆን በትክክል ይሰራል ግን " አልቦ " የሚለው ቃል በግእዝ "ባዶ" የሚለውን ይተካል ባዶ ምንም ማለት ሲሆን "አልቦ" ግን ቁጥር በእንግሊዝኛ "ዜሮ " ሊሆን ይችላል የሚል አስተያየት አለኝ ልክ ከመሰለህ ተጠቀምበት። እግዚአብሔር ያሳድግህ ! ብራቮ ! I'M SO AMAZED BY YOUR HARD WORK ! CONGRATULATION !"

These are some of the reviews, while not offering advice, still thanked me for the application:

"This app is so amazing! I hope you don't mind if I tell all my friends how amazing my cousin"s app is! I AM SPEECHLESS! and (by the way, you created the first ethiopian zero!) CONGRATS!"

"Wow! He is a great inventor. I will show this to my kids. It is so easy to use. Congratulations."

"Great job Abuka. I think I shouldn't be surprised, coz I know how gifted you are. You just make me feel proud of you. Keep it up dear."