development

How can I contribute to an open source project?

Please select all the ways you would like to hear from Harmony project:

How can I contribute to an open source project?

How can I contribute to an open source project?

Your guide to contributing to open source projects

Are you feeling intimidated by the thought of stepping into the world of open source contributions? You don’t have to be an expert to help.

You might find this guide helpful: https://opensource.guide/how-to-contribute as well as the Reddit Opensource community.

1. Start small, think big:

  • Don’t feel pressured to tackle the most complex issues right away. Look for smaller tasks that align with your skills and interests.
  • These could be fixing typos in documentation, improving code readability, or adding simple features that haven’t been prioritised yet.
  • Remember, every contribution, no matter how small, adds value to the project.

You can try finding projects on Kaggle as a place to get started.

2. Find your niche:

  • Choose a project that aligns with your passions and expertise. This engagement will fuel your motivation and make the learning curve more enjoyable.
  • Explore projects you already use and appreciate, or discover new ones that pique your curiosity.

3. Embrace the learning curve:

  • Contributing to open source is a fantastic way to learn and grow as a developer.
  • Don’t be afraid to dive into unfamiliar codebases. Take your time, explore, and don’t hesitate to ask questions if you get stuck.
  • Even experienced contributors started as beginners—everyone’s been there!

4. Embrace imperfection:

  • Your first contribution might not be perfect, and that’s perfectly OK!
  • Even if you struggle to run the code, your feedback on that is helpful as it lets us troubleshoot the code base for the next joiner.
  • The open source community values learning and collaboration. Experienced developers are often happy to provide feedback and guidance to help you improve.
  • Be open to constructive criticism and use it as an opportunity to learn and refine your skills.

5. Celebrate the wins:

  • Every contribution, no matter how small, is a victory. Take pride in your accomplishments and celebrate your progress.
  • Each contribution builds your confidence and skills, paving the way for even greater contributions in the future.

Remember: Open source communities thrive on diversity and inclusivity. Your unique perspective and skills are valuable, so don’t be afraid to share them with the world. Take that first step, start small, and watch your contributions grow alongside your confidence.

Ideas for open source projects you can contribute to

  • Harmony - we are always on the lookout for anyone who can work on the back end (API), front end, or NLP side of Harmony! https://github.com/harmonydata/harmony
  • spaCy - one of the best known NLP libraries
  • Country Named Entity Recognition - a lightweight Python library for recognising country names in unstructured text and returning Pycountry objects. Very simple and a good library to start with on your open source journey pip install country_named_entity_recognition
  • Drug Named Entity Recognition - a lightweight Python library for recognising drug names in unstructured text pip install drug-named-entity-recognition
  • Fast Stylometry - a Python library for identifying the author of an unknown text (forensic stylometry). pip install faststylometry. Read tutorial.

How can I contribute to Harmony?

Read our guide to contributing to Harmony.

Harmony is a powerful data harmonisation tool which uses natural language processing (NLP) to bridge the gap between diverse research studies, automatically comparing and grouping similar items across datasets. Here are a few ways you can get involved in the project:

1. Get coding

Harmony’s back end is built in Python and the front end is in React. There is also an R library. Whether you’re a seasoned developer or a coding newbie, there’s a place for you. You can:

  • Browse open issues and pull requests and find a challenge that sparks your interest and contribute your unique skills.
  • Help maintain the existing code: Fix bugs, improve documentation, and suggest optimisations.
  • Develop new features: Take Harmony to the next level by proposing and implementing innovative solutions.

2. Work on the NLP models

The heart of the magic of Harmony is the large language models that it depends on, taken from the Hugging Face Hub. You can contribute by:

  • Exploring and testing NLP algorithms: Experiment with different NLP techniques to improve Harmony’s accuracy and efficiency.
  • Developing new language models: Try training your own LLM specialised in psychology.
  • Contributing to the NLP community: Share your insights and findings with other NLP enthusiasts, fostering a collaborative spirit.

The deeper we understand language, the better we can harmonise the world’s research data.

3. Publicise Harmony

Harmony’s mission thrives on awareness and accessibility. Can you champion the Harmony project online?

  • Writing blog posts and articles: Share your experiences with Harmony and inspire others to join the cause.
  • Creating tutorials and videos: Make Harmony approachable for beginners and showcase its potential to a wider audience.
  • Promoting Harmony as an open source project on social media: Share the love on Twitter, Facebook, and beyond, using the hashtag #OpenSourceHarmony.
  • Join Harmony’s public events - we have run a hackathon, an online orientation session and been active in Pydata, AI Camp and other events.

Ready to join the Harmony open source project? Head over to our GitHub repository at https://github.com/harmonydata/harmony, explore the free web tool at harmonydata.ac.uk/app, and dive into our documentation.

You can also try working on the Harmony R package on CRAN or try extending the Harmony API.

Bonus tip: We also have a Docker container available, making it even easier to get started with Harmony. Just check out our documentation for more details.

Together, we can shape the future of Harmony as an open source project and make it more sustainable for the future.

Related Posts

Improve Harmony's PDF parsing on DOXA AI

Improve Harmony's PDF parsing on DOXA AI

Train your own Large Language Model to parse PDFs and win up to £1000 in vouchers! Join a competition to train a machine learning model to improve Harmony’s PDF parsing. You don’t need to have trained a machine learning model before. Register on DOXA AI Enter the competition on DOXA AI by fine tuning your own model and improve Harmony! Join our Discord Join the Harmony Discord server. Check out the 🏅「matching-challenge」 channel!

Harmony at GenAI and LLMs night at Google London

Harmony at GenAI and LLMs night at Google London

Harmony at GenAI and LLMs night at Google London on 10 December 2024 Above: video of the AICamp meetup in London on 10 December 2024. Harmony starts at 40:00 - the first talk is by Connor Leahy of Conjecture We have presented the AI tool Harmony at the GenAI and LLMs night at Google London on 10th December organised by AI Camp at Google Cloud Startup Hub. AI Camp and Google hosted two deep dive tech talks on AI, GenAI, LLMs and machine learning, with food/drink, networking with speakers and fellow developers.

Signup to our newsletter

The latest news on data harmonisation project.

Please select all the ways you would like to hear from Harmony project:

You can unsubscribe at any time by clicking the link in the footer of our emails. For information about our privacy practices, please visit our website. We use Mailchimp as our marketing platform. By clicking below to subscribe, you acknowledge that your information will be transferred to Mailchimp for processing. Learn more about Mailchimp's privacy practices.