In the realm of open source, coding is the most common way to contribute towards a project. However, open source projects can offer multiple opportunities for contribution that goes beyond just code contributions.
By making non-coding contributions, individuals can benefit open source projects as well and gain knowledge and confidence.(wang, n.d.)
Today I want to talk about 4 factors a user can improve and partake in an open source project without coding.
DOCUMENTATION:
Documentation is so important as it involves writing clear and comprehensive instructions to help the user understand what to do, it can improve maintenance, and specific contributions to a project.(wang, n.d.)
It provides guidance for installation, maintenance and step by step instructions on tasks. By making the process easier it can encourage and promote more less experienced contributors to work on the project, creating a more diverse community.
On GitHub, when making my first contribution on the “First contribution” repo, it was quite daunting. By following the instructions given on the github repo, and looking into changes other people had made, I was able to quickly understand what I needed to do to contribute appropriately to the project.
The documentation on einsteinpy was too very helpful, as I explain in my contribution 2 post, the readme file contained alot of valuable information to guide the user on setting up the right environment, by installing and having the right packages, before choosing an issue.
COMMUNITY ENGAGEMENT:
Community engagement involves anyone participating in the project to engage is discussion using online forums.
When contributing to einsteinPy on GitHub, I found that interactions were very necessary, as it helped me understand the project more and feel more confident in my contribution. These discussions typically centre around collaboration and knowledge sharing interns of feedback and insights, which were very positive and encouraging when improvement was needed.
User support provides support to users by answering questions and troubleshooting issues helps build a supportive community around the project.(wang, n.d.)
UX:
User Experience(UX) is how the user interacts with a product or service. A good user experience involves user satisfaction and enhancing usability and design, which can attract more users, increasing the amount of contributors and interest in your project. (Wang, n.d.)
Usability and UX are major factors in software, they affect how efficiently and easy users interest with the system.(Cheng, 2018)
In the case of einsteinpy, creating clear navigation, documentation, and integration of features, as well as positive feedback, can enhance their usability and UX. By prioritising such elements, einsteinpy is a more user-friendly environment. Which can help generate more interest and involvement beyond code from their contributors.
ACCESSIBILITY AND INCLUSIVITY:
This is all about ensuring everybody, from any background and any level of experience is welcome to access or engage with the open source project. Usability testing is quite popular as it demonstrates how to improve accessibility and connect with a more diverse range of participants, which can improve the UX of the project.
Contributions beyond code, community engagement, as well as documentation, mentorship, and advocacy, play a vital role in advancing diversity and inclusion efforts. (Open Source Diversity, n.d.).
This approach shows that improving accessibility and inclusivity involves more than just coding, and these attributes, such as mentorship, advocacy, documentation and community can affect various forms of engagement and support for the project. By only meeting the needs of a certain type of participant or group, might limit the projects’s capabilities.
Open source projects, like “first-contributions” on GitHub, have different languages available in their documentation, this means that contributions from those who do not understand the original language can participate in the project, giving insight and feedback, this overall improves the confidence of the contributor and any issues with the project itself.
einsteinpy was very in tune with this procedure, ensuring that those from differing background and abilities are welcome to contribute. They can understand that contributing goes beyond code, where the communities needs and communication is just as valuable for successful participation. Another way users can gain insight is by joining their mailing list. Anyone is able to join, and can help foster new opinions and accessibility on the project and information surrounding it.
In conclusion, contributing to open source project goes further than code. Paying attention to the documentation, community engagement, UX and accessibility attributes improves the quality of the project and satisfaction from its community and participants.
REFERENCES:
Cheng, J. and Guo, J.L.C. (2018). How Do the Open Source Communities Address Usability and UX Issues? Extended Abstracts of the 2018 CHI Conference on Human Factors in Computing Systems. [online] doi:https://doi.org/10.1145/3170427.3188467.
Wang, J. (n.d.). 8 non-code ways to contribute to open source | Opensource.com. [online] opensource.com. Available at: https://opensource.com/life/16/1/8-ways-contribute-open-source-without-writing-code [Accessed 15 May 2024].
Open Source Diversity. (n.d.). Open Source Diversity. [online] Available at: https://opensourcediversity.org [Accessed 15 May 2024].