My name is Liubomyr Manastyretskyi, I'm from ๐บ๐ฆ, I started my professional software development carrier in ~2019.
Started a long time ago, first as a Python developer, then C++, Java, JavaScript, and finally Ruby, in 2018. As of right now I work with Ruby, JavaScript (ReactJS) and Flutter.
As I was working on more and more projects, from time to time I had to make contributions for various open-source projects, and I discovered that I actually enjoy doing it.
I've contributed to various open-source projects, but the one I like the most, is rails_live_reload, which allows you to add live reloading to your rails app with just one line of code.
I use several sources of information, from which the most significant ones are:
- Ruby Weekly
- Twitter
- Rubyflow
The hardest thing is to find enough time to do it. Usually I try to do it on weekends when I have some free time.
Start with a simple project/idea/task as possible. If you are trying to create some gem, but you are not sure if it will be useful for other people, or how to do it properly, you can always ask for advice from community.
I find it quite hard to do everything at once, so usually I to one thing at the time. There are some months when I wouldn't do any open-source work, and then there are some when I would do it almost every day.
Personally, I find it really cool when I get to talk with some open-source contributors whose gems I used before. I is also great to see them using your open source projects, it really makes you feel like a part of the community.
For open-source project to be successful, it must have these things:
- Be useful
- Have a good documentation
- Should be promoted properly, because otherwise people would just not know about it
- Should have good implementation, so that it's actually possible to use
- Should have somewhat decent support
I think that with the time it will actually become even more widespread, we are already starting to see the increase of applications that are full open-source.
I am excited about recent development of fully open-source applications, like plausible, I feel like there would be more and more of them in the future.
Usually if I need to debug some gem I just use `bundle open gem_name` command and but debugger in the code, this way I can quickly debug code to know if I should make a fork for it, or not.
Reddit, discord and Ruby forums are the main ways how I get in contact with community.
The person that probably influenced my career the most is Igor Kasyanchuk, he really helped me with my professional growth as a Ruby developer and we've build many open-source projects together.
It's really hard to say the degree to which it helped me, but at my previous work participation in open-source projects and the community as a whole was considered during promotion.
I contribute in the project's that I'm actually using.
I try to test every change that I'm making. Also, unit tests are very helpful as well.
It is not as hard as people think it is. You don't have to be 10x developer to build open-source projects
I want to build popular open-source project that would be widely used and appreciated by the community.
Definitely Ruby ๐ โค๏ธ
- VS Code
- Copilot
- Chat GPT
- rbenv
There is a gem called `rails_chats` that I've coauthored, it allows you to build custom charts and it's using echarts under the hood. Chart library itself accepts JS object to build a chart, but there is no way to pass JS function into a Ruby hash, so I've built a custom json decoder that is turning this JS string into a function. You should definitely check it out if you are a Ruby developer.
Whiplash from the Iron Man 2.
Tabs, obviously ๐.
I met couple of my colleagues with whom I'm building projects together now.
To never be shy and participate in community discussions.
If you feel like open-source can be interesting for you, you should definitely try it. It might seem hard at first, but as people will start using your work, you will start to feel like it was really worth it.