Difference between revisions of "User:Harikrishna/GSoC2024Proposal"

From Apertium
Jump to navigation Jump to search
 
(9 intermediate revisions by the same user not shown)
Line 3: Line 3:
 
* '''Email:''' hari.66.hks@gmail.com
 
* '''Email:''' hari.66.hks@gmail.com
 
* '''Location:''' India
 
* '''Location:''' India
* '''GitHub:''' [[https://github.com/satti-hari-krishna-reddy| Hari Krishna]]
+
* '''GitHub:''' [[https://github.com/satti-hari-krishna-reddy satti-hari-krishna-reddy]]
* '''Linkedin:''' [[https://linkedin.com/in/hari-krishna-r-86659b249| Hari Krishna R.]]
+
* '''Linkedin:''' [[https://linkedin.com/in/hari-krishna-r-86659b249 Hari Krishna R.]]
 
* '''IRC:''' satti-hari-krishna-reddy
 
* '''IRC:''' satti-hari-krishna-reddy
* '''Timezone:''' GMT+5:30
+
* '''Timezone:''' UTC +5:30
   
 
== Background ==
 
== Background ==
Line 24: Line 24:
 
== Proposal ==
 
== Proposal ==
   
'''Title: Spell-Checking Interface'''
+
'''Title: Spell-Checking Interface for Apertium's Web Tools'''
   
 
=== Deliverables ===
 
=== Deliverables ===
 
* '''Update and Polish Spell-Checking Interface:'''
 
* '''Update and Polish Spell-Checking Interface:'''
** Review and update the spell-checking interface from the existing [[https://github.com/apertium/apertium-html-tools/pull/176| pull request]] in Apertium-html-tools to align with the current codebase.
+
** Review and update the spell-checking interface from the existing [https://github.com/apertium/apertium-html-tools/pull/176 pull request 176] in Apertium-html-tools to align with the current codebase.
 
* '''Develop APy Mode for Voikko Modules:'''
 
* '''Develop APy Mode for Voikko Modules:'''
 
** Develop an APy mode for Voikko modules that allows easy access to Apertium's spell-checking capabilities using Voikko modules.
 
** Develop an APy mode for Voikko modules that allows easy access to Apertium's spell-checking capabilities using Voikko modules.
Line 39: Line 39:
 
== How and who will it benefit in society? ==
 
== How and who will it benefit in society? ==
 
The enhancement of spell-checking capabilities within Apertium contributes to a more reliable and effective error detection and correction system for users across various languages.
 
The enhancement of spell-checking capabilities within Apertium contributes to a more reliable and effective error detection and correction system for users across various languages.
 
== Coding Challenge ==
 
I couldn't find any specific coding challenge mentioned in the project idea page.
 
   
 
== Previous Contributions ==
 
== Previous Contributions ==
* added a string directing to beta.apertium.org (Merged): [[https://github.com/apertium/apertium-html-tools/pull/483| Pull Request #483]]
+
* added a string directing to beta.apertium.org (Merged): [[https://github.com/apertium/apertium-html-tools/pull/483 Pull Request #483]]
* Build should not rely on git (Merged): [[https://github.com/apertium/apertium-html-tools/pull/481| Pull Request #481]]
+
* Build should not rely on git (Merged): [[https://github.com/apertium/apertium-html-tools/pull/481 Pull Request #481]]
* replaced double quote strings with single quotes (Merged) : [[https://github.com/apertium/phenny/pull/602| Pull Request #602]]
+
* replaced double quote strings with single quotes (Merged) : [[https://github.com/apertium/phenny/pull/602 Pull Request #602]]
* modified " help us improve" link (Open): [[https://github.com/apertium/apertium-html-tools/pull/498| Pull Request #498]]
+
* modified " help us improve" link (Open): [[https://github.com/apertium/apertium-html-tools/pull/498 Pull Request #498]]
* Improve swap lang button for language and text swapping (Open): [[https://github.com/apertium/apertium-html-tools/pull/482| Pull Request #482]]
+
* Improve swap lang button for language and text swapping (Open): [[https://github.com/apertium/apertium-html-tools/pull/482 Pull Request #482]]
   
 
== Work Plan ==
 
== Work Plan ==
Line 57: Line 54:
   
 
=== Week 1: May 27 - June 2 ===
 
=== Week 1: May 27 - June 2 ===
* Review existing spell-checking interface in Apertium-html-tools repository.
+
* Review the existing spell-checking interface in the stale pull request of the Apertium-html-tools repository.
  +
* Discuss initial observations and potential improvements with mentors.
   
 
=== Week 2: June 3 - June 9 ===
 
=== Week 2: June 3 - June 9 ===
* Identify areas for improvement and alignment with current codebase.
+
* Start updating and enhancing the interface in the stale pull request by converting it to React to align with the current codebase.
   
 
=== Week 3: June 10 - June 16 ===
 
=== Week 3: June 10 - June 16 ===
  +
* Begin updating and enhancing the interface for compatibility and functionality.
 
 
* Engage with community for feedback and guidance.
  +
* Continue updating the interface.
   
 
=== Week 4: June 17 - June 23 ===
 
=== Week 4: June 17 - June 23 ===
* Engage with community for feedback and guidance on interface enhancements.
 
   
=== Week 5: June 24 - June 30 ===
 
 
* Test updated interface functionality.
 
* Test updated interface functionality.
 
* Implement additional improvements based on feedback and testing.
 
* Implement additional improvements based on feedback and testing.
 
* Update documentation.
 
* Update documentation.
   
=== Week 6: July 1 - July 7 ===
+
=== Week 5: June 24 - June 30 ===
  +
 
* Understand the requirements for integrating Voikko modules into APy.
 
* Understand the requirements for integrating Voikko modules into APy.
  +
* Begin developing python modules that interact with Voikko's spell-checking functionality.
  +
* Discuss with mentors to finalize a method for the APy mode to automatically detect available Voikko modes.
  +
 
=== Week 6 - 7: July 1 - July 14 ===
  +
 
* Prepare for the midterm evaluation.
 
* Prepare for the midterm evaluation.
  +
* Integrate the python modules into the APy to create a new mode for spell-checking.
  +
* Finish developing the python modules that interact with Voikko.
 
* Test the functionality of the APy mode and iterate on improvements based on feedback from mentors.
 
* '''Deliverable: Finalized Spell-Checking Interface.'''
 
* '''Deliverable: Finalized Spell-Checking Interface.'''
   
=== Week 7: July 8 - July 14 ===
+
=== Week 8 - 10: July 15 - August 4 ===
* Implement an APy mode that facilitates access to Apertium's spell-checking capabilities using Voikko modules.
 
* Test the functionality of the APy mode and iterate on improvements based on feedback from mentors.
 
   
=== Week 8 - 10: July 15 - August 4 ===
 
 
* Understand the integration process for Libvoikko support into APy.
 
* Understand the integration process for Libvoikko support into APy.
  +
* Implement wrapper classes to encapsulate Libvoikko functionality within APy.
* Develop and integrate Libvoikko support into APy to enable Voikko inclusion as Apertium modes that understand Apertium stream format.
 
  +
* Integrate wrapper classes into APy to incorporate Libvoikko support for processing text in Apertium stream format.
 
* Conduct comprehensive testing to ensure the functionality and compatibility of Libvoikko support with APy.
 
* Conduct comprehensive testing to ensure the functionality and compatibility of Libvoikko support with APy.
   

Latest revision as of 03:50, 2 April 2024

Contact[edit]

Background[edit]

I am currently pursuing a Bachelor of Technology degree at Pragati Engineering College, India, specializing in Electrical Engineering with a minor in Computer Science. Fluent in Telugu (native language) and English (second language). With a strong passion for software development, I have been actively involved in various development projects for the past two years alongside my studies. My experience includes working with technologies such as React, Python, and others, which have equipped me with the necessary skills to contribute effectively to the Apertium project.

Skills[edit]

  • React
  • TypeScript
  • Python
  • Git
  • Linux Basics
  • React Testing

Why am I interested in Apertium?[edit]

I'm drawn to Apertium for its active community and its potential to make a real difference in Machine Translation. Its rule-based approach and support for low-resource languages align with my interests and sparking my enthusiasm to contribute and learn.

Proposal[edit]

Title: Spell-Checking Interface for Apertium's Web Tools

Deliverables[edit]

  • Update and Polish Spell-Checking Interface:
    • Review and update the spell-checking interface from the existing pull request 176 in Apertium-html-tools to align with the current codebase.
  • Develop APy Mode for Voikko Modules:
    • Develop an APy mode for Voikko modules that allows easy access to Apertium's spell-checking capabilities using Voikko modules.
  • Implementing Libvoikko Support for APy:
    • Implement Libvoikko support for APy by integrating Libvoikko into APy and enabling Voikko to understand Apertium stream format.

Why should Google and Apertium sponsor it?[edit]

By sponsoring the enhancement of spell-checking capabilities, addressing the need for improving user experience and contributing to the accessibility and usability of language technology tools.

How and who will it benefit in society?[edit]

The enhancement of spell-checking capabilities within Apertium contributes to a more reliable and effective error detection and correction system for users across various languages.

Previous Contributions[edit]

Work Plan[edit]

Community Bonding Period (May 1 - 26)[edit]

During this period, I will familiarize myself with the Apertium community, discuss project details with mentors , and gain a deeper understanding of the existing codebase and project requirements.

Week 1: May 27 - June 2[edit]

  • Review the existing spell-checking interface in the stale pull request of the Apertium-html-tools repository.
  • Discuss initial observations and potential improvements with mentors.

Week 2: June 3 - June 9[edit]

  • Start updating and enhancing the interface in the stale pull request by converting it to React to align with the current codebase.

Week 3: June 10 - June 16[edit]

  • Engage with community for feedback and guidance.
  • Continue updating the interface.

Week 4: June 17 - June 23[edit]

  • Test updated interface functionality.
  • Implement additional improvements based on feedback and testing.
  • Update documentation.

Week 5: June 24 - June 30[edit]

  • Understand the requirements for integrating Voikko modules into APy.
  • Begin developing python modules that interact with Voikko's spell-checking functionality.
  • Discuss with mentors to finalize a method for the APy mode to automatically detect available Voikko modes.

Week 6 - 7: July 1 - July 14[edit]

  • Prepare for the midterm evaluation.
  • Integrate the python modules into the APy to create a new mode for spell-checking.
  • Finish developing the python modules that interact with Voikko.
  • Test the functionality of the APy mode and iterate on improvements based on feedback from mentors.
  • Deliverable: Finalized Spell-Checking Interface.

Week 8 - 10: July 15 - August 4[edit]

  • Understand the integration process for Libvoikko support into APy.
  • Implement wrapper classes to encapsulate Libvoikko functionality within APy.
  • Integrate wrapper classes into APy to incorporate Libvoikko support for processing text in Apertium stream format.
  • Conduct comprehensive testing to ensure the functionality and compatibility of Libvoikko support with APy.

Week 11 - 13: August 5 - August 26[edit]

  • Discuss documentation details with mentors and organization.
  • Finalize the project deliverables, addressing any pending tasks or feedback from mentors.
  • Based on discussions, incorporate any additional tasks such as writing additional unit test cases or addressing any other identified areas for improvement.
  • Project completed.

Non-Summer of Code Plans[edit]

My final exams will be completed by April, and I have no plans other than GSoC for the summer of 2024. I can devote 30-40 hours per week to this project.