Open Source Symposium by Hashnode

Open Source Symposium by Hashnode

Hashnode Organized, Open Source Symposium to celebrate the Open source October month. It's a short event with amazing set of speakers from Github, Nearform who are huge open source contributors.

First talk by Matteo Collina on

There is no such thing as luck: making an impact as an OSS developer

Node.JS Technical Steering Committee do lot of things Maintain Github, contribute to the policy and so on.

Matteo Callina got 450+ NPM modules which got 900+ Million downloads per month.

He is sponsored by NearForm to work on Opensource. Some times Matteo Collina was told by many people that he is lucky to work in Opensource, but Matteo Collina replies its not about Luck to work on Opensource its all about Consistency.

Matteo Collina, got introduced to computer in 1988 by his dad in front of Commodore64 (interesting name 😉). He finished his bachelor and Master as Bologna and started working at 2009 as Specialized Factory worker 😯 but now in 2021 he is working at NearForm. He says in life we will have ups and downs.

Matteo Collina, started his first open source contribution in 2007 named LLIP then in 2011 worked I18N library for CoffeeScript and in 2013 work control flow library for NodeJS Kanban. Again in 2013 he developed [Levelgraph] (github.com/levelgraph/levelgraph) which turned out to be the turning point of Life. He shared his work to his heroes and it got attention which made him to work on lot of projects.

How to be paid to work on OSS

  • We can contribute to successful projects, its not that hard.
  • Harder part is write OSS project then get sponser
  • Write OSS then make a business from that; Eg: Gatsby

Open Source is Art ( I once told my write, Code is poetry 🤪).

One of the key part of strategy is figure out the way how to commercialize art (make it viable). NearForm is hiring, checkout their career page

Most of us have Imposter Syndrome, say we are not big enough to do the art. We have to realize everyone can produce some values to open source. Maintenance is one of the hardest part of successful open source project.

If the project has too many moving parts, then it's impossible to maintain move forward.

People matters a lot; Having other contributors is the key to success in OSS. He got invited as maintainer for the Levelup project which made him to learn more things and also this paved way for TSC NodeJS.

How to be Good Open Source citizen

  • Give back to the Open source project by contribution by financial or doing some tasks.
  • Do not expect a bug to be fixed for all library you use
Be kind to the authors
Submit a Pull Request
  • You need to have knowledge on git and github
  • Learn git rebase (very hard feature and takes time to learn but awesome feature)
  • Learn to write Test (automated testing is important)
    Wait for Reviewers
  • Even it is great idea be prepared to be proven wrong
  • We sometimes need to convenience our idea.
    Follow up and fix
  • At sometime our PR will be accepted

If we are using Open Source, it is our responsibility to be the last maintainer. Most of the technology company is built on top on Open source. Companies should dedicate some time to contribute to OSS.

When we maintain open source projects

  • Even new bug is sorrow
  • Coding is not fun any more
  • The once pride will be unattended

Pino is downloaded 8M times per month and V7 is released today.

The friends we meet in our journey of Opensource will change our life. The journey will be amazing which can teach us a lot and can be pride of it. You can one day say the library I write runs is some developers machine, all this is done by him in Italy.

Follow Matteo Collina in twitter

Second talk by Brian Douglas on

How to get your pull request merged

Brian Douglas is Developer Advocate at Github. You can follow him in twitter.

His Career journey is interesting, started as Sales did Finance Degree before starting coding. He feels Open source is valuable to the career and says he works for Small company name Github 😱

Github is discovery place for open source

Many feels, the path to get into Open Source is broken. Its not true for all project some projects got very good path to get started but some projects are missing it. In Github we can discovery lot of Open source projects.

He developed Open Sauce project , this project helped him to get job at Github.

Don't contribute to Open source for the sake of T-shirt. Try to contribute more and build the trust. GraphiQL is looking for maintainers you should give shot. Most of the projects will have contribute.md or code of conduct. If it does not exist talk with maintainers and add it.

Discord is becoming information place for open source

Discord is the place to access information about Graphiql. Lot of open source communities exist in Discord.

Try to contact maintainers there and then commit later. Ideating first will help both the fresh contributor and maintainers.

Spamming maintainers is not OK. As Matteo Collina, mentioned maintainers are also humans, don't DM then. It will be difficult for them to answer each and everyone.

We have lot of resources to get started with our first contribution

Non-code contributors are great and its easier to show value. Check out various ways you can contribute in non-code ways.

Abide by the rules

  • Follow the rules when sending PR
  • There will be linting right from heading, description (all this can be done in github actions itself)
  • Use Discussion tabs when you are going to suggest any new Features.

> Great way to get involved in open source is build tooling outside your project which others can also use >

The best way to get our PR to be merged is by providing values

Use SCQA (Situation, Complication, Question, and Answer) to your PR description, so it will be easier to understand and can be merged quickly.

Mentorship will come automatically when you provide value.

End Gate keeping, and start sponsoring to maintainers. Don't pressure them a lot. Even some fortune 100 companies just use open source and don't help them back in any forms.

During job hunt make sure to share about your open source project in your resume. It can act as a proof that we are able to work on cross-time zone, cross-team and document the process it's actually good soft skill you can show.

Third talk is by Dr. Gleb Bahmutov on

Not just a blog, but a knowledge warehouse: how to make your content searchable

Slides are available here and his twitter account is here and his website.

Write about

  • Setting up PC / OS which we done once in a while
  • Use Git / Node / or something else
  • Debugging something and implementing something new

Gleb started his personal blog is 2013. He had 3 mantra

  • Write for yourself
  • Invest into your expertise
  • Level up in your career

The only down side is sometimes it can be against company policy, we should be careful and handle it properly. Till date Gleb has written 600+ articles in his personal blog.

He has interesting view on index page (first page of blog); he had made the first page to have all the link of all the post along with heading, so it's easier to search anything.

Remember the first audience of the blog post you write is yourself.

Don't care about visit, when you are writing for yourself.

Tip & Tricks & Common mistakes

  • Use your own domain, its your blog its your name (don't give content to some one)
  • Keep it simple, its not mandatory to bring external authors for big file system; if possible run it locally.
  • Organize properly; use tags (couple of keep words) and category (single category for one post, group properly)
  • Show the dates properly so people will know its new and will read them
  • Don't feel bad about updating the blog
  • Write a short note what the authors will get by reading this post
  • If you have code related to the blog post, share them and also make sure the code is also proper and updated regularly
  • Reward the readers who have read the long content; suggest them other interesting related posts.

When you are writing blog posts of all the problems you faced, you can share it to others easily and can build trust.

Not always Google is good for search tech related problems, you can use apps like Algolia which gives good free tier.

After every new blog post, re-update the Algolia index (Scrape the old one). Skip unnecessary parts like archive pages from index, and unnecessary heading too.

Scraping each post every time is waste, we are going to change only few posts per week. Incremental scrapping will be much helpful.

Best format is HTML

His final thoughts
  • Build up your expertise;
  • Learn and Share in Public
  • Implement ways to find the contents

Fourth Talk by Elizabeth K. Joseph on

Developing open source software for various hardware architectures

> Processor is not doubling its speed twice any one.. Not significant jump in past few years >

Power usage is lesser in ARM, so apple tried to adopt it across devices. This is one of the reason why we have specialized architecture coming up nowadays.

Writing the human readable code is just the first step. You can get the code and compile the code to create binary. We have to compile it is respective architecture machines which we are targeting.

Lower level of languages (like C,C++) will have much optimization as they are closer to HW where as higher level languages (like Java) don't care much where they run.

Developers TODO

  • Avoid assumptions
  • Document the usage
  • Don't over optimize
  • Try running your code on different architecture than you coding

To follow her on Twitter