Skip to content

Instantly share code, notes, and snippets.

@gioiliop7
Created September 1, 2024 22:52
Show Gist options
  • Save gioiliop7/d1586b5a870ffa41b6a5302cb5f6835a to your computer and use it in GitHub Desktop.
Save gioiliop7/d1586b5a870ffa41b6a5302cb5f6835a to your computer and use it in GitHub Desktop.

Development and Enhancement of the Cloud-Based FOSSBot Platform - GSOC 2024

This is the final report of the work which was done as part of development of the Fossbot Platform @ GSOC24.

Google Summer of Code logo

Name: Giorgos Iliopoulos

Mentor: Christos Chronis

Project Website: https://fossbot.gr

GSOC Page: https://summerofcode.withgoogle.com/programs/2024/projects/uBCSiRhC

Project GitHub: https://github.com/eellak/fossbot-platform

Abstract

The project aims to introduce advanced features and functionalities to enhance the educational experience for both students and educators. Key initiatives will include the integration of interactive simulations, the improvement of coding tools, the expansion of curriculum resources, and the refinement of the user interface to ensure smooth and intuitive navigation. Furthermore, the project will focus on ensuring compatibility across different hardware setups and enhancing accessibility for users with a wide range of needs. In the repository, you will find both frontend and backend code that run in parallel to ensure the smooth operation of the software.

Work and Repository

All of my work can be found at this repository (https://github.com/eellak/fossbot-platform).

In addition to contributing to the codebase, I played a key role in managing deployments on fossbot.gr, the live instance of the platform. My responsibilities extended to DevOps tasks, including maintaining and optimizing the production version, ensuring smooth updates and releases, and handling day-to-day upkeep to keep the platform running efficiently and reliably.

What covered and deliverables

  1. [Bugfix] Camera is turned on in every load of page
  2. [Improvement] Platform on responsive changes and fixes for mobile view
  3. [Improvement] Supported up to tablets; mobile redirects to a "use PC or tablet" page.
  4. [Improvement] Clean code
  5. [Improvement] Save the stage on the project and keep it in database
  6. [Improvement] Changes in the simulator components
  7. [Improvement] Code empty message on terminal, not on alert message
  8. [Bugfix] Start a new project when click on menu items
  9. [Improvement] New translations
  10. Debugging and testing previous versions and new work

Future Work

The project still has several unresolved issues and potential improvements related to my work. I plan to continue addressing these by working on my open pull requests and assisting in maintaining the project in the future.

This is the future work.

  1. Bugfix of when load of blockly project that convers the blocks to code
  2. Page for the introduction of educational materials and the creation of curriculum and lessons.
  3. Dynamic search at projects section
  4. Create a mechanism where a user can share an example with another user, a group, or publicly. If someone chooses to use the shared example, a copy is created in their own projects.
  5. Install a plugin or a npm package that allows users to resize windows (such as the editor, simulator, etc.) using the mouse.
  6. Fix of the bug of the no ending re-render of the page because of auth provider

Challenges

Working on the platform this summer was one of the year's best moments.

During the project, I encountered several challenges and learned many important things:

  • I was exposed to new methodologies and technologies that expanded my existing knowledge.
  • I faced numerous bugs and learned various methods for troubleshooting and resolving issues.
  • I collaborated with a large organization, which provided valuable experience.
  • I gained experience with DevOps practices that I had not previously encountered.

I am also very pleased with the challenges I faced, as they contributed significantly to my growth and improvement. Moreover, working on this project has been particularly rewarding because contributing to education brings an extra sense of fulfillment and joy.

Thanks note

This project is supported by the Google Summer of Code program and the Open Technologies Alliance - Gfoss organization. I would like to extend my sincere thanks to my mentor, Christos, for his invaluable guidance throughout the project, covering areas such as implementation, code review, and community involvement. Additionally, I am grateful to the organization for providing me with the opportunity to work on this project. It was an absolute pleasure working with you and I will try to stay connected with the community in the future!

Conclusion

In conclusion, the development of the Fossbot Platform as part of Google Summer of Code 2024 has been an enriching and transformative experience. The project successfully introduced a range of advanced features and enhancements designed to improve the educational experience for users. The integration of interactive simulations, improved code, and a more intuitive user interface has significantly contributed to the platform's functionality and user experience.

Throughout the project, I have gained valuable insights into new technologies and methodologies, honed my problem-solving skills, and expanded my expertise in DevOps practices. Collaborating with a large organization and engaging with the broader community has been incredibly rewarding, both professionally and personally.

As the project continues to evolve, I remain committed to addressing outstanding issues and implementing further improvements. The journey has been fulfilling, and the opportunity to contribute to educational technology has been particularly gratifying. I look forward to staying connected with the community and continuing to support the platform's development in the future.

Thank you once again to everyone who supported and guided me throughout this project. Your contributions and encouragement have made this experience truly memorable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment