How to Contribute to Tech Community

Regardless the fact that Vietnam is one of the booming countries for tech talents, there is still a whole gap between us and top developers around the world. Most of the points are related to how professional we are, our collaboration skill or soft skill.

Being a part of tech community, realizing a few issues, also wanting to contribute a bit, this blog post is my precious and is a part of whole series to improve the quality of next generation of developers.

Below is the short list of recommended things to do to contribute to tech community.

Start by listening

Walking in to a project and saying “Hi, here’s what I think this project should be doing” is usually not taken as a good thing. Some projects may welcome that sort of approach, but if the project has been running a while, the chances of that attitude being embraced are small. Listening is the best way to know what the project needs.

Join a mailing list

For a large scale and open project or community that involve a lot of people, communication through mailing list is one of the most effective way to not distract others and good for you to follow the entire discussion.

Some of the mailing lists I followed over the past 2 years

  • Viet Infosec
  • golang-dev
  • golang-nuts

Follow a blog

Elite developers blog are great knowledge sources that you should follow and learn from them. Some of the rock stars they don’t really have their blog. Instead, they use Twitter for daily updates.

Join online discussions via Slack or IRC

Most of the communities have their our channel to keep in touch and discuss about the project or things related to the community with other members.

IRC is one the most popular tools that has been used by many projects e.g Python, PostgreSQL, OpenStack, etc. IRC is a free software. You just need to download a client and ask for the node address to login.

Beside IRC, there are several modern communication platforms, they are commerce products that serve the teamwork very well. Some with free plan has been applied to newborn community: Gitter, Slack, Discord, etc. and the new members are always welcome there.

Some communities in Vietnam I take participation in

Participating

Organizing events

Event organizer is a difficult job and very time consuming but it’s the most important factor to keep the community alive. People might not find it important as it really depends on the interest. During the days in 201x, more and more events was held by various scale of organizations and companies. Some activities that you may found

  • Technical Meetup (Golang, Ruby, Geeky, Grokking)
  • Product Meetup
  • Design Workshop
  • Mobile Day
  • Web Summit

Sponsor an Event

Sponsoring a participant in a program can be a great way to show your support, especially when you have your friends or employees participating in that event.

Usual the local events are just at small scale from 50 – 100 participants. If they are meetup or workshop event, most of their needs are a venue to organize or food and beverage or small amount of money for operation costs.

Sharing your knowledge

In every events, if you can’t afford to sponsor an event or have enough time to be a organizing member, you still can give your hand to the community by sharing your thoughts, your knowledge to other people.

Answer a question The best way to help build the community is by helping others. Answering someone questions especially when he is just getting his feet wet is very helpful for him. I see a lot Viet Community doesn’t have that culture. They usually piss off the newbies and don’t want to give out their hands.

Write a blog post

If you’ve got a blog, write about your experiences with the project that you’re using. Tell about a problem you faced using the software and what you did to solve it. You’ll be helping in two ways, both by helping keep the project on the minds of others around you, and by creating a record for anyone else who has your problem in the future and searches the web for the answer.

Contributing to Open Source

Open source software (OSS) is distributed under a licensing agreement which allows computer code to be shared, viewed and modified by other users and organizations.

Or in slightly more user-friendly language, open source software is available for the general public to use and modify from its original design free of charge. What it means is that a piece of software can evolve and be iterated upon by other developers anywhere in the world. Ideally, this means that the software is improved over time, but it can often take plenty of interesting twists and turns with all of that evolution and can change form and shape entirely. 1

Diagnose a bug

Bugs are often poorly reported. Building an attitude to help narrow down the problem make it easier for the developers to fix it. Whatever you discover, add it to the ticket in the bug system for all to see.

Fix a bug

Finding an interesting bug in ticket system and try to fix it is a best practical way to contribute to the open source project. Remember to follow the guideline and during your working period, document whatever you know to help the later contributors. Write some tests if you can.

Write a test

Adding the test to the open source project will help to improve the quality and make it more stable. In some cases, test cases and test suites are more like the documents for the project.


  1. https://en.wikipedia.org/wiki/Open-source_software

Comments