Sometimes I hear, read, or watch a true inspiration. You know, when you face it and you immediately take an action.
One of such things was to always keep your income higher than outcome. The other was a truly remarkable movie The greatest showman which pointed into the danger of prioritizing things that should not be prioritized in exchange for neglecting others - more important.
And then, I've read an amazing comment response from Piotr Solnica on his 10 years of open-source article:
The only suggestion I'd have for anybody who considers contributing to OSS is this: do it only if it directly benefits you and be 100% selfish in a good way... Don't fix other people's problems as long as it doesn't benefit you directly in the short term. Piotr Solnica^f999ff
This was awesome, it really triggered something in my head. I would consider it as a Wow! moment in my life when I've read it.
So let's think about what this comment says and what I've done with it.
You should not contribute to Open Source if it doesn't benefit you.
Open Source contributions are often pretty much charity work. You don't get paid for it, you don't get too much appreciation or recognition.
However, If you'd like to really focus on open-source contributions, and contribute like crazy, full-time, or whatever, it's obvious you need to take care of your stability first.
Therefore, unless you have a decent amount of passive income, you haven't got rich on crypto or anything like that, it's unlikely if it can pay back to you in any way.
So here is how I understand when it's ok to do open-source contributions.
- If you treat it as a hobby, and none of the above matters, you're fine.
- If you just want to add OSS contributions to your CV, it's all fine.
- If your app just needs that fix/improvement, then you're fine.
However, if you can't find any of those beneficial enough, to start being engaged in open-source projects heavily, then you should either resign...
Don't. Just don't
... or you can also... make it beneficial if it's not just YET.
I know that something inspires me when after facing this happening or fact, I immediately start taking action.
In this particular case, I really enjoyed the Hanami initiative and the project. I really wanted it to succeed. And I mean: REALLY.
I want more diversity in the Ruby community, more inspirations, more different solutions, and ways of doing the same thing, as only then the real innovation happen. Where there are different points of view at the same topic.
However, any open-source contribution is extremely time-consuming and risky, if you don't get personal benefits immediately.
It was certainly NOT a case for me. I worked mostly in Rails projects, so it was definitely NOT in my direct interest to spend my free time to help Hanami evolve.
So I changed it.
- I started the Hanami Mastery initiative.
- I changed my work to be exposed to Hanami in a commercial environment.
1. Supporting Hanami via Hanami Mastery initiative
Hanami Mastery can look like a simple thing, but it's not. It's a win-win initiative.
- By improving the learning resources base available on the web, I increase the chance of Hanami to gain popularity and succeed.
- By supporting Hanami via Github Sponsors, I do increase the chance that more great developers will join the core team, and the existing team will spend more time working on it.
- By doing my research for episodes, I can help with the proper documentation of the project.
Hanami Beneficients ecosystem
All that results in better tooling prepared by constantly growing dev team and contributors community, and the whole ruby community benefiting from it.
However, I am able to do so, because it improves also my personal branding, and I can and do plan to monetize this blog.
Without it, I could not** afford to spend so much time on promoting Hanami**, as I have my family to support and my life to handle.
However, it was not enough.
2. Getting Commercial experience
The research for making technical videos on the technology you don't work in your daily job is SOOO time-consuming!
I barely handled that without affecting my job. But switching contexts between Rails in work hours and Hanami in the evenings or weekends? That was tough.
So I started to think about the solutions.
Hanami 1.3 is not Hanami 2.0
One of the key things that existing users will need very soon to get expertise, advice, and guides is upgrading Hanami 1.3 to 2.0.
There are plenty of existing projects using Hanami and all of them will soon face the same problem. However, I don't know Hanami 1.3 so I can't help with that!
I started to be interested in Hanami when it already was in the pre-alpha 2.0 version, so I just contacted the core team and started to learn the development version, to save my time in the future.
Still, I didn't have the commercial experience within Hanami, so both, my support and the advancement of my Hanami screencasts were limited. To improve, I needed a change.
So I changed my career life.
I looked for opportunities to take actions that would benefit me in all my life goals, while at the same time, would give benefits to the Hanami framework and the Community.
If I could find such a client and join the team as a developer, I would be able to get more insights about
- how people use Hanami
- what problems do they face
It would tremendously improve the quality of the content I'm making!
Hanami Beneficients ecosystem
I would also be able to save a lot of time on research if I'd do part of my research just by helping my clients' problems to be solved!
It's a WIN-WIN-WIN-WIN situation!!!
- My client wins
- Hanami wins
- Community wins
- I win!
If the Hanami community grows, such a project would get more great developers to hire, which would result in more impact on the development. Finally, from more work put into the Hanami development, everybody would benefit by getting better tooling.
Hanami Beneficients ecosystem
Therefore, I've joined the project, where I can be exposed to plenty of existing commercial applications written in Hanami 1.3. I can figure out and lead the upgrade of their projects to 2.0, and after documenting that experience, will be a great addition to official Hanami Guides.
The key to stunning OS contributions
I always try to correlate my personal goals, with the goals of the client I'm working with, and the community I'm working within.
Only then do I get maximum effects from the actions I take. Take a look at my Hanami Mastery project.
Hanami Beneficients ecosystem
My actions, the work I do within Hanami Mastery, benefits a lot of people! Including myself!
- Whole Hanami community
- Whole Ruby community
- Hanami Project itself
- Company I work for as a developer, and every member in my team.
- New developers wanting to write amazing Ruby applications
- Hanami Mastery initiative
- Myself
Benefits from Hanami Mastery for Hanami community
By publishing Hanami screencasts and tutorials, the Hanami community gets great learning resources. It's easier to start with Hanami or switch from other Ruby frameworks, easier to learn, and easier to contribute.
Basically, the community then grows much quicker.
Benefits from Hanami Mastery for Ruby community
By helping the Hanami project to succeed, I'm helping to introduce more healthy competition and diversity into the Ruby community.
With more different solutions, different approaches to the same problem, I believe Ruby will have a golden Era again.
When new developers will start learning Ruby, Rails will not be the only framework where it's easy to start writing web applications.
This should bring more out-of-the-box thinking to the whole Ruby community and more diverse solutions for the existing problems, resulting in higher quality gems and projects all over the world!
Benefits from Hanami Mastery for Hanami Project
Hanami Project definitely benefits a whole LOT from the Hanami Mastery initiative, and this will only increase in the future.
- More words spread about Hanami over the Internet builds more interest, more contributions, and even more shares!
- More people trying Hanami will publish more resources!
- More devs interested in Hanami will be more likely to contribute!
- Financial support Hanami Mastery brings to the project results with more time spent on development, and more people willing to spend their time on it.
It's just a self-propelled machine!
Benefits from Hanami Mastery for Companies using Hanami
Existing and New clients are great beneficiaries of Hanami Mastery too!
When there are more learning resources, it's easier to train and onboard new developers. There are more problems covered, so the chance of success is way greater.
Therefore, it's likely that soon more companies will start to use Hanami in their projects and bring their own contributions to the community.
I really hope they'll start sponsoring my work too!
Benefits from Hanami Mastery for Hanami Mastery
When I am able to inspire and bring interest to more people, the community grows. This results in greater Hanami development, so more attractive thing to write about, bringing even more interest, but easier!
Also, the bigger success this project has, I am able to finance more impactful initiatives, helping the Hanami community in even more meaningful ways.
Basically, Hanami success == Hanami Mastery success. And I just love it.
My personal benefits from the Hanami Mastery initiative
Finally, I also get the various benefits for myself from the work on each article and episode, and this is the KEY to really have an impact on what is happening.
- I am improving as a Ruby developer, by thinking out-of-the-box. By trying different solutions and programming styles I am becoming a way greater expert.
- I am building my personal branding, being able to get more profitable and interesting jobs as a developer.
- I am building my passive income, which allows me to work more on publishing the content every single week.
By the research I'm doing for every single episode, I am slowly becoming an expert in Hanami, getting to know mechanisms laying under the hood, analyzing the code, and getting FREE programming bits of advice from one of the greatest developers I've ever met.
Summary
If you wonder if you should start contributing to Open-Source. Think again.
And again.
And AGAIN!
And then - when you have everything covered - start, like nobody before!
Hanami Beneficients ecosystem
Do you like this content? Subscribe!
I hope you've enjoyed this article, and if you want to see more content in this fashion,** Subscribe to my newsletter, this YT channel** and follow me on Twitter!
Special Thanks!
I'd like to thank all my sponsors. for supporting this project!
Any support allows me to spend more time on creating this content, promoting great open source projects.
Thank you all for being here, you're awesome! - and see you soon!
Add your suggestion to our discussion panel!
I'll gladly cover them in the future episodes! Thank you!