Joomla Google Summer of Code 2019

If you’re a new open source contributor, the process can be intimidating. How do you find the right project? What if you don’t know how to code? What if something goes wrong?

Don’t worry! There are all sorts of ways to get involved with an open-source project — you don’t need to know everything just to get started.

For anything more than a typo fix, contributing to open source is like walking up to a group of strangers at a party. If you start talking about llamas, while they were deep in a discussion about goldfish, they’ll probably look at you a little strangely.

Before jumping in blindly with your own suggestions, start by learning how to read the room. Doing so increases the chances that your ideas will be noticed and heard.

How I Started my Open source Journey with Joomla!?

In the very beginning, I am a little confused before dive-in into the ocean of open source contributions. As I have done some hands-on projects in Web development which is counting my skills like HTML, CSS, and Basics of JavaScript. I have seen thousands plus repository which is also called projects source code files in Github.

Like in beginning I said you are walking in an open party where everyone is enjoying and you have to involve yourself to have more fun with others. The same is what I have done in my Open Source journey. Something good happens to me and I found Joomla! the community that matches my skillsets and the environment of contribution and learning in the community is supporting me from the very first day. 

I didn’t know much about development tools or anything really. I was a complete newbie. But the feeling was awesome! After, I started to find some more beginner-friendly issues. Here are some awesome resources for finding good first issue:

My first contribution begins when I get to know about Accessibility and its importance in development projects. 

Two Ways to Contribute to Open Source Projects

  • Top-down approach: Learn skills first and then contribute.
  • Bottom-up approach: Learn skills along the way while contributing.

I used the bottom-up approach and it suits me well. Grab the issue which you think you can solve, then learn what’s required, and go fix it!

Why Accessibility is Important?

One Billion people have a disability that affects their ability to read the web.

70% of digital content is not accessible on the web and 71% of customers with accessibility needs will leave a website they find difficult to use.

Web Content Accessibility guidelines, (WCAG) breaks down accessibility into 4 main principles :

1. Perceivable: Can a user consume that content on the site in different ways? (having closed-captioned for a video for example).

2. Operable:  Can the site function without causing confusion and with or without the use of a mouse?

3. Understandable: Can a user understand how the user interfaces functions and understand the information on the website?

4. Robust: Can different assistive devices (screen readers) understand and navigate their websites?

These all are the points I keep in mind in my workflow.

GSoC ACCESSIBILITY Project:

I begin with some of my weapons like accessibility testing tools (WAVE, ARC toolkits, AXE dev tools) for the testing of the Joomla! Web accessibility, Going through every issue with the documentation available in WCAG guidelines made my workflow easy, Coming to project of Keyboard navigation system for Joomla! . Implement and improve several accessibility functions in Joomla! Keyboard navigation. Web accessibility means designing and developing your website so that people with disabilities can perceive, understand, navigate, and interact with, and contribute to the Web. Occasionally, the dispute over the definition of accessibility is revived. In fact, there are no contradictions between the two approaches. Design that recognizes the needs of all people also serves people with disabilities. Designing, for people with disabilities, brings benefits to all people - also people without disabilities. However, the term "accessibility" was defined to draw the attention of designers, not just web designers, to the specific needs of people with disabilities. W3C set up a Web Accessibility Initiative whose mission is to ensure that the web is accessible to people with disabilities including auditory, cognitive, neurological, physical, speech, and visual disabilities.

The shortcut implementation in Joomla! so the user can operate the content with the enable keyboard shortcut tools and configure the settings in the Joomla! Plugin itself. In this completion of the Project, the most important role is of my mentors who were helping me every single time with all the issues, the other students are friendly who helped me to improved my issues and code. I would like to be part of the esteemed organization Joomla!.