Difference between revisions of "User:Ahmed Siam/GSoC2023Proposal"
Jump to navigation
Jump to search
Ahmed Siam (talk | contribs) (Add more details about the coding challenge project) |
Ahmed Siam (talk | contribs) (Some edits) |
||
(One intermediate revision by the same user not shown) | |||
Line 45: | Line 45: | ||
The ID format will be something like this: AP000000 |
The ID format will be something like this: AP000000 |
||
Note: |
Note: |
||
Line 66: | Line 65: | ||
** It uses ICU message format for i18n and .txt resource bundle files for storing locales data. |
** It uses ICU message format for i18n and .txt resource bundle files for storing locales data. |
||
** It uses Autotools for build automation. |
** It uses Autotools for build automation. |
||
* I have also written a program that enables to internationalize shell scripts and sent a pull request to the lttoolbox repo with the program integrated (can be found [https://github.com/apertium/lttoolbox/pull/174 here]). |
|||
== Previous Contributions == |
|||
* Add option to set compound_max_elements in lt-proc (merged): https://github.com/apertium/lttoolbox/pull/175 |
|||
* Write and add a minimal gettext equivalent to the lttoolbox repo (not merged): https://github.com/apertium/lttoolbox/pull/174 |
|||
* Fix broken links in lexd README file (merged): https://github.com/apertium/lexd/pull/26 |
|||
== Work Plan == |
== Work Plan == |
Latest revision as of 15:34, 29 March 2023
Google Summer of Code 2023 proposal draft
Contents
Contact[edit]
- Name: Ahmed Siam
- Email: aahs.coder@gmail.com
- IRC: AhmedSiam
- GitHub: https://github.com/ahmedsiam0
- Linkedin: https://www.linkedin.com/in/ahmedasiam
- Timezone: UTC+2
Background[edit]
- I am a freshman computer science student at Ain Shams University in Egypt.
- Native Language: Arabic
- Second Language: English
Skills[edit]
- C++
- Linux Basics
- Git
Why am i interested in Apertium?[edit]
- I found that Apertium is a suitable place to learn about how open source projects operate and how can i take part in.
- It has an interesting and active community.
Proposal: Internationalization of Apertium Tools[edit]
Apertium tools are currently hard-coded as english-only.
This project aims to internationalize them so that they can be localized easily to other languages.
Tools that will be internationalized:-
- https://github.com/apertium/lttoolbox
- https://github.com/apertium/apertium
- https://github.com/apertium/apertium-lex-tools
- https://github.com/apertium/apertium-separable
- https://github.com/apertium/apertium-recursive
- https://github.com/apertium/apertium-anaphora
- https://github.com/apertium/lexd
Each error and warning message will have a wiki page and unique ID for easy search online.
The ID format will be something like this: AP000000
Note:
- Internationalization(i18n) and Localization(l10n) are not the same thing.
- In summary, i18n is related to programming while l10n is related to translation.
- for more details about this, take a look at https://en.wikipedia.org/wiki/Internationalization_and_localization.
Why should Google and Apertium sponser it?[edit]
- The internationalization of the tools makes it easier for non-english users to use it.
how and who it will benefit in society?[edit]
- It will make the use of Apertium tools easier for non-english users.
Coding Challenge[edit]
- I have done the coding challenge related to this project and its code can be found here.
- It is a simple program that prints "Hello World" in the default language of your computer (it supports English, Spanish and Danish).
- It uses ICU message format for i18n and .txt resource bundle files for storing locales data.
- It uses Autotools for build automation.
Previous Contributions[edit]
- Add option to set compound_max_elements in lt-proc (merged): https://github.com/apertium/lttoolbox/pull/175
- Write and add a minimal gettext equivalent to the lttoolbox repo (not merged): https://github.com/apertium/lttoolbox/pull/174
- Fix broken links in lexd README file (merged): https://github.com/apertium/lexd/pull/26
Work Plan[edit]
Time Period | Goal | Deliverable |
---|---|---|
Community Bonding Period
May 4-28 |
Discuss and define more details about the project and initialize it. | |
May 29 - June 26 | Internationalize lttoolbox | PR on lttoolbox repository |
June 27 - July 10 | Internationalize apertium | PR on apertium repository |
midterm evaluation | lttoolbox and apertium internationalized | |
July 11 - 24 | Internationalize remaining tools | PRs on apertium-separable, apertium-anaphora, apertium-recursive, lexd, and apertium-lex-tools |
July 25 - August 21 | Unknown | |
final evaluation | Project done |
Time Commitments[edit]
- I will have final exams in June so i will assign 10 hours a week for the project until i finish my exams.
- I don't have time commitments in the coding period after final exams.