Difference between revisions of "User:Ahmed Siam/GSoC2023Proposal"

From Apertium
Jump to navigation Jump to search
(Add proposal draft)
 
(Some edits)
 
(7 intermediate revisions by the same user not shown)
Line 29: Line 29:
 
== Proposal: Internationalization of Apertium Tools ==
 
== Proposal: Internationalization of Apertium Tools ==
   
  +
Apertium tools are currently hard-coded as english-only.
* TODO
 
  +
  +
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? ==
 
== Why should Google and Apertium sponser it? ==
   
* the Internationalization of the tools makes it easier for non-english users to use it.
+
* The internationalization of the tools makes it easier for non-english users to use it.
   
 
== how and who it will benefit in society? ==
 
== how and who it will benefit in society? ==
Line 41: Line 61:
 
== Coding Challenge ==
 
== Coding Challenge ==
   
I have done the coding challenge related to this project and its code can be found [https://github.com/ahmedsiam0/hello-with-icu here].
+
* I have done the coding challenge related to this project and its code can be found [https://github.com/ahmedsiam0/hello-with-icu 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 ==
== Work done related to the project ==
 
   
I have 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]).
+
* 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 ==
   
  +
{| class="wikitable" border="1"
* TODO
 
  +
|-
  +
! 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 ==
  +
* 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.
  +
  +
[[Category:GSoC_2023_student_proposals]]

Latest revision as of 15:34, 29 March 2023

Google Summer of Code 2023 proposal draft

Contact[edit]

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

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:

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]

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.